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 Mirror of the object
Call objBSpln1.Mirror(x1:=0, y1:=0, x2:=0.2, y2:=0)
If objBSplns.Count <> 1 Then
MsgBox ("Error in the Mirror method of BSplineCurve2d object ")
End If
' Delete the object
Call objBSpln1.Delete
'Create a BSplineCurve object again
Set objBSpln1 = objBSplns.AddByPoints(Order:=4, ArraySize:=5, Array:=MyArray())
' Create a Mirror of the object
Call objBSpln1.Mirror(x1:=0, y1:=0, x2:=0.1, y2:=0, BooleanCopyFlag:=True)
' USER DISPLAY
' Release objects
Set objApp = Nothing
Set objDoc = Nothing
Set objBSplns = Nothing
Set objBSpln1 = Nothing
End Sub