Packageaway3d.extrusions
Classpublic class LatheExtrude
InheritanceLatheExtrude Inheritance Mesh Inheritance Entity Inheritance ObjectContainer3D Inheritance Object3D Inheritance flash.events.EventDispatcher

Class for generating meshes with axial symmetry such as donuts, pipes, vases etc.

Public Properties
 PropertyDefined by
 Inheritedanimation : AnimationBase
The type of animation used to influence the geometry.
Mesh
 InheritedanimationController : AnimatorBase
The animation controller that will update the mesh's animation state.
Mesh
 InheritedanimationState : AnimationStateBase
The animation state of the mesh, defining how the animation should influence the mesh's geometry.
Mesh
  axis : String
Defines the axis used for the lathe rotation.
LatheExtrude
  bounds : BoundingVolumeBase
[read-only] The bounding volume approximating the volume occupied by the Entity.
LatheExtrude
 InheritedcastsShadows : Boolean
Indicates whether or not the Mesh can cast shadows
Mesh
  centerMesh : Boolean
Defines whether the mesh is recentered of not after generation
LatheExtrude
  coverAll : Boolean
Defines if the texture(s) should be stretched to cover the entire mesh or per step between segments.
LatheExtrude
 Inheritedeulers : Vector3D
Defines the rotation of the 3d object as a Vector3D object containing euler angles for rotation around x, y and z axis.
Object3D
 Inheritedextra : Object
An object that can contain any extra data.
Object3D
  flip : Boolean
Defines if the generated faces should be inversed.
LatheExtrude
  geometry : Geometry
[read-only] The geometry used by the mesh that provides it with its shape.
LatheExtrude
  ignoreSides : String
Defines if the top, bottom, left, right, front or back of the the extrusion is left open.
LatheExtrude
 InheritedinverseSceneTransform : Matrix3D
The inverse scene transform object that transforms from world to model space.
ObjectContainer3D
 Inheritedmaterial : MaterialBase
The material with which to render the Mesh.
Mesh
  materials : MultipleMaterials
An optional object that defines left, right, front, back, top and bottom materials to be set on the resulting lathe extrusion.
LatheExtrude
 InheritedmaxX : Number
The maximum extremum of the object along the X-axis.
Entity
 InheritedmaxY : Number
The maximum extremum of the object along the Y-axis.
Entity
 InheritedmaxZ : Number
The maximum extremum of the object along the Z-axis.
Entity
 InheritedminX : Number
The minimum extremum of the object along the X-axis.
Entity
 InheritedminY : Number
The minimum extremum of the object along the Y-axis.
Entity
 InheritedminZ : Number
The minimum extremum of the object along the Z-axis.
Entity
 InheritedmodelViewProjection : Matrix3D
The current model-view-projection (MVP) matrix - the one on the top of the stack - used to transform from model to homogeneous projection space.
Entity
 InheritedmouseDetails : Boolean
Indicates whether or not mouse events contain UV and position coordinates.
Mesh
 InheritedmouseEnabled : Boolean
Indicates whether the IRenderable should trigger mouse events, and hence should be rendered for hit testing.
Entity
 Inheritedname : String
The name of the object.
Object3D
 InheritednumChildren : uint
The amount of child objects of the ObjectContainer3D.
ObjectContainer3D
  offsetRadius : Number
Defines an offset radius applied to the profile.
LatheExtrude
 Inheritedparent : ObjectContainer3D
The parent ObjectContainer3D to which this object's transformation is relative.
ObjectContainer3D
 Inheritedpartition : Partition3D
The space partition to be used by the object container and all its recursive children, unless it has its own space partition assigned.
ObjectContainer3D
 InheritedpivotPoint : Vector3D
Defines the local point around which the object rotates.
Object3D
 Inheritedposition : Vector3D
Defines the position of the 3d object, relative to the local coordinates of the parent ObjectContainer3D.
Object3D
  preciseThickness : Boolean
Defines if thickness is greater than 0 if the thickness is equally distributed along the volume.
LatheExtrude
  profile : Vector
LatheExtrude
  revolutions : Number
Defines the number of revolutions performed by the lathe extrusion.
LatheExtrude
 InheritedrotationX : Number
Defines the euler angle of rotation of the 3d object around the x-axis, relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 InheritedrotationY : Number
Defines the euler angle of rotation of the 3d object around the y-axis, relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 InheritedrotationZ : Number
Defines the euler angle of rotation of the 3d object around the z-axis, relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 InheritedscaleX : Number
Defines the scale of the 3d object along the x-axis, relative to local coordinates.
Object3D
 InheritedscaleY : Number
Defines the scale of the 3d object along the y-axis, relative to local coordinates.
Object3D
 InheritedscaleZ : Number
Defines the scale of the 3d object along the z-axis, relative to local coordinates.
Object3D
 InheritedscenePosition : Vector3D
The global position of the ObjectContainer3D in the scene.
ObjectContainer3D
 InheritedsceneTransform : Matrix3D
The transformation matrix that transforms from model to world space.
ObjectContainer3D
  subdivision : uint
Defines the subdivisions created in the mesh for the total number of revolutions.
LatheExtrude
  subMeshes : Vector
[read-only] The SubMeshes out of which the Mesh consists.
LatheExtrude
  thickness : Number
Defines the thickness of the resulting lathed geometry.
LatheExtrude
 Inheritedtransform : Matrix3D
The local transformation matrix that transforms to the parent object's space.
ObjectContainer3D
  tweek : Object
Allows the building of shapes such as springs.
LatheExtrude
 Inheritedx : Number
Defines the x coordinate of the 3d object relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 Inheritedy : Number
Defines the y coordinate of the 3d object relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 Inheritedz : Number
Defines the z coordinate of the 3d object relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 InheritedzIndex : Number
The distance of the IRenderable object to the view, used to sort per object.
Entity
Protected Properties
 PropertyDefined by
 Inherited_bounds : BoundingVolumeBase
Entity
 Inherited_boundsInvalid : Boolean = true
Entity
 Inherited_explicitPartition : Partition3D
ObjectContainer3D
 Inherited_geometry : Geometry
Mesh
 Inherited_implicitPartition : Partition3D
ObjectContainer3D
 Inherited_mvpIndex : int = -1
Entity
 Inherited_mvpTransformStack : Vector
Entity
 Inherited_parent : ObjectContainer3D
ObjectContainer3D
 Inherited_pivotPoint : Vector3D
Object3D
 Inherited_pivotZero : Boolean = true
Object3D
 Inherited_pos : Vector3D
A calculation placeholder.
Object3D
 Inherited_scaleX : Number = 1
Object3D
 Inherited_scaleY : Number = 1
Object3D
 Inherited_scaleZ : Number = 1
Object3D
 Inherited_scene : Scene3D
ObjectContainer3D
 Inherited_sceneTransform : Matrix3D
ObjectContainer3D
 Inherited_sceneTransformDirty : Boolean = true
ObjectContainer3D
 Inherited_stackLen : uint
Entity
 Inherited_transform : Matrix3D
Object3D
 Inherited_x : Number = 0
Object3D
 Inherited_y : Number = 0
Object3D
 Inherited_z : Number = 0
Object3D
 Inherited_zIndices : Vector
Entity
Public Methods
 MethodDefined by
  
LatheExtrude
(material:MaterialBase = null, profile:Vector = null, axis:String, revolutions:Number = 1, subdivision:uint = 10, coverall:Boolean = true, centerMesh:Boolean = false, flip:Boolean = false, thickness:Number = 0, preciseThickness:Boolean = true, offsetRadius:Number = 0, materials:MultipleMaterials = null, ignoreSides:String = "", tweek:Object = null)
Class LatheExtrude generates circular meshes such as donuts, pipes, pyramids etc..
LatheExtrude
 Inherited
Adds a child ObjectContainer3D to the current object.
ObjectContainer3D
 Inherited
addChildren(... childarray):void
Adds an array of 3d objects to the scene as children of the container
ObjectContainer3D
 Inherited
Mesh
 Inherited
dispose(deep:Boolean):void
Cleans up any resources used by the current object.
Mesh
 Inherited
Retrieves the child object at the given index.
ObjectContainer3D
 Inherited
Gets a concrete EntityPartition3DNode subclass that is associated with this Entity instance
Entity
 Inherited
lookAt(target:Vector3D, upAxis:Vector3D = null):void
Rotates the 3d object around to face a point defined relative to the local coordinates of the parent ObjectContainer3D.
ObjectContainer3D
 Inherited
moveBackward(distance:Number):void
Moves the 3d object backwards along it's local z axis
Object3D
 Inherited
moveDown(distance:Number):void
Moves the 3d object backwards along it's local y axis
Object3D
 Inherited
moveForward(distance:Number):void
Moves the 3d object forwards along it's local z axis
Object3D
 Inherited
moveLeft(distance:Number):void
Moves the 3d object backwards along it's local x axis
Object3D
 Inherited
movePivot(dx:Number, dy:Number, dz:Number):void
Moves the local point around which the object rotates.
Object3D
 Inherited
moveRight(distance:Number):void
Moves the 3d object forwards along it's local x axis
Object3D
 Inherited
moveTo(dx:Number, dy:Number, dz:Number):void
Moves the 3d object directly to a point in space
Object3D
 Inherited
moveUp(distance:Number):void
Moves the 3d object forwards along it's local y axis
Object3D
 Inherited
pitch(angle:Number):void
Rotates the 3d object around it's local x-axis
Object3D
 Inherited
Removes a model view projection matrix from the stack, used when leaving a render.
Entity
 Inherited
Updates the model-view-projection (MVP) matrix used to transform from model to homogeneous projection space and places it on the stack.
Entity
 Inherited
Removes a 3d object from the child array of the container
ObjectContainer3D
 Inherited
roll(angle:Number):void
Rotates the 3d object around it's local z-axis
Object3D
 Inherited
rotate(axis:Vector3D, angle:Number):void
Rotates the 3d object around an axis by a defined angle
Object3D
 Inherited
rotateTo(ax:Number, ay:Number, az:Number):void
Rotates the 3d object directly to a euler angle
Object3D
 Inherited
scale(value:Number):void
Appends a uniform scale to the current transformation.
Object3D
 Inherited
translate(axis:Vector3D, distance:Number):void
Moves the 3d object along a vector by a defined length
Object3D
 Inherited
translateLocal(axis:Vector3D, distance:Number):void
ObjectContainer3D
 Inherited
yaw(angle:Number):void
Rotates the 3d object around it's local y-axis
Object3D
Protected Methods
 MethodDefined by
 Inherited
Factory method that returns the current partition node.
Mesh
 Inherited
Creates the default bounding box to be used by this type of Entity.
Entity
 Inherited
initGeometry():void
Initialises the SubMesh objects to map unto the Geometry's SubGeometry objects.
Mesh
 Inherited
Invalidates the bounding volume, causing to be updated when requested.
Entity
 Inherited
Invalidates the scene transformation matrix, causing it to be updated the next time it's requested.
Entity
 Inherited
Invalidates the transformation matrix, causing it to be updated upon the next request
ObjectContainer3D
 Inherited
updateBounds():void
Updates the bounding volume for the object.
Mesh
 Inherited
Updates the scene transformation matrix.
ObjectContainer3D
 Inherited
Object3D
Public Constants
 ConstantDefined by
  X_AXIS : String = "x"
[static]
LatheExtrude
  Y_AXIS : String = "y"
[static]
LatheExtrude
  Z_AXIS : String = "z"
[static]
LatheExtrude
Property detail
axisproperty
axis:String  [read-write]

Defines the axis used for the lathe rotation. Defaults to "y".

Implementation
    public function get axis():String
    public function set axis(value:String):void
boundsproperty 
bounds:BoundingVolumeBase  [read-only]

The bounding volume approximating the volume occupied by the Entity.

Implementation
    public function get bounds():BoundingVolumeBase
centerMeshproperty 
centerMesh:Boolean  [read-write]

Defines whether the mesh is recentered of not after generation

Implementation
    public function get centerMesh():Boolean
    public function set centerMesh(value:Boolean):void
coverAllproperty 
coverAll:Boolean  [read-write]

Defines if the texture(s) should be stretched to cover the entire mesh or per step between segments. Defaults to true.

Implementation
    public function get coverAll():Boolean
    public function set coverAll(value:Boolean):void
flipproperty 
flip:Boolean  [read-write]

Defines if the generated faces should be inversed. Default false.

Implementation
    public function get flip():Boolean
    public function set flip(value:Boolean):void
geometryproperty 
geometry:Geometry  [read-only]

The geometry used by the mesh that provides it with its shape.

Implementation
    public function get geometry():Geometry
ignoreSidesproperty 
ignoreSides:String  [read-write]

Defines if the top, bottom, left, right, front or back of the the extrusion is left open.

Implementation
    public function get ignoreSides():String
    public function set ignoreSides(value:String):void
materialsproperty 
materials:MultipleMaterials  [read-write]

An optional object that defines left, right, front, back, top and bottom materials to be set on the resulting lathe extrusion.

Implementation
    public function get materials():MultipleMaterials
    public function set materials(value:MultipleMaterials):void
offsetRadiusproperty 
offsetRadius:Number  [read-write]

Defines an offset radius applied to the profile. Defaults to 0.

Implementation
    public function get offsetRadius():Number
    public function set offsetRadius(value:Number):void
preciseThicknessproperty 
preciseThickness:Boolean  [read-write]

Defines if thickness is greater than 0 if the thickness is equally distributed along the volume. Default is false.

Implementation
    public function get preciseThickness():Boolean
    public function set preciseThickness(value:Boolean):void
profileproperty 
profile:Vector  [read-write]Implementation
    public function get profile():Vector
    public function set profile(value:Vector):void
revolutionsproperty 
revolutions:Number  [read-write]

Defines the number of revolutions performed by the lathe extrusion. Defaults to 1.

Implementation
    public function get revolutions():Number
    public function set revolutions(value:Number):void
subdivisionproperty 
subdivision:uint  [read-write]

Defines the subdivisions created in the mesh for the total number of revolutions. Defaults to 2, minimum 2.

Implementation
    public function get subdivision():uint
    public function set subdivision(value:uint):void

See also

subMeshesproperty 
subMeshes:Vector  [read-only]

The SubMeshes out of which the Mesh consists. Every SubMesh can be assigned a material to override the Mesh's material.

Implementation
    public function get subMeshes():Vector
thicknessproperty 
thickness:Number  [read-write]

Defines the thickness of the resulting lathed geometry. Defaults to 0 (single face).

Implementation
    public function get thickness():Number
    public function set thickness(value:Number):void
tweekproperty 
tweek:Object  [read-write]

Allows the building of shapes such as springs. Rotation must be higher than 1 to have significant effect. Properties of the objects are x,y,z,radius and rotation

Implementation
    public function get tweek():Object
    public function set tweek(value:Object):void
Constructor detail
LatheExtrude()constructor
public function LatheExtrude(material:MaterialBase = null, profile:Vector = null, axis:String, revolutions:Number = 1, subdivision:uint = 10, coverall:Boolean = true, centerMesh:Boolean = false, flip:Boolean = false, thickness:Number = 0, preciseThickness:Boolean = true, offsetRadius:Number = 0, materials:MultipleMaterials = null, ignoreSides:String = "", tweek:Object = null)Parameters
material:MaterialBase (default = null) — profile [optional] Vector.. A series of Vector3D's representing the profile information to be repeated/rotated around a given axis.
 
profile:Vector (default = null) — axis [optional] String. The axis to rotate around: X_AXIS, Y_AXIS or Z_AXIS. Default is LatheExtrude.Y_AXIS.
 
axis:String — revolutions [optional] Number. The LatheExtrude object can have less than one revolution, like 0.6 for a piechart or greater than 1 if a tweek object is passed. Minimum is 0.01. Default is 1.
 
revolutions:Number (default = 1) — subdivision [optional] uint. Howmany segments will compose the mesh in its rotational construction. Minimum is 3. Default is 10.
 
subdivision:uint (default = 10) — coverall [optional] Boolean. The way the uv mapping is spreaded across the shape. True covers an entire side of the geometry while false covers per segments. Default is true.
 
coverall:Boolean (default = true) — flip [optional] Boolean. If the faces must be reversed depending on Vector3D's orientation. Default is false.
 
centerMesh:Boolean (default = false) — thickness [optional] Number. If the shape must simulate a thickness. Default is 0.
 
flip:Boolean (default = false) — preciseThickness [optional] Boolean. If the thickness must be repected along the entire volume profile. Default is true.
 
thickness:Number (default = 0) — centerMesh [optional] Boolean. If the geometry needs to be recentered in its own object space. If the position after generation is set to 0,0,0, the object would be centered in worldspace. Default is false.
 
preciseThickness:Boolean (default = true) — offsetRadius [optional] Number. An offset radius if the profile data is not to be updated but the radius expected to be different. Default is 0.
 
offsetRadius:Number (default = 0) — materials [optional] MultipleMaterials. Allows multiple material support when thickness is set higher to 1. Default is null. properties as MaterialBase are: bottom, top, left, right, front and back.
 
materials:MultipleMaterials (default = null) — ignoreSides [optional] String. To prevent the generation of sides if thickness is set higher to 0. To avoid the bottom ignoreSides = "bottom", avoiding both top and bottom: ignoreSides = "bottom, top". Strings options: bottom, top, left, right, front and back. Default is "".
 
ignoreSides:String (default = "") — tweek [optional] Object. To build springs like shapes, rotation must be higher than 1. Properties of the tweek object are x,y,z, radius and rotation. Default is null.
 
tweek:Object (default = null)
Init Parameters
Constant detail
X_AXISconstant
public static const X_AXIS:String = "x"
Y_AXISconstant 
public static const Y_AXIS:String = "y"
Z_AXISconstant 
public static const Z_AXIS:String = "z"
Wiki link
Click to go to the wiki page for 'away3d.extrusions.LatheExtrude'

Code examples

Comments