Package | away3d.primitives |
Class | public class NURBSGeometry |
Inheritance | NURBSGeometry PrimitiveBase Geometry NamedAssetBase flash.events.EventDispatcher |
Property | Defined By | ||
---|---|---|---|
assetFullPath : Array [read-only] | NamedAssetBase | ||
assetNamespace : String [read-only] | NamedAssetBase | ||
assetType : String [read-only] | Geometry | ||
controlNet : Vector.<NURBSVertex>
Defines the control point net to describe the NURBS surface
| NURBSGeometry | ||
name : String | NamedAssetBase | ||
originalName : String [read-only]
The original name used for this asset in the resource (e.g. | NamedAssetBase | ||
subGeometries : Vector.<ISubGeometry> [override] [read-only]
A collection of SubGeometry objects, each of which contain geometrical data such as vertices, normals, etc. | PrimitiveBase | ||
uControlPoints : int
Defines the number of control points along the U splines
| NURBSGeometry | ||
uKnot : Vector.<Number>
Defines the knot sequence in the U direction that determines where and how the control points
affect the NURBS curve. | NURBSGeometry | ||
uOrder : int
Defines the number of control points along the U splines that influence any given point on the curve
| NURBSGeometry | ||
uSegments : int
Defines the number segments (triangle pair) the final curve will be divided into in the U direction
| NURBSGeometry | ||
vControlPoints : int
Defines the number of control points along the V splines
| NURBSGeometry | ||
vKnot : Vector.<Number>
Defines the knot sequence in the V direction that determines where and how the control points
affect the NURBS curve. | NURBSGeometry | ||
vOrder : int
Defines the number of control points along the V splines that influence any given point on the curve
| NURBSGeometry | ||
vSegments : int
Defines the number segments (triangle pair) the final curve will be divided into in the V direction
| NURBSGeometry |
Method | Defined By | ||
---|---|---|---|
NURBSGeometry(cNet:Vector.<NURBSVertex>, uCtrlPnts:int, vCtrlPnts:int, uOrder:int = 4, vOrder:int = 4, uSegments:int = 10, vSegments:int = 10, uKnot:Vector.<Number> = null, vKnot:Vector.<Number> = 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
| NURBSGeometry | ||
addSubGeometry(subGeometry:ISubGeometry):void
Adds a new SubGeometry object to the list. | Geometry | ||
applyTransformation(transform:Matrix3D):void [override]
| PrimitiveBase | ||
assetPathEquals(name:String, ns:String):Boolean | NamedAssetBase | ||
[override]
Clones the geometry. | PrimitiveBase | ||
convertToSeparateBuffers():void
Updates the SubGeometries so all vertex data is represented in different buffers. | Geometry | ||
dispose():void
Clears all resources used by the Geometry object, including SubGeometries. | Geometry | ||
getSurfacePoint(uS:Number, vS:Number, vecOffset:Number = 0, scale:Number = 1, uTol:Number = 0.01, vTol:Number = 0.01):Vector3D
Return a 3d point representing the surface point at the required U(0-1) and V(0-1) across the
NURBS curved surface. | NURBSGeometry | ||
refreshNURBS():void
Refresh the mesh without reconstructing all the supporting data. | NURBSGeometry | ||
removeSubGeometry(subGeometry:ISubGeometry):void
Removes a new SubGeometry object from the list. | Geometry | ||
resetAssetPath(name:String, ns:String = null, overrideOriginal:Boolean = true):void | NamedAssetBase | ||
scale(scale:Number):void [override]
Scales the geometry. | PrimitiveBase | ||
scaleUV(scaleU:Number = 1, scaleV:Number = 1):void [override]
Scales the uv coordinates (tiling)
| PrimitiveBase |
Method | Defined By | ||
---|---|---|---|
buildGeometry(target:CompactSubGeometry):void [override]
Rebuild the mesh as there is significant change to the structural parameters
| NURBSGeometry | ||
buildUVs(target:CompactSubGeometry):void [override]
Rebuild the UV coordinates as there is significant change to the structural parameters
| NURBSGeometry | ||
invalidateGeometry():void
Invalidates the primitive's geometry, causing it to be updated when requested. | PrimitiveBase | ||
invalidateUVs():void
Invalidates the primitive's uv coordinates, causing them to be updated when requested. | PrimitiveBase |
controlNet | property |
controlNet:Vector.<NURBSVertex>
Defines the control point net to describe the NURBS surface
public function get controlNet():Vector.<NURBSVertex>
public function set controlNet(value:Vector.<NURBSVertex>):void
uControlPoints | property |
uControlPoints:int
Defines the number of control points along the U splines
public function get uControlPoints():int
public function set uControlPoints(value:int):void
uKnot | property |
uKnot:Vector.<Number>
Defines the knot sequence in the U direction that determines where and how the control points affect the NURBS curve.
public function get uKnot():Vector.<Number>
public function set uKnot(value:Vector.<Number>):void
uOrder | property |
uOrder:int
Defines the number of control points along the U splines that influence any given point on the curve
public function get uOrder():int
public function set uOrder(value:int):void
uSegments | property |
uSegments:int
Defines the number segments (triangle pair) the final curve will be divided into in the U direction
public function get uSegments():int
public function set uSegments(value:int):void
vControlPoints | property |
vControlPoints:int
Defines the number of control points along the V splines
public function get vControlPoints():int
public function set vControlPoints(value:int):void
vKnot | property |
vKnot:Vector.<Number>
Defines the knot sequence in the V direction that determines where and how the control points affect the NURBS curve.
public function get vKnot():Vector.<Number>
public function set vKnot(value:Vector.<Number>):void
vOrder | property |
vOrder:int
Defines the number of control points along the V splines that influence any given point on the curve
public function get vOrder():int
public function set vOrder(value:int):void
vSegments | property |
vSegments:int
Defines the number segments (triangle pair) the final curve will be divided into in the V direction
public function get vSegments():int
public function set vSegments(value:int):void
NURBSGeometry | () | Constructor |
public function NURBSGeometry(cNet:Vector.<NURBSVertex>, uCtrlPnts:int, vCtrlPnts:int, uOrder:int = 4, vOrder:int = 4, uSegments:int = 10, vSegments:int = 10, uKnot:Vector.<Number> = null, vKnot:Vector.<Number> = 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
ParameterscNet:Vector.<NURBSVertex> — 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
| |
uOrder:int (default = 4 ) — Init object for the mesh
| |
vOrder:int (default = 4 )
| |
uSegments:int (default = 10 )
| |
vSegments:int (default = 10 )
| |
uKnot:Vector.<Number> (default = null )
| |
vKnot:Vector.<Number> (default = null )
|
buildGeometry | () | method |
override protected function buildGeometry(target:CompactSubGeometry):void
Rebuild the mesh as there is significant change to the structural parameters
Parameters
target:CompactSubGeometry |
buildUVs | () | method |
override protected function buildUVs(target:CompactSubGeometry):void
Rebuild the UV coordinates as there is significant change to the structural parameters
Parameters
target:CompactSubGeometry |
getSurfacePoint | () | method |
public function getSurfacePoint(uS:Number, vS:Number, vecOffset:Number = 0, scale:Number = 1, uTol:Number = 0.01, vTol:Number = 0.01):Vector3D
Return a 3d point representing the surface point at the required U(0-1) and V(0-1) across the NURBS curved surface.
Parameters
uS:Number — U position on the surface
| |
vS:Number — V position on the surface
| |
vecOffset:Number (default = 0 ) — Offset the point on the surface by this vector
| |
scale:Number (default = 1 ) — Scale of the surface point - should match the Mesh scaling
| |
uTol:Number (default = 0.01 ) — U tolerance for adjacent surface sample to calculate normal
| |
vTol:Number (default = 0.01 ) — V tolerance for adjacent surface sample to calculate normal
|
Vector3D — 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.