Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Positionsdarstellung in Unterbaugruppe

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Positionsdarstellung in Unterbaugruppe (2298 mal gelesen)
HideValue
Mitglied
Development Engineer


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

Beiträge: 10
Registriert: 10.01.2012

Win7,Inventor2012,Excel2003 2007 2010

erstellt am: 26. Aug. 2014 15:28    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 Ihr,

ich wollte in einer Baugruppe und dort in einer Unterbaugruppe eine Position ändern!
Es soll einfach ein anderer Einbauzustand abgebildet werden.

im aktiven Assembly funktioniert das auch.
Aber über SET AllReferencedDocuments als assembly_Document!! und dann represantationsmanager -> PositionalRepresentations -> (item) PositionalRepresentation

PositionalRepresentations.item(2).activate

geht nicht!!!!!!!!!!!!!!!!!!


hier der code

Sub nnn()
  'öffnen, aktualisieren, speichern, schliessen
 
    Dim odoc As Inventor.Document
 
    Set odoc = ThisApplication.ActiveDocument
   
' Bezug zu allen Teilen im Assembly.'''''''''''''
Dim oRefDocs As DocumentsEnumerator            ''
Set oRefDocs = odoc.AllReferencedDocuments  ''
'''''''''''''''''''''''''''''''''''''''''''''''''

' Durchlaufen der die Liste der Dokumente jeder Teilnehmer kann angesprochen werden.
Dim oRefDoc As AssemblyDocument                    '''
Set oRefDoc = oRefDocs.Item(8)
''''''''''''''''''''''''''''''''''''''''''''''

Debug.Print oRefDoc.DisplayName


' get AssemblyComponentDefinition
Dim UAssemblyDef As AssemblyComponentDefinition
Set UAssemblyDef = oRefDoc.ComponentDefinition

  ' get RepresentManager
Dim REPmanager As RepresentationsManager
Set REPmanager = UAssemblyDef.RepresentationsManager

  ' get PositionalRepresentations
Dim PosREPs As PositionalRepresentations
Set PosREPs = REPmanager.PositionalRepresentations

    ' get DIE PositionalRepresentations
Dim DiePosREP As PositionalRepresentation
Set DiePosREP = PosREPs.Item(1)

MsgBox DiePosREP.Name
DiePosREP.Activate

odoc.Update

End Sub

danke euch werde mich bei der Beantwortung ander Themen auch beteiligen Versprochen!!!!

nicht immer nur nehmen!!!!!
versprochen!!!

------------------
Borstel

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

Chris 31
Mitglied
Konstrukteur und Mädchen für alles


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

Beiträge: 575
Registriert: 23.04.2013

Inventor 2013/2015
Windows 7 64 bit
16GB RAM
nVidia Quadro 600

erstellt am: 01. Sep. 2014 07:50    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 HideValue 10 Unities + Antwort hilfreich

Guten Morgen,

also ich verstehe nicht ganz, was du da machen möchtest.
Möchtest du nur ein Teil neu positionieren, oder mehrere?

Gruß Chris

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

HideValue
Mitglied
Development Engineer


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

Beiträge: 10
Registriert: 10.01.2012

Win7,Inventor2012,Excel2003 2007 2010

erstellt am: 16. Sep. 2014 10:51    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

Erstmal danke für die Antwort!!!

ich möchte in einer Baugruppe eine Unterbaugruppe die Positionsdarstellung ändern. Quasi  diese Unterbaugruppe rechts eingebaut oder links eingebaut(3D Abhängigkeit in jeder Positionsdarstellung überschrieben). Diese beiden Varianten möchte ich per VBA umstellen.
Also eine iam-Positionsdarstellung in einer Haupt iam ändern.

' Bezug zu allen Teilen im haupt-Assembly.'''''''''''''
Dim oRefDocs As DocumentsEnumerator            ''
Set oRefDocs = odoc.AllReferencedDocuments'
odoc=Hauptbaugruppe         
'''''''''''''''''''''''''''''''''''''''''''''''''

' Durchlaufen der die Liste der Dokumente jeder Teilnehmer kann angesprochen werden.
Dim oRefDoc As AssemblyDocument                    '''
Set oRefDoc = oRefDocs.Item(8)'Unterbaugruppe hier möchte ich die Positionsdarstellung ändern
''''''''''''''''''''''''''''''''''''''''''''''
dann gehe ich zu: AssemblyComponentDefinition;RepresentationsManager;PositionalRepresentations;setze item1(beispiel) und activiere; dann update  ; und nichts passiert?????

im odoc=Hauptbaugruppe klappt das sehr gut ohne AllReferencedDocuments und DocumentsEnumerator 


OHHHH das wäre echt schön wenn man das umstellen könnte!!!! Ich würde sämtliche einbauarten an verschiedenen stellen ruckzug ändern können         

GRUß Peter


------------------
Borstel

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

Chris 31
Mitglied
Konstrukteur und Mädchen für alles


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

Beiträge: 575
Registriert: 23.04.2013

Inventor 2013/2015
Windows 7 64 bit
16GB RAM
nVidia Quadro 600

erstellt am: 22. Sep. 2014 07:50    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 HideValue 10 Unities + Antwort hilfreich

Guten Morgen,

also wenn ich dich richtig verstanden habe, dann möchtest du die Position einer Baugruppe in einer Baugruppe ändern.
Ist die Baugruppe denn abhängig gemacht? Wenn ja, dann könntest du einfach die Abhängigkeiten, bzw die Werte dieser, bearbeiten, weil an die kommst du ja in der Hauptbaugruppe ran.

