Hallo Leute! Ich mochte mir ein Tool schreiben, um Schrauben in die Mitte von Langlöchern einzufügen!
Habe mir das so gedacht, dass ich die zwei Halbkreise des Langloches selektiere und dann nur noch den Schrauben!
Doch ich scheitere schon bei der Vorbereitung!
um den Schrauben unzufügen möchte ich mir in der Hälfte der Raumdiagonale zwischen den Mittelpunkten der beiden Halbkreise einen Punkt erstellen und dann den Mittelpunkt des Einfüge iMates darauf Hängen!
Zum Testen selektiere ich nur ein Halbkreiselement und lese mir die Kante vom einfüge iMate aus gedoch kann ich darauf keine Abhängigkeit vergeben!?
Code:
Dim doc As AssemblyDocument = oapp.ActiveDocument
Dim f As Edge
For c As Integer = 1 To doc.SelectSet.Count
f = doc.SelectSet(c)
If f.CurveType = CurveTypeEnum.kCircleCurve Then
p2 = f.Geometry.center()
Dim oc As ComponentOccurrence = doc.ComponentDefinition.Occurrences.Add("T:\CAD_FILES\InvContent\FBS-0912-03020-A40.ipt", oapp.TransientGeometry.CreateMatrix)
For Each idef As iMateDefinition In oc.iMateDefinitions
If idef.Type = ObjectTypeEnum.kInsertiMateDefinitionProxyObject Then
Dim ix As InsertiMateDefinition = idef
Dim ac As Edge
ac = ix.Entity
doc.ComponentDefinition.Constraints.AddMateConstraint(f,ac,0,InferredTypeEnum.kInferredPoint,InferredTypeEnum.kInferredPoint)
'doc.ComponentDefinition.iMateResults.AddByiMateAndEntity(idef, f)
Exit For
End If
Next
End If
End If
Next
Hat von euch jemand eine Idee warum das nicht klappt? Oder sogar einen einfachren Weg?Vielen Dank!!
mfg Bernhard
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP