Packageaway3d.primitives
Classpublic class NURBS
InheritanceNURBS Inheritance AbstractPrimitive Inheritance Mesh Inheritance Object3D Inheritance flash.events.EventDispatcher

Public Properties
 PropertyDefined by
 Inheritedalpha : Number
An optional alpha value that can be applied to the 3d object.
Object3D
 InheritedanimationLibrary : AnimationLibrary
Reference container for all animations used in the container.
Object3D
 Inheritedback : Material
Defines a triangle material to be used for the backface of all faces in the 3d object.
Mesh
 InheritedblendMode : String
An optional blend mode that can be applied to the 3d object.
Object3D
 Inheritedbothsides : Boolean
Indicates whether both the front and reverse sides of a face should be rendered.
Mesh
 InheritedboundingRadius : Number
Returns the bounding radius of the 3d object
AbstractPrimitive
 Inheritedcenter : Array
Object3D
 Inheritedcollider : Boolean
Indicates whether this object is used for collision detection.
Object3D
  controlNet : Array
Defines the control point net to describe the NURBS surface
NURBS
 Inheriteddebugbb : Boolean
Indicates whether a debug bounding box should be rendered around the 3d object.
Object3D
 InheriteddebugBoundingBox : WireCube
Object3D
 InheriteddebugBoundingSphere : WireSphere
Object3D
 Inheriteddebugbs : Boolean
Indicates whether a debug bounding sphere should be rendered around the 3d object.
Object3D
 Inheritedelements : Array
Returns an array of all elements contained in the mesh object.
AbstractPrimitive
 Inheritedeulers : Number3D
Defines the rotation of the 3d object as a Number3D object containing euler angles for rotation around x, y and z axis.
Object3D
 Inheritedextra : Object
An optional untyped object that can contain used-defined properties
Object3D
 Inheritedfaces : Array
Returns an array of the faces contained in the mesh object.
AbstractPrimitive
 InheritedfaceVOs : Array
Returns an array of the faceVOs contained in the mesh object.
Mesh
 Inheritedfilters : Array
An optional array of filters that can be applied to the 3d object.
Object3D
 Inheritedgeometry : Geometry
Defines the geometry object used for the mesh.
AbstractPrimitive
 InheritedgeometryLibrary : GeometryLibrary
Reference container for all geometries used in the container.
Object3D
 Inheritedid : int
Object3D
 Inheritedindexes : Array
Placeholder for md2 frame indexes
Mesh
 Inheritedindices : Array
Returns an array of the indices contained in the mesh object.
Mesh
 InheritedinverseSceneTransform : MatrixAway3D
Returns the inverse of sceneTransform.
Object3D
 Inheritedmaterial : Material
Defines the material used to render the faces, segments or 3d sprites in the geometry object.
Mesh
 InheritedmaterialLibrary : MaterialLibrary
Reference container for all materials used in the container.
Object3D
 InheritedmaxX : Number
Returns the maximum x value of the 3d object
AbstractPrimitive
 InheritedmaxY : Number
Returns the maximum y value of the 3d object
AbstractPrimitive
 InheritedmaxZ : Number
Returns the maximum z value of the 3d object
AbstractPrimitive
 InheritedminX : Number
Returns the minimum x value of the 3d object
AbstractPrimitive
 InheritedminY : Number
Returns the minimum y value of the 3d object
AbstractPrimitive
 InheritedminZ : Number
Returns the minimum z value of the 3d object
AbstractPrimitive
 InheritedmouseEnabled : Boolean = true
Defines whether mouse events are received on the 3d object
Object3D
 Inheritedname : String
An optional name string for the 3d object.
Object3D
 InheritedobjectDepth : Number
Boundary depth of the 3d object return The depth of the mesh
AbstractPrimitive
 InheritedobjectHeight : Number
Boundary height of the 3d object return The height of the mesh
AbstractPrimitive
 InheritedobjectWidth : Number
Boundary width of the 3d object return The width of the object
AbstractPrimitive
 Inheritedoutline : Material
Defines a segment material to be used for outlining the 3d object.
Mesh
 InheritedownCanvas : Boolean
Defines whether the contents of the 3d object are rendered using it's own render session
Object3D
 InheritedownSession : AbstractSession
Defines a unique render session for the 3d object.
Object3D
 Inheritedparent : ObjectContainer3D
Defines the parent of the 3d object.
Object3D
 InheritedpivotPoint : Number3D
Defines the local point around which the object rotates.
Object3D
 InheritedpivotZero : Boolean
Object3D
 Inheritedposition : Number3D
Defines the position of the 3d object, relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 Inheritedpushback : Boolean
Elements use their furthest point from the camera when z-sorting
Object3D
 Inheritedpushfront : Boolean
Elements use their nearest point to the camera when z-sorting
Object3D
 Inheritedrenderer : Renderer
An optional renderer object that can be used to render the contents of the object.
Object3D
 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
 Inheritedscene : Scene3D
Returns the parent scene of the 3d object
Object3D
 InheritedscenePivotPoint : Number3D
Object3D
 InheritedscenePosition : Number3D
Returns the position of the 3d object, relative to the global coordinates of the Scene3D object.
Object3D
 InheritedsceneTransform : MatrixAway3D
Returns the transformation of the 3d object, relative to the global coordinates of the Scene3D object.
Object3D
 InheritedscreenXOffset : Number
Defines an additional offset to the x coordinate used on mesh elements or objects with ownCanvas set to true
Object3D
 InheritedscreenYOffset : Number
Defines an additional offset to the y coordinate used on mesh elements or objects with ownCanvas set to true
Object3D
 InheritedscreenZOffset : Number
Defines an additional offset to the z-sorting algorithm used on mesh elements or objects with ownCanvas set to true
Object3D
 Inheritedsegments : Array
Returns an array of the segments contained in the mesh object.
AbstractPrimitive
 InheritedsegmentVOs : Array
Returns an array of the segmentVOs contained in the mesh object.
Mesh
 Inheritedsession : AbstractSession
The render session used by the 3d object
Object3D
 Inheritedsprites : Array
Returns an array of the 3d sprites contained in the mesh object.
AbstractPrimitive
 InheritedspriteVOs : Array
Returns an array of the spriteVOs contained in the mesh object.
Mesh
 InheritedstartIndices : Array
Returns an array of the start indices contained in the mesh object.
Mesh
  surface : Array
NURBS
 Inheritedtransform : MatrixAway3D
Defines the transformation of the 3d object, relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 Inheritedtype : String = "mesh"
String defining the type of class used to generate the mesh.
Mesh
  uControlPoints : int
Defines the number of control points along the U splines
NURBS
  uKnot : Array
Defines the knot sequence in the U direction that determines where and how the control points affect the NURBS curve.
NURBS
  uOrder : int
Defines the number of control points along the U splines that influence any given point on the curve
NURBS
 Inheritedurl : String
String defining the source of the mesh.
Mesh
  uSegments : int
Defines the number segments (triangle pair) the final curve will be divided into in the U direction
NURBS
 InheriteduseHandCursor : Boolean = false
Defines whether a hand cursor is displayed when the mouse rolls over the 3d object.
Object3D
  vControlPoints : int
Defines the number of control points along the V splines
NURBS
 Inheritedvertices : Array
Returns an array of the vertices contained in the mesh object.
AbstractPrimitive
 Inheritedvisible : Boolean
Defines whether the 3d object is visible in the scene
Object3D
  vKnot : Array
Defines the knot sequence in the V direction that determines where and how the control points affect the NURBS curve.
NURBS
  vOrder : int
Defines the number of control points along the V splines that influence any given point on the curve
NURBS
  vSegments : int
Defines the number segments (triangle pair) the final curve will be divided into in the V direction
NURBS
 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
Protected Properties
 PropertyDefined by
 Inheritedini : Init
Instance of the Init object used to hold and parse default property values specified by the initialiser object in the 3d object constructor.
Object3D
 Inherited_pivotPoint : Number3D
Object3D
Public Methods
 MethodDefined by
  
NURBS
(cNet:Array, uCtrlPnts:int, vCtrlPnts:int, init:Object = null)
NURBS primitive generates a segmented mesh that fits the curved surface defined by the specified control points based on weighting, order influence and knot sequence
NURBS
 Inherited
addFace(face:Face):void
Adds a face object to the mesh object.
Mesh
 Inherited
addOnDimensionsChange(listener:Function):void
Default method for adding a dimensionschanged event listener
Object3D
 Inherited
addOnMouseDown(listener:Function):void
Default method for adding a mouseDown3D event listener
Object3D
 Inherited
addOnMouseMove(listener:Function):void
Default method for adding a mouseMove3D event listener
Object3D
 Inherited
addOnMouseOut(listener:Function):void
Default method for adding a mouseOut3D event listener
Object3D
 Inherited
addOnMouseOver(listener:Function):void
Default method for adding a mouseOver3D event listener
Object3D
 Inherited
addOnMouseUp(listener:Function):void
Default method for adding a mouseUp3D event listener
Object3D
 Inherited
addOnPositionChange(listener:Function):void
Default method for adding a positionchanged event listener
Object3D
 Inherited
addOnRollOut(listener:Function):void
Default method for adding a rollOut3D event listener
Object3D
 Inherited
addOnRollOver(listener:Function):void
Default method for adding a rollOver3D event listener
Object3D
 Inherited
addOnScaleChange(listener:Function):void
Default method for adding a scalechanged event listener
Object3D
 Inherited
addOnSceneChange(listener:Function):void
Default method for adding a scenechanged event listener
Object3D
 Inherited
addOnSceneTransformChange(listener:Function):void
Default method for adding a scenetransformchanged event listener
Object3D
 Inherited
addOnSessionChange(listener:Function):void
Default method for adding a sessionchanged event listener
Object3D
 Inherited
addOnVisibilityUpdate(listener:Function):void
Default method for adding a visibilityUpdated event listener
Object3D
 Inherited
addSegment(segment:Segment):void
Adds a segment object to the mesh object.
Mesh
 Inherited
addSprite(sprite3d:Sprite3D):void
Adds a sprite3d object to the mesh object.
Mesh
 Inherited
applyPosition(dx:Number, dy:Number, dz:Number):void
Apply the given position to the geometry without altering the appearance of the mesh
Mesh
 Inherited
Apply the local rotations to the geometry without altering the appearance of the mesh
Mesh
 Inherited
asAS3Class(classname:String = null, packagename:String = "", round:Boolean = false, animated:Boolean = false):String
Returns a formatted string containing a self contained AS3 class definition that can be used to re-create the mesh.
Mesh
 Inherited
asXML():XML
Returns an xml representation of the mesh
Mesh
 Inherited
centerPivot():void
Adjusts the pivot point of the object so that it lies at the center of it's geoemtry.
Object3D
 Inherited
clone(object:Object3D = null):Object3D
Duplicates the mesh properties to another 3d object.
Mesh
 Inherited
cloneAll(object:Object3D = null):Object3D
Duplicates the mesh properties to another 3d object, including geometry.
Mesh
 Inherited
distanceTo(obj:Object3D):Number
Calulates the absolute distance between the local 3d object position and the position of the given 3d object
Object3D
  
getSurfacePoint(surfacePoint:Number3D, uS:Number, vS:Number, vecOffset:Number, uTol:Number = 0.01, vTol:Number = 0.01):Number3D
Return a 3d point representing the surface point at the required U(0-1) and V(0-1) across the NURBS curved surface.
NURBS
 Inherited
invertFaces():void
Inverts the geometry of all face objects.
Mesh
 Inherited
lookAt(target:Number3D, upAxis:Number3D = null):void
Rotates the 3d object around to face a point defined relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 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
quarterFace(face:Face):void
Divides a face object into 4 equal sized face objects.
Mesh
 Inherited
quarterFaces():void
Divides all faces objects of a Mesh into 4 equal sized face objects.
Mesh
  
refreshNURBS():void
Refresh the mesh without reconstructing all the supporting data.
NURBS
 Inherited
removeFace(face:Face):void
Removes a face object from the mesh object.
Mesh
 Inherited
removeOnDimensionsChange(listener:Function):void
Default method for removing a dimensionschanged event listener
Object3D
 Inherited
removeOnMouseDown(listener:Function):void
Default method for removing a mouseDown3D event listener
Object3D
 Inherited
removeOnMouseMove(listener:Function):void
Default method for removing a mouseMove3D event listener
Object3D
 Inherited
removeOnMouseOut(listener:Function):void
Default method for removing a mouseOut3D event listener
Object3D
 Inherited
removeOnMouseOver(listener:Function):void
Default method for removing a mouseOver3D event listener
Object3D
 Inherited
removeOnMouseUp(listener:Function):void
Default method for removing a mouseUp3D event listener
Object3D
 Inherited
removeOnPositionChange(listener:Function):void
Default method for removing a positionchanged event listener
Object3D
 Inherited
removeOnRollOut(listener:Function):void
Default method for removing a rollOut3D event listener
Object3D
 Inherited
removeOnRollOver(listener:Function):void
Default method for removing a rollOver3D event listener
Object3D
 Inherited
removeOnScaleChange(listener:Function):void
Default method for removing a scalechanged event listener
Object3D
 Inherited
removeOnSceneChange(listener:Function):void
Default method for removing a scenechanged event listener
Object3D
 Inherited
removeOnSceneTransformChange(listener:Function):void
Default method for removing a scenetransformchanged event listener
Object3D
 Inherited
removeOnSessionChange(listener:Function):void
Default method for removing a sessionchanged event listener
Object3D
 Inherited
removeOnVisibilityUpdate(listener:Function):void
Default method for removing a visibilityUpdated event listener
Object3D
 Inherited
removeSegment(segment:Segment):void
Removes a segment object from the mesh object.
Mesh
 Inherited
removeSprite(sprite3d:Sprite3D):void
Removes a 3d sprite object from the mesh object.
Mesh
 Inherited
roll(angle:Number):void
Rotates the 3d object around it's local z-axis
Object3D
 Inherited
rotate(axis:Number3D, 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(scale:Number):void
Scales the contents of the 3d object.
Object3D
 Inherited
splitFace(face:Face, side:int = 0):void
Divides a face object into 2 face objects.
Mesh
 Inherited
splitFaces(side:int = 0):void
Divides all faces objects of a Mesh into 2 face objects.
Mesh
 Inherited
tick(time:int):void
Called by the TickTraverser.
Object3D
 Inherited
toString():String
Used to trace the values of a 3d object.
Object3D
 Inherited
translate(axis:Number3D, distance:Number):void
Moves the 3d object along a vector by a defined length
Object3D
 Inherited
traverse(traverser:Traverser):void
Used when traversing the scenegraph
Object3D
 Inherited
triFace(face:Face):void
Divides a face object into 3 face objects.
Mesh
 Inherited
triFaces():void
Divides all faces objects of a Mesh into 3 face objects.
Mesh
 Inherited
updateBounds():void
Mesh
 Inherited
updateMesh(view:View3D):void
Updates the materials in the mesh object
Mesh
 Inherited
updateVertex(v:Vertex, x:Number, y:Number, z:Number, refreshNormals:Boolean = false):void
update vertex information.
Mesh
 Inherited
yaw(angle:Number):void
Rotates the 3d object around it's local y-axis
Object3D
Protected Methods
 MethodDefined by
  
Rebuild the mesh as there is significant change to the structural parameters
NURBS
 Inherited
Mesh
 Inherited
Object3D
Events
 EventSummaryDefined by
 Inherited Dispatched when the contents of the 3d object updates.Object3D
 Inherited Dispatched when the bounding dimensions of the 3d object changes.Object3D
 Inherited Dispatched when a user presses the left hand mouse button while the cursor is over the 3d object.Object3D
 Inherited Dispatched when a user moves the cursor while it is over the 3d object.Object3D
 Inherited Dispatched when a user moves the cursor away from the 3d object.Object3D
 Inherited Dispatched when a user moves the cursor over the 3d object.Object3D
 Inherited Dispatched when a user releases the left hand mouse button while the cursor is over the 3d object.Object3D
 Inherited Dispatched when a user rolls out of the 3d object.Object3D
 Inherited Dispatched when a user rolls over the 3d object.Object3D
 Inherited Dispatched when the parent scene of the 3d object changes.Object3D
 Inherited Dispatched when the scene transform matrix of the 3d object changes.Object3D
 Inherited Dispatched when the render session property of the 3d object changes.Object3D
 Inherited Dispatched when the local transform matrix of the 3d object changes.Object3D
Public Constants
 ConstantDefined by
  CONTROL_POINT_NET : int = 1
[static]
NURBS
  NURBS_MESH : int = 0
[static]
NURBS
Property detail
controlNetproperty
controlNet:Array  [read-write]

Defines the control point net to describe the NURBS surface

Implementation
    public function get controlNet():Array
    public function set controlNet(value:Array):void
surfaceproperty 
public var surface:Array
uControlPointsproperty 
uControlPoints:int  [read-write]

Defines the number of control points along the U splines

Implementation
    public function get uControlPoints():int
    public function set uControlPoints(value:int):void
uKnotproperty 
uKnot:Array  [read-write]

Defines the knot sequence in the U direction that determines where and how the control points affect the NURBS curve.

Implementation
    public function get uKnot():Array
    public function set uKnot(value:Array):void
uOrderproperty 
uOrder:int  [read-write]

Defines the number of control points along the U splines that influence any given point on the curve

Implementation
    public function get uOrder():int
    public function set uOrder(value:int):void
uSegmentsproperty 
uSegments:int  [read-write]

Defines the number segments (triangle pair) the final curve will be divided into in the U direction

Implementation
    public function get uSegments():int
    public function set uSegments(value:int):void
vControlPointsproperty 
vControlPoints:int  [read-write]

Defines the number of control points along the V splines

Implementation
    public function get vControlPoints():int
    public function set vControlPoints(value:int):void
vKnotproperty 
vKnot:Array  [read-write]

Defines the knot sequence in the V direction that determines where and how the control points affect the NURBS curve.

Implementation
    public function get vKnot():Array
    public function set vKnot(value:Array):void
vOrderproperty 
vOrder:int  [read-write]

Defines the number of control points along the V splines that influence any given point on the curve

Implementation
    public function get vOrder():int
    public function set vOrder(value:int):void
vSegmentsproperty 
vSegments:int  [read-write]

Defines the number segments (triangle pair) the final curve will be divided into in the V direction

Implementation
    public function get vSegments():int
    public function set vSegments(value:int):void
Constructor detail
NURBS()constructor
public function NURBS(cNet:Array, uCtrlPnts:int, vCtrlPnts:int, init:Object = null)Parameters
cNet:Array — Array of control points (WeightedVertex array)
 
uCtrlPnts:int — Number of control points in the U direction
 
vCtrlPnts:int — Number of control points in the V direction
 
init:Object (default = null) — Init object for the mesh
Init Parameters
 renderMode:Int (default = NURBS_MESH)
 uOrder:Int (default = 4)
 vOrder:Int (default = 4)
 uKnot:Array
 vKnot:Array
 uSegments:Int (default = 8)
 vSegments:Int (default = 8)
Method detail
buildPrimitive()method
protected override function buildPrimitive():void

Rebuild the mesh as there is significant change to the structural parameters

getSurfacePoint()method 
public function getSurfacePoint(surfacePoint:Number3D, uS:Number, vS:Number, vecOffset:Number, uTol:Number = 0.01, vTol:Number = 0.01):Number3D

Return a 3d point representing the surface point at the required U(0-1) and V(0-1) across the NURBS curved surface.

Parameters
surfacePoint:Number3D — Point being updated
 
uS:Number — U position on the surface
 
vS:Number — V position on the surface
 
vecOffset:Number — Offset the point on the surface by this vector
 
uTol:Number (default = 0.01)
 
vTol:Number (default = 0.01)

Returns
Number3D — The offset surface point being returned
refreshNURBS()method 
public function refreshNURBS():void

Refresh the mesh without reconstructing all the supporting data. This should be used only when the control point positions change.

Constant detail
CONTROL_POINT_NETconstant
public static const CONTROL_POINT_NET:int = 1
NURBS_MESHconstant 
public static const NURBS_MESH:int = 0
Wiki link
Click to go to the wiki page for 'away3d.primitives.NURBS'

Code examples

Comments