Adobe® Flash® Platform için ActionScript® 3.0 Başvurusu
Ana Sayfa  |  Paket ve Sınıf Listesini Gizle |  Paketler  |  Sınıflar  |  Yenilikler  |  Dizin  |  Ekler  |  Niçin İngilizce?
Filtreler: AIR 30.0 ve öncesi, Flash Player 30.0 ve öncesi, Flash Lite 4
Flex 4.6 ve öncesi, Flash Pro CS6 ve öncesi
Filtreleri Gizle
flash.geom 

Matrix3D  - AS3

Paketlerx

Üst Düzey
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

Dil Öğeleri

Global Sabitler
Global İşlevler
Operatörler
İfadeler, Anahtar Kelimeler ve Direktifler
Özel Türler

Ekler

Yenilikler
Derleyici Hataları
Derleyici Uyarıları
Çalışma Zamanı Hataları
ActionScript 3'e Geçiş Yapma
Desteklenen Karakter Kümeleri
Yalnızca MXML Etiketleri
Motion XML Öğeleri
Timed Text Etiketleri
Onaylanmamış öğelerin listesi
Erişilebilirlik Uygulaması Sabitleri
ActionScript Örnekleri Nasıl Kullanılır?
Yasal uyarılar
Paketflash.geom
Sınıfpublic class Matrix3D
Miras AlmaMatrix3D Inheritance Object

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Matrix3D sınıfı, üç boyutlu (3B) görüntüleme nesnesinin konumunu ve yönlendirmesini belirleyen bir dönüştürme matrisini temsil eder. Bu matris, çevirme (x, y ve z eksenleri boyunca yeniden konumlandırma), döndürme ve ölçekleme (yeniden boyutlandırma) gibi dönüştürme işlevlerini gerçekleştirebilir. Matrix3D sınıfı ayrıca 3B koordinat alanından iki boyutlu (2B) görünüme noktaları eşleyen perspektif projeksiyonu da gerçekleştirebilir.

Tek bir matris birden çok dönüştürmeyi birleştirip bir defada 3B görüntüleme nesnesine uygulayabilir. Örneğin, bir döndürme ve ardından çevirme gerçekleştirmek için üç boyutlu koordinatlara bir matris uygulanabilir.

Bir görüntüleme nesnesinin z özelliğini veya herhangi bir döndürme veya ölçekleme özelliğini açıkça ayarladığınızda, karşılık gelen bir Matrix3D nesnesi otomatik olarak oluşturulur.

3B görüntüleme nesnesinin Matrix3D nesnesine transform.matrix3d özelliği üzerinden erişebilirsiniz. 2B nesneler Matrix3D nesnesine sahip değildir.

2B nesnenin z özelliğinin değeri sıfır ve matrix3D özelliğinin değeri null şeklindedir.

Not: İki farklı görüntüleme nesnesine aynı Matrix3D nesnesi atanırsa, bir çalışma zamanı hatası atılır.

Matrix3D sınıfı, dört adet satır ve sütundan oluşan ve dönüştürmenin verilerini tutan bir tablo niteliğindeki 4x4 kare matrisini kullanır. Matrisin ilk üç satırında her 3B eksenin (x,y,z) verileri tutulur. Çevirme bilgileri son sütunda bulunur. Yönlendirme ve ölçekleme verileri ilk üç sütunda yer alır. Ölçekleme faktörleri, ilk üç sütundaki diyagonal sayılardır. Matrix3D öğelerinin bir temsili şu şekildedir:

Matrix3D öğeleri

Matrix3D sınıfını kullanmak için matris matematiğini anlamanız gerekmez. Bu sınıf, dönüştürme ve projeksiyon görevini basitleştiren appendTranslation(), appendRotation() veya interpolateTo() gibi belirli yöntemleri sunar. Temel matris öğelerine erişmek için, decompose() ve recompose() yöntemlerini veya rawData özelliğini de kullanabilirsiniz.

Görüntüleme nesneleri, her eksen için ayrı döndürme içermek ve farklı döndürme kombinasyonlarını yönetmek üzere axis rotation özelliklerini önbelleğe alır. Görüntüleme nesnesini dönüştürmek için Matrix3D nesnesinin bir yöntemi çağrıldığında, görüntüleme nesnesinin döndürme önbelleği geçersiz kılınır.

İlgili API Öğeleri



Genel Özellikler
 ÖzellikTanımlayan:
 Inheritedconstructor : Object
Belirli bir nesne örneği için sınıf nesnesine veya yapıcı işlevine bir başvuru.
Object
  determinant : Number
[salt okunur] Bir matrisin ters çevrilebilir olup olmadığını belirleyen bir Number öğesi.
Matrix3D
  position : Vector3D
Dönüştürmenin başvuru karesinde bir görüntüleme nesnesinin konumunu ve 3B koordinatını (x,y,z) tutan bir Vector3D nesnesi.
Matrix3D
  rawData : Vector.<Number>
Her dört öğenin 4x4 matrisinin bir sütun niteliğinde olduğu 16 Numaralı bir Vektör.
Matrix3D
Genel Yöntemler
 YöntemTanımlayan:
  
Matrix3D(v:Vector.<Number> = null)
Matrix3D nesnesi oluşturur.
Matrix3D
  
Geçerli Matrix3D nesnesiyle başka bir Matrix3D nesnesini çarparak matrisi sona ekler.
Matrix3D
  
appendRotation(degrees:Number, axis:Vector3D, pivotPoint:Vector3D = null):void
Matrix3D nesnesinin sonuna artışlı bir dönüş ekler.
Matrix3D
  
appendScale(xScale:Number, yScale:Number, zScale:Number):void
Matrix3D nesnesinin sonuna x, y ve z eksenleri boyunca artışlı bir ölçek değişikliği ekler.
Matrix3D
  
Matrix3D nesnesinin sonuna artışlı bir çevirme ve x, y ve z eksenleri boyunca yeniden konumlandırma ekler.
Matrix3D
  
Geçerli Matrix3D nesnesinin tam kopyası olan yeni bir Matrix3D nesnesi döndürür.
Matrix3D
  
copyColumnFrom(column:uint, vector3D:Vector3D):void
Çağrı yapan Matrix3D nesnesinin belirli sütununa bir Vector3D nesnesi kopyalar.
Matrix3D
  
copyColumnTo(column:uint, vector3D:Vector3D):void
Çağrı yapan Matrix3D nesnesinin belirli sütununu Vector3D nesnesine kopyalar
Matrix3D
  
copyFrom(sourceMatrix3D:Matrix3D):void
Kaynak Matrix3D nesnesindeki tüm matris verilerini çağrı yapan Matrix3D nesnesine kopyalar.
Matrix3D
  
copyRawDataFrom(vector:Vector.<Number>, index:uint = 0, transpose:Boolean = false):void
Kaynak vector nesnesindeki tüm vektör verilerini çağrı yapan Matrix3D nesnesine kopyalar.
Matrix3D
  
copyRawDataTo(vector:Vector.<Number>, index:uint = 0, transpose:Boolean = false):void
Çağrı yapan Matrix3D nesnesindeki tüm matris verisini sağlanan vektöre kopyalar.
Matrix3D
  
copyRowFrom(row:uint, vector3D:Vector3D):void
Çağrı yapan Matrix3D nesnesinin belirli satırına bir Vector3D nesnesi kopyalar.
Matrix3D
  
copyRowTo(row:uint, vector3D:Vector3D):void
Çağrı yapan Matrix3D nesnesinin belirli satırını Vector3D nesnesine kopyalar.
Matrix3D
  
Matrix3D
  
decompose(orientationStyle:String = "eulerAngles"):Vector.<Vector3D>
Dönüştürme matrisinin çevirme, dönüş ve ölçek ayarlarını üç Vector3D nesnesinden oluşan bir Vector olarak döndürür.
Matrix3D
  
Vector3D nesnesini bir alan koordinatından diğerine dönüştürmek için çevirme öğeleri olmadan dönüştürme matrisini kullanır.
Matrix3D
 Inherited
Bir nesnenin belirli bir özelliğinin tanımlı olup olmadığını gösterir.
Object
  
Geçerli matrisi bir kimlik veya birim matrisine dönüştürür.
Matrix3D
  
interpolate(thisMat:Matrix3D, toMat:Matrix3D, percent:Number):Matrix3D
[statik] Bir matrisin çevirisini, dönüşünü ve ölçek dönüşümlerini hedef matrisin aynı öğelerine ekler.
Matrix3D
  
Bu matrisi hedef matrisin çevirisine, dönüşüne ve ölçek dönüşümlerine ekler.
Matrix3D
  
Geçerli matrisi ters çevirir.
Matrix3D
 Inherited
Object sınıfının bir örneğinin parametre olarak belirtilen nesnenin prototip zincirinde olup olmadığını gösterir.
Object
  
pointAt(pos:Vector3D, at:Vector3D = null, up:Vector3D = null):void
Görüntüleme nesnesini belirtilen bir konuma bakacak şekilde döndürür.
Matrix3D
  
Geçerli Matrix3D nesnesini başka bir Matrix3D nesnesiyle çarparak bir matrisi başa ekler.
Matrix3D
  
prependRotation(degrees:Number, axis:Vector3D, pivotPoint:Vector3D = null):void
Matrix3D nesnesinin başına artışlı bir dönüş ekler.
Matrix3D
  
prependScale(xScale:Number, yScale:Number, zScale:Number):void
Matrix3D nesnesinin başına x, y ve z eksenleri boyunca artışlı bir ölçek değişikliği ekler.
Matrix3D
  
Matrix3D nesnesinin başına artışlı bir çevirme ve x, y ve z eksenleri boyunca yeniden konumlandırma ekler.
Matrix3D
 Inherited
Belirtilen özelliğin bulunup bulunmadığını ve numaralandırılabilir olup olmadığını gösterir.
Object
  
recompose(components:Vector.<Vector3D>, orientationStyle:String = "eulerAngles"):Boolean
Dönüştürme matrisinin çevirme, döndürme ve ölçek ayarlarını yapar.
Matrix3D
 Inherited
Dinamik bir özelliğin döngü işlemlerinde kullanılabilirliğini ayarlar.
Object
 Inherited
Bu nesnenin, yerel ayara özel kurallara göre biçimlendirilmiş dize temsilini döndürür.
Object
 Inherited
Belirtilen nesnenin dize olarak temsil edilen halini döndürür.
Object
  
Vector3D nesnesini bir alan koordinatından diğerine dönüştürmek için dönüştürme matrisini kullanır.
Matrix3D
  
Numbers öğelerinden oluşan bir Vector öğesini bir koordinat alanından diğerine dönüştürmek için dönüştürme matrisini kullanır.
Matrix3D
  
Geçerli Matrix3D nesnesini satır ve sütunların değiştirildiği bir matrise dönüştürür.
Matrix3D
 Inherited
Belirtilen nesnenin temel değerini döndürür.
Object
Özellik Ayrıntısı

determinant

özellik
determinant:Number  [salt okunur]

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Bir matrisin ters çevrilebilir olup olmadığını belirleyen bir Number öğesi.

Matrix3D nesnesinin ters çevrilebilir olması gerekir. Matrix3D nesnesinin ters çevrilebilir olduğundan emin olmak için determinant özelliğini kullanabilirsiniz. determinant sıfır olursa, matrisin tersi bulunmaz. Örneğin, bir matrisin satır veya sütununun tamamı sıfır olursa ya da iki satır veya sütun eşitse, determinant sıfır olur. Bir eşitlik serisini çözmek için de determinant kullanılır.

Yalnızca Matrix3D sınıfı gibi bir kare matrisi determinanta sahiptir.



Uygulama
    public function get determinant():Number

İlgili API Öğeleri

position

özellik 
position:Vector3D

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Dönüştürmenin başvuru karesinde bir görüntüleme nesnesinin konumunu ve 3B koordinatını (x,y,z) tutan bir Vector3D nesnesi. position özelliği, matrisin parçalanmasına ve yeniden oluşturulmasına gerek kalmadan görüntüleme nesnesi matrisinin çevirme vektörüne anında erişilmesini sağlar.

position özelliğiyle, dönüştürme matrisinin çevirme öğelerini alabilir ve ayarlayabilirsiniz.



Uygulama
    public function get position():Vector3D
    public function set position(value:Vector3D):void

İlgili API Öğeleri

rawData

özellik 
rawData:Vector.<Number>

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Her dört öğenin 4x4 matrisinin bir sütun niteliğinde olduğu 16 Numaralı bir Vektör.

rawData özelliği, ters çevrilemez bir matrise ayarlanırsa bir istisna atılır. Matrix3D nesnesinin ters çevrilebilir olması gerekir. Ters çevrilemez matris gerekiyorsa, Matrix3D nesnesinin bir alt sınıfını oluşturun.



Uygulama
    public function get rawData():Vector.<Number>
    public function set rawData(value:Vector.<Number>):void

İlgili API Öğeleri

Yapıcı Ayrıntı

Matrix3D

()Yapıcı
public function Matrix3D(v:Vector.<Number> = null)

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Matrix3D nesnesi oluşturur. Matrix3D nesneleri, her dört öğenin bir sütun niteliğinde olduğu 16 Numaralı bir Vektör ile başlatılabilir. Matrix3D nesnesi oluşturulduktan sonra, rawData özelliğiyle bunun matris öğelerine erişebilirsiniz.

Bir parametre tanımlı değilse, yapıcı bir kimlik veya unit Matrix3D nesnesi oluşturur. Matris notasyonunda, kimlik matrisi, ana diyagonal konumdaki tüm öğeler için bir değerine ve diğer tüm öğeler için sıfır değerine sahiptir. Bir kimlik matrisinin rawData özelliği şu şekildedir: 1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1. Kimlik matrisinin konumu veya çevirme değeri şu şekildedir: Vector3D(0,0,0), döndürme ayarı şu şekildedir: Vector3D(0,0,0) ve ölçek değeri de şu şekildedir: Vector3D(1,1,1).

Parametreler
v:Vector.<Number> (default = null) — Her dört öğenin 4x4 matrisinin bir sütun niteliğinde olduğu 16 Numaralı bir Vektör.

İlgili API Öğeleri

Yöntem Ayrıntısı

append

()yöntem
public function append(lhs:Matrix3D):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Geçerli Matrix3D nesnesiyle başka bir Matrix3D nesnesini çarparak matrisi sona ekler. Sonuç, iki matris dönüştürmesini birleştirir. Bir Matrix3D nesnesini birçok matrisle çarpabilirsiniz. Son Matrix3D nesnesi tüm dönüştürmelerin sonucunu içerir.

Matris çarpma işlemi, matris toplama işleminden farklıdır. Matris çarpma işlemi komütatif değildir. Başka bir deyişle, A çarpı B, B çarpı A'ya eşit değildir. append() yönteminde çarpma işlemi soldan başlar, böylece lhs Matrix3D nesnesi, çarpma operatörünün sol tarafındadır.

thisMatrix = lhs * thisMatrix;

append() yöntemi ilk çağrıldığında, değiştirme işlemini üst öğe alanına göre yapar. Sonraki çağrılar, sona eklenen Matrix3D nesnesinin başvuru karesine göredir.

append() yöntemi, kaynak matrisi sona eklenen matrisle değiştirir. Geçerli matrisi değiştirmeden iki matrisi sona eklemek isterseniz, ilk olarak clone() yöntemini kullanarak geçerli matrisi kopyalayın ve sonra kopyaya append() yöntemini uygulayın.

Parametreler

lhs:Matrix3D — Geçerli Matrix3D nesnesiyle çarpılan sol matris.

İlgili API Öğeleri

appendRotation

()yöntem 
public function appendRotation(degrees:Number, axis:Vector3D, pivotPoint:Vector3D = null):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Matrix3D nesnesinin sonuna artışlı bir dönüş ekler. Görüntüleme nesnesine Matrix3D nesnesi uygulandığında, matris, Matrix3D nesnesindeki diğer dönüştürmeden sonra döndürme işlemini gerçekleştirir.

Görüntüleme nesnesinin dönüşü, bir eksen, eksen etrafındaki dönüşün artış derecesi ve nesne dönüşünün merkezi için isteğe bağlı bir pivot noktası tarafından tanımlanır. Eksen herhangi bir genel yön olabilir. Ortak eksenler, X_AXIS (Vector3D(1,0,0)), Y_AXIS (Vector3D(0,1,0)) ve Z_AXIS (Vector3D(0,0,1)) şeklindedir. Havacılık terminolojisinde, y ekseni etrafındaki dönüşe rotadan sapma denir. x ekseni etrafındaki dönüşe yunuslama denir. z ekseni etrafındaki dönüşe tono denir.

Dönüştürmenin sırası önemlidir. Ardından çevirme dönüştürmesi gelen bir dönüş, ardından dönüş dönüştürmesi gelen bir çevirmeden farklı bir etki oluşturur.

Dönüş etkisi mutlak değildir. Bu etki, geçerli konuma ve yönlendirmeye göredir. Dönüştürme matrisine mutlak bir değişiklik uygulamak için recompose() yöntemini kullanın. appendRotation() yöntemi, görüntüleme nesnesinin rotationX özelliği gibi axis rotation özelliğinden de farklıdır. appendRotation() yöntemi matriste bulunanlara göre gerçekleştirilirken, rotation özelliği her zaman çevirmelerden önce gerçekleştirilir. Görüntüleme nesnesinin axis rotation özelliğine benzer bir etki elde ettiğinizden emin olmak için, matristeki diğer dönüştürmeden önce döndürmeyi gerçekleştiren perpendRotation() yöntemini kullanın.

Görüntüleme nesnesinin Matrix3D nesnesine appendRotation() yönteminin dönüştürmesi uygulandığında, görüntüleme nesnesinin önbelleğe alınan rotation özelliği değerleri geçersiz kılınır.

Görüntüleme nesnesinin konumuna göre belirli bir nokta etrafında dönmesini sağlamanın bir yolu, nesnenin çevirmesini belirtilen noktaya ayarlamak, appendRotation() yöntemini kullanarak nesneyi döndürmek ve nesneyi geri orijinal konumuna çevirmektir. Şu örnekte, myObject 3B görüntüleme nesnesi, (10,10,0) koordinatı çevresinde y ekseni dönüşü gerçekleştirir.

    
    myObject.z = 1; 
    myObject.transform.matrix3D.appendTranslation(10,10,0);
    myObject.transform.matrix3D.appendRotation(1, Vector3D.Y_AXIS);
    myObject.transform.matrix3D.appendTranslation(-10,-10,0);
     
    

Parametreler

degrees:Number — Dönüş derecesi.
 
axis:Vector3D — Dönüş ekseni veya yönü. Genel eksenler, X_AXIS (Vector3D(1,0,0)), Y_AXIS (Vector3D(0,1,0)) ve Z_AXIS (Vector3D(0,0,1)) şeklindedir. Bu vektör bir uzunluğuna sahip olmalıdır.
 
pivotPoint:Vector3D (default = null) — Nesne dönüşünün merkezini belirleyen bir nokta. Bir nesnenin varsayılan pivot noktası, o nesnenin kayıt noktasıdır.

İlgili API Öğeleri

appendScale

()yöntem 
public function appendScale(xScale:Number, yScale:Number, zScale:Number):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Matrix3D nesnesinin sonuna x, y ve z eksenleri boyunca artışlı bir ölçek değişikliği ekler. Görüntüleme nesnesine Matrix3D nesnesi uygulandığında, matris, Matrix3D nesnesindeki diğer dönüştürmeden sonra ölçek değişikliklerini gerçekleştirir. Varsayılan ölçek faktörü şudur: (1.0, 1.0, 1.0).

Ölçek, üç eksen (x,y,z) boyunca üç artış hareketinden oluşan bir küme olarak tanımlanır. Her ekseni farklı bir sayıyla çarpabilirsiniz. Bir görüntüleme nesnesine ölçek değişiklikleri uygulandığında, nesnenin boyutu artar veya azalır. Örneğin, x, y ve z eksenlerinin ikiye ayarlanması, nesnenin boyutlarını da iki katına çıkarırken eksenlerin 0.5 olarak ayarlanması ise boyutları yarıya düşürür. Çevirmenin yalnızca belirli bir ekseni etkilediğinden emin olmak için diğer parametreleri bir değerine ayarlayın. Bir parametresi, belirli eksen boyunca herhangi bir ölçek değişikliği olmayacağı anlamına gelir.

Görüntüleme nesnesinin gerilmesi veya küçülmesi gibi bozulmaları yönetme ya da bir konumu yakınlaştırma ve uzaklaştırmanın yanı sıra yeniden boyutlandırma için de appendScale() yöntemi kullanılabilir. Ölçek dönüştürmeleri, görüntüleme nesnesinin döndürmesi ve çevirmesi sırasında otomatik olarak gerçekleştirilir.

Dönüştürmenin sırası önemlidir. Ardından çevirme dönüştürmesi gelen bir yeniden boyutlandırma, ardından dönüştürme yeniden boyutlandırması gelen bir çevirmeden farklı bir etki oluşturur.

Parametreler

xScale:Number — Nesneyi x ekseni boyunca ölçeklemek için kullanılan bir çarpan.
 
yScale:Number — Nesneyi y ekseni boyunca ölçeklemek için kullanılan bir çarpan.
 
zScale:Number — Nesneyi z ekseni boyunca ölçeklemek için kullanılan bir çarpan.

İlgili API Öğeleri

appendTranslation

()yöntem 
public function appendTranslation(x:Number, y:Number, z:Number):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Matrix3D nesnesinin sonuna artışlı bir çevirme ve x, y ve z eksenleri boyunca yeniden konumlandırma ekler. Matrix3D nesnesi görüntüleme nesnesine uygulandığında, Matrix3D nesnesindeki diğer dönüştürme işlemlerinden sonra matris, çevirme değişikliklerini gerçekleştirir.

Çevirme, üç eksen (x,y,z) boyunca üç artış hareketinden oluşan bir küme olarak tanımlanır. Görüntüleme nesnesine dönüştürme uygulandığında, görüntüleme nesnesi parametreler tarafından belirtildiği şekilde geçerli konumundan x, y ve z ekseni boyunca hareket eder. Çevirme işleminin yalnızca belirli bir ekseni etkilediğinden emin olmak için diğer parametreleri sıfır değerine ayarlayın. Sıfır parametresi, belirli bir eksende değişiklik olmayacağı anlamına gelir.

Çevirme değişiklikleri mutlak değildir. Bunlar matrisin geçerli konumuna ve yönlendirmesine göredir. Dönüştürme matrisine mutlak bir değişiklik uygulamak için recompose() yöntemini kullanın. Dönüştürmenin sırası da önemlidir. Ardından dönüş dönüştürmesi gelen bir çevirme, ardından çevirme gelen bir dönüşten farklı bir etki oluşturur.

Parametreler

x:Number — x ekseni boyunca artışlı bir çevirme.
 
y:Number — y ekseni boyunca artışlı bir çevirme.
 
z:Number — z ekseni boyunca artışlı bir çevirme.

İlgili API Öğeleri

clone

()yöntem 
public function clone():Matrix3D

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Geçerli Matrix3D nesnesinin tam kopyası olan yeni bir Matrix3D nesnesi döndürür.

Döndürür
Matrix3D — Geçerli Matrix3D nesnesinin tam kopyası olan yeni bir Matrix3D nesnesi.

copyColumnFrom

()yöntem 
public function copyColumnFrom(column:uint, vector3D:Vector3D):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 11, AIR 3.0, Flash Lite 4

Çağrı yapan Matrix3D nesnesinin belirli sütununa bir Vector3D nesnesi kopyalar.

Parametreler

column:uint — Kopyanın hedef sütunu.
 
vector3D:Vector3D — Verinin kopyalanacağı kaynak Vector3D nesnesi.

copyColumnTo

()yöntem 
public function copyColumnTo(column:uint, vector3D:Vector3D):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 11, AIR 3.0, Flash Lite 4

Çağrı yapan Matrix3D nesnesinin belirli sütununu Vector3D nesnesine kopyalar

Parametreler

column:uint — Verilerin kopyalanacağı kaynak sütun.
 
vector3D:Vector3D — Kopyanın hedef Vector3D nesnesi.

copyFrom

()yöntem 
public function copyFrom(sourceMatrix3D:Matrix3D):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 11, AIR 3.0, Flash Lite 4

Kaynak Matrix3D nesnesindeki tüm matris verilerini çağrı yapan Matrix3D nesnesine kopyalar.

Parametreler

sourceMatrix3D:Matrix3D — Verilerin kopyalanacağı kaynak Matrix3D nesnesi.

copyRawDataFrom

()yöntem 
public function copyRawDataFrom(vector:Vector.<Number>, index:uint = 0, transpose:Boolean = false):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 11, AIR 3.0, Flash Lite 4

Kaynak vector nesnesindeki tüm vektör verilerini çağrı yapan Matrix3D nesnesine kopyalar. İsteğe bağlı dizin parametresi vektörde herhangi bir başlangıç yuvasını seçmenize izin verir.

Parametreler

vector:Vector.<Number> — Verilerin kopyalanacağı kaynak vector nesnesi.
 
index:uint (default = 0)
 
transpose:Boolean (default = false)

copyRawDataTo

()yöntem 
public function copyRawDataTo(vector:Vector.<Number>, index:uint = 0, transpose:Boolean = false):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 11, AIR 3.0, Flash Lite 4

Çağrı yapan Matrix3D nesnesindeki tüm matris verisini sağlanan vektöre kopyalar. İsteğe bağlı dizin parametresi vektörde herhangi bir hedef başlangıç yuvasını seçmenize izin verir.

Parametreler

vector:Vector.<Number> — Verilerin kopyalanacağı hedef vector nesnesi.
 
index:uint (default = 0)
 
transpose:Boolean (default = false)

copyRowFrom

()yöntem 
public function copyRowFrom(row:uint, vector3D:Vector3D):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 11, AIR 3.0, Flash Lite 4

Çağrı yapan Matrix3D nesnesinin belirli satırına bir Vector3D nesnesi kopyalar.

Parametreler

row:uint — Verilerin kopyalanacağı hedef satır.
 
vector3D:Vector3D — Verinin kopyalanacağı kaynak Vector3D nesnesi.

copyRowTo

()yöntem 
public function copyRowTo(row:uint, vector3D:Vector3D):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 11, AIR 3.0, Flash Lite 4

Çağrı yapan Matrix3D nesnesinin belirli satırını Vector3D nesnesine kopyalar.

Parametreler

row:uint — Verilerin kopyalanacağı kaynak satır.
 
vector3D:Vector3D — Verilerin içine kopyalanacağı Vector3D nesnesi.

copyToMatrix3D

()yöntem 
public function copyToMatrix3D(dest:Matrix3D):void

Parametreler

dest:Matrix3D

decompose

()yöntem 
public function decompose(orientationStyle:String = "eulerAngles"):Vector.<Vector3D>

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Dönüştürme matrisinin çevirme, dönüş ve ölçek ayarlarını üç Vector3D nesnesinden oluşan bir Vector olarak döndürür. Çevirme öğelerini tutan birinci Vector3D nesnesi. Dönüş öğelerini tutan birinci Vector3D nesnesi. Ölçek öğelerini tutan birinci Vector3D nesnesi.

interpolateTo() yöntemi gibi bazı Matrix3D yöntemleri, dönüştürme gerçekleştirmek için matrise otomatik olarak decompose ve recompose işlemlerini uygular.

Mutlak bir üst başvuru karesiyle matrisin dönüştürmesini değiştirmek için decompose() yöntemiyle ayarları alın ve uygun değişiklikleri yapın. Ardından, recompose() yöntemini kullanarak değiştirilmiş dönüştürmeye Matrix3D nesnesini ayarlayabilirsiniz.

decompose() yönteminin parametresi, dönüştürme için kullanılacak yönlendirme stilini belirtir. Varsayılan yönlendirme eulerAngles olup bu, her eksen için ayrı dönüş açısına sahip bir yönlendirmeyi tanımlar. Dönüşler art arda gerçekleşir ve birbirinin eksenini değiştirmez. Görüntüleme nesnesinin axis rotation özellikleri, Euler Angles yönlendirme stili dönüştürme gerçekleştirir. Diğer yönlendirme stili seçenekleri arasında axisAngle ve quaternion yer alır. Eksen Açısı yönlendirmesi, yönlendirmeyi belirlemek için bir eksen ve bir açının kombinasyonunu kullanır. Etrafında nesnenin döndüğü eksen, bir yönü temsil eden birim vektörüdür. Açı, vektör etrafındaki dönüşün büyüklüğünü temsil eder. Ayrıca yön, görüntüleme nesnesinin nereye baktığını ve açı da hangi tarafın yukarıda olduğunu belirler. appendRotation() ve prependRotation() yöntemleri Axis Angle yönlendirmesini kullanır. quaternion yönlendirmesi, karmaşık sayıları ve vektörün dördüncü öğesini kullanır. Üç döndürme ekseni (x, y, z) ve bir döndürme açısı (w) yönlendirmeyi temsil eder. interpolate() yöntemi kuaterniyon yönlendirmesini kullanır.

Parametreler

orientationStyle:String (default = "eulerAngles") — Matris dönüştürmesi için kullanılan yönlendirme stilini belirleyen isteğe bağlı bir parametre. Üç yönlendirme stili şunlardır: eulerAngles (EULER_ANGLES sabiti), axisAngle (AXIS_ANGLE sabiti) ve quaternion (QUATERNION sabiti). Farklı yönlendirme stilleri hakkında ek bilgi almak için geom.Orientation3D sınıfına bakın.

Döndürür
Vector.<Vector3D> — Her biri sırayla çevirme, dönüş ve ölçek ayarlarını içeren üç Vector3D nesnesinden oluşan bir Vector.

İlgili API Öğeleri


Örnek  ( Bu örnek nasıl kullanılır? )

Bu örnek, ufuk noktasına doğru ilerlerken yatay olarak gerilmiş bir elipse sahip olmak için decompose() ve recompose() yöntemlerini kullanır. decompose() yöntemiyle döndürülen birinci Vector3D nesnesi, çevirme koordinatlarını tutar. Birinci Vector3D nesnesi, ölçek ayarlarını tutar. Vector3D nesnesinin incrementBy() yöntemi, matris mutlak çevirme ve ölçek ayarlarını arttırır.
package {
    import flash.display.MovieClip;
    import flash.display.Shape;
    import flash.geom.*;
    import flash.events.Event;
    
    public class Matrix3DdecomposeExample extends MovieClip {
        private var ellipse:Shape = new Shape();

        public function Matrix3DdecomposeExample():void {
            
            ellipse.x = (this.stage.stageWidth / 2);
            ellipse.y = (this.stage.stageHeight - 40);
            ellipse.z = 1;
            ellipse.graphics.beginFill(0xFF0000);
            ellipse.graphics.lineStyle(2);
            ellipse.graphics.drawEllipse(0, 0, 50, 40);
            ellipse.graphics.endFill();
            addChild(ellipse);

            ellipse.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
        }

        private function enterFrameHandler(e:Event):void {  

            var v3:Vector.<Vector3D> = new Vector.<Vector3D>(3);
            v3 = ellipse.transform.matrix3D.decompose();
            v3[0].incrementBy(new Vector3D(0,0,1));
            v3[2].incrementBy(new Vector3D(0.01,0,0));
            ellipse.transform.matrix3D.recompose(v3);
        }
    }
}

deltaTransformVector

()yöntem 
public function deltaTransformVector(v:Vector3D):Vector3D

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Vector3D nesnesini bir alan koordinatından diğerine dönüştürmek için çevirme öğeleri olmadan dönüştürme matrisini kullanır. Döndürme ve ölçekleme dönüştürmeleri uygulandıktan sonra, döndürülen Vector3D nesnesi yeni koordinatları tutar. deltaTransformVector() yöntemi yalnızca çevirme dönüştürmesini içeren bir matris uygularsa, döndürülen Vector3D orijinal Vector3D nesnesiyle aynıdır.

Bir koordinat alanındaki görüntüleme nesnesinin ikinci bir görüntüleme nesnesinin döndürme dönüştürmesine yanıt vermesini sağlamak için deltaTransformVector() yöntemini kullanabilirsiniz. Nesne döndürmeyi kopyalamaz; yalnızca döndürme işlemindeki değişiklikleri yansıtmak için konumunu değiştirir. Örneğin, dönen bir 3B görüntüleme nesnesi çizmek üzere display.Graphics API'sini kullanmak için, nesnenin dönen koordinatlarını 2B bir noktaya eşlemeniz gerekir. İlk olarak her dönüşten sonra deltaTransformVector() yöntemini kullanarak nesnenin 3B koordinatlarını alın. Ardından 3B koordinatları 2B noktalara çevirmek için görüntüleme nesnesinin local3DToGlobal() yöntemini uygulayın. Daha sonra dönen 3B nesne çizmek için 2B noktaları kullanabilirsiniz.

Not: Bu yöntem, iletilen Vector3D öğesinin w bileşenini otomatik olarak 0.0 şeklinde ayarlar.

Parametreler

v:Vector3D — Dönüştürülecek koordinatları tutan Vector3D nesnesi.

Döndürür
Vector3D — Dönüştürülen koordinatlara sahip bir Vector3D nesnesi.

İlgili API Öğeleri

identity

()yöntem 
public function identity():void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Geçerli matrisi bir kimlik veya birim matrisine dönüştürür. Kimlik matrisi, ana diyagonal konumdaki öğeler için bir değerine ve diğer tüm öğeler için sıfır değerine sahiptir. Sonuç olarak rawData değeri 1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1, döndürme ayarı Vector3D(0,0,0), konum veya çevirme ayarı Vector3D(0,0,0) ve ölçeği Vector3D(1,1,1) olarak ayarlı olan bir matris elde edilir. Bir kimlik matrisinin temsili şu şekildedir:

Kimlik Matrisi

Bir kimlik matrisi uygulanarak dönüştürülen bir nesne herhangi bir dönüştürme gerçekleştirmez. Başka bir deyişle, bir matris kimlik matrisiyle çarpılırsa, sonuç olarak orijinal matrisle aynı (tamamen aynı) bir matris elde edilir.

interpolate

()yöntem 
public static function interpolate(thisMat:Matrix3D, toMat:Matrix3D, percent:Number):Matrix3D

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Bir matrisin çevirisini, dönüşünü ve ölçek dönüşümlerini hedef matrisin aynı öğelerine ekler.

interpolate() yöntemi, görüntüleme nesnesinin axis rotation özellikleri gibi yöntemler kullanılırken oluşabilecek istenmeyen sonuçlardan bazılarını önler. interpolate() yöntemi, görüntüleme nesnesinin rotation özelliğinin önbelleğe alınan değerini geçersiz kılar ve enterpolasyondan önce görüntüleme nesnesinin matrisinin yönlendirme öğelerini bir kuaterniyona dönüştürür. Bu yöntem döndürme için en kısa, en etkili yolu garantiler. Ayrıca gimbal kilitlenmesi olmadan düzgün bir dönüş sağlar. Her eksenin bağımsız olarak işlendiği Euler Angles kullanıldığında gimbal kilitlenmesi oluşabilir. İki veya daha fazla eksen etrafında döndürme sırasında, eksenler aynı hizaya gelerek beklenmeyen sonuçlara yol açabilir. Kuaterniyon dönüş, gimbal kilitlenmesini önler.

interpolate() yöntemine yapılan sonraki çağrılar, hızlı şekilde başlayan ve sonra başka bir görüntüleme nesnesine yavaşça yaklaşan bir görüntüleme nesnesinin etkisi oluşturur. Örneğin, thisMat parametresini döndürülen Matrix3D nesnesine; toMat parametresini hedef görüntüleme nesnesinin ilişkili Matrix3D nesnesine ve percent parametresini 0.1 değerine ayarlarsanız, görüntüleme nesnesi hedef nesneye yüzde on yaklaşır. Sonraki çağrılarda veya sonraki karelerde, nesne hedefe ulaşıncaya kadar, kalan yüzde 90'ın yüzde onu kadar ve ardından, kalan mesafenin yüzde onu kadar hareket eder.

Parametreler

thisMat:Matrix3D — Enterpolasyonlanacak Matrix3D nesnesi.
 
toMat:Matrix3D — Hedef Matrix3D nesnesi.
 
percent:NumberthisMat Matrix3D nesnesinin hedef Matrix3D nesnesine doğru enterpolasyonlanan yüzde değerini belirleyen, 0 ve 1 arasında bir değer.

Döndürür
Matrix3D — Matrisin değerlerini başlangıç matrisi ile hedef matris arasına yerleştiren öğeleri içeren bir Matrix3D nesnesi. Döndürülen matris this görüntüleme nesnesine uygulandığında, nesne belirtilen yüzde değerinde hedef nesneye yakınlaşır.

İlgili API Öğeleri

interpolateTo

()yöntem 
public function interpolateTo(toMat:Matrix3D, percent:Number):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Bu matrisi hedef matrisin çevirisine, dönüşüne ve ölçek dönüşümlerine ekler.

interpolateTo() yöntemi, görüntüleme nesnesinin axis rotation özellikleri gibi yöntemler kullanılırken oluşabilecek istenmeyen sonuçları önler. interpolateTo() yöntemi, görüntüleme nesnesinin rotation özelliğinin önbelleğe alınan değerini geçersiz kılar ve enterpolasyondan önce görüntüleme nesnesinin matrisinin yönlendirme öğelerini bir kuaterniyona dönüştürür. Bu yöntem döndürme için en kısa, en etkili yolu garantiler. Ayrıca gimbal kilitlenmesi olmadan düzgün bir dönüş sağlar. Her eksenin bağımsız olarak işlendiği Euler Angles kullanıldığında gimbal kilitlenmesi oluşabilir. İki veya daha fazla eksen etrafında döndürme sırasında, eksenler aynı hizaya gelerek beklenmeyen sonuçlara yol açabilir. Kuaterniyon dönüş, gimbal kilitlenmesini önler.

Not: Enterpolasyon durumunda matrisin ölçeklendirme değeri sıfırlanır ve matris normalleştirilir.

interpolateTo() yöntemine yapılan sonraki çağrılar, hızlı şekilde başlayan ve sonra başka bir görüntüleme nesnesine yavaşça yaklaşan bir görüntüleme nesnesinin etkisi oluşturur. Örneğin, percent parametresi 0.1 değerine ayarlanırsa, görüntüleme nesnesi, toMat parametresi tarafından belirtilen hedef nesneye yüzde on yaklaşır. Sonraki çağrılarda veya sonraki karelerde, nesne hedefe ulaşıncaya kadar, kalan yüzde 90'ın yüzde onu kadar ve ardından, kalan mesafenin yüzde onu kadar hareket eder.

Parametreler

toMat:Matrix3D — Hedef Matrix3D nesnesi.
 
percent:Number — Hedefe göre görüntüleme nesnesinin konumunu belirleyen, 0 ile 1 arasında bir değer. Değer 1.0 değerine yakınlaştıkça, görüntüleme nesnesi de geçerli konumuna yakınlaşır. Değer 0 değerine yakınlaştıkça, görüntüleme nesnesi de hedefe yakınlaşır.

İlgili API Öğeleri


Örnek  ( Bu örnek nasıl kullanılır? )

Bu örnekte, ellipse2, üç boyutlu görüntüleme nesnesi, başka bir üç boyutlu görüntüleme nesnesi olan ellipse1 öğesine doğru gider. ellipse2, ellipse1 öğesini takip ederek onu yakalamaya çalışır. ellipse1 öğesi kendi y ekseni çevresinde dönmezse, ellipse2, ellipse1 öğesine ulaşıp üstüne iner. İki elips aynı şekilde çizilir ancak farklı üç boyutlu dünya-alan konumlarına yerleştirilir.
package {
    import flash.display.MovieClip;
    import flash.display.Shape;
    import flash.display.Graphics;
    import flash.geom.*;
    import flash.events.Event;

    public class InterpolateToExample extends MovieClip {
        private var ellipse1:Shape = new Shape();
        private var ellipse2:Shape = new Shape();

        public function InterpolateToExample():void {

            ellipse1 = myEllipses(250, 100, 500, 0xFF0000);
            addChild(ellipse1);
            
            ellipse2 = myEllipses(-30, 120, 1, 0x00FF00);
            addChild(ellipse2);

            addEventListener(Event.ENTER_FRAME, enterFrameHandler);
        }

        private function myEllipses(x:Number, y:Number, z:Number, c:Number):Shape {
            var s:Shape = new Shape();                            
            s.x = x;
            s.y = y;
            s.z = z;
            s.graphics.beginFill(c);
            s.graphics.lineStyle(2);
            s.graphics.drawEllipse(100, 50, 100, 80);
            s.graphics.endFill();
            return s;
        }

        private function enterFrameHandler(e:Event) {
            ellipse1.rotationY += 1;

            ellipse2.transform.matrix3D.interpolateTo(ellipse1.transform.matrix3D, 0.1);
        }
    }
}

invert

()yöntem 
public function invert():Boolean

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Geçerli matrisi ters çevirir. Ters çevrilmiş matris, orijinal matrisle aynı boyuttadır ancak orijinal matrisin tersi bir dönüştürme işlemi gerçekleştirir. Örneğin, orijinal matris, x ekseni etrafında tek yönde nesne dönüşüne sahipse, matrisin tersi de eksen etrafında zıt yönde nesne dönüşüne sahip olur. Bir nesneye ters çevrilmiş bir matris uygulandığında, orijinal matrisin gerçekleştirdiği dönüştürme geri alınır. Matris, ters çevrilmiş matrisiyle çarpılırsa, sonuç kimlik matrisidir.

Bir matrisi başka bir matrise bölmek için matrisin tersi kullanılabilir. A matrisini B matrisine bölmek için A matrisi B matrisinin tersiyle çarpılır. Ters matris, kamera alanıyla da kullanılabilir. Kamera dünya alanında hareket ettiğinde, dünya görünümünden kamera veya görünüm alanına dönüştürme yapmak için dünyadaki nesnenin zıt yönde hareket etmesi gerekir. Örneğin, kamera yaklaştıkça nesneler büyür. Başka bir deyişle, kamera dünya z ekseninin aşağısına hareket ettikçe nesne, z dünya ekseninin yukarısına hareket eder.

invert() yöntemi, geçerli matrisi ters çevrilmiş bir matrisle değiştirir. Geçerli matrisi değiştirmeden bir matrisi ters çevirmek isterseniz, ilk olarak clone() yöntemini kullanarak geçerli matrisi kopyalayın ve sonra kopyaya invert() yöntemini uygulayın.

Matrix3D nesnesinin ters çevrilebilir olması gerekir.

Döndürür
Boolean — Matris başarıyla ters çevrilirse true değerini döndürür.

İlgili API Öğeleri

pointAt

()yöntem 
public function pointAt(pos:Vector3D, at:Vector3D = null, up:Vector3D = null):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Görüntüleme nesnesini belirtilen bir konuma bakacak şekilde döndürür. Bu yöntem, yönlendirmeye yerinde değiştirme uygulanmasını sağlar. Görüntüleme nesnesinin ileri yön vektörü (at Vector3D nesnesi), belirtilen dünyaya göre konuma işaret eder. Görüntüleme nesnesinin yukarı yönü up Vector3D nesnesiyle belirtilir.

pointAt() yöntemi, görüntüleme nesnesinin önbelleğe alınan rotation özelliği değerini geçersiz kılar. Bu yöntem, nesnenin belirtilen konuma dönmesini sağlamak için, görüntüleme nesnesinin matrisini parçalar ve döndürme öğelerini değiştirir. Daha sonra görüntüleme nesnesinin matrisini yeniden oluşturur (günceller), böylece dönüştürme gerçekleştirilir. Nesne hareket eden nesnenin konumu gibi hareket eden bir hedefi işaret ediyorsa, sonraki çağrılarda yöntem nesnenin hareket eden hedefe doğru dönmesini sağlar.

Not: İsteğe bağlı parametreleri ayarlamadan Matrix3D.pointAt() yöntemini kullanırsanız, bir hedef nesnesi, belirtilen dünya konumuyla varsayılan olarak karşı karşıya gelmez. at değerlerini -y eksenine (0,-1,0) ve up değerlerini -z eksenine (0,0,-1) ayarlamanız gerekir.

Parametreler

pos:Vector3D — Hedef nesnenin dünyaya göre konumu. Dünyaya göre terimi, tüm nesnelerin konumlandırıldığı dünya alanına ve koordinatlarına göre nesnenin dönüştürmesini tanımlar.
 
at:Vector3D (default = null) — Görüntüleme nesnesinin işaret etmekte olduğu yeri tanımlayan, nesneye göre vektör. Nesneye göre terimi, nesne alanına, nesnenin kendi başvuru karesine ve koordinat sistemine göre nesnenin dönüştürmesini tanımlar. Varsayılan değer, +y eksenidir (0,1,0).
 
up:Vector3D (default = null) — Görüntüleme nesnesi için “yukarı“ tanımını yapan, nesneye göre vektör. Nesne yukarıdan aşağıya bakılarak çizilirse, +z ekseni bunun “yukarı“ vektörü olur. Nesneye göre terimi, nesne alanına, nesnenin kendi başvuru karesine ve koordinat sistemine göre nesnenin dönüştürmesini tanımlar. Varsayılan değer, +z-eksenidir (0,0,1).

İlgili API Öğeleri


Örnek  ( Bu örnek nasıl kullanılır? )

Bu örnekte, bir üçgen elipsin hareketinin yolunu işaret eder ve takip eder. Elips ve üçgen farklı konumlara ayarlanır. Ardından elips, sahnenin köşesine doğru, yukarı taşınır. Üçgen, elipsin çevirme değişikliklerini takip eder. Üçgenin hareketi üzerindeki etkilerini görmek için üçgenin şeklini ve pointAt() öğesinin "at" ve "up" parametrelerini değiştirebilirsiniz.
package {
    import flash.display.MovieClip;
    import flash.display.Shape;
    import flash.display.Graphics;
    import flash.geom.*;
    import flash.events.Event;

    public class PointAtExample extends MovieClip {
        private var ellipse:Shape = new Shape();
        private var triangle:Shape = new Shape();

        public function PointAtExample():void {
            ellipse.graphics.beginFill(0xFF0000);
            ellipse.graphics.lineStyle(2);
            ellipse.graphics.drawEllipse(30, 40, 50, 40);
            ellipse.graphics.endFill();
            ellipse.x = 100;
            ellipse.y = 150;
            ellipse.z = 1;

            triangle.graphics.beginFill(0x0000FF);
            triangle.graphics.moveTo(0, 0);
            triangle.graphics.lineTo(40, 40);
            triangle.graphics.lineTo(80, 0);
            triangle.graphics.lineTo(0, 0);
            triangle.graphics.endFill();
            triangle.x = 200;
            triangle.y = 50;
            triangle.z = 1;

            addChild(ellipse);
            addChild(triangle);

            ellipse.addEventListener(Event.ENTER_FRAME, ellipseEnterFrameHandler);
            triangle.addEventListener(Event.ENTER_FRAME, triangleEnterFrameHandler);
        }

        private function ellipseEnterFrameHandler(e:Event) {
            if(e.target.y > 0) {
                e.target.y -= 1;
                e.target.x -= 1;
            }
        }
        
        private function triangleEnterFrameHandler(e:Event) {
            e.target.transform.matrix3D.pointAt(ellipse.transform.matrix3D.position,
                                                Vector3D.X_AXIS, Vector3D.Y_AXIS);
        }
    }
}

prepend

()yöntem 
public function prepend(rhs:Matrix3D):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Geçerli Matrix3D nesnesini başka bir Matrix3D nesnesiyle çarparak bir matrisi başa ekler. Sonuç, iki matris dönüştürmesini birleştirir.

Matris çarpma işlemi, matris toplama işleminden farklıdır. Matris çarpma işlemi komütatif değildir. Başka bir deyişle, A çarpı B, B çarpı A'ya eşit değildir. prepend() yönteminde çarpma işlemi sağdan başlar, böylece rhs Matrix3D nesnesi, çarpma operatörünün sağ tarafındadır.

thisMatrix = thisMatrix * rhs

prepend() yöntemiyle yapılan değişiklikler, nesne-alana bağlıdır. Başka bir deyişle, bunlar her zaman nesnenin ilk başvuru karesiyle görecelidir.

prepend() yöntemi, geçerli matrisi başa eklenen matrisle değiştirir. Geçerli matrisi değiştirmeden iki matrisi başa eklemek isterseniz, ilk olarak clone() yöntemini kullanarak geçerli matrisi kopyalayın ve sonra kopyaya prepend() yöntemini uygulayın.

Parametreler

rhs:Matrix3D — Geçerli Matrix3D nesnesinin çarpıldığı matrisin sağ tarafı.

İlgili API Öğeleri

prependRotation

()yöntem 
public function prependRotation(degrees:Number, axis:Vector3D, pivotPoint:Vector3D = null):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Matrix3D nesnesinin başına artışlı bir dönüş ekler. Görüntüleme nesnesine Matrix3D nesnesi uygulandığında, matris, Matrix3D nesnesindeki diğer dönüştürmeden önce döndürme işlemini gerçekleştirir.

Görüntüleme nesnesinin dönüşü, bir eksen, eksen etrafındaki dönüşün artış derecesi ve nesne dönüşünün merkezi için isteğe bağlı bir pivot noktası tarafından tanımlanır. Eksen herhangi bir genel yön olabilir. Ortak eksenler, X_AXIS (Vector3D(1,0,0)), Y_AXIS (Vector3D(0,1,0)) ve Z_AXIS (Vector3D(0,0,1)) şeklindedir. Havacılık terminolojisinde, y ekseni etrafındaki dönüşe rotadan sapma denir. x ekseni etrafındaki dönüşe yunuslama denir. z ekseni etrafındaki dönüşe tono denir.

Dönüştürmenin sırası önemlidir. Ardından çevirme dönüştürmesi gelen bir dönüş, ardından dönüş gelen bir çevirmeden farklı bir etki oluşturur.

