AddNetworkSrfEx

Creates a surface from a network of crossing curves. Note: All curves in one direction have to cross all curves in the other direction and cannot cross each other.

Syntax

Rhino.AddNetworkSrfEx (arrUCurves, arrUContinuity, arrVCurves, arrVContinuity [, dblEdgeTolerance [, dblInteriorTolerance [, dblAngleTolerance]]])

Parameters

arrUCurves

Required.  Array.  The identifiers of the curve object, in the U direction, from which to create the surface. Note, the curves must be sorted and ordered.

arrUContinuity

Required.  Array.  Two values identifying continuity of the first and last U (edge) curve segment. The possible values are:

Value

Description

0

Loose. The surface will match to the input edge curves with less accuracy.

1

Position (G0 continuity) measures location only. If the end points of each curve are in the same location in space, the curves are position continuous (G0) at the ends.

2

Tangency (G1 continuity) measures position and curve direction at the ends. The direction is determined by the first and second point on each curve. If these all fall on a line then two curves are tangent (G1) at the ends. Curves and surfaces with G1 continuity are also G0 continuous.

3

Curvature continuity (G2 continuity) between two curves measures position, direction, and radius of curvature at the ends. If the radius of curvature is the same at the common end point, curves are curvature continuous (G2). This condition is not easy to determine by just looking at where the points are located. Curves and surfaces with G2 continuity are also G1 and therefore G0 continuous.

arrVCurves

Required.  Array.  The identifiers of the curve object, in the V direction, from which to create the surface. Note, the curves must be sorted and ordered.

arrVContinuity

Required.  Array.  Two values identifying continuity of the first and last V (edge) curve segment. The possible values are:

Value

Description

0

Loose. The surface will match to the input edge curves with less accuracy.

1

Position (G0 continuity) measures location only. If the end points of each curve are in the same location in space, the curves are position continuous (G0) at the ends.

2

Tangency (G1 continuity) measures position and curve direction at the ends. The direction is determined by the first and second point on each curve. If these all fall on a line then two curves are tangent (G1) at the ends. Curves and surfaces with G1 continuity are also G0 continuous.

3

Curvature continuity (G2 continuity) between two curves measures position, direction, and radius of curvature at the ends. If the radius of curvature is the same at the common end point, curves are curvature continuous (G2). This condition is not easy to determine by just looking at where the points are located. Curves and surfaces with G2 continuity are also G1 and therefore G0 continuous.

dblEdgeTolerance

Optional.  Number.  Sets the tolerance for the edge curves. The edges of the surface will be within this value from the edge curves. The default is 0.0.

dblInteriorTolerance

Optional.  Number.  Sets the tolerance for the interior curves. The interior of the curve's surface will be within this value. If the curves themselves are farther apart from each other than the tolerance values, the best guess is made at the surface. The default is 0.0.

dblAngleTolerance

Optional.  Number.  If the edge curves are surface edges, and you want the surface matching the adjacent surfaces with tangency or curvature continuity, this is the accuracy used to match the surface normals. The default is 0.0.

Returns

String

The identifier of the new object if successful.

Null

If not successful, or on error.

Example

Dim arrUCurves, arrVCurves

arrUCurves = Rhino.GetObjects("Select curves in first direction", 4)

If IsArray(arrUCurves) Then

  arrVCurves = Rhino.GetObjects("Select curves in second direction", 4)

  If IsArray(arrVCurves) Then

    Rhino.AddNetworkSrfEx arrUCurves, Array(1,1), arrVCurves, Array(1,1)

  End If

End If

Also See

AddNetworkSrf