Autor
|
Thema: Sections selektieren (608 mal gelesen)
|
mgheinz1001 Mitglied Dipl.-Ing. (FH)
Beiträge: 109 Registriert: 17.03.2005
|
erstellt am: 05. Feb. 2009 15:36 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, hat jemand eine Idee wie ich Sections (die Feature unterhalb des Knotens Applications/Sections des Products auf oberster Ebene) mit der Methode "Selection.SelectElement" für den Anwender selektierbar machen kann? Mit dem Filter "Section" oder "AnyObject" oder "CATBaseDispatch" sind die Feature leider nicht selektierbar. Code:
dim objSel as Anyobject dim avFilter(2) as variant ... avFilter(0) = "Section" avFilter(1) = "AnyObject" avFilter(2) = "CATBaseDispatch" strSelResult = objSel.selectelement2(avFilter, "Select section", false) ' LEIDER KEINE SECTIONS SELEKTIERBAR !!!
Des weiteren würde ich die einzelnen Sections gern an anderer Stelle der Selektion hinzufügen, um sie im Baum zu highlighten. Das gibt zwar keinen Fehler, aber die Selektion im Strukturbaum findet leider auch nicht statt.
Code:
... Set cltSections = objRootProduct.GetTechnologicalObject("Sections") ... call objSel.add(cltSections.item(i)) ' DURCH DIESE ANWEISUNG WERDEN DIE SECTIONS NICHT GEHIGHLIGHTED !!!
Ich wäre jeden Vorschlag sehr dankbar!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAMiCADse Mitglied
Beiträge: 177 Registriert: 17.02.2006 V5,R19,SP9
|
erstellt am: 06. Feb. 2009 09:44 <-- editieren / zitieren --> Unities abgeben: Nur für mgheinz1001
Hallo mgheinz1001, der Filter-String lautet "CATIASection". Das hinzufügen zur Selection/Highlighten funktioniert bei mir auch nicht, möglicher workaround: Selection.Search, mit Filter: Typ=Section & Attribut Name = "Section.xy" Gruß CAMiCADse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mgheinz1001 Mitglied Dipl.-Ing. (FH)
Beiträge: 109 Registriert: 17.03.2005
|
erstellt am: 09. Feb. 2009 08:00 <-- editieren / zitieren --> Unities abgeben:
Hallo, vielen Dank erst mal für die schnelle Antwort. Ich habe deine Vorschläge einmal ausprobiert. Das Highlighten mittels "Search" klappt super. Allerdings kann ich immer noch keine Sections selektieren. Anscheinend ist der Filter "CATIASection" nicht bekannt. Zumindest kommt es bei der Methode "SelectElement2" zum Absturz. Ich programmiere übrigens mit CATScript. Hier noch mal mein Code: Code:
dim objSel as anyobject dim avFilter(0) as variant set objSel = catia.activedocument.selection avFilter(0) = "CATIASection" call objSel.selectelement2(avFilter, "Select section", false) ' ! HIER KOMMT ES ZUM ABSTURZ
Noch irgend welche Vorschläge? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 09. Feb. 2009 09:24 <-- editieren / zitieren --> Unities abgeben: Nur für mgheinz1001
Welche Fehlermeldung kommt? Versuch mal dein objSel auch As Variant zu deklarieren. ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mgheinz1001 Mitglied Dipl.-Ing. (FH)
Beiträge: 109 Registriert: 17.03.2005
|
erstellt am: 09. Feb. 2009 13:58 <-- editieren / zitieren --> Unities abgeben:
Ich habe mal einen Screenshot von der Fehlermeldung gemacht (siehe Anhang). Wenn ich da auf "Ja" klicke, wird der Quellcode geöffnet und die Zeile mit dem Aufruf der Methode "SelectElement2" gehighlighted. Die Deklaration von "objSel" als "Variant" bringt den selben Fehler. Wenn ich den Datentyp ganz weg lasse, kommt auch der selbe Fehler. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
denyo_1 Moderator Manager
Beiträge: 2506 Registriert: 10.08.2005 HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3
|
erstellt am: 09. Feb. 2009 14:56 <-- editieren / zitieren --> Unities abgeben: Nur für mgheinz1001
Hallo, also so sollte es funktionieren: Code:
dim oDoc as Document dim objSel as variant dim avFilter(0) as variantset oDoc= catia.activedocument set objSel = oDoc.selection avFilter(0) = "CATIASection" 'call brauchst du nicht!!! objSel.selectelement2(avFilter, "Select section", false) ' ! HIER KOMMT ES ZUM ABSTURZ
------------------ MFG Daniel Die KATJA ist halt doch nur ne zickige Französin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mgheinz1001 Mitglied Dipl.-Ing. (FH)
Beiträge: 109 Registriert: 17.03.2005
|
erstellt am: 09. Feb. 2009 16:23 <-- editieren / zitieren --> Unities abgeben:
Am "Call" liegt es nicht! Habe deinen Code auch mal 1:1 übernommen - es kommt dann an der selben Stelle zum Fehler. Wenn man das "Call" weglässt, muss man auch auf die Klammern des Methodenaufrufs verzichten. Wenn ich die Klammern also weglasse, kommt es immer noch zum Fehler. Es liegt also eindeutig am Filter "CATIASection". Noch irgend welche Ideen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CAMiCADse Mitglied
Beiträge: 177 Registriert: 17.02.2006 V5,R19,SP9
|
erstellt am: 09. Feb. 2009 17:25 <-- editieren / zitieren --> Unities abgeben: Nur für mgheinz1001
|