Solid Edge FrameworkSupport Type Library
AddIntersection Method
Specifies the first object to which the constraint is to be applied.
Specifies the key point index of Object1.
Specifies a graphic element that intersects Object3.
Specifies a graphic element that intersects Object2.
If set, checking is performed to ensure that the relationship does not contradict previously placed relationships.
Description
Adds an intersection relationship to a Relations2d collection.
Syntax
Visual Basic
Public Function AddIntersection( _
   ByVal Object1 As Object, _
   ByVal Index As Long, _
   ByVal Object2 As Object, _
   ByVal Object3 As Object, _
   Optional ByVal guaranteed_ok As Variant _
) As Relation2d
Parameters
Object1
Specifies the first object to which the constraint is to be applied.
Index
Specifies the key point index of Object1.
Object2
Specifies a graphic element that intersects Object3.
Object3
Specifies a graphic element that intersects Object2.
guaranteed_ok
If set, checking is performed to ensure that the relationship does not contradict previously placed relationships.
Remarks
The method creates an intersection relationship among the first specified object using the key point index and the intersection of the next two specified objects. Relationship Add methods have checks to ensure that a new relationship does not contradict previously placed relationships. For example, AddHorizontal will return an error if the line already has a vertical relationship. This check can be turned off to enhance performance. The optional “guaranteed_ok” argument, if set to 1, bypasses relationship checking. However, this feature could leave the system in an unsolvable state, so use it with extreme caution. It is best to use this feature only on a new element with no other relationships.
Example
Private Sub Form_Load()
    Dim objApp As SolidEdgeFramework.Application
    Dim objDoc As SolidEdgePart.PartDocument
    Dim objLine1 As SolidEdgeFrameworkSupport.Line2d
    Dim objLine2 As SolidEdgeFrameworkSupport.Line2d
    Dim objArc1 As SolidEdgeFrameworkSupport.Arc2d
    Dim objRelns As SolidEdgeFrameworkSupport.Relations2d
    Dim objReln1 As SolidEdgeFrameworkSupport.Relation2d
    Dim objProfile As SolidEdgePart.Profile
    ' 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

    ' Create an empty Profile
    Set objProfile = objDoc.ProfileSets.Add.Profiles.Add(pRefPlaneDisp:= _
                                                         objDoc.RefPlanes(1))
    ' Create an Arc object
    Set objArc1 = objProfile.Arcs2d.AddByStartAlongEnd(xStart:=0.07, yStart:=0.03, _
                                                       xAlong:=0.05, yAlong:=0.05, xEnd:=0.03, yEnd:=0.03)

    ' Create 2 Line objects
    Set objLine1 = objProfile.Lines2d.AddBy2Points(x1:=0, y1:=0, x2:=0.01, y2:=0.01)
    Set objLine2 = objProfile.Lines2d.AddBy2Points(x1:=0.045, y1:=0, x2:=0.06, y2:=0.06)
    ' Create a Intersection Relation between the objects
    Set objRelns = objProfile.Relations2d
    Set objReln1 = objRelns.AddIntersection(Object1:=objLine1, Index:=igLineEnd, Object2:=objArc1, _
                                            Object3:=objLine2)

    ' USER DISPLAY
    ' Release objects
    Set objApp = Nothing
    Set objDoc = Nothing
    Set objLine1 = Nothing
    Set objLine2 = Nothing
    Set objArc1 = Nothing
    Set objProfile = Nothing
    Set objRelns = Nothing
    Set objReln1 = Nothing
End Sub
See Also

Relations2d Collection  | Relations2d Members

Send comments on this topic.