ActionScript® 3.0 Referenzhandbuch für die Adobe® Flash®-Plattform
Home  |  Liste der Pakete und Klassen ausblenden |  Pakete  |  Klassen  |  Neue Funktionen  |  Stichwortverzeichnis  |  Anhänge  |  Warum auf Englisch?
Filter: AIR 30.0 und früher, Flash Player 30.0 und früher, Flash Lite 4
Flex 4.6 und früher, Flash Pro CS6 und früher
Filter ausblenden
flash.geom 

Matrix  - AS3

Paketex

Oberste Ebene
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

Sprachelemente

Globale Konstanten
Globale Funktionen
Operatoren
Anweisungen, Schlüsselwörter und Direktiven
Sondertypen

Anhänge

Neue Funktionen
Compiler-Fehler
Compiler-Warnungen
Laufzeitfehler
Migration zu ActionScript 3
Unterstützte Zeichensätze
Nur MXML-Tags
Motion-XML-Elemente
Timed Text-Tags
Liste veralteter Elemente
Konstanten für die Implementierung von Eingabehilfen
Verwendung der ActionScript-Beispiele
Rechtliche Hinweise
Paketflash.geom
Klassepublic class Matrix
VererbungMatrix Inheritance Object

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Die Matrix-Klasse stellt eine Transformationsmatrix dar, die festlegt, wie Punkte eines Koordinatenraums einem anderen Koordinatenraum zugeordnet sind. Sie können verschiedene grafische Transformationen für ein Anzeigeobjekt durchführen, indem Sie die Eigenschaften eines Matrix-Objekts festlegen, dieses Matrix-Objekt auf die matrix-Eigenschaft eines Transform-Objekts anwenden und dieses Transform-Objekt dann als transform-Eigenschaft des Anzeigeobjekts anwenden. Die verfügbaren Transformationsfunktionen sind Schieben (x- und y-Neupositionierung), Drehen, Skalieren und Neigen.

Diese Transformationsfunktionen werden als affine Transformationen bezeichnet. Bei affinen Transformationen bleiben gerade Linien erhalten, d. h., parallele Linien bleiben parallel.

Wenn Sie eine Transformationsmatrix auf ein Anzeigeobjekt anwenden möchten, erstellen Sie ein Transform-Objekt, und legen Sie die entsprechende matrix-Eigenschaft für die Transformationsmatrix und dann die transform-Eigenschaft des Anzeigeobjekts für das Transform-Objekt fest. Matrix-Objekte werden auch als Parameter für bestimmte Methoden verwendet. Dazu zählen u. a. die folgenden Methoden:

  • die draw()-Methode eines BitmapData-Objekts
  • die Methoden beginBitmapFill(), beginGradientFill() und lineGradientStyle() eines Graphics-Objekts

Ein Transformationsmatrixobjekt ist eine 3x3-Matrix mit dem folgenden Inhalt:

Eigenschaften der Matrix-Klasse in Matrixschweibweise

In herkömmlichen Transformationsmatrizen werden zusätzliche Funktionen über die Eigenschaften u, v und w bereitgestellt. Die Matrix-Klasse kann nur im zweidimensionalen Raum verwendet werden. Es wird daher vorausgesetzt, dass der Wert der Eigenschaften u und v 0,0 ist und der Wert der Eigenschaft w 1,0. Die effektiven Werte der Matrix sind wie folgt:

Bei den Eigenschaften der Matrix-Klasse in Matrixschreibweise werden für u, v und w angenommene Werte angezeigt.

Auch die Werte aller anderen sechs Eigenschaften eines Matrix-Objekts lassen sich abrufen und setzen: a, b, c, d, tx und ty.

Die Matrix-Klasse unterstützt die vier Haupttypen der Transformationsfunktionen: Schieben, Skalieren, Drehen und Neigen. Sie können drei dieser Transformationen über spezielle Methoden festlegen, die in der folgenden Tabelle beschrieben sind.

TransformationMethodeMatrixwerteAnzeigeergebnisBeschreibung
Versetzen (Verschieben) translate(tx, ty) Matrixschreibweise von translate-Methodenparametern Darstellung von Auswirkungen der translate-Methode Verschiebt das Bild um tx Pixel nach rechts und ty Pixel nach unten.
Skalieren scale(sx, sy) Matrixschreibweise von scale-Methodenparametern Darstellung von Auswirkungen der scale-Methode Ändert die Bildgröße, wobei die Position jedes Pixels mit sx auf der x-Achse und mit sy auf der y-Achse multipliziert wird.
Drehen rotate(q) Matrixschreibweise von rotate-Methodeneigenschaften Darstellung von Auswirkungen der rotate-Methode Dreht das Bild um den Winkel q, der im Bogenmaß angegeben wird.
Neigen oder Scheren Keine Methode. Die Eigenschaften b und c müssen festgelegt werden. Matrixschreibweise von Eigenschaften der skew-Funktion Darstellung von Auswirkungen der skew-Funktion Verschiebt das Bild stufenweise in paralleler Richtung zur x- oder y-Achse. Die b-Eigenschaft des Matrix-Objekts gibt die Tangente des Neigungswinkels entlang der y-Achse an und die c-Eigenschaft des Matrix-Objekts die Tangente des Neigungswinkels entlang der x-Achse.

Bei jeder Transformation werden die aktuellen Matrixeigenschaften geändert. Daher können Sie mehrere Transformationen miteinander kombinieren. Rufen Sie dazu mehrere Transformationsfunktionen auf, bevor Sie die Matrix auf das entsprechende Anzeigeobjekt anwenden (mithilfe der transform-Eigenschaft des Anzeigeobjekts).

Erstellen Sie mit dem new Matrix()-Konstruktor ein Matrix-Objekt, bevor Sie die Methoden des Matrix-Objekts aufrufen können.

Beispiele anzeigen

Verwandte API-Elemente



Öffentliche Eigenschaften
 EigenschaftDefiniert von
  a : Number
Der Wert, der sich auf die Positionierung der Pixel entlang der x-Achse auswirkt, wenn ein Bild skaliert oder gedreht wird.
Matrix
  b : Number
Der Wert, der sich auf die Positionierung der Pixel entlang der y-Achse auswirkt, wenn ein Bild gedreht oder geneigt wird.
Matrix
  c : Number
Der Wert, der sich auf die Positionierung der Pixel entlang der x-Achse auswirkt, wenn ein Bild gedreht oder geneigt wird.
Matrix
 Inheritedconstructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz.
Object
  d : Number
Der Wert, der sich auf die Positionierung der Pixel entlang der y-Achse auswirkt, wenn ein Bild skaliert oder gedreht wird.
Matrix
  tx : Number
Der Abstand, um den jeder Punkt entlang der x-Achse verschoben werden soll.
Matrix
  ty : Number
Der Abstand, um den jeder Punkt entlang der y-Achse verschoben werden soll.
Matrix
Öffentliche Methoden
 MethodeDefiniert von
  
Matrix(a:Number = 1, b:Number = 0, c:Number = 0, d:Number = 1, tx:Number = 0, ty:Number = 0)
Erstellt ein neues Matrix-Objekt mit den angegebenen Parametern.
Matrix
  
Gibt ein neues Matrix-Objekt zurück, das ein Klon dieser Matrix ist, mit einer exakten Kopie des enthaltenen Objekts.
Matrix
  
Verkettet eine Matrix mit der aktuellen Matrix und kombiniert auf diese Weise die geometrischen Effekte der beiden Matrizen.
Matrix
  
copyColumnFrom(column:uint, vector3D:Vector3D):void
Kopiert ein Vector3D-Objekt in eine bestimmte Spalte des aufrufenden Matrix3D-Objekts.
Matrix
  
copyColumnTo(column:uint, vector3D:Vector3D):void
Kopiert die angegebene Spalte des aufrufenden Matrix-Objekts in das Vector3D-Objekt.
Matrix
  
copyFrom(sourceMatrix:Matrix):void
Kopiert alle Matrixdaten aus dem Point-Quellobjekt in das aufrufende Matrix-Objekt.
Matrix
  
copyRowFrom(row:uint, vector3D:Vector3D):void
Kopiert ein Vector3D-Objekt in eine bestimmte Zeile des aufrufenden Matrix-Objekts.
Matrix
  
copyRowTo(row:uint, vector3D:Vector3D):void
Kopiert die angegebene Zeile des aufrufenden Matrix-Objekts in das Vector3D-Objekt.
Matrix
  
createBox(scaleX:Number, scaleY:Number, rotation:Number = 0, tx:Number = 0, ty:Number = 0):void
Enthält Parameter zur Skalierung, Drehung und Versetzung.
Matrix
  
createGradientBox(width:Number, height:Number, rotation:Number = 0, tx:Number = 0, ty:Number = 0):void
Erstellt den speziellen Matrixstil, der durch die beginGradientFill()- und lineGradientStyle()-Methoden der Graphics-Klasse vorgegeben wird.
Matrix
  
Diese Methode gibt für einen Punkt im noch nicht transformierten Koordinatenraum die entsprechenden Punktkoordinaten nach der Transformation zurück.
Matrix
 Inherited
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde.
Object
  
Setzt jede Matrixeigenschaft auf einen Wert, der zu einer Nulltransformation führt.
Matrix
  
Führt die umgekehrte Transformation der ursprünglichen Matrix durch.
Matrix
 Inherited
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde.
Object
 Inherited
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann.
Object
  
Wendet eine Drehung auf das Matrix-Objekt an.
Matrix
  
Wendet eine Skalierung auf die Matrix an.
Matrix
 Inherited
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest.
Object
  
setTo(aa:Number, ba:Number, ca:Number, da:Number, txa:Number, tya:Number):void
Legt die Mitglieder des Matrix-Objekts auf die angegebenen Werte fest
Matrix
 Inherited
Gibt die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas.
Object
  
Gibt einen Textwert zurück, der eine Eigenschaftenliste des Matrix-Objekts enthält.
Matrix
  
Gibt das Ergebnis der geometrischen Transformation, die durch das Matrix-Objekt dargestellt wird, für den angegebenen Punkt zurück.
Matrix
  
Verschiebt die Matrix entsprechend den Angaben durch die Parameter „dx“ und „dy“ entlang der x- und y-Achse.
Matrix
 Inherited
Gibt den Grundwert des angegebenen Objekts zurück.
Object
Eigenschaftendetails

a

Eigenschaft
public var a:Number

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Der Wert, der sich auf die Positionierung der Pixel entlang der x-Achse auswirkt, wenn ein Bild skaliert oder gedreht wird.


Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird das Matrix-Objekt myMatrix erstellt und der Wert der Eigenschaft a festgelegt.
import flash.geom.Matrix;

var myMatrix:Matrix = new Matrix();
trace(myMatrix.a);  // 1

myMatrix.a = 2;
trace(myMatrix.a);  // 2

b

Eigenschaft 
public var b:Number

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Der Wert, der sich auf die Positionierung der Pixel entlang der y-Achse auswirkt, wenn ein Bild gedreht oder geneigt wird.


Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird das Matrix-Objekt myMatrix erstellt und der Wert der Eigenschaft b festgelegt.
import flash.geom.Matrix;
 
var myMatrix:Matrix = new Matrix();
trace(myMatrix.b);  // 0

var degrees:Number = 30;
var radians:Number = (degrees/180) * Math.PI;
myMatrix.b = Math.tan(radians);
trace(myMatrix.b);  // 0.5773502691896257

c

Eigenschaft 
public var c:Number

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Der Wert, der sich auf die Positionierung der Pixel entlang der x-Achse auswirkt, wenn ein Bild gedreht oder geneigt wird.


Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird das Matrix-Objekt myMatrix erstellt und der Wert der Eigenschaft c festgelegt.
import flash.geom.Matrix;

var myMatrix:Matrix = new Matrix();
trace(myMatrix.c);  // 0

var degrees:Number = 30;
var radians:Number = (degrees/180) * Math.PI;
myMatrix.c = Math.tan(radians);
trace(myMatrix.c);  // 0.5773502691896257

d

Eigenschaft 
public var d:Number

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Der Wert, der sich auf die Positionierung der Pixel entlang der y-Achse auswirkt, wenn ein Bild skaliert oder gedreht wird.


Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird das Matrix-Objekt myMatrix erstellt und der Wert der Eigenschaft d festgelegt.
import flash.geom.Matrix;

var myMatrix:Matrix = new Matrix();
trace(myMatrix.d);  // 1

myMatrix.d = 2;
trace(myMatrix.d);  // 2

tx

Eigenschaft 
public var tx:Number

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Die Strecke, um die jeder Punkt entlang der x-Achse geschoben werden soll.


Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird das Matrix-Objekt myMatrix erstellt und der Wert der Eigenschaft tx wird festgelegt.
import flash.geom.Matrix;

var myMatrix:Matrix = new Matrix();
trace(myMatrix.tx);  // 0

myMatrix.tx = 50;  // 50
trace(myMatrix.tx);

ty

Eigenschaft 
public var ty:Number

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Der Abstand, um den jeder Punkt entlang der y-Achse verschoben werden soll.


Beispiel  ( Verwendung dieses Beispiels )
Im folgenden Beispiel wird das Matrix-Objekt myMatrix erstellt und der Wert der Eigenschaft ty festgelegt.
import flash.geom.Matrix;

var myMatrix:Matrix = new Matrix();
trace(myMatrix.ty);  // 0

myMatrix.ty = 50;
trace(myMatrix.ty);  // 50
Konstruktordetails

Matrix

()Konstruktor
public function Matrix(a:Number = 1, b:Number = 0, c:Number = 0, d:Number = 1, tx:Number = 0, ty:Number = 0)

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Erstellt ein neues Matrix-Objekt mit den angegebenen Parametern. In der Matrixschreibweise sind die Eigenschaften wie folgt angeordnet:

Bei den Eigenschaften der Matrix-Klasse in Matrixschreibweise werden für u, v und w angenommene Werte angezeigt.

Wenn Sie für den new Matrix()-Konstruktor keine Parameter angeben, wird eine Identitätsmatrix mit den folgenden Werten erstellt:

a = 1
b = 0
c = 0
d = 1
tx = 0
ty = 0

In der Matrixschreibweise sieht die Identitätsmatrix wie folgt aus:

Eigenschaften der Matrix-Klasse in Matrixschweibweise

Parameter
a:Number (default = 1) — Der Wert, der sich auf die Positionierung der Pixel entlang der x-Achse auswirkt, wenn ein Bild skaliert oder gedreht wird.
 
b:Number (default = 0) — Der Wert, der sich auf die Positionierung der Pixel entlang der y-Achse auswirkt, wenn ein Bild gedreht oder geneigt wird.
 
c:Number (default = 0) — Der Wert, der sich auf die Positionierung der Pixel entlang der x-Achse auswirkt, wenn ein Bild gedreht oder geneigt wird.
 
d:Number (default = 1) — Der Wert, der sich auf die Positionierung der Pixel entlang der y-Achse auswirkt, wenn ein Bild skaliert oder gedreht wird.
 
tx:Number (default = 0) — Die Strecke, um die jeder Punkt entlang der x-Achse geschoben werden soll.
 
ty:Number (default = 0) — Der Abstand, um den jeder Punkt entlang der y-Achse verschoben werden soll.

Beispiel  ( Verwendung dieses Beispiels )

Im folgenden Beispiel wird matrix_1 erstellt, indem keine Parameter an den Matrix()-Konstruktor gesendet werden, und matrix_2, indem Parameter gesendet werden. Beachten Sie, dass matrix_1, die ohne Parameter erstellt wurde, eine Identitätsmatrix mit den Werten a=1, b=0, c=0, d=1, tx=0, ty=0 ergibt.
import flash.geom.Matrix;

var matrix_1:Matrix = new Matrix();
trace(matrix_1);  // (a=1, b=0, c=0, d=1, tx=0, ty=0)

var matrix_2:Matrix = new Matrix(1, 2, 3, 4, 5, 6);
trace(matrix_2);  // (a=1, b=2, c=3, d=4, tx=5, ty=6)
Methodendetails

clone

()Methode
public function clone():Matrix

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Gibt ein neues Matrix-Objekt zurück, das ein Klon dieser Matrix ist, mit einer exakten Kopie des enthaltenen Objekts.

Rückgabewerte
Matrix — Ein Matrix-Objekt.

concat

()Methode 
public function concat(m:Matrix):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Verkettet eine Matrix mit der aktuellen Matrix und kombiniert auf diese Weise die geometrischen Effekte der beiden Matrizen. In mathematischer Hinsicht entspricht die Verkettung zweier Matrizen der Kombination der beiden Matrizen durch eine Matrixmultiplikation.

Wenn die Matrix m1 beispielsweise ein Objekt um einen Faktor von vier skaliert und Matrix m2 ein Objekt um einen Bogenmaßwert von 1,5707963267949 dreht (Math.PI/2), dann wandelt m1.concat(m2) m1 in eine Matrix um, die ein Objekt um den Faktor vier skaliert und es um einen Bogenmaßwert von Math.PI/2 dreht.

Diese Methode ersetzt die Quellmatrix durch die verkettete Matrix. Wenn Sie zwei Matrizen ohne eine Änderung der beiden Quellmatrizen verketten möchten, kopieren Sie zuerst die Quellmatrix mit der Methode clone() (siehe dazu den Abschnitt mit Beispielen für Klassen).

Parameter

m:Matrix — Die mit der Quellmatrix zu verkettende Matrix.

copyColumnFrom

()Methode 
public function copyColumnFrom(column:uint, vector3D:Vector3D):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 11, AIR 3.0, Flash Lite 4

Kopiert ein Vector3D-Objekt in eine bestimmte Spalte des aufrufenden Matrix3D-Objekts.

Parameter

column:uint — Die Spalte, aus der die Daten kopiert werden.
 
vector3D:Vector3D — Das Vector3D-Objekt, aus dem die Daten kopiert werden.

copyColumnTo

()Methode 
public function copyColumnTo(column:uint, vector3D:Vector3D):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 11, AIR 3.0, Flash Lite 4

Kopiert die angegebene Spalte des aufrufenden Matrix-Objekts in das Vector3D-Objekt. Das w-Element des Vector3D-Objekts wird nicht geändert.

Parameter

column:uint — Die Spalte, aus der die Daten kopiert werden.
 
vector3D:Vector3D — Das Vector3D-Objekt, aus dem die Daten kopiert werden.

copyFrom

()Methode 
public function copyFrom(sourceMatrix:Matrix):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 11, AIR 3.0, Flash Lite 4

Kopiert alle Matrixdaten aus dem Point-Quellobjekt in das aufrufende Matrix-Objekt.

Parameter

sourceMatrix:Matrix — Das Matrix-Objekt, aus dem die Daten kopiert werden.

copyRowFrom

()Methode 
public function copyRowFrom(row:uint, vector3D:Vector3D):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 11, AIR 3.0, Flash Lite 4

Kopiert ein Vector3D-Objekt in eine bestimmte Zeile des aufrufenden Matrix-Objekts.

Parameter

row:uint — Die Zeile, aus der die Daten kopiert werden.
 
vector3D:Vector3D — Das Vector3D-Objekt, aus dem die Daten kopiert werden.

copyRowTo

()Methode 
public function copyRowTo(row:uint, vector3D:Vector3D):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 11, AIR 3.0, Flash Lite 4

Kopiert die angegebene Zeile des aufrufenden Matrix-Objekts in das Vector3D-Objekt. Das w-Element des Vector3D-Objekts wird nicht geändert.

Parameter

row:uint — Die Zeile, aus der die Daten kopiert werden.
 
vector3D:Vector3D — Das Vector3D-Objekt, aus dem die Daten kopiert werden.

createBox

()Methode 
public function createBox(scaleX:Number, scaleY:Number, rotation:Number = 0, tx:Number = 0, ty:Number = 0):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Enthält Parameter zur Skalierung, Drehung und Versetzung. Wenn diese Methode auf eine Matrix angewendet wird, legt sie die Werte der Matrix entsprechend diesen Parametern fest.

Mit der Methode createBox() können Sie die gleiche Matrix erstellen wie beim Anwenden der Methoden identity(), rotate(), scale() und translate() nacheinander. So hat beispielsweise mat1.createBox(2,2,Math.PI/4, 100, 100) denselben Effekt wie:

     import flash.geom.Matrix;
     
     var mat1:Matrix = new Matrix();
     mat1.identity();
     mat1.rotate(Math.PI/4);
     mat1.scale(2,2);
     mat1.translate(10,20);
     

Parameter

scaleX:Number — Der Faktor für die horizontale Skalierung.
 
scaleY:Number — Der Faktor für die vertikale Skalierung.
 
rotation:Number (default = 0) — Der Drehungswert im Bogenmaß.
 
tx:Number (default = 0) — Die Anzahl der entlang der x-Achse nach rechts umzusetzenden (zu verschiebenden) Pixel.
 
ty:Number (default = 0) — Die Anzahl der entlang der y-Achse nach unten umzusetzenden (zu verschiebenden) Pixel.

Verwandte API-Elemente


Beispiel  ( Verwendung dieses Beispiels )

Im folgenden Beispiel werden die x-Skalierung, y-Skalierung, Drehung, x-Position und y-Position von myMatrix gesetzt, indem die Methode createBox() aufgerufen wird.
package
{
    import flash.display.Shape;
    import flash.display.Sprite;
    import flash.geom.Matrix;
    import flash.geom.Transform;
    
    public class Matrix_createBox extends Sprite
    {
        public function Matrix_createBox()
        {
             var myMatrix:Matrix = new Matrix();
             trace(myMatrix.toString());  // (a=1, b=0, c=0, d=1, tx=0, ty=0)
             
             myMatrix.createBox(1, 2, Math.PI/4, 50, 100);
             trace(myMatrix.toString());  
             // (a=0.7071067811865476, b=1.414213562373095, c=-0.7071067811865475, 
             //  d=1.4142135623730951, tx=50, ty=100)
             
             var rectangleShape:Shape = createRectangle(20, 80, 0xFF0000);   
             addChild(rectangleShape);
              
             var rectangleTrans:Transform = new Transform(rectangleShape);
             rectangleTrans.matrix = myMatrix;
        }
        
        public function createRectangle(w:Number, h:Number, color:Number):Shape 
        {
            var rect:Shape = new Shape();
            rect.graphics.beginFill(color);
            rect.graphics.drawRect(0, 0, w, h);
            addChild(rect);
            return rect;
        }
    }
}

createGradientBox

()Methode 
public function createGradientBox(width:Number, height:Number, rotation:Number = 0, tx:Number = 0, ty:Number = 0):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Erstellt den speziellen Matrixstil, der durch die Methoden beginGradientFill() und lineGradientStyle() der Graphics-Klasse vorgegeben wird. Breite und Höhe werden auf ein scaleX/scaleY-Paar skaliert und die tx/ty-Werte werden um die halbe Breite und Höhe abgesetzt.

Dies wird an einem Beispiel für einen Farbverlauf mit den folgenden Merkmalen verdeutlicht:

  • GradientType.LINEAR
  • Zwei Farben, Grün und Blau, bei denen das ratios-Array auf [0, 255] gesetzt ist.
  • SpreadMethod.PAD
  • InterpolationMethod.LINEAR_RGB

In den folgenden Abbildungen sind Farbverläufe, bei denen die Matrix mit der createGradientBox()-Methode definiert wurde, mit verschiedenen Parametereinstellungen dargestellt:

Einstellungen für createGradientBox()Resultierender Farbverlauf
width = 25;
     height = 25; 
     rotation = 0; 
     tx = 0; 
     ty = 0;
daraus resultierender linearer Verlauf
width = 25; 
     height = 25; 
     rotation = 0; 
     tx = 25; 
     ty = 0;
daraus resultierender linearer Verlauf
width = 50; 
     height = 50; 
     rotation = 0; 
     tx = 0; 
     ty = 0;
daraus resultierender linearer Verlauf
width = 50;
     height = 50; 
     rotation = Math.PI / 4; // 45 degrees
     tx = 0; 
     ty = 0;
daraus resultierender linearer Verlauf

Parameter

width:Number — Die Breite des Farbverlaufsfelds.
 
height:Number — Die Höhe des Farbverlaufsfelds.
 
rotation:Number (default = 0) — Der Drehungswert im Bogenmaß.
 
tx:Number (default = 0) — Der entlang der x-Achse nach rechts zu verschiebende Abstand in Pixel. Dieser Wert wird um die Hälfte des width-Parameters versetzt.
 
ty:Number (default = 0) — Der entlang der y-Achse nach unten zu verschiebende Abstand in Pixel. Dieser Wert wird um die Hälfte des height-Parameters versetzt.

Verwandte API-Elemente


Beispiel  ( Verwendung dieses Beispiels )

Im folgenden Beispiel werden die x-Skalierung, y-Skalierung, Drehung, x-Position und y-Position von myMatrix gesetzt, indem die Methode createBox() aufgerufen wird.
package
{
    import flash.display.GradientType;
    import flash.display.Sprite;
    import flash.geom.Matrix;
    
    public class Matrix_createGradientBox extends Sprite
    {
        public function Matrix_createGradientBox()
        {
             var myMatrix:Matrix = new Matrix();
             trace(myMatrix.toString());          // (a=1, b=0, c=0, d=1, tx=0, ty=0)
             
             myMatrix.createGradientBox(200, 200, 0, 50, 50);
             trace(myMatrix.toString());          // (a=0.1220703125, b=0, c=0, d=0.1220703125, tx=150, ty=150)
             
             var colors:Array = [0xFF0000, 0x0000FF];
             var alphas:Array = [100, 100];
             var ratios:Array = [0, 0xFF];
             
             this.graphics.beginGradientFill(GradientType.LINEAR, colors, alphas, ratios, myMatrix);
             this.graphics.drawRect(0, 0, 300, 200);
        }
    }
}

deltaTransformPoint

()Methode 
public function deltaTransformPoint(point:Point):Point

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Diese Methode gibt für einen Punkt im noch nicht transformierten Koordinatenraum die entsprechenden Punktkoordinaten nach der Transformation zurück. Im Gegensatz zur Standardtransformation, die mithilfe der Methode transformPoint() angewendet wird, werden die Umsetzungsparameter tx und ty bei einer Transformation durch die Methode deltaTransformPoint() nicht berücksichtigt.

Parameter

point:Point — Der Punkt, für den das Ergebnis der Matrixtransformation abgerufen werden soll.

Rückgabewerte
Point — Der sich aus der Matrixtransformation ergebende Punkt.

identity

()Methode 
public function identity():void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Setzt jede Matrixeigenschaft auf einen Wert, der zu einer Nulltransformation führt. Ein durch Anwenden einer Identitätsmatrix transformiertes Objekt entspricht dem Original.

Nach Aufruf der Methode identity() hat die resultierende Matrix die folgenden Eigenschaften: a =1, b =0, c =0, d =1, tx =0, ty =0.

In der Matrixschreibweise sieht die Identitätsmatrix wie folgt aus:

Eigenschaften der Matrix-Klasse in Matrixschweibweise

invert

()Methode 
public function invert():void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Führt die umgekehrte Transformation der ursprünglichen Matrix durch. Sie können eine umgekehrte Matrix auf ein Objekt anwenden, um die bei der Anwendung der ursprünglichen Matrix vorgenommene Transformation rückgängig zu machen.


Beispiel  ( Verwendung dieses Beispiels )

Im folgenden Beispiel wird halfScaleMatrix erstellt, und zwar durch den Aufruf der Methodeinvert() aus doubleScaleMatrix. Anschließend wird demonstriert, dass die beiden Matrizen Umkehrungen voneinander sind, d. h., dass sie verwendet werden können, um Transformationen der jeweils anderen Matrix rückgängig zu machen, und zwar durch die Erstellung von originalAndInverseMatrix, die identisch ist mit noScaleMatrix.
package
{
    import flash.display.Shape;
    import flash.display.Sprite;
    import flash.geom.Matrix;
    import flash.geom.Transform;
    
    public class Matrix_invert extends Sprite
    {
        public function Matrix_invert()
        {
            var rect0:Shape = createRectangle(20, 80, 0xFF0000);   
            var rect1:Shape = createRectangle(20, 80, 0x00FF00);   
            var rect2:Shape = createRectangle(20, 80, 0x0000FF);
            var rect3:Shape = createRectangle(20, 80, 0x000000);
            
            var trans0:Transform = new Transform(rect0);
            var trans1:Transform = new Transform(rect1);
            var trans2:Transform = new Transform(rect2);
            var trans3:Transform = new Transform(rect3);
             
            var doubleScaleMatrix:Matrix = new Matrix(2, 0, 0, 2, 0, 0);
            trans0.matrix = doubleScaleMatrix;
            trace(doubleScaleMatrix.toString());  // (a=2, b=0, c=0, d=2, tx=0, ty=0)
             
            var noScaleMatrix:Matrix = new Matrix(1, 0, 0, 1, 0, 0);
            trans1.matrix = noScaleMatrix;
            rect1.x = 50;
            trace(noScaleMatrix.toString());  // (a=1, b=0, c=0, d=1, tx=0, ty=0)
             
            var halfScaleMatrix:Matrix = doubleScaleMatrix.clone();
            halfScaleMatrix.invert();
            trans2.matrix = halfScaleMatrix;
            rect2.x = 100;
            trace(halfScaleMatrix.toString());  // (a=0.5, b=0, c=0, d=0.5, tx=0, ty=0)
             
            var originalAndInverseMatrix:Matrix = doubleScaleMatrix.clone();
            originalAndInverseMatrix.concat(halfScaleMatrix);
            trans3.matrix = originalAndInverseMatrix;
            rect3.x = 150;
            trace(originalAndInverseMatrix.toString());  // (a=1, b=0, c=0, d=1, tx=0, ty=0)            
        }
        
        public function createRectangle(w:Number, h:Number, color:Number):Shape 
        {
            var rect:Shape = new Shape();
            rect.graphics.beginFill(color);
            rect.graphics.drawRect(0, 0, w, h);
            addChild(rect);
            return rect;
        }
    }
}

rotate

()Methode 
public function rotate(angle:Number):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Wendet eine Drehung auf das Matrix-Objekt an.

Durch die Methode rotate() werden die a-, b-, c- und d-Eigenschaften des Matrix-Objekts geändert. In der Matrixschreibweise entspricht dies der Verkettung der aktuellen Matrix mit der folgenden Matrix:

Matrixschreibweise von scale-Methodenparametern

Parameter

angle:Number — Der Drehwinkel im Bogenmaß.

scale

()Methode 
public function scale(sx:Number, sy:Number):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Wendet eine Skalierung auf die Matrix an. Die x-Achse wird mit sx und die y-Achse mit sx multipliziert.

Die Methode scale() ändert die a- und d-Eigenschaften des Matrix-Objekts. In der Matrixschreibweise entspricht dies der Verkettung der aktuellen Matrix mit der folgenden Matrix:

Matrixschreibweise von scale-Methodenparametern

Parameter

sx:Number — Ein Multiplikator zur Skalierung des Objekts entlang der x-Achse.
 
sy:Number — Ein Multiplikator zur Skalierung des Objekts entlang der y-Achse.

setTo

()Methode 
public function setTo(aa:Number, ba:Number, ca:Number, da:Number, txa:Number, tya:Number):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: Flash Player 11, AIR 3.0, Flash Lite 4

Legt die Mitglieder des Matrix-Objekts auf die angegebenen Werte fest

Parameter

aa:Number — die Werte, auf die die Matrix gesetzt wird.
 
ba:Number
 
ca:Number
 
da:Number
 
txa:Number
 
tya:Number

toString

()Methode 
public function toString():String

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Gibt einen Textwert zurück, der eine Eigenschaftenliste des Matrix-Objekts enthält.

Rückgabewerte
String — Ein String mit den Werten für die folgenden Eigenschaften des Matrix-Objekts: a, b, c, d, tx und ty.

transformPoint

()Methode 
public function transformPoint(point:Point):Point

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Gibt das Ergebnis der geometrischen Transformation, die durch das Matrix-Objekt dargestellt wird, für den angegebenen Punkt zurück.

Parameter

point:Point — Der Punkt, für den das Ergebnis der Matrixtransformation abgerufen werden soll.

Rückgabewerte
Point — Der sich aus der Matrixtransformation ergebende Punkt.

translate

()Methode 
public function translate(dx:Number, dy:Number):void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9, Flash Lite 4

Verschiebt die Matrix entsprechend den Angaben durch die Parameter dx und dy entlang der x- und y-Achse.

Parameter

dx:Number — Die Verschiebung entlang der x-Achse nach rechts in Pixel.
 
dy:Number — Die Verschiebung entlang der y-Achse nach unten in Pixel.

MatrixExample.as

Im folgenden Beispiel wird mithilfe der MatrixExample-Klasse demonstriert, wie ein großes Quadrat mit Farbverlaufsfüllung erstellt werden kann. Dies wird in den folgenden Schritten erreicht:
  1. Die Anwendung erstellt ein neues Matrix-Objekt (myMatrix) und mithilfe der trace()-Methode werden die Standardeigenschaftswerte für das myMatrix-Objekt ausgegeben.
  2. Die Anwendung ruft createGradientBox() auf, wobei die Parameter width und height auf 200 Pixel gesetzt sind. Es wurde keine Drehung eingestellt, und der Abstand für die Verschiebung entlang der x- und y-Achse ist auf 50 Pixel gesetzt.
  3. Die Anwendung druckt das myMatrix-Objekt erneut, um die Änderungen durch den Aufruf von createGradientBox() zu verdeutlichen.
  4. Von der Anwendung werden drei Variablen eingerichtet, mit denen das Farbverlaufsfeld gesteuert wird:
    • colors: Setzt die Farben des Farbverlaufs auf einen Bereich zwischen reinem Rot und reinem Blau.
    • alphas: Setzt die Deckkraft auf undurchsichtig.
    • ratios: Legt fest, dass beide Farben gleichmäßig verteilt sind.
  5. Die Anwendung ruft die Graphics-Methode beginGradientFill() auf, die sich auf das myMatrix-Objekt auswirkt. Außerdem ruft sie die lineTo()-Methode auf, und daraufhin wird das Feld mit Farbverlaufsfüllung erstellt.
package {
    import flash.geom.Matrix;
    import flash.display.Sprite;
    import flash.display.GradientType;

    public class MatrixExample extends Sprite {

        public function MatrixExample() {
            var myMatrix:Matrix = new Matrix();
            trace(myMatrix.toString());    // (a=1, b=0, c=0, d=1, tx=0, ty=0)

            myMatrix.createGradientBox(200, 200, 0, 50, 50);
            trace(myMatrix.toString());    // (a=0.1220703125, b=0, c=0, d=0.1220703125, tx=150, ty=150)

            var colors:Array = [0xFF0000, 0x0000FF];
            var alphas:Array = [1, 1];
            var ratios:Array = [0, 0xFF];
            graphics.beginGradientFill(GradientType.LINEAR, colors, alphas, ratios, myMatrix);
            graphics.lineTo(0, 300);
            graphics.lineTo(300, 300);
            graphics.lineTo(300, 0);
            graphics.lineTo(0, 0);
        }
    }
}




[ X ]Warum auf Englisch?
Inhalt des ActionScript 3.0-Referenzhandbuchs wird in englischer Sprache angezeigt

Nicht alle Teile des ActionScript 3.0-Referenzhandbuchs wurden in alle Sprachen übersetzt. Wenn der Text zu einem Sprachelement nicht übersetzt wurde, wird er auf Englisch angezeigt. Zum Beispiel wurden die Informationen zur ga.controls.HelpBox-Klasse nicht in andere Sprachen übersetzt. In der deutschen Version des Referenzhandbuchs erscheint der Abschnitt zur ga.controls.HelpBox-Klasse deshalb auf Englisch.