Dönüş etkisi mutlak değildir. Etki nesneye göre ve orijinal konum ve yönlendirmenin başvuru karesine göredir. Dönüştürmeye mutlak bir değişiklik uygulamak için recompose() yöntemini kullanın.

Görüntüleme nesnesinin Matrix3D nesnesine prependRotation() yönteminin dönüştürmesi uygulandığında, görüntüleme nesnesinin önbelleğe alınan rotation özelliği değerleri geçersiz kılınır.

Görüntüleme nesnesinin konumuna göre belirli bir nokta etrafında dönmesini sağlamanın bir yolu, nesnenin çevirmesini belirtilen noktaya ayarlamak, prependRotation() yöntemini kullanarak nesneyi döndürmek ve nesneyi geri orijinal konumuna çevirmektir. Şu örnekte, myObject 3B görüntüleme nesnesi, (10,10,0) koordinatı çevresinde y ekseni dönüşü gerçekleştirir.

    
    myObject.z = 1; 
    myObject.transform.matrix3D.prependTranslation(10,10,0);
    myObject.transform.matrix3D.prependRotation(1, Vector3D.Y_AXIS);
    myObject.transform.matrix3D.prependTranslation(-10,-10,0);
     
    

Parametreler

degrees:Number — Dönüş derecesi.
 
axis:Vector3D — Dönüş ekseni veya yönü. Genel eksenler, X_AXIS (Vector3D(1,0,0)), Y_AXIS (Vector3D(0,1,0)) ve Z_AXIS (Vector3D(0,0,1)) şeklindedir. Bu vektör bir uzunluğuna sahip olmalıdır.
 
pivotPoint:Vector3D (default = null) — Dönüşün merkezini belirleyen bir nokta. Bir nesnenin varsayılan pivot noktası, o nesnenin kayıt noktasıdır.

İlgili API Öğeleri


Örnek  ( Bu örnek nasıl kullanılır? )

Bu örnekte, kullanıcı fareyi hareket ettirerek elipsi x ve y eksenleri çevresinde döndürebilir. Elips, merkezindeki kayıt noktasıyla çizilir. Elips, farenin x koordinatını kullanarak kendi y ekseni çevresinde döner. Farenin y koordinatını kullanarak kendi x ekseni etrafında döner.
package {
    import flash.display.MovieClip;
    import flash.display.Shape;
    import flash.geom.*;
    import flash.events.MouseEvent;
    
    public class Matrix3DprependRotationExample extends MovieClip {
        private var ellipse:Shape = new Shape();

        public function Matrix3DprependRotationExample():void {

            ellipse.graphics.beginFill(0xFF0000);
            ellipse.graphics.lineStyle(2);
            ellipse.graphics.drawEllipse(-50, -40, 100, 80);
            ellipse.graphics.endFill();

            ellipse.x = (this.stage.stageWidth / 2);
            ellipse.y = (this.stage.stageHeight / 2);
            ellipse.z = 1;
            
            addChild(ellipse);

            stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
        }

        private function mouseMoveHandler(e:MouseEvent):void {
            var y:int;
            var x:int;
            
            if(e.localX > ellipse.x) {
                y = (Math.round(e.localX) / 100);   
            } else {
                y = -(Math.round(e.localX) / 10);   
            }
            
            if(e.localY > ellipse.y) {
                x = (Math.round(e.localY) / 100);
            } else {
                x = -(Math.round(e.localY) / 100);
            }
            
            ellipse.transform.matrix3D.prependRotation(y, Vector3D.Y_AXIS);
            ellipse.transform.matrix3D.prependRotation(x, Vector3D.X_AXIS);
        }
        
    }
}

prependScale

()yöntem 
public function prependScale(xScale:Number, yScale:Number, zScale:Number):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Matrix3D nesnesinin başına x, y ve z eksenleri boyunca artışlı bir ölçek değişikliği ekler. Görüntüleme nesnesine Matrix3D nesnesi uygulandığında, matris, Matrix3D nesnesindeki diğer dönüştürmeden sonra ölçek değişikliklerini gerçekleştirir. Değişiklikler nesneye göre ve orijinal konum ve yönlendirmenin başvuru karesine göredir. Varsayılan ölçek faktörü şudur: (1.0, 1.0, 1.0).

Ölçek, üç eksen (x,y,z) boyunca üç artış hareketinden oluşan bir küme olarak tanımlanır. Her ekseni farklı bir sayıyla çarpabilirsiniz. Bir görüntüleme nesnesine ölçek değişiklikleri uygulandığında, nesnenin boyutu artar veya azalır. Örneğin, x, y ve z eksenlerinin ikiye ayarlanması, nesnenin boyutlarını da iki katına çıkarırken eksenlerin 0.5 olarak ayarlanması ise boyutları yarıya düşürür. Çevirmenin yalnızca belirli bir ekseni etkilediğinden emin olmak için diğer parametreleri bir değerine ayarlayın. Bir parametresi, belirli eksen boyunca herhangi bir ölçek değişikliği olmayacağı anlamına gelir.

prependScale() yöntemi, bir görüntüleme nesnesinin gerilmesi veya küçülmesi gibi bozulmaları yönetmek ve yeniden boyutlandırmak için kullanılabilir. Aynı zamanda bir konumu yakınlaştırmak ve uzaklaştırmak için de kullanılabilir. Ölçek dönüştürmeleri, görüntüleme nesnesinin döndürmesi ve çevirmesi sırasında otomatik olarak gerçekleştirilir.

Dönüştürmenin sırası önemlidir. Ardından çevirme dönüştürmesi gelen bir yeniden boyutlandırma, ardından dönüştürme yeniden boyutlandırması gelen bir çevirmeden farklı bir etki oluşturur.

Parametreler

xScale:Number — Nesneyi x ekseni boyunca ölçeklemek için kullanılan bir çarpan.
 
yScale:Number — Nesneyi y ekseni boyunca ölçeklemek için kullanılan bir çarpan.
 
zScale:Number — Nesneyi z ekseni boyunca ölçeklemek için kullanılan bir çarpan.

İlgili API Öğeleri

prependTranslation

()yöntem 
public function prependTranslation(x:Number, y:Number, z:Number):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Matrix3D nesnesinin başına artışlı bir çevirme ve x, y ve z eksenleri boyunca yeniden konumlandırma ekler. Matrix3D nesnesi görüntüleme nesnesine uygulandığında, Matrix3D nesnesindeki diğer dönüştürme işlemlerinden sonra matris, çevirme değişikliklerini gerçekleştirir.

Çevirme, görüntüleme nesnesinin geçerli konumundan x, y ve z ekseni boyunca hareket ettiği mesafeyi belirtir. prependTranslation() yöntemi, çevirmeyi, üç eksen (x,y,z) boyunca üç artışlı değişiklik kümesi olarak ayarlar. Yalnızca belirli bir eksende çevirme değişikliği olması için diğer parametreleri sıfır değerine ayarlayın. Sıfır parametresi, belirli bir eksende değişiklik olmayacağı anlamına gelir.

Çevirme değişiklikleri mutlak değildir. Etki nesneye göre ve orijinal konum ve yönlendirmenin başvuru karesine göredir. Dönüştürme matrisine mutlak bir değişiklik uygulamak için recompose() yöntemini kullanın. Dönüştürmenin sırası da önemlidir. Ardından dönüş dönüştürmesi gelen bir çevirme, ardından çevirme dönüştürmesi gelen bir dönüşten farklı bir etki oluşturur. prependTranslation() kullanıldığında, diğer dönüştürmelere bakılmaksızın görüntüleme nesnesi baktığı yönde hareket etmeye devam eder. Örneğin, görüntüleme nesnesi pozitif x eksenine bakıyorsa, nesnenin nasıl döndürüldüğüne bakılmaksızın prependTranslation() tarafından belirtilen yönde hareket etmeye devam eder. Çevirme değişikliklerinin diğer dönüştürmelerden sonra gerçekleşmesini sağlamak için appendTranslation() yöntemini kullanın.

Parametreler

x:Number — x ekseni boyunca artışlı bir çevirme.
 
y:Number — y ekseni boyunca artışlı bir çevirme.
 
z:Number — z ekseni boyunca artışlı bir çevirme.

İlgili API Öğeleri


Örnek  ( Bu örnek nasıl kullanılır? )

