Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Inventor .NET
  Positionsdarstellung einer Unterbaugruppe ändern.

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:   Positionsdarstellung einer Unterbaugruppe ändern. (1577 mal gelesen)
Andreas01
Mitglied
Dipl.-Ing.(FH) Konstrukteur


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

Beiträge: 200
Registriert: 05.08.2004

Inventor 2018
i7
32 GB RAM
Quatro FX 4000
WIN10-64bit

erstellt am: 17. Apr. 2013 11:46    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 Forum,

Die Positionsdarstellung einer aktiven Baugruppe kann ich mit

Dim oPosRep As PositionalRepresentations
For Each oPosRep compOcc.ComponentDefinition.RepresentationsManager.PositionalRepresentations
lsb_Positionsdarstellungen.Items.Add(oPosRep.Name.ToString)
Next

auslesen und mit

asmDoc.ComponentDefinition.RepresentationsManager.PositionalRepresentations.Item("Position1").Activate()

ändern. Danke nochmals Ralf.

wie kann ich aber die Positionsdarstellung einer ausgewählten Unterbaugruppe ändern? Ausgelesen habe ich es folgendermaßen:

        Dim selSet As SelectSet
        selSet = asmDoc.SelectSet

        Dim compOcc As ComponentOccurrence
        Dim obj As Object

        obj = selSet.Item(1)
        compOcc = obj

            lsb_Positionsdarstellungen.Items.Add(compOcc.ActivePositionalRepresentation.ToString)


nur das ändern bekomme ich nicht hin, hat jemand einen Tipp?


Andreas

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

daywa1k3r
Moderator
Softwareentwickler




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

Beiträge: 3497
Registriert: 01.08.2002

Desktop: 3.3GHz;8GB;SSD OCZ Vertex 3;Gainward Phantom GTX570
Laptop: Alienware m17x
Win7, Inventor2012

erstellt am: 17. Apr. 2013 12:47    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 Andreas01 10 Unities + Antwort hilfreich

Hallo, du solltest dir aus der Occurrence die Unterbaugruppen Definition (Occ.Definition) holen, und dann mit Ansichten hantieren...

------------------
Grüße Igor

FX64 Software Solutions - Inventor Tools
FX64 LambdaSpect - Lichtsimulation mit Autodesk Inventor

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

Andreas01
Mitglied
Dipl.-Ing.(FH) Konstrukteur


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

Beiträge: 200
Registriert: 05.08.2004

erstellt am: 17. Apr. 2013 13: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


Definition.jpg

 
Hallo,

wenn ich die Occurrence der selektierten Baugruppe anschaue finde ich da aber keinen Eintrag bezüglich der Ansichten. Siehe Bild, oder verstehe ich da was falsch?

Gruß

Andreas

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

daywa1k3r
Moderator
Softwareentwickler




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

Beiträge: 3497
Registriert: 01.08.2002

Desktop: 3.3GHz;8GB;SSD OCZ Vertex 3;Gainward Phantom GTX570
Laptop: Alienware m17x
Win7, Inventor2012

erstellt am: 17. Apr. 2013 13: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 Andreas01 10 Unities + Antwort hilfreich

Da eine Occurrence sowohl ein Bauteil als auch eine Baugruppe sein kann, ist das zunächst die Definition von der Basisklasse Document. Du musst es in den richtigen Typ CASTEN (umwandeln). In deinem Fall dürfte das Inventor.AssemblyComponentDefinition sein. Versuchst du es in Inventor.PartComponentDefinition zu casten, bekommst du eine Exception, da deine Unterbaugruppe eine Inventor Baugruppe ist und kein Inventor Bauteil. Hilft das?

------------------
Grüße Igor

FX64 Software Solutions - Inventor Tools
FX64 LambdaSpect - Lichtsimulation mit Autodesk Inventor

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

Andreas01
Mitglied
Dipl.-Ing.(FH) Konstrukteur


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

Beiträge: 200
Registriert: 05.08.2004

erstellt am: 17. Apr. 2013 14:04    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,

also verstanden habe ich das, aber wie ich es Umwandeln soll weis ich nicht. Für einen Tipp währe ich sehr Dankbar.

Gruß
Andreas

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

daywa1k3r
Moderator
Softwareentwickler




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

Beiträge: 3497
Registriert: 01.08.2002

Desktop: 3.3GHz;8GB;SSD OCZ Vertex 3;Gainward Phantom GTX570
Laptop: Alienware m17x
Win7, Inventor2012

erstellt am: 18. Apr. 2013 09: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 Nur für Andreas01 10 Unities + Antwort hilfreich

Code:

(compOcc.Definition as Inventor.AssemblyComponentDefinition).RepresentationsManager...

------------------
Grüße Igor

FX64 Software Solutions - Inventor Tools
FX64 LambdaSpect - Lichtsimulation mit Autodesk Inventor

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

Andreas01
Mitglied
Dipl.-Ing.(FH) Konstrukteur


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

Beiträge: 200
Registriert: 05.08.2004

erstellt am: 18. Apr. 2013 12:17    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 Igor,

also ich habe es jetzt folgendermaßen gemacht:

        Dim asmDoc As AssemblyDocument
        asmDoc = oInventorApp.ActiveDocument

        Dim selSet As SelectSet
        selSet = asmDoc.SelectSet

        Dim obj As Object
        obj = selSet.Item(1)

        Dim compOcc As ComponentOccurrence
        compOcc = obj

        Dim selektierteBaugruppe As AssemblyDocument
        selektierteBaugruppe = compOcc.Definition.Document

        Dim oPosRep As PositionalRepresentations
        oPosRep = Nothing

        'For Each oPosRep In selektierteBaugruppe.ComponentDefinition.RepresentationsManager.PositionalRepresentations
        '    lsb_Positionsdarstellungen.Items.Add(oPosRep.Name.ToString)
        'Next

        For i As Integer = 1 To selektierteBaugruppe.ComponentDefinition.RepresentationsManager.PositionalRepresentations.Count
                lsb_Positionsdarstellungen.Items.Add(selektierteBaugruppe.ComponentDefinition.RepresentationsManager.PositionalRepresentations.Item(i).Name.ToString)
        Next


    End Sub

ich weis nicht wieso aber bei dem Auslesen der Positionsdarstellungen mit der For Each Schleife bekomme ich einen Fehler, mit der For-Next Schleife funktioniert es.

Igor Danke für Deine Hilfe.

Grüße

Andreas

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

Andreas01
Mitglied
Dipl.-Ing.(FH) Konstrukteur


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

Beiträge: 200
Registriert: 05.08.2004

Inventor 2018
i7
32 GB RAM
Quatro FX 4000
WIN10-64bit

erstellt am: 19. Apr. 2013 13:08    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 Igor,

ich glaube die Mühe war vergebens, denn ich kann die Positionsdarstellungen der selektierten Baugruppe zwar auslesen aber wenn ich diese dann mit

selektierteBaugruppe.ComponentDefinition.RepresentationsManager.PositionalRepresentations.Item("Position1").Activate()

aktivieren möchte funktioniert es nicht, komischerweise bekomme ich auch keinen Fehler angezeigt.

Grüße

Abdreas

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

daywa1k3r
Moderator
Softwareentwickler




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

Beiträge: 3497
Registriert: 01.08.2002

Desktop: 3.3GHz;8GB;SSD OCZ Vertex 3;Gainward Phantom GTX570
Laptop: Alienware m17x
Win7, Inventor2012

erstellt am: 19. Apr. 2013 13:33    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 Andreas01 10 Unities + Antwort hilfreich

Schieß mal ein Update hinterher... Wenn keine Fehlermeldung kommt, und nichts passiert ist das meistens der Fall.

------------------
Grüße Igor

FX64 Software Solutions - Inventor Tools
FX64 LambdaSpect - Lichtsimulation mit Autodesk Inventor

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

Andreas01
Mitglied
Dipl.-Ing.(FH) Konstrukteur


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

Beiträge: 200
Registriert: 05.08.2004

erstellt am: 22. Apr. 2013 09:00    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 habe den SP1.1 Update 2 drauf, meines Wissens her gibt es nichts Neueres für Inventor 2013.

Grüße
Andreas

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

daywa1k3r
Moderator
Softwareentwickler




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

Beiträge: 3497
Registriert: 01.08.2002

Desktop: 3.3GHz;8GB;SSD OCZ Vertex 3;Gainward Phantom GTX570
Laptop: Alienware m17x
Win7, Inventor2012

erstellt am: 22. Apr. 2013 09:16    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 Andreas01 10 Unities + Antwort hilfreich

Ich meinte eher ein Update Befehl für deine Baugruppe...

------------------
Grüße Igor

FX64 Software Solutions - Inventor Tools
FX64 LambdaSpect - Lichtsimulation mit Autodesk Inventor

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

Andreas01
Mitglied
Dipl.-Ing.(FH) Konstrukteur


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

Beiträge: 200
Registriert: 05.08.2004

erstellt am: 22. Apr. 2013 11:42    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

Uppss,

habe ich jetzt auch gemacht jedoch ohne Erfolg.

