Autor
|
Thema: Selection add (2191 mal gelesen)
|
wulfgang Mitglied
Beiträge: 64 Registriert: 29.04.2007 CATIA V5 R18
|
erstellt am: 17. Mrz. 2010 09:05 <-- editieren / zitieren --> Unities abgeben:
Hallo, habe noch mal eine Frage. Wie benutze ich add von einem Selection Objekt. Ich erhalte bei folgendem Code immer als Fehlermeldung: Zitat: Object doesn.t support this method or property
Code: Set Point = hybridShapeFactory1.AddNewPointCoord(1,1,1) Set SelectList = CATIA.ActiveDocument.Selection SelectList.Clear SelectList.Add (Point)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
AndyMF Mitglied Betriebsmittelkonstrukteur
Beiträge: 90 Registriert: 16.09.2008 Windows Xp64 SP2 Catia V5 R16 Sp5 HF39 (Audi) 32bit und 64bit Catia V5 R16 (DC) 32bit/64bit Catia V5 R17 SP3 HF38 (BMW) 32bit/64bit Catia V5 R19 (Audi)32bit/64bit
|
erstellt am: 17. Mrz. 2010 09:26 <-- editieren / zitieren --> Unities abgeben: Nur für wulfgang
|
DanielFr. 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: 17. Mrz. 2010 10:27 <-- editieren / zitieren --> Unities abgeben: Nur für wulfgang
|
wulfgang Mitglied
Beiträge: 64 Registriert: 29.04.2007 CATIA V5 R18
|
erstellt am: 17. Mrz. 2010 12:54 <-- editieren / zitieren --> Unities abgeben:
|
imation1999 Mitglied dipl.-ing. Maschinenbau
Beiträge: 276 Registriert: 02.08.2011 Dell Precision T3500 Intel® Xeon® Quad Core NVIDIA Quadro® 5000 Win7 x64 Ultimate CATIA V5 R20 SP2
|
erstellt am: 21. Feb. 2014 09:22 <-- editieren / zitieren --> Unities abgeben: Nur für wulfgang
Hallo Zusammen, ich würde ein Element aus mein selection entfernen. Mein Code sieht so aus:
Code:
Sub CATMain() Dim partDocument1 As Document Set partDocument1 = CATIA.ActiveDocument Set part1 = partDocument1.Part Set hybridBodies1 = part1.HybridBodies Set hybridBody1 = hybridBodies1.Item("Geometrical Set.1") Set hybridShapes1 = hybridBody1.HybridShapes Set hybridShapePointCoord1 = hybridShapes1.Item("Point.2") Dim selection1 As Selection Set selection1 = partDocument1.Selection selection1.Search "(((((CATStFreeStyleSearch.Point + CATSketchSearch.2DPoint) + CATDrwSearch.2DPoint) + CATPrtSearch.Point) + CATGmoSearch.Point) + CATSpdSearch.Point),all" selection1.Remove hybridShapePointCoord1 End Sub
Warum funktioniert es nicht? Mit .Add geht es, mit .Remove geht es nicht. Wie kann ich in diesem Art Element aus der Selection entfernen? Oder es funktioniert nur mit .Remove(1) ... .Remove(2) ... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 21. Feb. 2014 09:26 <-- editieren / zitieren --> Unities abgeben: Nur für wulfgang
Servus Ja du kannst bei Remove die Elemente nur über den Index (zB Remove(1) angeben. Siehe auch Doku. (Sollte nicht gemäß Doku eher Remove2 verwendet werden?) Gruß Bernd EDIT: Lösungsvorschlag: - Schleife über die Selection - jedes Selektierte Element mit deinem "Vergleichselement" vergleichen - falls diese gleich sind: Element aus Selektion entfernen und Schleife verlassen ------------------ Warum einfach, wenn es auch kompliziert geht. [Diese Nachricht wurde von bgrittmann am 21. Feb. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Leiter Konstruktion (m/w/d) | Parker Hannifin EMEA Sàrl (?PHEMEA?), mit Sitz in Etoy, Schweiz, ist Parkers Hauptbetreibergesellschaft in der Region EMEA. Unterstützt wird sie von einem Netz von Parker Manufacturing Divisions und Sales Companies. Die Engineered Materials Group (EMG) ist eine strategische Geschäftsgruppe innerhalb PHEMEA. Die Prädifa Technology Division (PTD) ist ein Dienstleistungserbringer für PHEMEA. Leiter ... | Anzeige ansehen | Teamleitung, Gruppenleitung |
|
imation1999 Mitglied dipl.-ing. Maschinenbau
Beiträge: 276 Registriert: 02.08.2011 Dell Precision T3500 Intel® Xeon® Quad Core NVIDIA Quadro® 5000 Win7 x64 Ultimate CATIA V5 R20 SP2
|
erstellt am: 21. Feb. 2014 09:48 <-- editieren / zitieren --> Unities abgeben: Nur für wulfgang
Hallo Bernd, vielen Dank für die Antwort. Wie kann ich 2 Object vergleichen? so funktioniert es leider nicht:
Code: if hybridShapePointCoord1 = selection1.item(i).value then
mit .Name ist auch nicht die gute Lösung. Edit: mit
Code: If hybridShapePointCoord1 Is selection1.Item(i).Value Then
kann man 2 Object vergleichen. [Diese Nachricht wurde von imation1999 am 21. Feb. 2014 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |