包 | spark.effects |
类 | public class Rotate3D |
继承 | Rotate3D AnimateTransform3D AnimateTransform Animate Effect EventDispatcher Object |
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
与所有基于 AnimateTransform 的效果一样,此效果仅可用于 UIComponent 和 GraphicElement 的子类,因为这些效果依赖于这些类中的特定转换函数。另外,正在同一目标上并行运行的转换效果会作为一个单一效果实例运行。因此,这些转换效果会共享由任何起作用的效果设置的转换中心。
MXML 语法隐藏 MXML 语法The <s:Rotate3D>
tag
inherits all of the tag attributes of its superclass,
and adds the following tag attributes:
<s:Rotate3D Properties id="ID" angleXFrom="no default" angleXTo="no default" angleYFrom="no default" angleYTo="no default" angleZFrom="no default" angleZTo="no default" />
默认 MXML 属性motionPaths
属性 | 由以下参数定义 | ||
---|---|---|---|
angleXFrom : Number
目标对象围绕 x 轴旋转的起始角度(以度表示)。 | Rotate3D | ||
angleXTo : Number
目标对象围绕 x 轴旋转的结束角度(以度表示)。 | Rotate3D | ||
angleYFrom : Number
目标对象围绕 y 轴旋转的起始角度(以度表示)。 | Rotate3D | ||
angleYTo : Number
目标对象围绕 y 轴旋转的结束角度(以度表示)。 | Rotate3D | ||
angleZFrom : Number
目标对象围绕 z 轴旋转的起始角度(以度表示)。 | Rotate3D | ||
angleZTo : Number
目标对象围绕 z 轴旋转的结束角度(以度表示)。 | Rotate3D | ||
applyChangesPostLayout : Boolean [覆盖]
由 AnimateTransform 的子类用于指定该效果是否更改布局管理器所用的转换值,或者它是否更改运行布局之后使用的值。 | AnimateTransform3D | ||
applyLocalProjection : Boolean
若为 true,则该效果会使用效果中的其它投影相关属性创建透视投影,并在它开始播放时将其应用于目标组件的父项。 | AnimateTransform3D | ||
autoCenterProjection : Boolean = true
设置为 false 可以禁止 3D 效果自动将投影点设置到目标中心。 | AnimateTransform3D | ||
autoCenterTransform : Boolean = false
指定在转换效果开始播放时,该效果是否围绕目标的中心 (width/2, height/2) 发生。 | AnimateTransform | ||
className : String [只读]
效果类的名称,如“Fade”。 | Effect | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
customFilter : mx.effects:EffectTargetFilter
指定一个 EffectTargetFilter 类型的自定义滤镜对象,效果将使用此对象来确定播放效果的目标。 | Effect | ||
disableLayout : Boolean
如果为 true,则效果通过将容器的 autoLayout 属性设置为 false 对其目标的父容器禁用布局,并同时对目标对象禁用任何布局约束。 | Animate | ||
duration : Number
效果的持续时间(以毫秒为单位)。 | Effect | ||
easer : IEaser
此效果的缓动行为。 | Animate | ||
effectTargetHost : mx.effects:IEffectTargetHost
一个属性,您可以通过设置此属性访问数据效果基于列表的目标控件。 | Effect | ||
fieldOfView : Number
为三维视野指定一个角度(介于 0 度到 180 度之间)。 | AnimateTransform3D | ||
filter : String
指定用于过滤效果目标的算法。 | Effect | ||
focalLength : Number
眼睛或视点的原点 (0,0,0) 与位于 z 轴的显示对象之间的距离。 | AnimateTransform3D | ||
hideFocusRing : Boolean
确定在开始播放效果时,效果是否应隐藏对焦环。 | Effect | ||
instanceClass : Class
一个 Class 类型的对象,用于指定此效果类的效果实例类。 | Effect | ||
interpolator : IInterpolator
此效果计算属性的起始值和结束值之间的值所用的插补器。 | Animate | ||
isPlaying : Boolean [只读]
一个只读标志,如果当前正在播放效果的任一实例,则为 true;否则,则为 false。 | Effect | ||
perElementOffset : Number
在效果的第一个目标之后,其他效果目标的附加延迟(以毫秒为单位)。 | Effect | ||
playheadTime : Number
效果的当前时间位置。 | Effect | ||
projectionX : Number = 0
将投影点设置为投影点在 x 方向距目标 (0, 0) 坐标的偏移量。 | AnimateTransform3D | ||
projectionY : Number = 0
将投影点设置为投影点在 y 方向距目标 (0, 0) 坐标的偏移量。 | AnimateTransform3D | ||
relevantProperties : Array
一个属性名称 Array,执行过滤时将使用这些名称。 | Effect | ||
relevantStyles : Array
一个样式名称 Array,执行过滤时将使用这些名称。 | Effect | ||
removeLocalProjectionWhenComplete : Boolean = false
如果为 true,则该效果会在它完成播放时从目标组件的父组件中删除透视投影。 | AnimateTransform3D | ||
startDelay : int = 0
开始播放效果前需要等待的时间(以毫秒为单位)。 | Effect | ||
target : Object
要应用此效果的对象。 | Effect | ||
targets : Array
一个对象 Array,这些对象都是效果的目标。 | Effect | ||
transformX : Number
设置转换中心的 x 坐标(由 autoCenterTransform 属性覆盖时除外)。 | AnimateTransform | ||
transformY : Number
设置转换中心的 y 坐标(由 autoCenterTransform 属性覆盖时除外)。 | AnimateTransform | ||
transformZ : Number
设置转换中心的 z 坐标(由 autoCenterTransform 属性覆盖时除外)。 | AnimateTransform | ||
triggerEvent : Event
如果触发了某个效果,则此项目是由 EffectManager 传递给此 Effect 的 Event 对象;如果 EffectManager 当前没有播放此效果,则为 null。 | Effect |
方法 | 由以下参数定义 | ||
---|---|---|---|
构造函数。 | Rotate3D | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
捕获效果目标上相关属性的当前值,并将这些值另存为结束值。 | Effect | ||
捕获另一组目标相关属性的当前值。在运行数据更改效果时,Flex 将使用此函数。
| Effect | ||
捕获效果目标上相关属性的当前值。 | Effect | ||
创建一个效果实例并对其进行初始化。 | Effect | ||
获取一个目标对象 Array,并对每个目标调用 createInstance() 方法。 | Effect | ||
删除实例中的事件侦听器,然后从实例列表中删除该实例。 | Effect | ||
将事件调度到事件流中。 | EventDispatcher | ||
中断当前正在播放的效果,立即跳转到该效果的末尾。 | Effect | ||
返回一个字符串 Array,其中每个 String 都是被此效果更改的属性的名称。 | Effect | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
暂停效果,直到调用 resume() 方法。 | Effect | ||
开始播放效果。 | Effect | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
在效果由 pause() 方法暂停后继续播放效果。 | Effect | ||
逆序播放效果;如果当前正在播放效果,则从该效果的当前位置开始逆序播放。 | Effect | ||
设置循环操作动态属性的可用性。 | Object | ||
停止播放效果,使效果目标保持当前状态。 | Effect | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
angleXFrom | 属性 |
public var angleXFrom:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
目标对象围绕 x 轴旋转的起始角度(以度表示)。有效值范围是 0 到 360。
angleXTo | 属性 |
public var angleXTo:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
目标对象围绕 x 轴旋转的结束角度(以度表示)。此值可以是正值也可以是负值。
如果 angleTo
的值比 angleFrom
的值小,则目标沿逆时针方向旋转。否则,它将以顺时针方向旋转。如果希望对目标进行多次旋转,请将此值设置为较大的正数或较小的负数。
angleYFrom | 属性 |
public var angleYFrom:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
目标对象围绕 y 轴旋转的起始角度(以度表示)。有效值范围是 0 到 360。
angleYTo | 属性 |
public var angleYTo:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
目标对象围绕 y 轴旋转的结束角度(以度表示)。此值可以是正值也可以是负值。
如果 angleTo
的值比 angleFrom
的值小,则目标沿逆时针方向旋转。否则,它将以顺时针方向旋转。如果希望对目标进行多次旋转,请将此值设置为较大的正数或较小的负数。
angleZFrom | 属性 |
public var angleZFrom:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
目标对象围绕 z 轴旋转的起始角度(以度表示)。有效值范围是 0 到 360。
angleZTo | 属性 |
public var angleZTo:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flex 4 |
运行时版本: | Flash Player 10, AIR 1.5 |
目标对象围绕 z 轴旋转的结束角度(以度表示)。此值可以是正值也可以是负值。
如果 angleTo
的值比 angleFrom
的值小,则目标沿逆时针方向旋转。否则,它将以顺时针方向旋转。如果希望对目标进行多次旋转,请将此值设置为较大的正数或较小的负数。
Rotate3D | () | 构造函数 |
<?xml version="1.0" encoding="utf-8"?> <!-- Simple example to demonstrate the s:Rotate3D class. --> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark"> <!-- Standalone effects must be declared in the "Declarations" tag in Flex 4 --> <fx:Declarations> <s:Rotate3D id="rotateEffect" target="{targetBox}" angleXFrom="0" angleXTo="180" angleYFrom="0" angleYTo="180" duration="1000" autoCenterTransform="true" effectStart="playButton.enabled=false" effectEnd="playButton.enabled=true;"/> </fx:Declarations> <s:Panel title="Rotate3D Effect Example" width="75%" height="75%"> <mx:HBox width="100%" height="100%"> <!-- Our target to affect --> <mx:VBox id="targetBox" width="50%" horizontalAlign="center"> <mx:Label text="Nokia 9930"/> <mx:Image source="@Embed(source='assets/Nokia_6630.png')"/> </mx:VBox> <!-- Directions --> <mx:VBox id="detailsBox" width="50%" left="0"> <mx:Text width="99%" color="blue" text="The Rotate3D effect rotates a target using the following parameters: angleXFrom, angleXTo, angleYFrom, angleYTo, angleZFrom, and angleZTo. Click 'Rotate3D' to watch the effect."/> </mx:VBox> </mx:HBox> <s:Rect left="0" right="0" bottom="0" height="30"> <s:fill> <s:LinearGradient rotation="90"> <s:GradientEntry color="0xE2E2E2" /> <s:GradientEntry color="0xD9D9D9" /> </s:LinearGradient> </s:fill> </s:Rect> <!-- End then Play the effect to rotate the target.--> <s:Button id="playButton" left="5" bottom="5" label="Rotate3D" click="rotateEffect.play();"/> </s:Panel> </s:Application>
Tue Jun 12 2018, 11:04 AM Z