NurbSurfaceSet Method

Sets new data for the existing NURBS surface.

Namespace: Teigha.DatabaseServices
Assembly: TD_Mgd (in TD_Mgd.dll) Version: 24.2.0.0
Syntax
public void Set(
        int iUDegree,
        int iVDegree,
        bool bRational,
        int iUNumControlPoints,
        int iVNumControlPoints,
        Point3dCollection ctrlPts,
        DoubleCollection weights,
        KnotCollection knotsInU,
        KnotCollection knotsInV
)

Parameters

iUDegree  Int32
[in] New value for degrees in the u-direction.
iVDegree  Int32
[in] New value for degrees in the v-direction.
bRational  Boolean
[in] Determines whether the surface is rational (new value).
iUNumControlPoints  Int32
[in] New value of the quantity of control points in the u-direction.
iVNumControlPoints  Int32
[in] New value of the quantity of control points in the v-direction.
ctrlPts  Point3dCollection
[in] New array of control points (in WCS coordinates).
weights  DoubleCollection
[in] New array of the weights for each control point.
knotsInU  KnotCollection
[in] New array of the knot values in the u-direction.
knotsInV  KnotCollection
[in] New array of the knot values in the v-direction.
Remarks
The column indexes are for the v-direction, and row indexes are for the u-direction. For example, if the surface has n control points in the u direction and m control points in the v direction, the array looks like [0,0], [0,1], ...[0,n-1], ..., [m-1,0], [m-1,1], ...[m-1,n-1]. If the surface is rational, the weights array must contain the same number of entries as in the array of control points. All weight values must be greater than 0.0. The values in the arrays of weights and control points must have the same sequential order as the control points array. If the surface is not rational, the weight array must be empty. If the surface is not periodic in the u-direction, the size of the uKnots vector must be equal to uNumControlPoints + uDegree + 1. If the surface is periodic in the u-direction, the size of the uKnots vector must be uNumControlPoints + 1. Similarly, if the surface is not periodic in the v-direction, the size of the vKnots vector must be equal to vNumControlPoints + vDegree + 1. If the surface is periodic in the v-direction, the size of the vKnots vector must be vNumControlPoints + 1. Each knot must have a value greater than or equal to the value of its predecessor in the array. If any of the passed-in parameters are not valid, the surface is not created. If this method is not implemented for a specific modeler, throws the eNotImplementedYet exception.
See Also

©  Bricsys NV. All rights reserved.