...
        Dim attbSets As AttributeSets

        For Each obj As Object In objCol
            attbSets = obj.AttributeSets

            Dim compOcc As ComponentOccurrence
            compOcc = obj

            Dim selektierteBaugruppe As AssemblyDocument
            selektierteBaugruppe = compOcc.Definition.Document

            Dim oPosRep As PositionalRepresentations
            oPosRep = Nothing

            'Die Ausgewählte Positionsdarstellung aktivieren
            selektierteBaugruppe.ComponentDefinition.RepresentationsManager.PositionalRepresentations.Item(Position_Name).Activate()
            selektierteBaugruppe.Update()
            'compOcc.Visible = False

        Next
...

entweder mache ich etwas Falsch oder es ist ein Inventor Bug.

Grüße
Andreas

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

Andreas01
Mitglied
Dipl.-Ing.(FH) Konstrukteur


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

Beiträge: 200
Registriert: 05.08.2004

Inventor 2018
i7
32 GB RAM
Quatro FX 4000
WIN10-64bit

erstellt am: 11. Jun. 2013 09: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

Also wenn jemand Interesse hat, so funktioniert es:

<code>
Public Sub ChangeActiveRepresentations()
  Dim doc As Document
  Set doc = ThisApplication.ActiveDocument
     
  Dim occ As ComponentOccurrence
  Set occ = doc.SelectSet.Item(1)
   
  Dim cd As AssemblyComponentDefinition
  Set cd = occ.Definition
   
  Dim rm As RepresentationsManager
  Set rm = cd.RepresentationsManager
 
  ' Change Positional Representation
  occ.ActivePositionalRepresentation = rm.PositionalRepresentations(2).Name
End Sub
</code>

seitens Autodesk ist mir geholfen worden.

Gruß

Andreas

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

Nadine.hechtfischer
Mitglied



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

Beiträge: 16
Registriert: 20.08.2019

erstellt am: 23. Aug. 2019 07: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 Andreas01 10 Unities + Antwort hilfreich

Hallo zusammen,

ich habe genau  das selbe Problem, wie oben beschrieben. Nur bin ich ein kompletter Anfänger was Inventor und iLogic angeht.

Deshalb die Frage, ob mir jemand hier den letzten Code übersetzen könnte, damit ich den auch verstehe. Also was genau steuert was und wo muss ich den Code ändern um diesen auf meine Baugruppe anzupassen. Und am besten auch was die ganzen Abkürzungen bedeuten.
Finde hierzu leider auch nichts im Internet

Vielen Dank schon mal für eure Hilfe 

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: 1571
Registriert: 15.11.2006

Windows 7 x64, AIS 2014

erstellt am: 27. Aug. 2019 06:55    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 Andreas01 10 Unities + Antwort hilfreich

Hallo

Ich versuch es mal. Wenn in deiner Baugruppe eine zweite Positionsdarstellung vorhanden ist und aktiviert werden soll, brauchst du nichts umstellen.
Für iLogic gibts die Option VBA-Code laufen zu lassen, die musst du verwenden.

Deklarieren der Variable "doc" und Zuweisen des aktiven Dokumentes zu dieser Variable.

Code:
Public Sub ChangeActiveRepresentations()
  Dim doc As Document
  Set doc = ThisApplication.ActiveDocument

Deklarieren der Variable "occ" und Zuweisen der aktuellen Selektion (das was du vor Aufruf des Makros mit der Maus angeklickt/selektiert hast. In einer Baugruppe selektiert man Exemplare (Occurrences) einer Baugruppe oder eines Bauteiles.

Code:
 
  Dim occ As ComponentOccurrence
  Set occ = doc.SelectSet.Item(1)

Deklarieren der Variable "cd" und Zuweisen der Baugruppendefinition. Ausgehend vom selektierten Exemplar ist das der "Sprung" in die eigentliche Definition der Baugruppe.

Code:

  Dim cd As AssemblyComponentDefinition
  Set cd = occ.Definition

Deklarieren der Variable "rm" und Zuweisen des Darstellungsmanagers.

Code:

  Dim rm As RepresentationsManager
  Set rm = cd.RepresentationsManager

Hier wird die aktive Positionsdarstellung umgestellt auf die zweite vorhandene.

Code:

  ' Change Positional Representation
  occ.ActivePositionalRepresentation = rm.PositionalRepresentations(2).Name
End Sub

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

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

Nadine.hechtfischer
Mitglied



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

Beiträge: 16
Registriert: 20.08.2019

erstellt am: 27. Aug. 2019 07: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 Andreas01 10 Unities + Antwort hilfreich

Vielen lieben Dank. Damit sollte ich klarkommen. 

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)2020 CAD.de | Impressum | Datenschutz