Eine andere Möglichkeit wäre das ändern der Position im Raum, bezogen auf den Ursprung. Das ist allerdings etwas komplizierter als der andere Weg.

Mir fällt gerade noch ein, dass du auch eine Abhängigkeit zu den Ursprungsebenen erstellen kannst und die dann bearbeiten kannst per VBA.

Wenn du über diese Abhängigkeiten gehst, hast du auch nicht das Problem, dass du erst die Unterbaugruppe bestimmen musst, sondern kannst direkt die Parameterwerte der Abhängigkeit in der Hauptbaugruppe bearbeiten.

Gruß Chris

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




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

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 22. Sep. 2014 15:56    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 HideValue 10 Unities + Antwort hilfreich

Hallo

So wird das nix. Im Inventor musst du auch die Unterbaugruppe per Doppelclick "öffnen" bevor du an den Positionsdarstellungen herumschrauben kannst. Außerdem würde dein Weg, wenn er funktionieren würde, auf einen Schlag alle Occurrences deiner Unter-BG umstellen. Ist das wirklich beabsichtigt?
Versuch mal in der Haupt-BG durch alle Occurences zu gehen, wenn es die deiner gesuchten Unter-BG ist, mit ComponentOccurrence.Edit() zum Bearbeiten "öffnen", Positionsdarstellung ändern und mit ComponentOccurrence.ExitEdit() wieder verlassen. Das Document.Update sollte dabei überflüssig sein.
Bei vielen Änderungen kann man sich überlegen, das Grafikfenster und die BrowserPane abzuschalten, da es sonst zu einem wilden Geflacker auf dem Bildschirm kommen kann.

------------------
MfG
Ralf

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

HideValue
Mitglied
Development Engineer


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

Beiträge: 10
Registriert: 10.01.2012

Win7,Inventor2012,Excel2003 2007 2010

erstellt am: 23. Sep. 2014 13: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

Danke Danke Danke Danke Danke Danke

also über Occurences !!!

man oh man woher wisst ihr das alles?????

nur ne kleine frage u auch kurz u knapp!!
was isn der unterschied ReferenceDokument u Occurences (Doppelclick??)

------------------
Borstel

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

Chris 31
Mitglied
Konstrukteur und Mädchen für alles


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

Beiträge: 575
Registriert: 23.04.2013

Inventor 2013/2015
Windows 7 64 bit
16GB RAM
nVidia Quadro 600

erstellt am: 23. Sep. 2014 13:22    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 HideValue 10 Unities + Antwort hilfreich

ReferencedDocument= Part bzw Assembly, die verbaut wurde.

Occurence = das wirklich aktuell verbaute Objekt.

Du kannst mehrere Occurences von einem ReferencedDocument haben.
Zu erkennen am Browser.
Dort ist der Name und dann ein : mit der Nummer der Occurence.
Bsp: Part1:1
    Part1:2
    Part1:3


Gruß Chris

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

HideValue
Mitglied
Development Engineer


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

Beiträge: 10
Registriert: 10.01.2012

Win7,Inventor2012,Excel2003 2007 2010

erstellt am: 23. Sep. 2014 16:10    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

aha alles klar!!

Chris!! , Ralf!! ich danke euch!!!
heut abend wird getestet!!

------------------
Borstel

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

Chris 31
Mitglied
Konstrukteur und Mädchen für alles


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

Beiträge: 575
Registriert: 23.04.2013

Inventor 2013/2015
Windows 7 64 bit
16GB RAM
nVidia Quadro 600

erstellt am: 23. Sep. 2014 16:12    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 HideValue 10 Unities + Antwort hilfreich

Na dann viel Spaß 

Und natürlich viel Glück

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

Denk75
Mitglied
Konstrukteur


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

Beiträge: 66
Registriert: 05.04.2005

IV 2022

erstellt am: 11. Mrz. 2022 15: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 Nur für HideValue 10 Unities + Antwort hilfreich

Hallo HideValue,
ich versuche auch gerade die Positionsdarstellung einer Unterbaugruppe zu überschreiben. Das gelingt mir aber nicht. Habe es mit folgendem Code versucht.
Call AssemblyDef.Occurrences.ItemByName(oSelectSet.Item(1)).Definition.RepresentationsManager.PositionalRepresentations.Item("Neue Positionsdarstellung").Activate
Hast du damals eine Lösung gefunden?
Oder gibt es mittlerweile eine einfache Möglichkeit die Positionsdarstellung der Unterbaugruppe zu überschreiben.
Danke an alle
Gruß Jürgen


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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




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

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 11. Mrz. 2022 19:58    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 HideValue 10 Unities + Antwort hilfreich

Hallo

Wenn ItemByName, dann auch SelectSet.Item(1).Name und in der Occurrence umstellen, nicht im Assemblydocument.

Code:

AssemblyDef.Occurrences.ItemByName(oSelectSet.Item(1).Name).ActivePositionalRepresentation = "Neue Positionsdarstellung"

------------------
MfG
Ralf

RKW Solutions GmbH
www.RKW-Solutions.com

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

Denk75
Mitglied
Konstrukteur


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

Beiträge: 66
Registriert: 05.04.2005

IV 2022

erstellt am: 13. Mrz. 2022 10:51    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 HideValue 10 Unities + Antwort hilfreich

Hallo Ralf,
Danke für die Unterstützung.
Ich habe jetzt folgende Zeile verwendet, wobei das Problem bei mir das Selectset war. Ich hol nun mit einer Schleife die Item Nummer.
Code:
AssemblyDef.Occurrences.Item(oPos).ActivePositionalRepresentation = lbPosk.List(i)

Gruß Jürgen

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