Bom Galera,
Como todos falam, faz tempo que não posto, pois ando um pouco ocupado..
e ao desenvolver um projeto, precisei de linhas pontilhadas, então resolvi
criar uma classe para desenhar uma Line Dashed, que coloquei o nome de
LineDashed.. enfim, vou começar a explicar, primeiramente vou deixar um exemplo
da classe
Lembrando que é uma classe simples, sem muito recurso, por enquanto, estou postando mais pra galera que precisa de uma simples linha pontilhada!!!
bom galera, vou começar colocando o código do swf a cima
package { import fl.controls.ColorPicker import fl.events.ColorPickerEvent import flash.events.MouseEvent import flash.events.Event import flash.display.Sprite import br.com.tavernari.graphics.LineDashed public class LineTeste extends Sprite { private var myLine:LineDashed = new LineDashed(); private var mySprite:Sprite = new Sprite() private var containerLine:Sprite private var colorLine:* = 0x000000 public function LineTeste():void { cor.addEventListener(ColorPickerEvent.CHANGE, changeColor) adicionar_btn.addEventListener(MouseEvent.CLICK, addLine) apaga_btn.addEventListener(MouseEvent.CLICK, deleteLine) /*mySprite = myLine.lineDraw(2,stage.stageHeight - 20,"height",0xFFFFFF,0.75,0.5); addChild(mySprite) mySprite.x = 10 mySprite.y = 10 mySprite.rotation = -45*/ } private function changeColor(e:ColorPickerEvent):void{ colorLine ="0x"+e.currentTarget.hexValue trace(colorLine) } private function deleteLine(e:MouseEvent):void{ trace("deletar linhas é "+containerLine) if(containerLine != null){ removeChild(containerLine) containerLine = null trace("deletou") } } private function addLine(e:Event):void { trace(containerLine) if(containerLine == null){ containerLine = new Sprite(); addChild(containerLine) containerLine.x = 50 containerLine.y = 154 trace(containerLine) } mySprite = new Sprite(); var distancia:Number = Number(distancia.text) var tamanho:Number = Number(tamanho.text) var espessura:Number = Number(espessura.text) mySprite = myLine.lineDraw(distancia,tamanho,"width",colorLine,1,espessura) trace(">>"+distancia) trace(">>"+tamanho) trace(">>"+colorLine) containerLine.addChild(mySprite) mySprite.rotation = Number(rotacao.text) } } }
Este código simples é o exemplo do uso da classe.
Esta classe é básica, e usa-se apenas 1 linha para chamar a linha pontilhada. e lembrando que ela sempre retorna um Sprite, o método que monta a linha é lineDraw!
por exemplo
1 2 3 4 5 6 7 8 | //Estou dizendo que instancia myLine é o meu objeto LinhaDashed var myLine:LineDashed = new LineDashed(); //Nesta parte crio um sprite var mySprite:Sprite = new Sprite() //Aqui digo que meu Sprite, recebe a minha linha myLine, myLine.lineDraw retorna um Sprite mySprite = myLine.lineDraw(1,500,"width",0x000000,1,2) //aqui adiciono mySprite no palco addChild(mySprite) |
O que fiz neste exemplo, um básico para adicionar uma linha pontilhada no palco
e para mudar posicao dela, basta apenas mudar as propriedades do mySprite, ele agora é sua linha
e a vantagem é, vc so precisa criar um myLine e usar em varios Sprites!
1 2 3 | mySpriteBranco = myLine.lineDraw(1,500,"width",0xFFFFFF,1,2) mySpriteCinza = myLine.lineDraw(1,500,"width",0x333333,1,2) mySpritePreto = myLine.lineDraw(1,500,"width",0x000000,1,2) |
Então percebe-se que com apenas um myLine posso construir varias linhas pelo projeto…
para deletar o projeto basta apenas deletar seu sprite!
Dica que dou é, se quiser deletar muitas Sprites, coloque elas dentro de um container, um Sprite Pai, e dele o Sprite Pai!
Bom agora vou deixar uma breve documentação do método
——– Documentação pacote br.com.tavernari.graphics.LineDashed
myLine.lineDraw(pointSize:Number = 5, lineSize:Number = 400, orientation:String = “width”,color:* = 0xFFFFFF,alpha:Number = 0.5, thickness:Number = 2 )
pointSize = tamanho da distancia entre os pontos na linha
lineSize = tamanho da Linha
orientation = Duas opções “width” ou “height”, caso use width ele faz a linha horizontal, caso use height ele cria linha vertical
color = Cor da Linha em Hexadecimal
alpha = Transparencia da linha
Thickness = Espessura da linha
Bom Galera
Vou dormir e deixo aqui uma classe pra ajudar a galera a fazer linha pontilhada dinamicamente!
Ahh faltou o link para download da classe
então vai.. CLICK AQUI PARA BAIXAR A CLASSE
att
Category:
Tags: 