Bu örnekte, kullanıcı fare kullanarak bir elipsi sahnenin y ekseninin üstüne itebilir. Kullanıcı fareyi elipsin üzerine taşıdığında, elips y ekseninden on koordinat yukarı çıkar. Fare elipsin üzerinden uzaklaştığında, elips yukarı ulaşmamışsa tekrar y ekseninden on koordinat yukarı çıkar. Elips yukarı ulaştıktan sonra tekrar sahnenin alt kısmına geri gelir.
package {
    import flash.display.MovieClip;
    import flash.display.Sprite;
    import flash.geom.*;
    import flash.events.MouseEvent;

    public class Matrix3DprependTranslationExample extends MovieClip {
        private var ellipse:Sprite = new Sprite();

        public function Matrix3DprependTranslationExample():void {
            ellipse.x = this.stage.stageWidth / 2;
            ellipse.y = this.stage.stageHeight - 100;
            ellipse.z = 1;
            ellipse.graphics.beginFill(0xFF0000);
            ellipse.graphics.lineStyle(2);
            ellipse.graphics.drawEllipse(0, 0, 60, 50);
            ellipse.graphics.endFill();
            addChild(ellipse);

            ellipse.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);
            ellipse.addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler);
        }

        private function mouseOverHandler(e:MouseEvent):void {
            if(ellipse.y > 0) { 
                ellipse.transform.matrix3D.prependTranslation(0, -10, 0);
            } 
        }
        
        private function mouseOutHandler(e:MouseEvent):void {
            if(ellipse.y > 0) { 
                ellipse.transform.matrix3D.prependTranslation(0, -10, 0);
            } else {
                ellipse.transform.matrix3D.prependTranslation(0, 
                                     (this.stage.stageHeight - 100), 0);
            }   
        }
    }
}

recompose

()yöntem 
public function recompose(components:Vector.<Vector3D>, orientationStyle:String = "eulerAngles"):Boolean

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Dönüştürme matrisinin çevirme, döndürme ve ölçek ayarlarını yapar. Görüntüleme nesnesinin rotation özelliği veya Matrix3D nesnesinin döndürme yöntemleri tarafından yapılan artış hareketinden farklı olarak, recompose() yöntemi tarafından yapılan değişiklikler mutlak değişikliklerdir. recompose() yöntemi, matris dönüştürmesinin üzerine yazar.

Mutlak bir üst başvuru karesiyle matrisin dönüştürmesini değiştirmek için decompose() yöntemiyle ayarları alın ve uygun değişiklikleri yapın. Ardından, recompose() yöntemini kullanarak değiştirilmiş dönüştürmeye Matrix3D nesnesini ayarlayabilirsiniz.

recompose() yönteminin parametresi, dönüştürme için kullanılan yönlendirme stilini belirtir. Varsayılan yönlendirme eulerAngles olup bu, her eksen için ayrı dönüş açısına sahip bir yönlendirmeyi tanımlar. Dönüşler art arda gerçekleşir ve birbirinin eksenini değiştirmez. Görüntüleme nesnesinin axis rotation özellikleri, Euler Angles yönlendirme stili dönüştürme gerçekleştirir. Diğer yönlendirme stili seçenekleri arasında axisAngle ve quaternion yer alır. Axis Angle yönlendirmesi, yönlendirmeyi belirlemek için bir eksen ve açı kombinasyonunu kullanır. Etrafında nesnenin döndüğü eksen, bir yönü temsil eden birim vektörüdür. Açı, vektör etrafındaki dönüşün büyüklüğünü temsil eder. Ayrıca yön, görüntüleme nesnesinin nereye baktığını ve açı da hangi tarafın yukarıda olduğunu belirler. appendRotation() ve prependRotation() yöntemleri Axis Angle yönlendirmesini kullanır. quaternion yönlendirmesi, karmaşık sayıları ve vektörün dördüncü öğesini kullanır. Yönlendirme, üç dönüş ekseni (x,y,z) ve bir dönüş açısıyla temsil edilir. interpolate() yöntemi kuaterniyon yönlendirmesini kullanır.

Parametreler

components:Vector.<Vector3D> — Matrix3D nesnesinin çevirme, döndürme ve ölçek öğelerini değiştirecek üç Vector3D nesnesinden oluşan bir Vector.
 
orientationStyle:String (default = "eulerAngles") — Matris dönüştürmesi için kullanılan yönlendirme stilini belirleyen isteğe bağlı bir parametre. Üç tür yönlendirme stili vardır: eulerAngles (sabit EULER_ANGLES), axisAngle (sabit AXIS_ANGLE) ve quaternion (sabit QUATERNION). Farklı yönlendirme stilleri hakkında ek bilgi almak için geom.Orientation3D sınıfına bakın.

Döndürür
Booleancomponents Vektörünün herhangi bir Vector3D öğesi bulunmuyorsa veya null ise false döndürür.

İlgili API Öğeleri

transformVector

()yöntem 
public function transformVector(v:Vector3D):Vector3D

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Vector3D nesnesini bir alan koordinatından diğerine dönüştürmek için dönüştürme matrisini kullanır. Döndürülen Vector3D nesnesi, dönüştürmeden sonra yeni koordinatları tutar. Çevirme de dahil olmak üzere tüm matris dönüştürmeleri Vector3D nesnesine uygulanır.

transformVector() yönteminin sonucu bir görüntüleme nesnesinin konumuna uygulandıysa, yalnızca görüntüleme nesnesinin konumu değişir. Görüntüleme nesnesinin döndürme ve ölçek öğeleri aynı kalır.

Not: Bu yöntem, iletilen Vector3D öğesinin w bileşenini otomatik olarak 1.0 şeklinde ayarlar.

Parametreler

v:Vector3D — Dönüştürülecek koordinatları tutan Vector3D nesnesi.

Döndürür
Vector3D — Dönüştürülen koordinatlara sahip bir Vector3D nesnesi.

İlgili API Öğeleri

transformVectors

()yöntem 
public function transformVectors(vin:Vector.<Number>, vout:Vector.<Number>):void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Number öğelerinden oluşan bir Vector öğesini bir koordinat alanından diğerine dönüştürmek için dönüştürme matrisini kullanır. tranformVectors() yöntemi, vin Vector nesnesindeki her üç Number öğesini 3B bir koordinat (x,y,z) olarak okur ve dönüştürülen 3B koordinatı vout Vector nesnesine yerleştirir. Çevirme de dahil olmak üzere tüm matris dönüştürmeleri vin Vector nesnesine uygulanır. 3B bir nesneyi kafes olarak oluşturup dönüştürmek için transformVectors() yöntemini kullanabilirsiniz. Kafes, nesnenin şeklini tanımlayan köşelerin bir koleksiyonudur.

Parametreler

vin:Vector.<Number> — Her üç Number öğesinin dönüştürülecek 3B koordinat (x,y,z) olduğu bir Numbers öğelerinden oluşan Vector öğesi.
 
vout:Vector.<Number> — Her üç Number öğesinin dönüştürülen 3B koordinat (x, y, z) olduğu bir Numbers öğelerinden oluşan Vector öğesi.

İlgili API Öğeleri

transpose

()yöntem 
public function transpose():void

Dil Sürümü: ActionScript 3.0
Çalışma Zamanı Sürümleri: Flash Player 10, AIR 1.5

Geçerli Matrix3D nesnesini satır ve sütunların değiştirildiği bir matrise dönüştürür. Örneğin, geçerli Matrix3D nesnesinin rawData öğesi, 1,2,3,4,11,12,13,14,21,22,23,24,31,32,33,34 olan 16 sayıyı içeriyorsa transpose() yöntemi her dört öğeyi bir satır olarak okur ve satırları sütunlara dönüştürür. Sonuç, şu sayıların rawData öğesini içeren matristir: 1,11,21,31,2,12,22,32,3,13,23,33,4,14,24,34.

transpose() yöntemi, geçerli matrisi sırası değişen bir matrisle değiştirir. Geçerli matrisi değiştirmeden bir matrisin sırasını değiştirmek isterseniz, ilk olarak clone() yöntemini kullanarak kaynak matrisi kopyalayın ve sonra kopyaya transpose() yöntemini uygulayın.

Dikey bir matris, sırası değişmiş hali, ters çevrilmiş haline eşit olan bir kare matrisidir.





[ X ]Niçin İngilizce?
ActionScript 3.0 Başvurusu'ndaki içerik İngilizce görünür

ActionScript 3.0 Başvurusu'nun tüm bölümleri tüm dillere çevrilmemiştir. Bir dil öğesi çevrilmediğinde İngilizce görünür. Örneğin, ga.controls.HelpBox sınıfı hiçbir dile çevrilmez. Bu nedenle, başvurunun Türkçe versiyonunda ga.controls.HelpBox sınıfı İngilizce görünür.