Autor
|
Thema: Ansicht per Makro ändern (2795 mal gelesen)
|
MarcDe Mitglied
Beiträge: 137 Registriert: 11.10.2006 CATIA R18 SP2, BN 18, HF 162 Win 7 64Bit
|
erstellt am: 17. Jul. 2009 20:09 <-- editieren / zitieren --> Unities abgeben:
|
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. Jul. 2009 20:27 <-- editieren / zitieren --> Unities abgeben: Nur für MarcDe
Hallo Marc, woher bekommst du das Element? Ist das ein Script-Input oder soll der Anwender eine Plane selektieren? Ein paar mehr Info´s wären hilfreich An den Befehl "normal View" kommst du nur über einen CATIA.StartCommand. Hier kannst du aber keine Input-Elemente angeben. D.h. ev. wäre es sinnvoller die "named Views" zu verwenden ------------------ MFG Daniel Die KATJA ist halt doch nur ne zickige Französin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MarcDe Mitglied
Beiträge: 137 Registriert: 11.10.2006 CATIA R18 SP2, BN 18, HF 162 Win 7 64Bit
|
erstellt am: 17. Jul. 2009 20:58 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich habe eine fixe Ebene im Modell und nach einer reihe von Geometrieerzeugung will ich zum schluss, wenn alles fertig ist mit senkrechtem Blick auf die Ebene von dem gesamten Modell (alles reingezoomt) ein Screenshot machen.... Die Ebene liegt irgendwo im Raum... 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: 18. Jul. 2009 00:01 <-- editieren / zitieren --> Unities abgeben: Nur für MarcDe
Servus Dazu könntest du dir eine Camera (unter definierte Ansichten -> hinzufügen) erstellen und dann auf "alles einpassen" klicken. IMHO sollte das sich auch mit einem Makro erschlagen lassen. Es gab mel ein paar Beiträge zur Erstellung von Screenshots mit einem Makro Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
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: 18. Jul. 2009 11:14 <-- editieren / zitieren --> Unities abgeben: Nur für MarcDe
Hallo Marc, also um das von Bernd mal zu verdeutlichen hier ein kleines Script, das dir dein Bauteil auf die "Top View" ausrichtet und anschließend einen Reframe macht.
Code:
Sub CATMain() Dim oDoc As Document Dim oCams As Cameras Dim oCam As Camera3D Dim oViewPoint As Viewpoint3D Dim oSpecWindow As SpecsAndGeomWindow Dim oViewer As Viewer3D Set oDoc = CATIA.ActiveDocument Set oCams = oDoc.Cameras Set oCam = oCams.Item(6) Set oViewPoint = oCam.Viewpoint3D Set oSpecWindow = CATIA.ActiveWindow Set oViewer = oSpecWindow.ActiveViewer oViewer.Viewpoint3D = oViewPoint oViewer.Reframe End Sub
------------------ MFG Daniel Die KATJA ist halt doch nur ne zickige Französin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MarcDe Mitglied
Beiträge: 137 Registriert: 11.10.2006 CATIA R18 SP2, BN 18, HF 162 Win 7 64Bit
|
erstellt am: 20. Jul. 2009 16:29 <-- editieren / zitieren --> Unities abgeben:
|
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: 20. Jul. 2009 17:00 <-- editieren / zitieren --> Unities abgeben: Nur für MarcDe
Hallo, soweit ich weiß kann man diesen Befehl aber nur mit einem StartCommand ansprechen. Dies ist aber ein asynchrone Operation (sprich dein Script wartet nicht auf Beendigung des Befehl´s sondern läuft einfach weiter). Dies kann zu Laufzeitfehlern führen. Des weiteren hast du keine Inputs, sprich du musst die Ebene wie beim "normalen" Ausführen des Befehls durch den Anwender selektieren lassen und kannst sie nicht durch eine Selektion innerhalb des Scriptes an den Befehel weitergeben ------------------ MFG Daniel Die KATJA ist halt doch nur ne zickige Französin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MarcDe Mitglied
Beiträge: 137 Registriert: 11.10.2006 CATIA R18 SP2, BN 18, HF 162 Win 7 64Bit
|
erstellt am: 20. Jul. 2009 17:09 <-- editieren / zitieren --> Unities abgeben:
|
zoltan.bekesi Mitglied
Beiträge: 321 Registriert: 22.10.2006 Job: CATIA V5R19 / XP 32bit MS Office 2003 Microstation V8 2004 Edition DELL Precision M6300
|
erstellt am: 20. Jul. 2009 18:28 <-- editieren / zitieren --> Unities abgeben: Nur für MarcDe
Hallo MarcDe, das müsste gehen, du brauchst aber wahrscheinlich noch eine Richtung. Man kann die Richtung einer Ebene (die zwei Richtungsvektoren) über GetFirstAxis und GetSecondAxis oder SPAWorkbench fragen. Eine Viewpoint3D hat zwei Richtungen: SightDirection und UpDirection. Den ersten bekommst du als Kreuzprodut der zwei Richtungen der Ebene. Für den zweiten kannst du einer der Richtungsvektoren verwenden, wobei da was exakteres sicherlich günstiger wäre. Mit PutSigthDirection, bzw. PutUpDirection kannst du dann die entsprechende Richtungen der aktuellen Ansicht setzen. (oViewPoint.PutSightDirection HierDieRichtungDerEbene) Gruß, Zoltan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |