Solid Edge FrameworkSupport Type Library
Duplicate Method
Specifies the distance in the x direction from the original that the copy of the referenced object is to be placed.
Specifies the distance in the y direction from the original that the copy of the referenced object is to be placed.
Description
Copies the referenced object to a specified location, creating a new instance of the object with the same property values as the original.
Syntax
Visual Basic
Public Function Duplicate( _
   Optional ByVal XDistance As Variant, _
   Optional ByVal YDistance As Variant _
) As Object
Parameters
XDistance
Specifies the distance in the x direction from the original that the copy of the referenced object is to be placed.
YDistance
Specifies the distance in the y direction from the original that the copy of the referenced object is to be placed.
Remarks
The referenced object is copied to the new location relative to the original (source) location. The distance is the difference from the object's original location to the XDistance and YDistance values. The new object is returned.
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 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 Duplicate of the BSplineCurve object at a specified distance
    Call objBSpln1.Duplicate(XDistance:=0.1)
    Call objBSpln1.Duplicate(YDistance:=0.1)
    Call objBSpln1.Duplicate(XDistance:=0.1, YDistance:=0.1)
    ' USER DISPLAY
    If objBSplns.Count <> 4 Then
        MsgBox ("Error in the Duplicate method of BSplineCurve2d object")
    End If
    ' Release objects
    Set objApp = Nothing
    Set objDoc = Nothing
    Set objBSplns = Nothing
    Set objBSpln1 = Nothing
End Sub
See Also

BSplineCurve2d Object  | BSplineCurve2d Members

Send comments on this topic.