| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co. |
| |
 | KISTERS 3DViewStation: Neuer Strukturvergleich ab sofort verfügbar, eine Pressemitteilung
|
Autor
|
Thema: Bodies per Macro auf transparent setzen (2421 mal gelesen)
|
ChiefJosef Mitglied Hab ich

 Beiträge: 26 Registriert: 03.07.2012 Intel (R) Xeon(R) CPU E31270 @3.4GHz 3.4GHz RAM 16GB. Grafik NVIDIA Quadro 2000 Windows Win 7 Enterprise 64 CATIA V 5.19 SP9 Build 19 HF40
|
erstellt am: 05. Jul. 2012 00:34 <-- editieren / zitieren --> Unities abgeben:         
Hallo Zusammen, ich versuche mich gerade damit ein Body zu erstellen, den umzubenennen in Rohteil und das ganze dann transparent zu setzen. Der erste Teil hat ganz gut geklappt. Der zweite Teil den Body transparent zu setzen klappt leider nicht. Hat da jemand eine Lösung für mich? Ich befinde mich im Anfägerstatus, deswegen bitte kein Fachchinesisch.. :-) Das Script sieht wie folgt aus.: Language="VBSCRIPT" Sub CATMain() Set partDocument1 = CATIA.ActiveDocument Set part1 = partDocument1.Part Set bodies1 = part1.Bodies Set body1 = bodies1.Add() body1.Name = "Rohteil" End Sub [Diese Nachricht wurde von ChiefJosef am 05. Jul. 2012 editiert.]
[Diese Nachricht wurde von ChiefJosef am 05. Jul. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
       
 Beiträge: 12054 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 05. Jul. 2012 06:56 <-- editieren / zitieren --> Unities abgeben:          Nur für ChiefJosef
Servus Willkommen im Forum. Bitte Systeminfo ausfüllen. Dazu must du (wie auch manuell) den Körper selektieren und über "SetRealOpacity" transparent setzen. AFAIR kannst du diese schritte mit dem Makrorekorder aufnehmen, und dann den Code an deine Bedürfnisse anpassen. Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
DasDon Mitglied Konstruktuer
 
 Beiträge: 169 Registriert: 25.07.2011 R18 SP2. WIN
|
erstellt am: 05. Jul. 2012 10:55 <-- editieren / zitieren --> Unities abgeben:          Nur für ChiefJosef
Moin, SUB CATMain() DIM oBody DIM oSel SET oSel = CATIA.ActiveDocument.Selection oSel.Clear SET oBody = CATIA.ActiveDocument.Part.Bodies.Add() oBody.Name = "Rohteil" oSel.Add (oBody) 'EDIT FIRST VALUE FOR OPCACITY SETTING 0 =total transparency & 255 = total opacity. oSel.VisProperties.SetRealOpacity 0,1 END SUB Gruß [Diese Nachricht wurde von DasDon am 05. Jul. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ChiefJosef Mitglied Hab ich

 Beiträge: 26 Registriert: 03.07.2012 Intel (R) Xeon(R) CPU E31270 @3.4GHz 3.4GHz RAM 16GB. Grafik NVIDIA Quadro 2000 Windows Win 7 Enterprise 64 CATIA V 5.19 SP9 Build 19 HF40
|
erstellt am: 05. Jul. 2012 23:18 <-- editieren / zitieren --> Unities abgeben:         
Danke, so hat es geklappt. Ich konnte sogar meine Bodyerstellung löschen und durch dein Macro ersetzen. @all, Danke für eure Mühe Das komplette Macro sieht jetzt so aus: Language="VBSCRIPT" Sub CATMain() Set partDocument1 = CATIA.ActiveDocument Set part1 = partDocument1.Part Set hybridBodies1 = part1.HybridBodies Set hybridBody1 = hybridBodies1.Add() hybridBody1.Name = "Aufbau" part1.UpdateObject hybridBody1 Set hybridBody2 = hybridBodies1.Add() hybridBody2.Name = "WorkNC" part1.UpdateObject hybridBody2 Set hybridBodies2 = hybridBody1.HybridBodies Set hybridBody3 = hybridBodies2.Add() hybridBody3.Name = "Geometrie" part1.UpdateObject hybridBody3 Set hybridBody4 = hybridBodies2.Add() hybridBody4.Name = "NCM" part1.UpdateObject hybridBody4 Set hybridBodies3 = hybridBody3.HybridBodies Set hybridBody5 = hybridBodies3.Add() hybridBody5.Name = "Linien" part1.UpdateObject hybridBody5 Set hybridBody6 = hybridBodies3.Add() hybridBody6.Name = "Flaechen" part1.UpdateObject hybridBody6 SET oSel = CATIA.ActiveDocument.Selection oSel.Clear SET oBody = CATIA.ActiveDocument.Part.Bodies.Add() oBody.Name = "Rohteil" oSel.Add (oBody) 'EDIT FIRST VALUE FOR OPCACITY SETTING 0 =total transparency & 255 = total opacity. oSel.VisProperties.SetRealOpacity 0,1 End Sub Es erstellt mir meine Geometrical Sets, benennt sie um und noch einen Body transparent.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ChiefJosef Mitglied Hab ich

 Beiträge: 26 Registriert: 03.07.2012 Intel (R) Xeon(R) CPU E31270 @3.4GHz 3.4GHz RAM 16GB. Grafik NVIDIA Quadro 2000 Windows Win 7 Enterprise 64 CATIA V 5.19 SP9 Build 19 HF40
|
erstellt am: 13. Sep. 2014 05:42 <-- editieren / zitieren --> Unities abgeben:         
Nach einem Makroeinstiegskurs für Dummies, habe ich das Makro etwas überarbeitet. Für Hilfen wie man es besser machen kann bin ich immer offen. Option Explicit Dim sMacroName As String Dim sVersion As String Dim oCATIA As Application Sub CATMain() Set oCATIA = CATIA Dim oDoc As PartDocument Set oDoc = oCATIA.ActiveDocument Dim opart1 As Part Set opart1 = oDoc.Part Dim oSel 'As Selection Dim oBody 'As Body Set oSel = oCATIA.ActiveDocument.Selection oSel.Clear Set oBody = oCATIA.ActiveDocument.Part.Bodies.Add() oBody.Name = "Rohteil_" oSel.Add (oBody) oSel.VisProperties.SetRealOpacity 0, 1 '----------------------------------------------------------------- Dim hybridBodies1 As HybridBodies Set hybridBodies1 = opart1.HybridBodies Dim hybridBody1 As HybridBody Set hybridBody1 = hybridBodies1.Add() hybridBody1.Name = "Aufbau" opart1.UpdateObject hybridBody1 '----------------------------------------------------------------- Dim hybridBodies2 As HybridBodies Set hybridBodies2 = hybridBody1.HybridBodies Dim hybridBody2 As HybridBody Set hybridBody2 = hybridBodies2.Add() hybridBody2.Name = "Geometrie" opart1.UpdateObject hybridBody2 '----------------------------------------------------------------- Dim hybridBodies3 As HybridBodies Set hybridBodies3 = hybridBody2.HybridBodies Dim hybridBody3 As HybridBody Set hybridBody3 = hybridBodies3.Add() hybridBody3.Name = "Hilfselemente (Punkte & Linien)" opart1.UpdateObject hybridBody3 '----------------------------------------------------------------- Dim hybridBodies4 As HybridBodies Set hybridBodies4 = hybridBody2.HybridBodies Dim hybridBody4 As HybridBody Set hybridBody4 = hybridBodies4.Add() hybridBody4.Name = "Flaechen & Ebenen" opart1.UpdateObject hybridBody4 '----------------------------------------------------------------- Dim hybridBodies5 As HybridBodies Set hybridBodies5 = hybridBody2.HybridBodies Dim hybridBody5 As HybridBody Set hybridBody5 = hybridBodies5.Add() hybridBody5.Name = "NCM & 3D Lochinfo" opart1.UpdateObject hybridBody5 '----------------------------------------------------------------- sMacroName = "Aufbauordner erstellen" sVersion = "V1.0" MsgBox "Macro ist beendet, Ordner NCM & 3D Lochinfo bleibt selektiert", vbInformation, sMacroName & "" & sVersion End Sub
------------------ Ich hab keine Ahnung und davon sehr viel. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |