Solid Edge FrameworkSupport Type Library
Trim Method
Specifies the x value of the direction point in which the trim is to take place.
Specifies the y value of the direction point in which the trim is to take place.
Specifies the first object that intersects this object. The intersection point of the object determines the trim point.
Specifies the second object that intersects this object. This intersection point of the object determines the second trim point.
Description
Deletes sections of geometry that intersect other objects.
Syntax
Visual Basic
Public Sub Trim( _
   ByVal x As Double, _
   ByVal y As Double, _
   ByVal CutObj1 As Object, _
   Optional ByVal CutObj2 As Variant _
) 
Parameters
x
Specifies the x value of the direction point in which the trim is to take place.
y
Specifies the y value of the direction point in which the trim is to take place.
CutObj1
Specifies the first object that intersects this object. The intersection point of the object determines the trim point.
CutObj2
Specifies the second object that intersects this object. This intersection point of the object determines the second trim point.
Remarks
If one object is specified, it is trimmed from the intersection point of the objects in the direction of the point specified. If two objects are specified, the trim is in the section of the object specified by the direction point. For example, if the direction point is between the two input objects, the section of this object to be trimmed is between the points the two objects intersect this object. If the direction point is outside of the two input objects, the trim is from the intersection of the object closest to the direction point, in the opposite direction of the other input object intersection point. The resulting objects are put into the select set. In some cases, a single object can be trimmed and two objects are the result.
Example
Private Sub Form_Load()
    Dim objApp As SolidEdgeFramework.Application
    Dim objDoc As SolidEdgePart.PartDocument
    Dim objBSplns As SolidEdgeFrameworkSupport.BSplineCurves2d
    Dim objBSpln1 As SolidEdgeFrameworkSupport.BSplineCurve2d
    Dim objLine1 As SolidEdgeFrameworkSupport.Line2d
    Dim objLine2 As SolidEdgeFrameworkSupport.Line2d
    Dim MyArray(9) As Double
    Dim sDumpStatus As String    ' Used for temporary storage of datadump return string
    ' Report errors
    Const PI = 3.14159265358979
    ' Create/get the application with specific settings
    On Error Resume Next
    Set objApp = GetObject(, "SolidEdge.Application")
    If Err Then
        Err.Clear
        Set objApp = CreateObject("SolidEdge.Application")
        Set objDoc = objApp.Documents.Add("SolidEdge.PartDocument")
        objApp.Visible = True
    Else
        Set objDoc = objApp.ActiveDocument
    End If
    'Define an Array of Points
    MyArray(0) = 0
    MyArray(1) = 0
    MyArray(2) = 0.03
    MyArray(3) = 0.02
    MyArray(4) = 0.04
    MyArray(5) = 0.01
    MyArray(6) = 0.05
    MyArray(7) = 0.08
    MyArray(8) = 0.07
    MyArray(9) = 0.04
    'Create a BSplineCurves collection object
    Set objBSplns = objDoc.ProfileSets.Add.Profiles.Add(pRefPlaneDisp:= _
                                                        objDoc.RefPlanes(1)).BSplineCurves2d

    'Create a BSplineCurve object
    Set objBSpln1 = objBSplns.AddByPoints(Order:=4, ArraySize:=5, Array:=MyArray())
    ' Create a Line object
    Set objLine1 = objDoc.ProfileSets.Add.Profiles.Add(pRefPlaneDisp:= _
                                                       objDoc.RefPlanes(1)).Lines2d.AddBy2Points(x1:=-0.01, y1:=-0.01, x2:=0.1, y2:=0.1)
    ' Trim the object
    Call objBSpln1.Trim(x:=0, y:=0, CutObj1:=objLine1)
    ' Delete all the objects
    Call objBSpln1.Delete
    Call objLine1.Delete
    'Create a BSplineCurve object
    Set objBSpln1 = objBSplns.AddByPoints(Order:=4, ArraySize:=5, Array:=MyArray())
    ' Create 2 Line objects
    Set objLine1 = objDoc.ProfileSets.Add.Profiles.Add(pRefPlaneDisp:= _
                                                       objDoc.RefPlanes(1)).Lines2d.AddBy2Points(x1:=-0.01, y1:=-0.01, x2:=0.1, y2:=0.1)
    Set objLine2 = objDoc.ProfileSets.Add.Profiles.Add(pRefPlaneDisp:= _
                                                       objDoc.RefPlanes(1)).Lines2d.AddBy2Points(x1:=0.05, y1:=0.01, x2:=0.09, y2:=0.08)
    ' Trim the object
    Call objBSpln1.Trim(x:=0.05, y:=0.05, CutObj1:=objLine1, CutObj2:=objLine2)
    ' USER DISPLAY
    ' Release objects
    Set objApp = Nothing
    Set objDoc = Nothing
    Set objBSplns = Nothing
    Set objBSpln1 = Nothing
    Set objLine1 = Nothing
    Set objLine2 = Nothing
End Sub
See Also

BSplineCurve2d Object  | BSplineCurve2d Members

Send comments on this topic.