Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  InternalName vs. DisplayName (undokumentiert)

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  InternalName vs. DisplayName (undokumentiert) (5638 mal gelesen)
web_kai
Mitglied


Sehen Sie sich das Profil von web_kai an!   Senden Sie eine Private Message an web_kai  Schreiben Sie einen Gästebucheintrag für web_kai

Beiträge: 4
Registriert: 27.10.2005

erstellt am: 12. Feb. 2007 07:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Aloha!

Einige kennen das Problem: Du zeichnest ein Makro auf, bekommst diesen Wahnsinns-String der Boundary-Representation, findest das Feature (z.B."Skizze.1") nur als Sketch.1 ... Was ist da los???

Catia vergibt die Namen der Features nicht nur ein-, sondern zweimal. Den öffentlichen Namen sieht jeder im Strukturbaum, der Interne Name ist verdeckt. Durch eine nicht dokumentierte Funktion (wenigstens in R14) lässt sich das lösen. Das Ding heißt ModelElement und will über GetItem angesprochen werden:

Set oModelElement = oFeature.GetItem("ModelElement")
sInternalName = oModelElement.InternalName

Zur Namensgebung (lt. CAA-Hilfe):
Feature wird erzeugt -> Name = Sketch
Feature wird einem Strukturelement zugeordnet -> Name = Sketch.1

Egal ob der AW den Sketch umbenennt, oder die deutsche Version verwendet, der Sketch wird (immer) Sketch.1 heißen...

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Augustiner
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Augustiner an!   Senden Sie eine Private Message an Augustiner  Schreiben Sie einen Gästebucheintrag für Augustiner

Beiträge: 188
Registriert: 02.12.2005

HP Workstation
Windows XP Professional
Visual Studio 2005 Professional
CATIA V5 R14SP5 & R17SP3

erstellt am: 12. Feb. 2007 09:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für web_kai 10 Unities + Antwort hilfreich

Hört sich interessant, nur her mit den undokumentierten Sachen.
Nur weiss ich nicht was ich damit anfangen soll 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

web_kai
Mitglied


Sehen Sie sich das Profil von web_kai an!   Senden Sie eine Private Message an web_kai  Schreiben Sie einen Gästebucheintrag für web_kai

Beiträge: 4
Registriert: 27.10.2005

erstellt am: 13. Feb. 2007 06:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Was DU damit anfangen kannst weiß auch ich nicht...

Kollegen, die Makros programmieren, die sowohl in der deutschen als auch in der englischen Sprachversion laufen, haben damit die Möglichkeit, sicher auf Strukturelemente zuzugreifen.

In einigen Quellen (Bücher/iNet) wird häufig wie folgt auf Features zugegriffen:

...Item("Körper.3")

Das Problem dabei ist jedem klar, in der englischen Version laüft hier nichts. Wenn man allerdings nach dem internen Namen "MechanicalTool.3" sucht, ist man frei von irgendwelchen Sprachzwängen...

Ob Dir das jetzt weiterhilft, who care´s?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

crow73
Mitglied
Maschinenbauingenieur


Sehen Sie sich das Profil von crow73 an!   Senden Sie eine Private Message an crow73  Schreiben Sie einen Gästebucheintrag für crow73

Beiträge: 64
Registriert: 07.04.2003

CATIA V5R19 SP9
Hotfix 69
Core i7
16 GB RAM
W7

erstellt am: 20. Feb. 2007 14:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für web_kai 10 Unities + Antwort hilfreich

Wenn ich mich nicht irre wird dieser interne Name als "Local Name" in R16 unter den Properties angezeigt!

[Diese Nachricht wurde von crow73 am 20. Feb. 2007 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CAMiCADse
Mitglied



Sehen Sie sich das Profil von CAMiCADse an!   Senden Sie eine Private Message an CAMiCADse  Schreiben Sie einen Gästebucheintrag für CAMiCADse

Beiträge: 177
Registriert: 17.02.2006

V5,R19,SP9

erstellt am: 16. Apr. 2007 11:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für web_kai 10 Unities + Antwort hilfreich

Hallo web_kai,

mit Features im Body funktioniert das ja wunderbar, aber bei Elementen in einem HybridBody (GeometricalSet), klappt das nicht
Z.B. will ich an den internalName einer Plane oder eines Point ran...

Hast du dafür 'ne Lösung?
Gruß
CAMiCADse


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Proofin
Mitglied
Dpl.Ing


Sehen Sie sich das Profil von Proofin an!   Senden Sie eine Private Message an Proofin  Schreiben Sie einen Gästebucheintrag für Proofin

Beiträge: 208
Registriert: 24.11.2004

erstellt am: 05. Sep. 2007 18:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für web_kai 10 Unities + Antwort hilfreich

Moin zusammen,

hat einer mittler Weile eine Lösung für das Problem von CAMiCADse gefunden?
Ich möchte auch auf den InternalName eines Punktes in einem GeoSet zu greifen.

Gruß
Proofin

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

noir333
Mitglied
Ingenieur


Sehen Sie sich das Profil von noir333 an!   Senden Sie eine Private Message an noir333  Schreiben Sie einen Gästebucheintrag für noir333

Beiträge: 148
Registriert: 27.01.2004

Dell Precision 450 Dual Xeon, 2MB RAM,
XP SP2, NX3
V5R17SP3

erstellt am: 05. Sep. 2007 23:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für web_kai 10 Unities + Antwort hilfreich

Hallo Proofin,

ich habe mal ein wenig damit herumgespielt. Es scheint so zu sein, als wenn es vom Objekttyp abhängig ist, ob man den InternalName mit ModelElement bekommt, oder nicht. Ein Sketch unterstützt die Methode, auch wenn er in einem Hybridbody (set) liegt, ein Punkt oder eine Linie nicht, auch wenn Sie in einem Body liegt.

Aber es gibt eine andere Möglichkeit an den InternalName heranzukommen. Wenn man z.B. den Scheitelpunkt einer Linie  selektiert bekommt man als Brep-Namen folgendes angezeigt:
"BorderFVertex  BEdge  Brp  GSMLine.4;2);None  Limits1  );Limits2  );-1);Cf11  ));GSMLine.4;Z0;G2019)"

GSMLine.4 ist der interne Name, glaube ich. Also: Dein Objekt (Punkt oder Linie) in die Selection nehmen, und alle Scheitelpunkte raussuchen (Search). Dann in dem Namen das letzte Cf raussuchen und zwischen den nächsten beiden ";" steckt dein Internalname. Probiers mal, ich drücke die Daumen...


------------------
-----------

[Diese Nachricht wurde von noir333 am 05. Sep. 2007 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

zoltan.bekesi
Mitglied



Sehen Sie sich das Profil von zoltan.bekesi an!   Senden Sie eine Private Message an zoltan.bekesi  Schreiben Sie einen Gästebucheintrag für zoltan.bekesi

Beiträge: 321
Registriert: 22.10.2006

Job:
CATIA V5R19 / XP 32bit
MS Office 2003
Microstation V8 2004 Edition
DELL Precision M6300

erstellt am: 09. Nov. 2008 16:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für web_kai 10 Unities + Antwort hilfreich


HoleSketchInternalName.jpg

 
Hallo Zusammen,

dieser Beitrag hat mir bei meiner Problem sehr viel geholfen, in einen Punkt scheint es aber trotzdem nicht zu funktionieren.
Vielleicht weiß jemand einen Ausweg:

Ich möchte die Flächen aller Bohrungen für Weiterverarbeitung aus dem Modell haben, und zwar als Referenz.
Den B-Rep-String habe ich bis diese Tiefe verstanden und die Herkunft von "Assemble.50"="Bohrbearbeitung.1" auch entziffert (InternalName).
Was mir aber noch Probleme verursacht ist die Name der Skizze. Ich kann nicht nachvollziehen, warum CATIA Sketch.19 in den B-Rep schreibt, wobei sowohl DisplayName, als auch InternalName der erzeugender Skizze Sketch.18 ist. Wenn ich mit FindObjectByName auf Sketch.19 suche und es im Watch ansehe, bin ich beim selben Objekt und parent (VB mäßig) ist Hole.1.
So kann ich leider keinen gültigen B-Rep-String mit zusammenfügen erzeugen...

Der andere Weg an die Flächen zu kommen wäre eine Suche nach den Topologieelementen, Suchen aus Makro war bei mir bisher aber relativ langsam und Wegen der notwendigen Selection teilweise auch instabil. Hat hier vielleich jemand andere Erfahrungen? Ist es hier mit .NET besser geworden?

Ich suche verzweifel nach einen guten Lösung.

Gruß,
Zoltan

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

noir333
Mitglied
Ingenieur


Sehen Sie sich das Profil von noir333 an!   Senden Sie eine Private Message an noir333  Schreiben Sie einen Gästebucheintrag für noir333

Beiträge: 148
Registriert: 27.01.2004

Dell Precision 450 Dual Xeon, 2MB RAM,
XP SP2, NX3
V5R17SP3

erstellt am: 10. Nov. 2008 08:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für web_kai 10 Unities + Antwort hilfreich

Hallo Zoltan,

also mit dem Sketch.18 weiß ich auch nicht so recht, warum das so ist. Ich arbeite seit langem mit .NET und habe seit R17 keine Probleme mehr mit der Selection. Ich verwende VS2008.

Ein anderer Vorschlag:
1. mit Search alle Bohrungen selektieren im Part
2. mit Search alle Flächen (topology) aus der aktuellen Selektion raussuchen.

Löst das Dein Problem?

------------------
-----------

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

zoltan.bekesi
Mitglied



Sehen Sie sich das Profil von zoltan.bekesi an!   Senden Sie eine Private Message an zoltan.bekesi  Schreiben Sie einen Gästebucheintrag für zoltan.bekesi

Beiträge: 321
Registriert: 22.10.2006

Job:
CATIA V5R19 / XP 32bit
MS Office 2003
Microstation V8 2004 Edition
DELL Precision M6300

erstellt am: 10. Nov. 2008 19:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für web_kai 10 Unities + Antwort hilfreich

Hallo noir333,

das wäre die andere Möglichkeit, die ich mir auch ausgedacht habe, werde wahrscheinlich dabei bleigen.
Es wäre aber ohne Selection.Search schöner gewesen...
Mit R16 habe ich schon mal (möglicherweise nach falscher Programmierung) einige "Click OK to terminate" und diverse Abstürze erlebt, hoffentlich werden wir aber bald R19 haben und hoffentlich wird es auch besser.

Gruß,
Zoltán

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

MarcDe
Mitglied



Sehen Sie sich das Profil von MarcDe an!   Senden Sie eine Private Message an MarcDe  Schreiben Sie einen Gästebucheintrag für MarcDe

Beiträge: 137
Registriert: 11.10.2006

CATIA R18 SP2, BN 18, HF 162
Win 7 64Bit

erstellt am: 27. Jun. 2012 09:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für web_kai 10 Unities + Antwort hilfreich

Hallo, auch wenn der Beitrag schon älter ist.
Mit R18 scheint das bei "jedem" Element zu funktionieren. Habe gerade einmal 400 willkürliche Elemente rekursiv eingelesen mit dotNET C# und mit

((ModelElement)hybridBody.HybridSketches.Item(i).GetItem("ModelElement")).InternalName

bekomme ich bei allen den InternalName, ohne Fehlermeldungen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz