Hi Klaus,
also die Sache mit den Ebenen hab ich jetzt raus.
Nur krieg ich SE nicht dazu das er mir Löcher generiert.
Hier ist mein Code:
Wo ist der Fehler?
Public objApp As SolidEdgeFramework.Application
Public objDoc As SolidEdgePart.SheetMetalDocument
Public nCoSys As Integer
Public sCoSys As String
Public objCoSys2Use As SolidEdgePart.CoordinateSystem
Public objPlane As SolidEdgePart.RefPlane
Public objHoleProfile As SolidEdgePart.Profile
Public objHoleData As SolidEdgePart.HoleData
Public objHoles As SolidEdgePart.Holes
Public objHole As SolidEdgePart.Hole
Public objModel As SolidEdgePart.Model
Sub makro()
'Turn on error handling.
On Error Resume Next
'Connect to a running instance of Solid Edge.
Set objApp = GetObject(, "SolidEdge.Application")
If Err Then
MsgBox "Solid Edge not started"
End
End If
'Access the currently open document.
Set objDoc = objApp.ActiveDocument
If Err Then
MsgBox "Solid Edge Sheetmetal not opened"
End
End If
If objDoc.Path = "" Then
MsgBox "No document loaded / active document hasn't been saved"
End
End If
sCoSys = "Holes"
nCoSys = objDoc.CoordinateSystems.Count
For i = 1 To nCoSys
If objDoc.CoordinateSystems.Item(i).Name = sCoSys Then
Set objCoSys2Use = objDoc.CoordinateSystems.Item(i)
End If
Next
Set objPlane = objDoc.RefPlanes.AddParallelByDistance(objCoSys2Use.Plane(seCoordSysXYPlane), 0, igNormalSide, objCoSys2Use.Axis(seCoordSysXAxis), , False)
Set objHoleProfile = objDoc.ProfileSets.Add.Profiles.Add(objPlane)
Call objHoleProfile.Holes2d.Add(0, 0.1)
Set objHoleData = objDoc.HoleDataCollection.Add(igRegularHole, 0.005)
'Set objHole = objHoles.AddThroughAll(objHoleProfile, igNormal, objHoleData)
Set objHoles = objModel.Holes.AddThroughAll(objHoleProfile, igLeft, objHoleData)
cya
AMG
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP