Hallo,
den grundsätzlichen Zugriff aus C# auf CATIA hab ich ja nun hinbekommen. Wenn ich mit der Search-Methode in einer Zeichnung suche, dann bekomme ich die Ergebnisse mit ".Selection" zurückgeliefert. Wenn ich im Makroeditor programmiere, dann kann ich ja abfragen, welchem Typ das Objekt entspricht und entsprechend die verfügbaren Funktionen aufrufen, z.B.:
Dim oSelElem as Object
Dim oPunktKoord(4) as CATSafeVariant
If oSelElem.Type = "Circle2D" Then
oSelElem.Value.GetCenter(oPunktKoord)
End If
Das funktioniert so unter C# nicht, weil er ja über den Typen keinerlei Infos hat. Über ".Type" gibt ein SelectedElement das über die Item-Methode abgerufen wird den Namen des Typen zurück, das ist für Text aber bspw. "AnyObject", z.B. also
int i = selection.Count;
for (int j=1; j<=i; ++j) {
INFITF.SelectedElement elem = selection.Item(j);
MessageBox.Show(elem.Type);
}
Darüber hinaus kann ich natürlich damit auch wenn ich den Namen weiß immer noch keine Funktionen des spezifischen Typen aufrufen. Hat da jemand einen Tipp für mich? Muss ich neben der "InfTypeLib.tlb" weitere Bibliotheken importieren??? Danke!
Grüße,
Jörg
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP