Code:
Sub CATMain()'Kreis aus VDA-Datei
'S1C5 = CIRCLE / -877.819557,-1248.547217,-659.850036, 3.516760, 00008200
' -0.999960, 0.000000, 0.008903, 0.000046,-0.999987, 0.005164, 00008210
' 0.000000,360.000000 00008220
Call goCreateCircle(-877.819557, -1248.547217, -659.850036, 3.51676, -0.99996, 0#, 0.008903, 0.000046, -0.999987, 0.005164, 0#, 360#)
End Sub
Sub goCreateCircle(ByVal x As Double, _
ByVal y As Double, _
ByVal z As Double, _
ByVal radius As Double, _
ByVal h1 As Double, _
ByVal h2 As Double, _
ByVal h3 As Double, _
ByVal v1 As Double, _
ByVal v2 As Double, _
ByVal v3 As Double, _
ByVal RadiusStart As Double, _
ByVal RadiusEnde As Double)
Set partDocument1 = CATIA.ActiveDocument
Set part1 = partDocument1.Part
Dim hybridBody1 As MECMOD.HybridBody
Dim HybridShapeCircleExplicit1 As HybridShapeCircleExplicit
Set hybridBody1 = part1.HybridBodies.Add()
part1.Update
Dim reference1 As INFITF.Reference
Set reference1 = part1.CreateReferenceFromObject(part1.HybridShapeFactory.AddNewPointCoord(x, y, z))
Dim originElements1 As MECMOD.OriginElements
Set originElements1 = part1.OriginElements
Dim hybridShapePlaneExplicit1 As HybridShapeTypeLib.HybridShapePlaneExplicit
Set hybridShapePlaneExplicit1 = part1.OriginElements.PlaneXY
Dim reference2 As INFITF.Reference
Set reference2 = part1.CreateReferenceFromObject(hybridShapePlaneExplicit1)
Dim hybridShapeCircleCtrRad1 As HybridShapeTypeLib.HybridShapeCircleCtrRad
Set hybridShapeCircleCtrRad1 = part1.HybridShapeFactory.AddNewCircleCtrRad(reference1, reference2, False, radius)
Call hybridShapeCircleCtrRad1.SetLimitation(1)
Call hybridBody1.AppendHybridShape(hybridShapeCircleCtrRad1)
part1.InWorkObject = hybridShapeCircleCtrRad1
part1.Update
Dim reference4 As INFITF.Reference
Set reference4 = part1.CreateReferenceFromObject(hybridShapeCircleCtrRad1)
Set HybridShapeCircleExplicit1 = part1.HybridShapeFactory.AddNewCircleDatum(reference4)
Call hybridBody1.AppendHybridShape(HybridShapeCircleExplicit1)
part1.InWorkObject = HybridShapeCircleExplicit1
part1.Update
Call part1.HybridShapeFactory.DeleteObjectForDatum(reference4)
part1.Update
End Sub