Referência do ActionScript® 3.0 para Adobe® Flash® Platform
Início  |  Ocultar listas de Pacotes e Classes |  Pacotes  |  Classes  |  Novidades  |  Índice  |  Apêndices  |  Por que inglês?
Filtros: AIR 30.0 e anterior, Flash Player 30.0 e anterior, Flash Lite 4
Flex 4.6 e anterior, Flash Pro CS6 e anterior
Ocultar filtros
flash.display 

Graphics  - AS3

Pacotesx

Nível superior
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Elementos de linguagem

Constantes globais
Funções globais
Operadores
Instruções, palavras-chave e diretivas
Tipos especiais

Apêndices

Novidades
Erros do compilador
Avisos do compilador
Erros de runtime
Migrando para o ActionScript 3
Conjuntos de caracteres suportados
Tags MXML apenas
Elementos XML de movimento
Marcas de texto cronometradas
Lista de elementos deprecados
Constantes de Implementação de Acessibilidade
Como Usar Exemplos do ActionScript
Aspectos jurídicos
Pacoteflash.display
Classepublic final class Graphics
HerançaGraphics Inheritance Object

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

A classe Graphics contém um conjunto de métodos que podem ser usados para criar uma forma vetorial. Objetos de exibição que oferecem suporte para desenho incluem objetos Sprite e Shape. Cada uma dessas classes inclui uma propriedade graphics que é um objeto Graphics. As funções a seguir referem-se a funções auxiliares fornecidas para facilitar o uso: drawRect(), drawRoundRect(), drawCircle() e drawEllipse().

Não é possível criar um objeto Graphics diretamente do código ActionScript. Se você chamar new Graphics(), uma exceção será lançada.

A classe Graphics é final e não pode ser transformada em subclasse.

Veja os exemplos



Propriedades públicas
 PropriedadeDefinido por
 Inheritedconstructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto.
Object
Métodos públicos
 MétodoDefinido por
  
beginBitmapFill(bitmap:BitmapData, matrix:Matrix = null, repeat:Boolean = true, smooth:Boolean = false):void
Preenche uma área de desenho com uma imagem bitmap.
Graphics
  
beginFill(color:uint, alpha:Number = 1.0):void
Especifica um preenchimento simples de uma cor para chamadas subsequentes a outros métodos Graphics (como lineTo() ou drawCircle()) usados para desenhar.
Graphics
  
beginGradientFill(type:String, colors:Array, alphas:Array, ratios:Array, matrix:Matrix = null, spreadMethod:String = "pad", interpolationMethod:String = "rgb", focalPointRatio:Number = 0):void
Especifica um preenchimento de gradiente usado nas chamadas subsequentes de outros métodos Graphics (por exemplo, lineTo() ou drawCircle()) do objeto.
Graphics
  
beginShaderFill(shader:Shader, matrix:Matrix = null):void
Especifica um preenchimento de sombreador usado nas chamadas subsequentes de outros métodos Graphics (por exemplo, lineTo() ou drawCircle()) do objeto.
Graphics
  
Limpa os gráficos que foram desenhados para este objeto Graphics e redefine as configurações de preenchimento e estilo de linha.
Graphics
  
copyFrom(sourceGraphics:Graphics):void
Copia todos os comandos de desenho do objeto Graphics de origem para o objeto Graphics de chamada.
Graphics
  
cubicCurveTo(controlX1:Number, controlY1:Number, controlX2:Number, controlY2:Number, anchorX:Number, anchorY:Number):void
Desenha uma curva de Bezier cúbica a partir da posição de desenho atual ao ponto de ancoragem especificado.
Graphics
  
curveTo(controlX:Number, controlY:Number, anchorX:Number, anchorY:Number):void
Desenha uma curva Bezier quadrática utilizando o estilo de linha atual a partir da posição de desenho atual até (anchorX, anchorY) e utilizando o ponto de controle especificado por (controlX, controlY).
Graphics
  
Desenha um círculo.
Graphics
  
drawEllipse(x:Number, y:Number, width:Number, height:Number):void
Desenha uma elipse.
Graphics
  
Envia uma série de ocorrências de IGraphicsData para desenho.
Graphics
  
drawPath(commands:Vector.<int>, data:Vector.<Number>, winding:String = "evenOdd"):void
Envia uma série de comandos para desenho.
Graphics
  
drawRect(x:Number, y:Number, width:Number, height:Number):void
Desenha um retângulo.
Graphics
  
drawRoundRect(x:Number, y:Number, width:Number, height:Number, ellipseWidth:Number, ellipseHeight:Number = NaN):void
Desenha um retângulo arredondado.
Graphics
  
drawTriangles(vertices:Vector.<Number>, indices:Vector.<int> = null, uvtData:Vector.<Number> = null, culling:String = "none"):void
Renderiza um conjunto de triângulos, geralmente para distorcer bitmaps e dar uma aparência tridimensional.
Graphics
  
Aplica um preenchimento às linhas e curvas que foram adicionadas desde a última chamada ao método beginFill(), beginGradientFill() ou beginBitmapFill().
Graphics
 Inherited
Indica se um objeto tem uma propriedade especificada definida.
Object
 Inherited
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro.
Object
  
lineBitmapStyle(bitmap:BitmapData, matrix:Matrix = null, repeat:Boolean = true, smooth:Boolean = false):void
Especifica um bitmap a ser usado no traçado da linha durante o desenho de linhas.
Graphics
  
lineGradientStyle(type:String, colors:Array, alphas:Array, ratios:Array, matrix:Matrix = null, spreadMethod:String = "pad", interpolationMethod:String = "rgb", focalPointRatio:Number = 0):void
Especifica um gradiente a ser usado no traçado durante o desenho de linhas.
Graphics
  
lineShaderStyle(shader:Shader, matrix:Matrix = null):void
Especifica um shader a ser usado no traçado da linha durante o desenho de linhas.
Graphics
  
lineStyle(thickness:Number = NaN, color:uint = 0, alpha:Number = 1.0, pixelHinting:Boolean = false, scaleMode:String = "normal", caps:String = null, joints:String = null, miterLimit:Number = 3):void
Especifica um estilo de linha a ser usado nas chamadas subsequentes de métodos Graphics, por exemplo, lineTo() ou drawCircle().
Graphics
  
Desenha uma linha usando o estilo de linha atual a partir da posição de desenho atual até (x, y); a posição de desenho atual é então definida como (x, y).
Graphics
  
Move a posição do desenho atual até (x, y).
Graphics
 Inherited
Indica se a propriedade especificada existe e é enumerável.
Object
  
Consulte um objeto Sprite ou Shape (e, opcionalmente, seus filhos) para o conteúdo do vetor do gráfico.
Graphics
 Inherited
Define a disponibilidade de uma propriedade dinâmica para operações de repetição.
Object
 Inherited
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade.
Object
 Inherited
Retorna a representação de string do objeto especificado.
Object
 Inherited
Retorna o valor primitivo do objeto especificado.
Object
Detalhes do método

beginBitmapFill

()método
public function beginBitmapFill(bitmap:BitmapData, matrix:Matrix = null, repeat:Boolean = true, smooth:Boolean = false):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Preenche uma área de desenho com uma imagem bitmap. O bitmap pode ser repetido ou colocado lado a lado para preencher a área. O preenchimento permanece em vigor até você chamar os métodos beginFill(), beginBitmapFill(), beginGradientFill() ou beginShaderFill(). Chamar o método clear() irá limpar o preenchimento.

O aplicativo renderiza o preenchimento sempre que três ou mais pontos são desenhados, ou quando o método endFill() é chamado.

Parâmetros

bitmap:BitmapData — Uma imagem bitmap transparente ou opaca que contém os bits a serem exibidos.
 
matrix:Matrix (default = null) — Um objeto de matriz (da classe flash.geom.Matrix), que você pode usar para definir transformações no bitmap. Por exemplo, é possível usar a seguinte matriz para girar um bitmap em 45 graus (pi/4 radianos):
     matrix = new flash.geom.Matrix(); 
     matrix.rotate(Math.PI / 4);
     
 
repeat:Boolean (default = true) — Se true, a imagem bitmap se repetirá em um padrão lado a lado. Se false, a imagem bitmap não se repetirá e as bordas do bitmap serão usadas para qualquer área de preenchimento que se estender além do bitmap.

Por exemplo, considere o seguinte bitmap (um padrão quadriculado de 20 x 20 pixels):

Quadriculado de 20 por 20 pixels

Quando repeat está definido como true (como no exemplo a seguir), o preenchimento de bitmap repete o bitmap:

Quadriculado de 60 por 60 pixels

Quando repeat for definido como false, o preenchimento de bitmap usará os pixels da borda na área de preenchimento fora do bitmap:

Imagem de 60 por 60 pixels sem repetição

 
smooth:Boolean (default = false) — Se false, as imagens bitmap detalhadas serão renderizadas com o uso de um algoritmo de vizinho mais próximo e terão uma aparência pixelizada. Se true, as imagens bitmap detalhadas serão renderizadas com o uso de um algoritmo bilinear. A renderização com o uso do algoritmo de vizinho mais próximo é mais rápida.

Elementos da API relacionados


Exemplo  ( Como usar este exemplo )

O exemplo a seguir usa uma imagem (image1.jpg) que é girada e repetida para preencher um retângulo.
  1. O arquivo de imagem (image1.jpg) é carregado com o uso dos objetos Loader e URLRequest. Aqui, o arquivo está no mesmo diretório que o arquivo SWF. O arquivo SWF precisa ser compilado com Segurança de reprodução local definida como Acessar somente arquivos locais.
  2. Quando a imagem é carregada (Event está completo), o método drawImage() é chamado. O método ioErrorHandler() gravará um comentário de rastreamento se a imagem não tiver sido carregada corretamente.
  3. No método drawImage(), um objeto BitmapData é instanciado e sua largura e altura são definidas como a imagem (image1.jpg). A imagem de origem é então desenhada no objeto BitmapData. Em seguida, um retângulo é desenhado no objeto Sprite mySprite e o objeto BitmapData é usado para preenchê-lo. Usando um objeto Matrix, o método beginBitmapFill() gira a imagem 45 graus e, em seguida, inicia o preenchimento do retângulo com a imagem até terminar.
package {
    import flash.display.Sprite;
    import flash.display.BitmapData;
    import flash.display.Loader;
    import flash.net.URLRequest;
    import flash.events.Event;
    import flash.events.IOErrorEvent;
    import flash.geom.Matrix;

    public class Graphics_beginBitmapFillExample extends Sprite {
 
        private var url:String = "image1.jpg";
        private var loader:Loader = new Loader();

        public function Graphics_beginBitmapFillExample() {

            var request:URLRequest = new URLRequest(url);
            
            loader.load(request);
            loader.contentLoaderInfo.addEventListener(Event.COMPLETE, drawImage);
            loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
        }

        private function drawImage(event:Event):void {

            var mySprite:Sprite = new Sprite();
            var myBitmap:BitmapData = new BitmapData(loader.width, loader.height, false);
  
            myBitmap.draw(loader, new Matrix());
            
            var matrix:Matrix = new Matrix();
            matrix.rotate(Math.PI/4);
            
            mySprite.graphics.beginBitmapFill(myBitmap, matrix, true);
            mySprite.graphics.drawRect(100, 50, 200, 90);
            mySprite.graphics.endFill();
            
            addChild(mySprite);
        }
 
         private function ioErrorHandler(event:IOErrorEvent):void {
            trace("Unable to load image: " + url);
        }
    }   
}

beginFill

()método 
public function beginFill(color:uint, alpha:Number = 1.0):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Especifica um preenchimento simples de uma cor para chamadas subsequentes a outros métodos Graphics (como lineTo() ou drawCircle()) usados para desenhar. O preenchimento permanece em vigor até você chamar os métodos beginFill(), beginBitmapFill(), beginGradientFill() ou beginShaderFill(). Chamar o método clear() irá limpar o preenchimento.

O aplicativo renderiza o preenchimento sempre que três ou mais pontos são desenhados, ou quando o método endFill() é chamado.

Parâmetros

color:uint — A cor do preenchimento (0xRRGGBB).
 
alpha:Number (default = 1.0) — O valor alfa do preenchimento (0,0 a 1,0).

Elementos da API relacionados


Exemplo
Como usar este exemplo
Consulte o exemplo no final desta classe para ver uma ilustração de como usar esse método.

beginGradientFill

()método 
public function beginGradientFill(type:String, colors:Array, alphas:Array, ratios:Array, matrix:Matrix = null, spreadMethod:String = "pad", interpolationMethod:String = "rgb", focalPointRatio:Number = 0):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Especifica um preenchimento de gradiente usado nas chamadas subsequentes de outros métodos Graphics (por exemplo, lineTo() ou drawCircle()) do objeto. O preenchimento permanece em vigor até você chamar os métodos beginFill(), beginBitmapFill(), beginGradientFill() ou beginShaderFill(). Chamar o método clear() irá limpar o preenchimento.

O aplicativo renderiza o preenchimento sempre que três ou mais pontos são desenhados, ou quando o método endFill() é chamado.

Parâmetros

type:String — Um valor a partir da classe SpreadMethod que especifica o modo de dispersão a ser usado. GradientType.LINEAR ou GradientType.RADIAL.
 
colors:Array — Uma matriz de valores de cor hexadecimais RGB usada no gradiente, por exemplo, vermelho é 0xFF0000, azul é 0x0000FF, e assim por diante. É possível especificar até 15 cores. Para cada uma, especifique um valor correspondente nos parâmetros de alfas e proporções.
 
alphas:Array — Uma matriz de valores alfa para as cores correspondentes na matriz de cores. Os valores válidos são de 0 a 1. Se o valor for menor do que 0, o padrão será 0. Se o valor for maior do que 1, o padrão será 1.
 
ratios:Array — Uma matriz de proporções de distribuição de cores. Os valores válidos são de 0 a 255. Esse valor define a porcentagem da largura na qual a cor é classificada em 100%. O valor 0 representa a posição à esquerda na caixa de gradiente, enquanto 255 representa a posição à direita nessa caixa.

Observação: Esse valor representa posições na caixa de gradiente e não o espaço de coordenadas do gradiente final, que pode ser mais amplo ou estreito do que a caixa de gradiente. Especifique um valor para valor no parâmetro cores.

Por exemplo, para um gradiente linear que inclui duas cores, azul e verde, o exemplo a seguir ilustra a disposição das cores nesse gradiente com base em diferentes valores na matriz de proporções:

proporçõesGradiente
[0, 127]gradiente linear de azul a verde com proporções 0 e 127
[0, 255]gradiente linear de azul a verde com proporções 0 e 255
[127, 255]gradiente linear de azul a verde com proporções 127 e 255

Os valores na matriz devem aumentar sequencialmente; por exemplo, [0, 63, 127, 190, 255].

 
matrix:Matrix (default = null) — Uma matriz de transformação é definida pela classe flash.geom.Matrix. A classe flash.geom.Matrix inclui um método createGradientBox(), que permite configurar convenientemente a matriz para uso com o método beginGradientFill().
 
spreadMethod:String (default = "pad") — Um valor a partir da classe SpreadMethod que especifica o modo de dispersão a ser usado. SpreadMethod.PAD, SpreadMethod.REFLECT ouSpreadMethod.REPEAT.

Por exemplo, considere um gradiente linear simples entre duas cores:

     import flash.geom.*
     import flash.display.*
     var fillType:String = GradientType.LINEAR;
     var colors:Array = [0xFF0000, 0x0000FF];
     var alphas:Array = [1, 1];
     var ratios:Array = [0x00, 0xFF];
     var matr:Matrix = new Matrix();
     matr.createGradientBox(20, 20, 0, 0, 0);
     var spreadMethod:String = SpreadMethod.PAD;
     this.graphics.beginGradientFill(fillType, colors, alphas, ratios, matr, spreadMethod);        
     this.graphics.drawRect(0,0,100,100);
     

Esse exemplo usa SpreadMethod.PAD para o método de dispersão e o preenchimento de gradiente tem a seguinte aparência:

gradiente linear com SpreadMethod.PAD

Se você usar SpreadMethod.REFLECT para o método de dispersão, o preenchimento de gradiente terá a seguinte aparência:

gradiente linear com SpreadMethod.REFLECT

Se você usar SpreadMethod.REPEAT para o método de dispersão, o preenchimento de gradiente terá a seguinte aparência:

gradiente linear com SpreadMethod.REPEAT

 
interpolationMethod:String (default = "rgb") — Um valor da classe InterpolationMethod que especifica o valor a ser usado: InterpolationMethod.LINEAR_RGB ou InterpolationMethod.RGB

Por exemplo, considere um gradiente linear simples entre duas cores (com o parâmetro métodoDifusão definido como SpreadMethod.REFLECT). Os diferentes métodos de interpolação afetam a aparência da seguinte maneira:

gradiente linear com InterpolationMethod.LINEAR_RGB gradiente linear com InterpolationMethod.RGB
InterpolationMethod.LINEAR_RGBInterpolationMethod.RGB
 
focalPointRatio:Number (default = 0) — Um número que controla a localização do ponto focal do gradiente. 0 significa que o ponto focal está no centro. 1 significa que o ponto focal está em uma borda do círculo do gradiente. -1 significa que o ponto focal está na outra borda do círculo do gradiente. Um valor menor que -1 ou maior que 1 é arredondado para -1 ou 1. Por exemplo, o exemplo a seguir mostra focalPointRatio definido como 0,75:

gradiente radial com focalPointRatio definido como 0,75


Lança
ArgumentError — Se o parâmetro tipo não for válido.

Elementos da API relacionados

beginShaderFill

()método 
public function beginShaderFill(shader:Shader, matrix:Matrix = null):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 10, AIR 1.5

Especifica um preenchimento de shader usado nas chamadas subsequentes de outros métodos Graphics (por exemplo, lineTo() ou drawCircle()) do objeto. O preenchimento permanece em vigor até você chamar os métodos beginFill(), beginBitmapFill(), beginGradientFill() ou beginShaderFill(). Chamar o método clear() irá limpar o preenchimento.

O aplicativo renderiza o preenchimento sempre que três ou mais pontos são desenhados, ou quando o método endFill() é chamado.

Os preenchimentos com sombreamento não são compatíveis com a renderização pela GPU. Áreas preenchidas serão pintadas de ciano.

Parâmetros

shader:Shader — O shader a ser usado no preenchimento. Essa ocorrência de Shader não é necessária à especificação de uma entrada de imagem. No entanto, caso seja especificada no shader, a entrada de imagem deve ser fornecida manualmente. Para especificar a entrada, defina a propriedade input da propriedade ShaderInput correspondente da propriedade Shader.data.

Quando você passa uma ocorrência de Shader como um argumento, o shader é copiado internamente. A operação de preenchimento de desenho usa essa cópia interna, e não uma referência ao shader original. Todas as alterações feitas no shader como, por exemplo, alterar o valor de um parâmetro, entrada ou código de bytes, não são aplicadas ao shader copiado usado no preenchimento.

 
matrix:Matrix (default = null) — Um objeto de matriz (da classe flash.geom.Matrix), que você pode usar para definir transformações no shader. Por exemplo, é possível usar a seguinte matriz para girar um shader em 45 graus (pi/4 radianos):
     matrix = new flash.geom.Matrix(); 
     matrix.rotate(Math.PI / 4);
     

As coordenadas recebidas no shader se baseiam na matriz especificada para o parâmetro matrix. Para uma matriz padrão (null), as coordenadas no shader são locais de pixel que você pode usar na amostra de uma entrada.


Lança
ArgumentError — Quando o tipo de saída do shader não é compatível com essa operação (o shader deve especificar uma saída pixel3 ou pixel4).
 
ArgumentError — Quando o shader especifica uma entrada de imagem não fornecida.
 
ArgumentError — Quando for ByteArray ou Vector.A ocorrência de <Number> é usada como uma entrada e as propriedades width e height não são especificadas para ShaderInput ou os valores especificados não correspondem à quantidade de dados no objeto de entrada. Consulte a propriedade ShaderInput.input para obter mais informações.

Elementos da API relacionados

clear

()método 
public function clear():void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Limpa os gráficos que foram desenhados para este objeto Graphics e redefine as configurações de preenchimento e estilo de linha.

copyFrom

()método 
public function copyFrom(sourceGraphics:Graphics):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 10, AIR 1.5, Flash Lite 4

Copia todos os comandos de desenho do objeto Graphics de origem para o objeto Graphics de chamada.

Parâmetros

sourceGraphics:Graphics — O objeto Graphics do qual copiar os comandos de desenho.

cubicCurveTo

()método 
public function cubicCurveTo(controlX1:Number, controlY1:Number, controlX2:Number, controlY2:Number, anchorX:Number, anchorY:Number):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11, AIR 3

Desenha uma curva de Bezier cúbica a partir da posição de desenho atual ao ponto de ancoragem especificado. Curvas de Bezier cúbicas consistem em dois pontos de ancoragem e dois pontos de controle. A curva interpola os dois pontos de ancoragem e resulta em um encurvamento em direção aos pontos de controle.

Bezier cúbica

Os quatro pontos utilizados para desenhar uma curva de Bezier cúbica com o métodocubicCurveTo () são os seguintes:

  • A posição de desenho atual é o primeiro ponto de ancoragem.
  • O anchorX e os parâmetros anchorY especificam o segundo ponto de ancoragem.
  • O controlX1 e os parâmetros controlY1 especificam o primeiro ponto de controle.
  • O controlX2 e os parâmetros controlY2 especificam o segundo ponto de controle.

Se você chamar o método cubicCurveTo () antes da chamada do método moveTo (), sua curva será iniciada na posição (0, 0).

Se o método cubicCurveTo () for bem-sucedido, o tempo de execução do Flash definirá a posição de desenho atual em (anchorX, anchorY). Se o método cubicCurveTo () falhar, a posição de desenho atual permanecerá inalterada.

Se seu clipe de filme contiver o conteúdo criado com as ferramentas de desenho do Flash, os resultados de chamadas para o método cubicCurveTo () serão desenhados embaixo daquele conteúdo.

Parâmetros

controlX1:Number — Especifica a posição horizontal do primeiro ponto de controle relativa ao ponto de registro do objeto de exibição pai.
 
controlY1:Number — Especifica a posição vertical do primeiro ponto de controle relativa ao ponto de registro do objeto de exibição pai.
 
controlX2:Number — Especifica a posição horizontal do segundo ponto de controle relativa ao ponto de registro do objeto de exibição pai.
 
controlY2:Number — Especifica a posição vertical do segundo ponto de controle relativa ao ponto de exibição do objeto de exibição pai.
 
anchorX:Number — Especifica a posição horizontal do ponto de ancoragem relativa ao ponto de registro do objeto de exibição pai.
 
anchorY:Number — Especifica a posição vertical do ponto de ancoragem relativa ao ponto de registro do objeto de exibição pai.


Exemplo  ( Como usar este exemplo )

O exemplo a seguir desenha um objeto circular azul com largura e altura de 100 pixels, 250 pixels à direita do ponto de registro (0.0) do objeto de exibição Sprite.

Desenhe quatro curvas para produzir um círculo e preencha-o com azul.

Observe que, devido à natureza da equação de Bezier cúbica, esse círculo não é perfeito. A melhor maneira de desenhar um círculo é usar o método drawCircle() da classe Graphics.

package {
    import flash.display.Sprite;
    import flash.display.Shape;
    
    public class Graphics_cubicCurveToExample extends Sprite
    {
        public function Graphics_cubicCurveToExample():void
        {
            var rounderObject:Shape = new Shape();

            rounderObject.graphics.beginFill(0x0000FF);
            rounderObject.graphics.moveTo(250, 0);
            rounderObject.graphics.cubicCurveTo(275, 0, 300, 25, 300, 50);
            rounderObject.graphics.cubicCurveTo(300, 75, 275, 100, 250, 100);
            rounderObject.graphics.cubicCurveTo(225, 100, 200, 75, 200, 50);
            rounderObject.graphics.cubicCurveTo(200, 25, 225, 0, 250, 0);
            rounderObject.graphics.endFill();
            
            this.addChild(rounderObject);
        }
    }
}

curveTo

()método 
public function curveTo(controlX:Number, controlY:Number, anchorX:Number, anchorY:Number):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Desenha uma curva Bezier quadrática utilizando o estilo de linha atual a partir da posição de desenho atual até (anchorX, anchorY) e utilizando o ponto de controle especificado por (controlX, controlY). A posição de desenho atual é então definida como (anchorX, anchorY). Se o clipe de filme no qual você está desenhando tiver um conteúdo criado com as ferramentas de desenho do Flash, as chamadas para o método curveTo() serão desenhadas abaixo desse conteúdo. Se você chamar curveTo() antes de qualquer chamada ao método moveTo(), o padrão da posição de desenho atual será (0, 0). Se qualquer um dos parâmetros estiver ausente, esse método falhará e a posição do desenho atual não será alterada.

A curva desenhada é uma curva de Bezier quadrática. Curvas de Bezier quadráticas consistem em dois pontos de ancoragem e um ponto de controle. A curva interpola os dois pontos de ancoragem e resulta em um encurvamento em direção ao ponto de controle.

Bezier quadrática

Parâmetros

controlX:Number — Um número que especifica a posição horizontal do ponto de controle relativa ao ponto de registro do objeto de exibição pai.
 
controlY:Number — Um número que especifica a posição vertical do ponto de controle relativa ao ponto de registro do objeto de exibição pai.
 
anchorX:Number — Um número que especifica a posição horizontal do próximo ponto de ancoragem relativa ao ponto de registro do objeto de exibição pai.
 
anchorY:Number — Um número que especifica a posição vertical do próximo ponto de ancoragem relativa ao ponto de registro do objeto de exibição pai.


Exemplo  ( Como usar este exemplo )

O exemplo a seguir desenha um objeto circular verde com largura e altura de 100 pixels, 250 pixels à direita do ponto de registro (0, 0) do objeto de exibição Sprite.

Desenhe quatro curvas para produzir um círculo e preencha-o com verde.

Observe que, devido à natureza da equação de Bezier de segundo grau, esse círculo não é perfeito. A melhor maneira de desenhar um círculo é usar o método drawCircle() da classe Graphics.

package {
    import flash.display.Sprite;
    import flash.display.Shape;
    
    public class Graphics_curveToExample1 extends Sprite
    {
        public function Graphics_curveToExample1():void
        {
            var roundObject:Shape = new Shape();

            roundObject.graphics.beginFill(0x00FF00);
            roundObject.graphics.moveTo(250, 0);
            roundObject.graphics.curveTo(300, 0, 300, 50);
            roundObject.graphics.curveTo(300, 100, 250, 100);
            roundObject.graphics.curveTo(200, 100, 200, 50);
            roundObject.graphics.curveTo(200, 0, 250, 0);
            roundObject.graphics.endFill();
            
            this.addChild(roundObject);
        }
    }
}

O exemplo a seguir desenha um lua nova usando o método curveTo().

Duas linhas curvas de 1 pixel são desenhadas, e o espaço entre elas é preenchido com branco. O método moveTo() é usado para posicionar a posição de desenho atual nas coordenadas (100, 100). A primeira curva move a posição de desenho até (100, 200), seu ponto de destino. A segunda curva retorna à posição inicial (100, 100), seu ponto de destino. Os pontos de controle horizontais determinam os diferentes tamanhos de curvas.

package {
    import flash.display.Sprite;
    import flash.display.Shape;

    public class Graphics_curveToExample2 extends Sprite
    {
        public function Graphics_curveToExample2() {
            var newMoon:Shape = new Shape();
            
            newMoon.graphics.lineStyle(1, 0);
            newMoon.graphics.beginFill(0xFFFFFF);
            newMoon.graphics.moveTo(100, 100); 
            newMoon.graphics.curveTo(30, 150, 100, 200);    
            newMoon.graphics.curveTo(50, 150, 100, 100);
            graphics.endFill();
            
            this.addChild(newMoon);
        }
    }
}

drawCircle

()método 
public function drawCircle(x:Number, y:Number, radius:Number):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Desenha um círculo. Defina o estilo de linha, o preenchimento, ou ambos, antes de chamar o método drawCircle(). Para tanto, chame o método linestyle(), lineGradientStyle(), beginFill(), beginGradientFill() ou beginBitmapFill().

Parâmetros

x:Number — A localização x do centro do círculo relativo ao ponto de registro do objeto de exibição pai (em pixels).
 
y:Number — A localização y do centro do círculo relativo ao ponto de registro do objeto de exibição pai (em pixels).
 
radius:Number — O raio do círculo (em pixels).

Elementos da API relacionados


Exemplo
Como usar este exemplo
Consulte o exemplo no final desta classe para ver uma ilustração de como usar esse método.

drawEllipse

()método 
public function drawEllipse(x:Number, y:Number, width:Number, height:Number):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Desenha uma elipse. Defina o estilo de linha, o preenchimento, ou ambos, antes de chamar o método drawEllipse(). Para tanto, chame o método linestyle(), lineGradientStyle(), beginFill(), beginGradientFill() ou beginBitmapFill().

Parâmetros

x:Number — A localização x da parte superior esquerda da caixa delimitadora da elipse relativa ao ponto de registro do objeto de exibição pai (em pixels).
 
y:Number — A localização y da parte superior esquerda da caixa delimitadora da elipse relativa ao ponto de registro do objeto de exibição pai (em pixels).
 
width:Number — A largura da elipse (em pixels).
 
height:Number — A altura da elipse (em pixels).

Elementos da API relacionados


Exemplo  ( Como usar este exemplo )

O exemplo a seguir usa a função drawEgg() para desenhar três ovos de tamanhos diferentes (três tamanhos de elipses), dependendo do parâmetro tamanhoOvo.
  1. O construtor chama a função drawEgg() e transmite os parâmetros horizontal e vertical referentes ao local em que o ovo deve ser desenhado, além do tipo de ovo tamanhoOvo). (A altura e a largura dos ovos (as elipses) podem ser usadas para decidir onde eles serão exibidos.)
  2. A função drawEgg() desenha as elipses de tamanhos diferentes e as preenche com branco usando o método beginFill(). Não há manipulação de erro antecipada gravada para essa função.
package {
    import flash.display.Sprite;
    import flash.display.Shape;

    public class Graphics_drawEllipseExample extends Sprite
    {
        public static const SMALL:uint = 0;
        public static const MEDIUM:uint = 1;
        public static const LARGE:uint = 2;

        public function Graphics_drawEllipseExample()
        {
            drawEgg(SMALL, 0, 100);
            drawEgg(MEDIUM, 100, 60);
            drawEgg(LARGE, 250, 35);    
        }

        public function drawEgg(eggSize:uint, x:Number, y:Number):void  {
            
            var myEgg:Shape = new Shape();
            
            myEgg.graphics.beginFill(0xFFFFFF);
            myEgg.graphics.lineStyle(1);

            switch(eggSize) {
                case SMALL:
                    myEgg.graphics.drawEllipse(x, y, 60, 70);
                    break;
                case MEDIUM:
                    myEgg.graphics.drawEllipse(x, y, 120, 150);    
                    break;
                case LARGE:
                    myEgg.graphics.drawEllipse(x, y, 150, 200);
                    break;
                default:
                    trace ("Wrong size! There is no egg.");
                break;            
            }
            
            myEgg.graphics.endFill();
    
            this.addChild(myEgg);
        }
    }
}

drawGraphicsData

()método 
public function drawGraphicsData(graphicsData:Vector.<IGraphicsData>):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 10, AIR 1.5

Envia uma série de ocorrências de IGraphicsData para desenho. O método aceita um Vector que contém objetos, inclusive caminhos, preenchimentos e traçados, que implementam a interface IGraphicsData. Um Vector de ocorrências de IGraphicsData pode se referir a uma parte de uma forma ou a um conjunto de dados complexos totalmente definido para renderização de uma forma completa.

Os caminhos gráficos podem conter outros caminhos gráficos. Se o Vector graphicsData incluir um caminho, este e todos os subcaminhos serão renderizados durante a operação.

Parâmetros

graphicsData:Vector.<IGraphicsData> — Um Vector contendo objetos gráficos, cada um implementando boa parte da interface IGraphicsData.

Elementos da API relacionados


Exemplo  ( Como usar este exemplo )

O seguinte exemplo cria um objeto de GraphicsGradientFill para estabelecer as propriedades de preenchimento de um quadrado. Então, o exemplo cria um objeto GraphicsStroke (para a espessura da linha) e um objeto GraphicsSolidFill (para a cor da linha) para definir as propriedades da linha de borda do quadrado. O exemplo então cria um objeto GraphicsPath para conter os valores para desenhar a forma. Todos estes objetos são armazenados em um objeto IGraphicsData object e transmitidos para o comando drawGraphicsData() para renderizar a forma.
package
{
    import flash.display.*;
    import flash.geom.*;

    public class DrawGraphicsDataExample extends Sprite
    {
        public function DrawGraphicsDataExample()
        {
            // establish the fill properties
            var myFill:GraphicsGradientFill = new GraphicsGradientFill();
            myFill.colors = [0xEEFFEE, 0x0000FF];
            myFill.matrix = new Matrix();
            myFill.matrix.createGradientBox(100, 100, 0);
            
            // establish the stroke properties
            var myStroke:GraphicsStroke = new GraphicsStroke(2);
            myStroke.fill = new GraphicsSolidFill(0x000000);
            
            // establish the path properties
            var pathCommands = new Vector.<int>(5, true);
            pathCommands[0] = GraphicsPathCommand.MOVE_TO;
            pathCommands[1] = GraphicsPathCommand.LINE_TO;
            pathCommands[2] = GraphicsPathCommand.LINE_TO;
            pathCommands[3] = GraphicsPathCommand.LINE_TO;
            pathCommands[4] = GraphicsPathCommand.LINE_TO;
            
            var pathCoordinates:Vector.<Number> = new Vector.<Number>(10, true);
            pathCoordinates.push(10,10, 10,100, 100,100, 100,10, 10,10);
            
            var myPath:GraphicsPath = new GraphicsPath(pathCommands, pathCoordinates);
            
            // populate the IGraphicsData Vector array
            var myDrawing:Vector.<IGraphicsData> = new Vector.<IGraphicsData>(3, true);
            myDrawing[0] = myFill;
            myDrawing[1] = myStroke;
            myDrawing[2] = myPath;
            
            // render the drawing
            graphics.drawGraphicsData(myDrawing);
        }
    }
}

drawPath

()método 
public function drawPath(commands:Vector.<int>, data:Vector.<Number>, winding:String = "evenOdd"):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 10, AIR 1.5

Envia uma série de comandos para desenho. O método drawPath() aceita um vetor dos comandos de desenho moveTo(), lineTo() e curveTo() individuais, combinando-os em uma única chamada. Os parâmetros do método drawPath() combinam comandos de desenho com pares de valores de coordenadas x e y e uma direção do desenho. Os comandos de desenho são inteiros, representados como constantes definidas na classe GraphicsPathCommand. Os pares de valores de coordenadas x e y são números em uma matriz, sendo que cada par define a localização de uma coordenada. A direção do desenho é um valor da classe GraphicsPathWinding.

Geralmente, os desenhos são renderizados mais rapidamente com drawPath() do que com uma série de chamadas de métodos individuais lineTo() e curveTo().

O método drawPath() usa um cálculo de flutuação para que a rotação e o dimensionamento de formas sejam mais precisos e produzam melhores resultados. No entanto, as curvas enviadas através do método drawPath() podem ter pequenos erros de alinhamento de subpixel quando usadas em conjunto com os métodos lineTo() e curveTo().

O método drawPath() também usa regras levemente diferentes para preencher e desenhar as linhas. São as seguintes:

  • Quando se aplica um preenchimento para renderizar um caminho:
    • Um subcaminho de menos de três pontos não é renderizado. (Mas observe que a renderização do traçado ainda vai ocorrer, em consonância com as regras dos traçados abaixo.)
    • Um subcaminho que não está fechado (o ponto final não é igual ao ponto inicial) é implicitamente fechado.
  • Quando se aplica um traçado para renderizar um caminho:
    • Os subcaminhos podem ser compostos por um número qualquer de pontos.
    • O subcaminho nunca é implicitamente fechado.

Parâmetros

commands:Vector.<int> — Um vetor de inteiros representa os comandos de desenho. O conjunto dos valores aceitos é definido por constantes na classe GraphicsPathCommand.
 
data:Vector.<Number> — Um vetor de instâncias de Number, onde cada par de números é tratado como uma localização de coordenada (um par x, y). Os pares de valores de coordenadas x e y não são objetos Point; o vetor de dados é uma série de números em que cada par de números representa a localização de uma coordenada.
 
winding:String (default = "evenOdd") — Especifica a regra de contorno usando um valor definido na classe GraphicsPathWinding.

Elementos da API relacionados


Exemplo  ( Como usar este exemplo )

O exemplo a seguir preenche dois objetos Vector e os transmite ao método drawPath() para renderizar uma estrela azul. O primeiro vetor, star_commands, contém uma série de constantes que representam comandos de desenho da classe GraphicsPathCommand. O segundo Vector, star_coord, contém cinco conjuntos de pares de coordenadas x e y. O método drawPath() corresponde aos comandos com as posições para desenhar uma estrela.
package
{
    import flash.display.*;
        
    public class DrawPathExample extends Sprite
    {
        public function DrawPathExample()
        {
            var star_commands:Vector.<int> = new Vector.<int>(5, true);
            
            star_commands[0] = GraphicsPathCommand.MOVE_TO;
            star_commands[1] = GraphicsPathCommand.LINE_TO;
            star_commands[2] = GraphicsPathCommand.LINE_TO;
            star_commands[3] = GraphicsPathCommand.LINE_TO;
            star_commands[4] = GraphicsPathCommand.LINE_TO;
            
            var star_coord:Vector.<Number> = new Vector.<Number>(10, true);
            star_coord[0] = 66; //x
            star_coord[1] = 10; //y 
            star_coord[2] = 23; 
            star_coord[3] = 127; 
            star_coord[4] = 122; 
            star_coord[5] = 50; 
            star_coord[6] = 10; 
            star_coord[7] = 49; 
            star_coord[8] = 109; 
            star_coord[9] = 127;
            
            graphics.beginFill(0x003366);
            graphics.drawPath(star_commands, star_coord);
        }
    }
}

Observação: Por padrão, o método drawPath() usa o tipo de contorno par-ímpar. Dessa forma, o centro da estrela não é preenchido. Especifique o tipo de contorno diferente de zero para o terceiro parâmetro para preencher o centro da estrela:
 graphics.drawPath(star_commands, star_coord, GraphicsPathWinding.NON_ZERO);
 

drawRect

()método 
public function drawRect(x:Number, y:Number, width:Number, height:Number):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Desenha um retângulo. Defina o estilo de linha, o preenchimento, ou ambos, antes de chamar o método drawRect(). Para tanto, chame o método linestyle(), lineGradientStyle(), beginFill(), beginGradientFill() ou beginBitmapFill().

Parâmetros

x:Number — Um número indicando a posição horizontal relativa ao ponto de registro do objeto de exibição pai (em pixels).
 
y:Number — Um número indicando a posição vertical relativa ao ponto de registro do objeto de exibição pai (em pixels).
 
width:Number — A largura do retângulo (em pixels).
 
height:Number — A altura do retângulo (em pixels).


Lança
ArgumentError — Se os parâmetros largura ou altura não forem um número (Number.NaN).

Elementos da API relacionados


Exemplo  ( Como usar este exemplo )

O seguinte exemplo mostra como você pode desenhar formas no ActionScript 3.0. Exemplo fornecido pelo ActionScriptExamples.com.
var movieClip:MovieClip = new MovieClip();
movieClip.graphics.beginFill(0xFF0000);
movieClip.graphics.drawRect(0, 0, 100, 80);
movieClip.graphics.endFill();
movieClip.x = 10;
movieClip.y = 10;
addChild(movieClip);

drawRoundRect

()método 
public function drawRoundRect(x:Number, y:Number, width:Number, height:Number, ellipseWidth:Number, ellipseHeight:Number = NaN):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Desenha um retângulo arredondado. Defina o estilo de linha, o preenchimento, ou ambos, antes de chamar o método drawRoundRect(). Para tanto, chame o método linestyle(), lineGradientStyle(), beginFill(), beginGradientFill() ou beginBitmapFill().

Parâmetros

x:Number — Um número indicando a posição horizontal relativa ao ponto de registro do objeto de exibição pai (em pixels).
 
y:Number — Um número indicando a posição vertical relativa ao ponto de registro do objeto de exibição pai (em pixels).
 
width:Number — A largura do retângulo arredondado (em pixels).
 
height:Number — A altura do retângulo arredondado (em pixels).
 
ellipseWidth:Number — A largura da elipse usada para desenhar os vértices arredondados (em pixels).
 
ellipseHeight:Number (default = NaN) — A altura da elipse usada para desenhar os vértices arredondados (em pixels). Opcional; se nenhum valor for especificado, o valor padrão corresponderá ao fornecido pelo parâmetro larguraElipse.


Lança
ArgumentError — Se os parâmetros largura, altura, larguraElipse ou alturaElipse não forem um número (Number.NaN).

Elementos da API relacionados


Exemplo
Como usar este exemplo
Consulte o exemplo no final desta classe para ver uma ilustração de como usar esse método.

drawTriangles

()método 
public function drawTriangles(vertices:Vector.<Number>, indices:Vector.<int> = null, uvtData:Vector.<Number> = null, culling:String = "none"):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 10, AIR 1.5

Renderiza um conjunto de triângulos, geralmente para distorcer bitmaps e dar uma aparência tridimensional. O método drawTriangles() mapeia o preenchimento atual ou um preenchimento de bitmap para as faces do triângulo usando um conjunto de coordenadas (u,v).

Você pode usar qualquer tipo de preenchimento, mas se o preenchimento tiver uma matriz de transformação, ela será ignorada.

O parâmetro uvtData melhora o mapeamento de textura quando é usado um preenchimento de bitmap.

Parâmetros

vertices:Vector.<Number> — Um Vector de números em que cada par de números é tratado como uma localização de coordenada (um par x, y). O parâmetro vertices é obrigatório.
 
indices:Vector.<int> (default = null) — Um Vector de inteiros ou índices, em que cada grupo de três índices define um triângulo. Se o parâmetro indexes for nulo, cada grupo de três vértices (seis pares x,y no Vector vertices)definirá um triângulo. Caso contrário, cada índice se referirá a um vértice, que é um par de números no Vector vertices. Por exemplo, indexes[1] se refere a (vertices[2], vertices[3]). O parâmetro indexes é opcional, mas os índices geralmente reduzem o volume dos dados despachados e calculados.
 
uvtData:Vector.<Number> (default = null) — Um Vector de coordenadas normalizadas usadas para aplicar mapeamento de textura. Cada coordenada se refere a um ponto no bitmap usado para o preenchimento. Deverá haver uma coordenada UV ou UVT por vértice. Nas coordenadas UV, (0,0) é o ponto superior esquerdo do bitmap, e (1,1), o ponto inferior direito.

Se a extensão deste vetor tiver duas vezes a extensão do vetor vertices, são usadas as coordenadas normalizadas sem a correção de perspectiva.

Se o comprimento desse vetor for três vezes o comprimento do vetor vertices, a terceira coordenada será interpretada como "t", a distância do olho à textura no espaço do olho. Isso ajuda o mecanismo de renderização a aplicar corretamente a perspectiva ao mapear as texturas em três dimensões.

Se o parâmetro uvtData for nulo, serão aplicadas regras normais de preenchimento (e qualquer tipo de preenchimento).

 
culling:String (default = "none") — Especifica se os triângulos voltados para uma direção especificada devem ser renderizados. Esse parâmetro impede a renderização de triângulos que não podem ser vistos na exibição atual. Esse parâmetro pode ser definido como qualquer valor estabelecido pela classe TriangleCulling.

Elementos da API relacionados

endFill

()método 
public function endFill():void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Aplica um preenchimento às linhas e curvas que foram adicionadas desde a última chamada ao método beginFill(), beginGradientFill() ou beginBitmapFill(). O Flash usa o preenchimento especificado na chamada anterior ao método beginFill(), beginGradientFill() ou beginBitmapFill(). Se a posição de desenho atual não for igual à posição anterior especificada em um método moveTo() e um preenchimento for definido, o caminho será fechado com uma linha e então preenchido.

Elementos da API relacionados

lineBitmapStyle

()método 
public function lineBitmapStyle(bitmap:BitmapData, matrix:Matrix = null, repeat:Boolean = true, smooth:Boolean = false):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 10, AIR 1.5

Especifica um bitmap a ser usado no traçado da linha durante o desenho de linhas.

O estilo de linha do bitmap a ser usado nas chamadas subsequentes de métodos Graphics, por exemplo, lineTo() ou drawCircle(). O estilo de linha permanecerá em vigor até você chamar o método lineStyle() ou lineGradientStyle(), ou o método lineBitmapStyle() novamente com parâmetros diferentes.

É possível chamar o método lineBitmapStyle() em meio ao desenho de um caminho para especificar diferentes estilos para diferentes segmentos de linha em um caminho.

Chame o método lineStyle() antes de chamar o método lineBitmapStyle() para ativar um traçado, ou o valor do estilo de linha será undefined.

As chamadas para o método clear() redefinem o estilo de linha como undefined.

Parâmetros

bitmap:BitmapData — O bitmap a ser usado para o traçado da linha.
 
matrix:Matrix (default = null) — Uma matriz de transformação opcional conforme definição da classe flash.geom.Matrix. Você pode usar a matriz para dimensionar ou manipular o bitmap antes de aplicá-lo ao estilo da linha.
 
repeat:Boolean (default = true) — Se o bitmap deve ser repetido lado a lado.
 
smooth:Boolean (default = false) — Se a suavização deve ser aplicada ao bitmap.

Elementos da API relacionados

lineGradientStyle

()método 
public function lineGradientStyle(type:String, colors:Array, alphas:Array, ratios:Array, matrix:Matrix = null, spreadMethod:String = "pad", interpolationMethod:String = "rgb", focalPointRatio:Number = 0):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9

Especifica um gradiente a ser usado no traçado durante o desenho de linhas.

O estilo de linha do gradiente é usado nas chamadas subsequentes de métodos Graphic, por exemplo, lineTo() ou drawCircle(). O estilo de linha permanecerá em vigor até você chamar o método lineStyle() ou lineBitmapStyle(), ou o método lineGradientStyle() novamente com parâmetros diferentes.

É possível chamar o método lineGradientStyle() em meio ao desenho de um caminho para especificar diferentes estilos para diferentes segmentos de linha em um caminho.

Chame o método lineStyle() antes de chamar o método lineGradientStyle() para ativar um traçado, ou o valor do estilo de linha será undefined.

As chamadas para o método clear() redefinem o estilo de linha como undefined.

Parâmetros

type:String — Um valor da classe GradientType que especifica o tipo de gradiente a ser usado: GradientType.LINEAR ou GradientType.RADIAL.
 
colors:Array — Uma matriz de valores de cor hexadecimais RGB a ser usada no gradiente (por exemplo, vermelho é 0xFF0000, azul é 0x0000FF e assim por diante).
 
alphas:Array — Uma matriz de valores alfa para as cores correspondentes na matriz de cores. Os valores válidos são de 0 a 1. Se o valor for menor do que 0, o padrão será 0. Se o valor for maior do que 1, o padrão será 1.
 
ratios:Array — Uma matriz de proporções de distribuição de cores. Os valores válidos são de 0 a 255. Esse valor define a porcentagem da largura na qual a cor é classificada em 100%. O valor 0 representa a posição à esquerda na caixa de gradiente, enquanto 255 representa a posição à direita nessa caixa. Esse valor representa posições na caixa de gradiente e não o espaço de coordenadas do gradiente final, que pode ser mais amplo ou estreito do que a caixa de gradiente. Especifique um valor para valor no parâmetro cores.

Por exemplo, para um gradiente linear que inclui duas cores, azul e verde, a figura a seguir ilustra a disposição das cores nesse gradiente com base em diferentes valores na matriz de proporções:

proporçõesGradiente
[0, 127]gradiente linear de azul a verde com proporções 0 e 127
[0, 255]gradiente linear de azul a verde com proporções 0 e 255
[127, 255]gradiente linear de azul a verde com proporções 127 e 255

Os valores na matriz devem aumentar sequencialmente; por exemplo, [0, 63, 127, 190, 255].

 
matrix:Matrix (default = null) — Uma matriz de transformação é definida pela classe flash.geom.Matrix. A classe flash.geom.Matrix inclui um método createGradientBox(), que permite configurar convenientemente a matriz para uso com o método lineGradientStyle().
 
spreadMethod:String (default = "pad") — Um valor a partir da classe SpreadMethod que especifica o modo de dispersão a ser usado.

gradiente linear com SpreadMethod.PADgradiente linear com SpreadMethod.REFLECTgradiente linear com SpreadMethod.REPEAT
SpreadMethod.PADSpreadMethod.REFLECTSpreadMethod.REPEAT

 
interpolationMethod:String (default = "rgb") — Um valor da classe InterpolationMethod que especifica o valor a ser usado. Por exemplo, considere um gradiente linear simples entre duas cores (com o parâmetro métodoDifusão definido como SpreadMethod.REFLECT). Os diferentes métodos de interpolação afetam a aparência da seguinte maneira:

gradiente linear com InterpolationMethod.LINEAR_RGBgradiente linear com InterpolationMethod.RGB
InterpolationMethod.LINEAR_RGBInterpolationMethod.RGB

 
focalPointRatio:Number (default = 0) — Um número que controla a localização do ponto focal do gradiente. O valor 0 significa que o ponto focal está no centro. O valor 1 significa que o ponto focal está em uma borda do círculo do gradiente. O valor -1 significa que o ponto focal está na outra borda do círculo do gradiente. Valores menores que -1 ou maiores que 1 são arredondados para -1 ou 1. A imagem a seguir mostra um gradiente com focalPointRatio de -0,75:

gradiente radial com focalPointRatio definido como 0,75

Elementos da API relacionados


Exemplo  ( Como usar este exemplo )

O exemplo a seguir desenha um retângulo e um círculo que utilizam um traçado de gradiente de vermelho até verde e até azul.

O método createGradientBox() da classe Matrix é usado para definir a caixa de gradiente como 200 de largura e 40 de altura. A espessura da linha é definida como 5 pixels. A espessura do traçado deve ser definida para o método lineGradientStyle(). O gradiente é definido como linear. As cores do gradiente são definidas como vermelho, verde e azul. A transparência (valor alfa) para as cores é definida como 1 (opaco). A distribuição do gradiente é uniforme, em que as cores são classificadas em 100% em 0 (posição à esquerda na caixa de gradiente), 128 (meio da caixa) e 255 (posição à direita na caixa). A largura do retângulo abrange todo o espectro do gradiente, enquanto o círculo abrange 50% a partir do centro do espectro.

package {
    import flash.display.Sprite;
    import flash.display.Shape;
    import flash.geom.Matrix; 
    import flash.display.GradientType;
    
    public class Graphics_lineGradientStyleExample extends Sprite
    {
        public function Graphics_lineGradientStyleExample()
        {
            var myShape:Shape = new Shape();
            var gradientBoxMatrix:Matrix = new Matrix();
  
            gradientBoxMatrix.createGradientBox(200, 40, 0, 0, 0);  
            
            myShape.graphics.lineStyle(5);
  
            myShape.graphics.lineGradientStyle(GradientType.LINEAR, [0xFF0000,
            0x00FF00, 0x0000FF], [1, 1, 1], [0, 128, 255], gradientBoxMatrix);
            
            myShape.graphics.drawRect(0, 0, 200, 40);
            myShape.graphics.drawCircle(100, 120, 50);  
             
            this.addChild(myShape);
    
        }
    }
}

lineShaderStyle

()método 
public function lineShaderStyle(shader:Shader, matrix:Matrix = null):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 10, AIR 1.5

Especifica um shader a ser usado no traçado da linha durante o desenho de linhas.

O estilo de linha do shader a ser usado nas chamadas subsequentes de métodos Graphics, por exemplo, lineTo() ou drawCircle(). O estilo de linha permanecerá em vigor até você chamar o método lineStyle() ou lineGradientStyle(), ou o método lineBitmapStyle() novamente com parâmetros diferentes.

Você pode chamar o método lineShaderStyle() durante o desenho de um caminho para especificar estilos diferentes para diversos segmentos de linha em um caminho.

Chame o método lineStyle() antes de chamar o método lineShaderStyle() para ativar um traçado, ou o valor do estilo de linha será undefined.

As chamadas para o método clear() redefinem o estilo de linha como undefined.

Parâmetros

shader:Shader — O shader a ser usado no traçado da linha.
 
matrix:Matrix (default = null) — Uma matriz de transformação opcional conforme definição da classe flash.geom.Matrix. Você pode usar a matriz para dimensionar ou manipular o bitmap antes de aplicá-lo ao estilo da linha.

Elementos da API relacionados

lineStyle

()método 
public function lineStyle(thickness:Number = NaN, color:uint = 0, alpha:Number = 1.0, pixelHinting:Boolean = false, scaleMode:String = "normal", caps:String = null, joints:String = null, miterLimit:Number = 3):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Especifica um estilo de linha a ser usado nas chamadas subsequentes de métodos Graphics, por exemplo, lineTo() ou drawCircle(). O estilo de linha permanecerá em vigor até você chamar os métodos lineGradientStyle(), lineBitmapStyle(), ou o método lineStyle() com parâmetros diferentes.

É possível chamar o método lineStyle() em meio ao desenho de um caminho para especificar diferentes estilos para diferentes segmentos de linha no caminho.

Observação: Chamadas ao método clear() redefinem o estilo de linha para undefined.

Nota: o Flash Lite 4 suporta só os três primeiros parâmetros (espessura, cor, e alfa).

Parâmetros

thickness:Number (default = NaN) — Um inteiro que indica a espessura da linha em pontos. Os valores válidos são de 0 a 255. Se um número não for especificado ou se o parâmetro for indefinido, uma linha não será desenhada. Se um valor menor do que 0 for transmitido, o padrão será 0. O valor 0 indica a espessura linha extrafina. A espessura máxima é 255. Se um valor maior do que 255 for transmitido, o padrão será 255.
 
color:uint (default = 0) — Um valor de cor hexadecimal da linha; por exemplo, vermelho é 0xFF0000, azul é 0x0000FF e assim por diante. Se um valor não for indicado, o padrão será 0x000000 (preto). Opcional.
 
alpha:Number (default = 1.0) — Um número que indica o valor alfa da cor da linha. Os valores válidos são de 0 a 1. Se um valor não for indicado, o padrão será 1 (sólido). Se o valor for menor do que 0, o padrão será 0. Se o valor for maior do que 1, o padrão será 1.
 
pixelHinting:Boolean (default = false) — (Não suportado no Flash Lite 4) Um valor booliano que especifica se é preciso aplicar traçados em pixéis cheios. Isso afeta tanto a posição das âncoras de uma curva quanto o tamanho do traçado da linha propriamente dito. Com referênciaPixel definido como true, as larguras da linha são ajustadas como larguras de pixels completos. Com referênciaPixel definido como false, desarticulações podem aparecer em curvas e linhas retas. Por exemplo, as ilustrações seguintes mostram como o Flash Player ou o Adobe AIR renderiza dois retângulos arredondados que são idênticos, exceto pelo fato de o parâmetro pixelHinting usado no método lineStyle() estar definido diferentemente (as imagens são dimensionadas em 200% para enfatizar a diferença):

referênciaPixel false e referênciaPixel true

Se um valor não for fornecido, a linha não usará a referência de pixels.

 
scaleMode:String (default = "normal") — (Não suportado no Flash Lite 4) Um valor da classe LineScaleMode que especifica que modo de escala usar:
  • LineScaleMode.NORMAL — sempre dimensionar a espessura da linha quando o objeto for dimensionado (o padrão).
  • LineScaleMode.NONE — nunca dimensionar a espessura da linha.
  • LineScaleMode.VERTICAL — não dimensionar a espessura da linha apenas se o objeto for dimensionado verticalmente. Por exemplo, considere os círculos a seguir, desenhados com uma linha de um pixel, e cada um com o parâmetro modoEscala definido como LineScaleMode.VERTICAL. O círculo à esquerda é dimensionado apenas verticalmente, enquanto o círculo à direita é dimensionado vertical e horizontalmente:

    Um círculo dimensionado verticalmente e um círculo dimensionado vertical e horizontalmente.

  • LineScaleMode.HORIZONTAL — não dimensionar a espessura da linha apenas se o objeto for dimensionado horizontalmente. Por exemplo, considere os círculos a seguir, desenhados com uma linha de um pixel, e cada um com o parâmetro modoEscala definido como LineScaleMode.HORIZONTAL. O círculo à esquerda é dimensionado apenas horizontalmente, enquanto o círculo à direita é dimensionado vertical e horizontalmente:

    Um círculo dimensionado horizontalmente e um círculo dimensionado vertical e horizontalmente.

 
caps:String (default = null) — (Não suportado no Flash Lite 4)Um valor da classe CapsStyle que especifica o tipo de extremidades no final das linhas. Os valores válidos são: CapsStyle.NONE, CapsStyle.ROUND e CapsStyle.SQUARE. Se um valor não for indicado, o Flash usará extremidades arredondadas.

Por exemplo, as ilustrações a seguir mostram as diferentes configurações de estiloExtremidade. Para cada configuração, a ilustração mostra uma linha azul com uma espessura de 30 (à qual estiloExtremidade se aplica) e uma linha preta superimposta com espessura de 1 (à qual estiloExtremidade não se aplica):

NONE, ROUND e SQUARE

 
joints:String (default = null) — (Não suportado no Flash Lite 4)Um valor da classe JointStyle que especifica o tipo de aparência de união usada nos ângulos. Os valores válidos são: JointStyle.BEVEL, JointStyle.MITER e JointStyle.ROUND. Se um valor não for indicado, o Flash usará uniões arredondadas.

Por exemplo, as ilustrações a seguir mostram as diferentes configurações de uniões. Para cada configuração, a ilustração mostra uma linha azul com ângulo e uma espessura de 30 (à qual estiloUnião se aplica) e uma linha preta superimposta com ângulo e espessura de 1 (à qual estiloUnião não se aplica):

MITRE, ARREDONDADO e BISEL

Observação: Para uniõesdefinidas comoJointStyle.MITER, é possível usar o parâmetro limiteMitre para limitar o comprimento do mitre.

 
miterLimit:Number (default = 3) — (Não suportado no Flash Lite 4) Um número que indica o limite no qual um mitre é cortado. Os valores válidos variam de 1 a 255 (e os valores fora dessa faixa são arredondados para 1 ou 255). Esse valor apenas será usado se estiloUnião estiver definido como "mitre". O valor limiteMitre representa o comprimento pelo qual um mitre pode se estender além do ponto em que as linhas se juntam para formar uma união. O valor expressa um fator da espessura da linha. Por exemplo, com um fator limiteMitre de 2,5 e uma espessura de 10 pixels, o mitre é cortado em 25 pixels.

Por exemplo, considere as seguintes linhas com ângulo, cada uma desenhada com uma espessura de 20, mas com limiteMitre definido como 1, 2 e 4. Superimpostas são linhas de referência pretas que mostram os pontos de junção das uniões:

linhas com limiteMitre definido como 1, 2 e 4

Observe que um determinado valor de limiteMitre tem um ângulo máximo específico para o qual o mitre é cortado. A tabela a seguir lista alguns exemplos:

Valor de limiteMitre:Ângulos menores do que este são cortados.
1.41490 graus
260 graus
430 graus
815 graus

Elementos da API relacionados


Exemplo
Como usar este exemplo
Consulte o exemplo do método lineTo() ou moveTo() para ver ilustrações de como usar o método getStyle().

lineTo

()método 
public function lineTo(x:Number, y:Number):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Desenha uma linha usando o estilo de linha atual a partir da posição de desenho atual até (x, y); a posição de desenho atual é então definida como (x, y). Se o objeto de exibição no qual você está desenhando tiver um conteúdo criado com as ferramentas de desenho do Flash, as chamadas para o método lineTo() serão desenhadas abaixo desse conteúdo. Se você chamar lineTo() antes de qualquer chamada ao método moveTo(), a posição padrão do desenho atual será (0, 0). Se qualquer um dos parâmetros estiver ausente, esse método falhará e a posição do desenho atual não será alterada.

Parâmetros

x:Number — Um número indicando a posição horizontal relativa ao ponto de registro do objeto de exibição pai (em pixels).
 
y:Number — Um número indicando a posição vertical relativa ao ponto de registro do objeto de exibição pai (em pixels).


Exemplo  ( Como usar este exemplo )

O exemplo a seguir desenha um trapezoide usando o método lineTo(), começando nos pixels (100, 100).

A espessura da linha é definida como 10 pixels, a cor é dourada e opaca, as extremidades no final das linhas são definidas como "nenhuma" (já que todas as linhas estão unidas) e a união entre as linhas é definida como MITER, com o limite de mitre definido como 10, para ter vértices pontiagudos.

package {
    import flash.display.Sprite;
    import flash.display.LineScaleMode;
    import flash.display.CapsStyle;
    import flash.display.JointStyle;
    import flash.display.Shape;


    public class Graphics_lineToExample extends Sprite {

        public function Graphics_lineToExample() {

            var trapezoid:Shape = new Shape();    

            trapezoid.graphics.lineStyle(10, 0xFFD700, 1, false, LineScaleMode.VERTICAL,
                               CapsStyle.NONE, JointStyle.MITER, 10);

            trapezoid.graphics.moveTo(100, 100);
 
            trapezoid.graphics.lineTo(120, 50);
            trapezoid.graphics.lineTo(200, 50);
            trapezoid.graphics.lineTo(220, 100);
            trapezoid.graphics.lineTo(100, 100); 

            this.addChild(trapezoid);
        }
    }
}

moveTo

()método 
public function moveTo(x:Number, y:Number):void

Versão da linguagem: ActionScript 3.0
Versões de runtime: AIR 1.0, Flash Player 9, Flash Lite 4

Move a posição do desenho atual até (x, y). Se qualquer um dos parâmetros estiver ausente, esse método falhará e a posição do desenho atual não será alterada.

Parâmetros

x:Number — Um número indicando a posição horizontal relativa ao ponto de registro do objeto de exibição pai (em pixels).
 
y:Number — Um número indicando a posição vertical relativa ao ponto de registro do objeto de exibição pai (em pixels).


Exemplo  ( Como usar este exemplo )

O exemplo a seguir desenha uma linha tracejada com espessura de três pixels usando os métodos moveTo() e lineTo().

Usando o método lineStyle(), a espessura da linha é definida como 3 pixels. Ela também é definida de forma a não ser dimensionada. A cor é definida como vermelho, com opacidade de 25 por cento. A propriedade CapsStyle é definida como quadrado (o padrão é redondo).

Como Graphics_moveToExample é uma ocorrência da classe Sprite, ele tem acesso a todos os métodos de Graphics. Os métodos da classe Graphics podem ser usados para desenhar diretamente no objeto Sprite Graphic_moveToExample. Entretanto, não inserir o objeto de desenho de vetor em uma Forma limita a maneira como ele pode ser gerenciado, movido ou alterado.

package {
    import flash.display.Sprite;
    import flash.display.CapsStyle;
    import flash.display.LineScaleMode;

    public class Graphics_moveToExample extends Sprite
    {
        public function Graphics_moveToExample() {
            
            graphics.lineStyle(3, 0x990000, 0.25, false, 
                            LineScaleMode.NONE, CapsStyle.SQUARE);

            graphics.moveTo(10, 20);
            graphics.lineTo(20, 20);
            graphics.moveTo(30, 20);
            graphics.lineTo(50, 20);
            graphics.moveTo(60, 20);
            graphics.lineTo(80, 20);
            graphics.moveTo(90, 20);
            graphics.lineTo(110, 20);            
            graphics.moveTo(120, 20);
            graphics.lineTo(130, 20);           
        }
    }
}

readGraphicsData

()método 
public function readGraphicsData(recurse:Boolean = true):Vector.<IGraphicsData>

Versão da linguagem: ActionScript 3.0
Versões de runtime: Flash Player 11.6, AIR 3.6

Consulte um objeto Sprite ou Shape (e, opcionalmente, seus filhos) para o conteúdo do vetor do gráfico. O resultado é um vetor de objetos IGraphicsData. As transformações são aplicadas ao objeto de exibição antes da consulta. Assim, todos os caminhos retornados estão no mesmo espaço coordenado. As coordenadas no conjunto de dados de resultados são relativas ao palco, não ao objeto de exibição de amostra.

O resultado inclui os seguintes tipos de objetos, com as limitações especificadas:

  • GraphicsSolidFill
  • GraphicsGradientFill
    • Todas as propriedades do preenchimento de gradiente são retornadas pelo readGraphicsData().
    • A matriz retornada é parecida, mas não exatamente a mesma matriz de entrada.
  • GraphicsEndFill
  • GraphicsBitmapFill
    • A matriz retornada é parecida, mas não exatamente a mesma matriz de entrada.
    • repeat é sempre true.
    • smooth é sempre false.
  • GraphicsStroke
    • thickness é suportado.
    • fill suporta GraphicsSolidFill, GraphicsGradientFill e GraphicsBitmapFill, como descrito anteriormente
    • Todas as outras propriedades possuem valores padrão.
  • GraphicsPath
    • Os únicos comandos suportados são MOVE_TO, CURVE_TO e LINE_TO.

Os seguintes elementos e transformações visuais podem ser representados e não são incluídos nos resultados:

  • Máscaras
  • Texto, com uma exceção: texto estático que é definido com o tipo de suavização de borda "suavização de borda para animação" é renderizado como formas do vetor e incluído no resultado.
  • Preenchimentos com sombreamentos
  • Modos de mesclagem
  • Dimensionamento de 9 fatias
  • Triângulos (criados com o método drawTriangles())
  • Plano de fundo opaco
  • Configurações scrollrect
  • Transformações 2.5D
  • Objetos não visíveis (objetos cuja propriedade visible é false)

Parâmetros

recurse:Boolean (default = true) — se o runtime também deve consultar os filhos do objeto de exibição atual. Uma consulta recursiva pode levar mais tempo e memória para executar. Os resultados são retornados em uma única definição de resultado nivelado, não separados pelo objeto de exibição.

Retorna
Vector.<IGraphicsData> — Um vetor de objetos IGraphicsData representa o conteúdo do vetor do gráfico do objeto de exibição relacionado

Elementos da API relacionados


Exemplo  ( Como usar este exemplo )

O exemplo a seguir utiliza o método readGraphicsData() para recuperar o conteúdo do vetor do gráfico de um objeto de exibição. Ele então redesenha este conteúdo em outro objeto no palco quando o usuário clica no palco com o mouse.

Observe que apesar do conteúdo original do vetor ser desenhado usando o método drawGraphicsData(), os objetos de dados do vetor recuperados pelo método readGraphicsData() não correspondem aos transmitidos pelo método drawGraphicsData(). Por exemplo, os dados do resultado incluem os comandos GraphicsSolidFill e GraphicsEndFill e ambos estão implícitos, mas não estão realmente presentes nos dados originais do gráfico.

package
{
    import flash.display.GraphicsPathCommand;
    import flash.display.IGraphicsData;
    import flash.display.Shape;
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    
    public class ReadGraphicsDataExample extends Sprite
    {
        private var original:Shape;
        private var copy:Shape;
        
        public function ReadGraphicsDataExample()
        {
            original = new Shape();
            original.x = 50;
            original.y = 100;
            addChild(original);
            
            drawSquare();
            
            copy = new Shape();
            copy.x = 250;
            copy.y = 100;
            addChild(copy);
            
            stage.addEventListener(MouseEvent.CLICK, drawCopyOnClick);
        }
        
        private function drawCopyOnClick(event:MouseEvent):void
        {
            // reset
            copy.graphics.clear();
            
            // Sample the vector data. Move the original to 0,0
            // before sampling so that the coordinates match the 
            // relative coordinates of the original.
            var xPos:Number = original.x;
            var yPos:Number = original.y;
            original.x = 0;
            original.y = 0;
            var result:Vector.<IGraphicsData> = original.graphics.readGraphicsData(false);
            original.x = xPos;
            original.y = yPos;
            
            // re-draw
            copy.graphics.drawGraphicsData(result);
        }
        
        private function drawSquare():void
        {
            var squareCommands:Vector.<int> = new Vector.<int>(5, true);
            
            squareCommands[0] = GraphicsPathCommand.MOVE_TO;
            squareCommands[1] = GraphicsPathCommand.LINE_TO;
            squareCommands[2] = GraphicsPathCommand.LINE_TO;
            squareCommands[3] = GraphicsPathCommand.LINE_TO;
            
            var squareCoordinates:Vector.<Number> = new Vector.<Number>(8, true);
            squareCoordinates[0] = 0;
            squareCoordinates[1] = 0; 
            squareCoordinates[2] = 50; 
            squareCoordinates[3] = 0; 
            squareCoordinates[4] = 50; 
            squareCoordinates[5] = 50; 
            squareCoordinates[6] = 0; 
            squareCoordinates[7] = 50; 
            
            original.graphics.beginFill(0x003366);
            original.graphics.drawPath(squareCommands, squareCoordinates);
        }
    }
}
GraphicsExample.as

O exemplo a seguir usa a classe GraphicsExample para desenhar um círculo, um retângulo arredondado e um quadrado. Essa tarefa é concluída com as seguintes etapas:
  1. Declare uma propriedade size para uso posterior na determinação do tamanho de cada forma.
  2. Declare propriedades que definam a cor do plano de fundo como laranja, a cor da borda como cinza escuro, o tamanho da borda como 0 pixels, o raio do vértice como 9 pixels e que definam como 5 pixels o espaço entre a borda do palco e os outros objetos.
  3. Use as propriedades declaradas nas etapas anteriores junto com os métodos embutidos da classe Graphics para desenhar o círculo, o retângulo arredondado e o quadrado nas coordenadas x = 0, y = 0.
  4. Redesenhe cada uma das formas na parte superior do palco, começando em x = 5, y = 5, com um espaçamento de 5 pixels entre as formas.
package {
    import flash.display.DisplayObject;
    import flash.display.Graphics;
    import flash.display.Shape;
    import flash.display.Sprite;

    public class GraphicsExample extends Sprite {
        private var size:uint         = 80;
        private var bgColor:uint      = 0xFFCC00;
        private var borderColor:uint  = 0x666666;
        private var borderSize:uint   = 0;
        private var cornerRadius:uint = 9;
        private var gutter:uint       = 5;

        public function GraphicsExample() {
            doDrawCircle();
            doDrawRoundRect();
            doDrawRect();
            refreshLayout();
        }

        private function refreshLayout():void {
            var ln:uint = numChildren;
            var child:DisplayObject;
            var lastChild:DisplayObject = getChildAt(0);
            lastChild.x = gutter;
            lastChild.y = gutter;
            for (var i:uint = 1; i < ln; i++) {
                child = getChildAt(i);
                child.x = gutter + lastChild.x + lastChild.width;
                child.y = gutter;
                lastChild = child;
            }
        }

        private function doDrawCircle():void {
            var child:Shape = new Shape();
            var halfSize:uint = Math.round(size / 2);
            child.graphics.beginFill(bgColor);
            child.graphics.lineStyle(borderSize, borderColor);
            child.graphics.drawCircle(halfSize, halfSize, halfSize);
            child.graphics.endFill();
            addChild(child);
        }

        private function doDrawRoundRect():void {
            var child:Shape = new Shape();
            child.graphics.beginFill(bgColor);
            child.graphics.lineStyle(borderSize, borderColor);
            child.graphics.drawRoundRect(0, 0, size, size, cornerRadius);
            child.graphics.endFill();
            addChild(child);
        }

        private function doDrawRect():void {
            var child:Shape = new Shape();
            child.graphics.beginFill(bgColor);
            child.graphics.lineStyle(borderSize, borderColor);
            child.graphics.drawRect(0, 0, size, size);
            child.graphics.endFill();
            addChild(child);
        }
    }
}




[ X ]Por que inglês?
O conteúdo na Referência do ActionScript 3.0 aparece em inglês

Nem todas as partes da Referência do ActionScript 3.0 estão traduzidas em todos os idiomas. Quando um elemento de um idioma não está traduzido, ele é exibido em inglês. Por exemplo, a classe ga.controls.HelpBox não está traduzida em nenhum idioma. Por isso, na versão da referência em português do Brasil, a classe ga.controls.HelpBox é exibida em inglês.