Hide Table of Contents
AddTrimmingLoop2 Method (ISurface)

Creates a trimming loop out of < NCrvs> surface parametric (UV-curves) and adds it to a list of such loops.

.NET Syntax

Visual Basic (Declaration) 
Function AddTrimmingLoop2( _
   ByVal NCrvs As System.Integer, _
   ByVal VOrder As System.Object, _
   ByVal VDim As System.Object, _
   ByVal VPeriodic As System.Object, _
   ByVal VNumKnots As System.Object, _
   ByVal VNumCtrlPoints As System.Object, _
   ByVal VKnots As System.Object, _
   ByVal VCtrlPointDbls As System.Object, _
   ByVal UvRange As System.Object _
) As System.Boolean
Visual Basic (Usage) 
Dim instance As ISurface
Dim NCrvs As System.Integer
Dim VOrder As System.Object
Dim VDim As System.Object
Dim VPeriodic As System.Object
Dim VNumKnots As System.Object
Dim VNumCtrlPoints As System.Object
Dim VKnots As System.Object
Dim VCtrlPointDbls As System.Object
Dim UvRange As System.Object
Dim value As System.Boolean
 
value = instance.AddTrimmingLoop2(NCrvs, VOrder, VDim, VPeriodic, VNumKnots, VNumCtrlPoints, VKnots, VCtrlPointDbls, UvRange)
C# 
System.bool AddTrimmingLoop2( 
   System.int NCrvs,
   System.object VOrder,
   System.object VDim,
   System.object VPeriodic,
   System.object VNumKnots,
   System.object VNumCtrlPoints,
   System.object VKnots,
   System.object VCtrlPointDbls,
   System.object UvRange
)
C++/CLI 
System.bool AddTrimmingLoop2( 
&   System.int NCrvs,
&   System.Object^ VOrder,
&   System.Object^ VDim,
&   System.Object^ VPeriodic,
&   System.Object^ VNumKnots,
&   System.Object^ VNumCtrlPoints,
&   System.Object^ VKnots,
&   System.Object^ VCtrlPointDbls,
&   System.Object^ UvRange
) 

Parameters

NCrvs

Number of surface parametric (UV) curves constituting the loop; it is also directly related to the dimension of each of the arrays vOrder, vDim, vPeriodic, vNumKnots, vNumControlPnts, which must be loaded with the information regarding each of the curves; specifically the dimension of those arrays is ArraySize = NCrvs

VOrder
Array of <ArraySize> doubles (see NCrvs argument)
VDim
Array of <ArraySize> doubles (see NCrvs argument)
VPeriodic
Array of <ArraySize> doubles (see NCrvs argument)
VNumKnots
Array of <ArraySize> doubles (see NCrvs argument)
VNumCtrlPoints
Array of <ArraySize> doubles (see NCrvs argument)
VKnots
Array of <TotalNumKnots> doubles, where TotalNumKnots = numKnotsInCurve[i] from i = 1 to NCrvs
VCtrlPointDbls
Array of <TotalNumCPCoords> doubles, where TotalNumCPCoords = ( dimensionOfCPinCurve[i] * numControlPntsInCurve[i] ) from i = 1 to NCrvs
UvRange
Four doubles defining U Low U High V Low V High

Return Value

True if successful in adding a trimming loop to the surface, false if not

Example

Remarks

The list is created by a previous call to one of the base surface creation functions (for example, IBody2::CreateRevolutionSurface or IBody2::ICreateRevolutionSurface).

The information on each UV-curve is in b-spline form (knots and control point coordinates) all of which are compacted into the two arrays Knots and CtrlPointDbls.

For non-rational curves the dimension value in Dim is 2. For rational curves the dimension value in Dim is 3. The minimum order value in Order is 2. An order 2 curve must consist of only one segment.

For each curve the number of control points in NumCtrlPoints >= its order.

For non-periodic curves there must be (NumCtrlPoints + Order) knot values, the maximum multiplicity of an internal knot value is (Order 96 1), and the maximum multiplicity of an end knot value is Order.

For periodic curves there must be (NumCtrlPoints + 1) knot values and the maximum multiplicity of any knot value is (Order 96 1). If the periodic knot has multiplicity greater than 1, repetitions must be given at the end of the knot vector.

This method expects 2D-polyomial (x,y) or 2D-rational (x,y,w) curves to be passed as trimming curves. However, you can set a flag so that this method accepts 3D-polyomial (x,y,z) or 3D-rational (x,y,z,w) trim curves. To do this, set the first value in the Dim array to negative its absolute value (for example, if the value is 3, set it to -3). When you do this, 3D trim curves will be expected.

Upon adding this trimming loop, you can generate a trimmed surface by calling IBody2::CreateTrimmedSurface.

NOTE: If you do not want to specify a UV Range in the last parameter, pass in a NULL value.

 

See Also

Availability

SOLIDWORKS 2001Plus FCS, Revision Number 10.0


Provide feedback on this topic

SOLIDWORKS welcomes your feedback concerning the presentation, accuracy, and thoroughness of the documentation. Use the form below to send your comments and suggestions about this topic directly to our documentation team. The documentation team cannot answer technical support questions. Click here for information about technical support.

* Required

 
*Email:  
Subject:   Feedback on Help Topics
Page:   AddTrimmingLoop2 Method (ISurface)
*Comment:  
*   I acknowledge I have read and I hereby accept the privacy policy under which my Personal Data will be used by Dassault Systèmes

Print Topic

Select the scope of content to print:

x

We have detected you are using a browser version older than Internet Explorer 7. For optimized display, we suggest upgrading your browser to Internet Explorer 7 or newer.

 Never show this message again
x

Web Help Content Version: API Help (English only) 2017 SP05

To disable Web help from within SOLIDWORKS and use local help instead, click Help > Use SOLIDWORKS Web Help.

To report problems encountered with the Web help interface and search, contact your local support representative. To provide feedback on individual help topics, use the “Feedback on this topic” link on the individual topic page.