Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Parameter für Draufsicht bearbeiten

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:  Parameter für Draufsicht bearbeiten (861 / mal gelesen)
Snover
Mitglied
Methodenplaner

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

Beiträge: 9
Registriert: 15.06.2020

Catia V5 R26

erstellt am: 18. Feb. 2021 08:13    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

Hallo   

ich hoffe jemand kann mir helfen.
Das Makro generiert aus jedem Part in einer Baugruppe eine Draufsicht in einer Zeichnung.
Soweit funktioniert das Makro auch.
Im moment wird immer die X Y Ebene gewählt. Das möchte ich gerne ändern in Y Z Ebne ändern.
Ich bin für eure Unterstützung sehr dankbar.


Sub CATMain()
    Dim ActiveWindow    As PartDocument
    Dim MainPRD        As Part
    Dim TmpNode        As Document
    Dim PartName    As String
    Dim CatiaDocs      As Documents
    Dim dumDrawDoc      As DrawingDocument
    Dim DumSheet        As DrawingSheet
 
    'CATIA.DisplayFileAlerts = False
    'CATIA.RefreshDisplay = False

    'On Error Resume Next
     
 
    'Set ActiveWindow = CATIA.ActiveDocument
    'Set MainPRD = ActiveWindow.Product
    Set CatiaDocs = CATIA.Documents
    Set dumDrawDoc = CatiaDocs.Add("Drawing")

    dumDrawDoc.Standard = CatDrawingStandard.catISO
    Set dumSheets = dumDrawDoc.Sheets
    Set DumSheet = dumSheets.Item("Sheet.1")
    DumSheet.PaperSize = CatPaperSize.catPaperA0
    DumSheet.Orientation = CatPaperOrientation.catPaperLandscape

         
    For Each TmpNode In CATIA.Documents
     
        If InStr(TmpNode.Name, "CATPart") > 0 Then
         
            PartName = TmpNode.Name
            CreateView (PartName)
         
        End If

 
    Next

    'CATIA.DisplayFileAlerts = True
    'CATIA.RefreshDisplay = True
    dumDrawDoc.Update

End Sub


Sub CreateView(ProductName As String)

    Dim drawingDocument1 As DrawingDocument
    Set drawingDocument1 = CATIA.ActiveDocument

    Dim drawingSheets1 As DrawingSheets
    Set drawingSheets1 = drawingDocument1.Sheets

    Dim drawingSheet1 As DrawingSheet
    Set drawingSheet1 = drawingSheets1.ActiveSheet

    Dim drawingViews1 As DrawingViews
    Set drawingViews1 = drawingSheet1.Views

    Dim drawingView1 As DrawingView
    Set drawingView1 = drawingViews1.Add("AutomaticNaming")

    Dim drawingViewGenerativeLinks1 As DrawingViewGenerativeLinks
    Set drawingViewGenerativeLinks1 = drawingView1.GenerativeLinks

    Dim drawingViewGenerativeBehavior1 As DrawingViewGenerativeBehavior
    Set drawingViewGenerativeBehavior1 = drawingView1.GenerativeBehavior

    Dim documents1 As Documents
    Set documents1 = CATIA.Documents

    Dim productDocument1 As ProductDocument
    Set productDocument1 = documents1.Item(ProductName)

    Dim product1 As Product
    Set product1 = productDocument1.Product

    drawingViewGenerativeBehavior1.Document = product1

    drawingViewGenerativeBehavior1.DefineFrontView -1, -0, -0, -0, 1, 0

    drawingView1.X= 1
   
    drawingView1.Y= 1

    drawingView1.[Scale] = 1

End Sub

    CATIA.ActiveWindow.ActiveViewer.Reframe

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 18. Feb. 2021 09:01    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 Snover 10 Unities + Antwort hilfreich

Servus

Die Ausrichtung des Teils in der Ansicht wird über die Methode DefineFrontView (Vektoren der Ebene) definiert.
Für die Y-Z-Ebene müsst dabei wohl DefineFrontView 0, 1, 0, 0, 0, 1 angeben werden.

Gruß
Bernd

Hinweis: In deinem Code werden für alle geöffneten Parts Ansichten erzeugt, also auch von mehreren parallel geöffneten CATProducts bzw CATParts

------------------
Warum einfach, wenn es auch kompliziert geht.

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

Snover
Mitglied
Methodenplaner

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

Beiträge: 9
Registriert: 15.06.2020

Catia V5 R26

erstellt am: 18. Feb. 2021 10:09    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

Danke 

hat sofort funktioniert
ich mehme an  DefineFrontView 0, 1, 0, 0, 0, 1 steht für DefineFrontView X,Y,Z,X,Y,Z dann macht das auch einen Sin.

Was mir jetzt auf gefallen ist, das ganze etwas unübersichtlich ist.
Kann man da noch die Part Benennung als Textfeld einfieseln lassen ?

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 18. Feb. 2021 10:13    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 Snover 10 Unities + Antwort hilfreich

Servus

An die PartNumber kommst du über productDocument1.Product.PartNumber
Wo du diese dann hinschreibst musst du dir noch überlegen (ich würde wohl am einfachsten die View entsprechend benennen)

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

Snover
Mitglied
Methodenplaner

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

Beiträge: 9
Registriert: 15.06.2020

Catia V5 R26

erstellt am: 18. Feb. 2021 10:19    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

ja das ist noch besser

Wie komme ich da dran?

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 18. Feb. 2021 10:23    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 Snover 10 Unities + Antwort hilfreich

Servus

Bei fast allen Objekten kommst du über .Name an den Namen

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

Snover
Mitglied
Methodenplaner

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

Beiträge: 9
Registriert: 15.06.2020

Catia V5 R26

erstellt am: 18. Feb. 2021 10:49    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

ich hab das

Dim drawingView1 As DrawingView
Set drawingView1 = drawingViews1.Add("AutomaticNaming")

Durch das ersetzt

Dim drawingView1 As DrawingView
Set drawingView1 = drawingViews1.Add("productDocument1.Product.PartNumber")

jetzt haben alle Ansichten den gleichen Namen productDocument1.Product.PartNumber
Aber der Name vom Part wird nicht übernommen

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 18. Feb. 2021 11:24    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 Snover 10 Unities + Antwort hilfreich

Servus

Da fehlen wohl ein paar Grundlagen zu VB(A).
Lass mal die Anführungszeichen weg.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

Snover
Mitglied
Methodenplaner

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

Beiträge: 9
Registriert: 15.06.2020

Catia V5 R26

erstellt am: 18. Feb. 2021 11: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


Dann kommt eine Fehlermeldung

Dim drawingView1 As DrawingView
Set drawingView1 = drawingViews1.Add(productDocument1.Product.PartNumber)

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 18. Feb. 2021 11:44    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 Snover 10 Unities + Antwort hilfreich

Servus

Wie lautet die Fehlermeldung? Hast du dir überlegt woran das liegen könnte?
Ist die Variable denn schon gefüllt? (Code verstehen)
Du könntest zB auch nach DefineFrontView den Namen der Ansicht ändern (drawingView1.Name)

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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