| 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:intDefines 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:intDefines 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:intDefines 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:intDefines 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:intDefines 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:intDefines 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):voidRebuild the mesh as there is significant change to the structural parameters
Parameters
target:CompactSubGeometry |
| buildUVs | () | method |
override protected function buildUVs(target:CompactSubGeometry):voidRebuild 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):Vector3DReturn 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():voidRefresh the mesh without reconstructing all the supporting data. This should be used only when the control point positions change.