Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Bilderserie, Screenshot unregelmäßig

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:  Bilderserie, Screenshot unregelmäßig (3014 mal gelesen)
MrLimes
Mitglied
Technischer Sachbearbeiter


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

Beiträge: 14
Registriert: 15.09.2009

Visual Studio 2013 + Devexpress v16.2.5
CATIA V5-6 R24, SP4 HF 33

erstellt am: 15. Sep. 2009 13:34    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


Bilderfolge.JPG

 
Hallo zusammen,

nachdem ich mich erst seit 4 Tagen mit Catia und speziell Makros beschäftige,
stehe ich auch schon vor einem mir unverständlichen Problem. 

aktueller Stand: Product mit vielen Parts und Unterproducts -->zusammen ca. 1200
jeweils ein Bild in Isometrischer Ansicht und ein Multi-View Bild speichern und in
Excel als Hyperlink importieren.

Funktion des Makros: Ich möchte gerne eine Part in eine Iso-Ansicht drehen,
daraufhin soll mir ein Bildschirmfoto erstellt werden und dieses in einem
bestimmten Ordner abgespeichert werden. Danach soll er in die multi-view
Ansicht wechsel und ein weiteres Bild erstellen. Da ich noch an dem rekursiven
Teil (durchlaufen aller Parts) arbeite, fängt er wieder bei einer ISO-Ansicht an.
Leider kommt es bei mir zu folgendem Problem:
(siehe Bilderfolge)
1. so wie in Reihe 1 hätte ich es gerne
2. schon nahe am Ziel, aber leider verhaspelt er sich immer wieder. Dieser Fehler
scheint auch nicht reproduzierbar zu sein. Das Ergebnis stimmt ab und an, dann auch
mal wieder garnicht. 
Leider muss hierbei der Benutzer immer OK anklicken...
3. Läuft am schnellsten, aber die Ansichten wechseln nicht mehr? 

Damit ich nicht zuviel schreib - hier der Code:

For i = 1 To Eingabe Step 1
      Summe = Summe + 1 
                Set FullScreen = CATIA.ActiveWindow
                FullScreen.Layout = 1                                 
                CATIA.StartCommand "CompassDisplayOff"           
    ' Ändert Blickwinkel
    CATIA.ActiveWindow.ActiveViewer.Viewpoint3D.PutSightDirection Array(1, 1, -1)
    CATIA.ActiveWindow.ActiveViewer.Viewpoint3D.PutUpDirection Array(0, 0, 1)
    ' Fokusiert Bauteil
    CATIA.ActiveWindow.ActiveViewer.Reframe
    CATIA.StartCommand "Fit All In"
   
    CATIA.RefreshDisplay = True
    CATIA.ActiveWindow.ActiveViewer.Update
   
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    '''''''''''    1. Screenshot welches unter dem Pfad -> dateipfad <- gespeichert wird
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
   
    dateiname = CStr(Summe)
    dateipfad = "C:\Rainer\"                                                    ' Pfad für die Bilder
    CATIA.ActiveWindow.ActiveViewer.CaptureToFile 5, dateipfad + dateiname + "_1.jpeg"      'variabel
   
    Dim k, Summe_k As Integer
    Summe_k = 0
    k = 1
    Do While CATIA.FileSystem.FileExists(dateipfad + dateiname + "_1.jpeg") = False
            Summe_k = Summe_k + k
            k = k + 1
    Loop

    '----- Bild 1 wurde erstellt -----
    Box = MsgBox("Bild 1 wurde erstellt", 64, "Meldung") 'Diese Meldung würde ich gerne weglassen
   
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    CATIA.StartCommand "Multi-View"
    CATIA.StartCommand "Fit all in"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    '''''''''''    2. Screenshot welches unter dem Pfad -> dateipfad <- gespeichert wird
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    CATIA.ActiveWindow.ActiveViewer.CaptureToFile 5, dateipfad + dateiname + "_2.jpeg"      'variabel
    Dim l, Summe_l As Integer
    Summe_l = 0
    l = 1
    Do While CATIA.FileSystem.FileExists(dateipfad + dateiname + "_1.jpeg") = False
            Summe_l = Summe_l + l
            l = l + 1
    Loop
    '----- Bild 2 wurde erstellt -----
    'Box = MsgBox("Bild 2 wurde erstellt", 64, "Meldung")  'Diese Meldung würde ich gerne weglassen
    CATIA.StartCommand "Multi-View"                        'Multi-View ausschalten
    FullScreen.Layout = 2                                  'Zeigt Baum wieder an
    CATIA.StartCommand "CompassDisplayOn"                  'Kompass an
Next
    Call DownSubs.Hintergrundwechsel                                      'Farbwechsel durchführen weis --> Standart


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

RSchulz
Moderator²
Head of CAD, Content & Collaboration / IT-Manager



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

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 15. Sep. 2009 14:27    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 MrLimes 10 Unities + Antwort hilfreich

Hallo,
ich würde als erstes mal probieren, mit einem Sleep die ganze Sache etwas auszubremsen. Ich nehme nämlich an, dass CATIA langsamer als das Makro ist und dadurch diese Ungereimtheiten entstehen. Die Messageboxen führen dann automatisch dazu, dass eine Verzögerung stattfindet. Ich würde sowohl nach der Ansichtenwechslung und nach dem Fit All In ein sleep von einer halben Sekunde "Sleep(500)" einfügen oder vll. erst mal im extrem 10 sekunden oder so, um zu prüfen, ob es daran liegt. Danach könntest du ja Schrittweise optimieren, wobei es, wenn es daran liegt, dann von der Performance der CPU abhängig sein dürfte.

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)

Konfuzius sprach: "Wer sich das Alte noch einmal vor Augen führt, um das Neue zu verstehen, der kann anderen ein Lehrer sein."

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

MrLimes
Mitglied
Technischer Sachbearbeiter


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

Beiträge: 14
Registriert: 15.09.2009

Visual Studio 2013 + Devexpress v16.2.5
CATIA V5-6 R24, SP4 HF 33

erstellt am: 15. Sep. 2009 16:06    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

Ah ok jetzt läuft es. 
Vielen Dank RSchulz ich glaub ich wäre noch dran verzweifelt.

MFG
Rainer

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

DanielFr.
Moderator
Manager


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

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: 15. Sep. 2009 17:36    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 MrLimes 10 Unities + Antwort hilfreich

Hallo,

wenn du es in VB.NET machst könntest du mit einem DoEvents arbeiten. Dann hast du keine unnötige Pause 

------------------
MFG Daniel

Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)

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