Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Mit C# Parameter auslesen

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:  Mit C# Parameter auslesen (1961 mal gelesen)
mycon
Mitglied



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

Beiträge: 58
Registriert: 14.02.2011

Catia V5R19

erstellt am: 24. Jun. 2017 22:52    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

Hallo,

ich möchte mit C# einen Parameter in Catia bekommen, auslesen und neuen Text reinschreiben.

Mein bisheriger Versuch:

Code:

                INFITF.Application App = (INFITF.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Catia.Application");
                MECMOD.PartDocument aDoc = (MECMOD.PartDocument)App.ActiveDocument;
                INFITF.Selection Sel = aDoc.Selection;
                Sel.Clear();

                Sel.Search("(Name=Material & CATKnowledgeSearch.InternalParameter),all");
                if (Sel.Count > 0)
                {
                    KnowledgewareTypeLib.StrParam Para = Sel.Item(0).Value; //hier komme ich nicht weiter
                }


Kann mir jemand helfen, wie ich eine Selection in ein Parameterobject parsen kann?

Was ich auch noch machen möchte und wo ich bisher kein Ansatz habe, ich will dem Teil ein neues Material zuweisen.
d.h. wenn das Teil bereits ein Material hat, möchte ich die Dichte und den Namen ändern, hat es noch keines will ich ihm ein neues geben mit Dichte und Namen.

Kann mir hierbei jemand helfen?

[Diese Nachricht wurde von mycon am 24. Jun. 2017 editiert.]

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 24. Jun. 2017 23:30    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 mycon 10 Unities + Antwort hilfreich

Servus
Ich würde, wenn du dann das Material zuweisen willst oder anpassen willst, über den MaterialManager gehen.
Hier findest du ein Beispiel aus der Doku dazu. (bitte dort auch nach den Beschreibungen der entsprechenden Methoden suchen)
Über deine Suche findest du den Parameter "Material" aber nicht das Material an sich.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

mycon
Mitglied



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

Beiträge: 58
Registriert: 14.02.2011

Catia V5R19

erstellt am: 25. Jun. 2017 13:28    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

Danke dir schonmal für die Info.

Mit dem Materialmanager komme ich leider nicht ganz klar.
Denn ich möchte eigentlich in Catia keine Familien und Materialien mehr pflegen, d.h. der Materialkatalog ist leer.
Das Programm soll das Material neu erstellen und dem aktiven Part zuweisen.
Hast du einen Tipp wie ich ein neues Material erzeuge?

Das mit der Selection ist aber dennoch für mich interessant.
Ich finde einen Parameter über die Selection.search, aber ich bekomme das keiner Variable vom Typ KnowledgewareTypeLib.StrParam zugewiesen.
Warum?

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 25. Jun. 2017 15:28    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 mycon 10 Unities + Antwort hilfreich

Servus
Keine Ahnung ob du in eine Part einfach so ein Material erzeugen kannst. ggf musst du ein Dummy-Material (oder eines der die Standardbibliothek) verwenden und dieses danach anpassen.

Du musst nach der Selektion auch ein Element ansprechen. Der Zähler fängt bei 1 an und nicht bei 0. zB

Code:
Set MyParameter = Sel.Item(1).Value 'erstes selektiertes Element

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

mycon
Mitglied



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

Beiträge: 58
Registriert: 14.02.2011

Catia V5R19

erstellt am: 25. Jun. 2017 22:39    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

Das funktioniert in C# nicht, da dass nicht der gleiche Type ist.

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 25. Jun. 2017 22:44    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 mycon 10 Unities + Antwort hilfreich

Servus
Was für ein Typ hat denn das erste Element?
Kannst du nicht allgemein Parameter verwenden anstatt StrParameter (also nur String)?

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 26. Jun. 2017 11:35    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 mycon 10 Unities + Antwort hilfreich

Servus
Hat es einen Grund warum du nach dem Parameter suchst und nicht gleich nach dem Material? zB:
Code:
Sel.Search "(CATProductSearch.MatMaterialType),all"

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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