Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Abhängigkeiten in einer Baugruppe zum Ursprung setzen?

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:  Abhängigkeiten in einer Baugruppe zum Ursprung setzen? (1466 mal gelesen)
eum
Mitglied


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

Beiträge: 5
Registriert: 18.01.2005

erstellt am: 02. Feb. 2005 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

Hallo allerseits,

es gibt unter Inventor 8 folgendes Beispiel:
Assembly Mate Constraint of Work Planes Example

Wollte mal nachfragen, ob jemand weiss, wie man für nur ein Bauteil
zum Ursprung der Baugruppe Abhängigkeiten setzt, z.B. fluchtend?

Komme beim Ursprung nicht weiter ... :-(.

Danke + Gruß

Olaf

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

IngMar24
Mitglied
Helper


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

Beiträge: 12
Registriert: 07.07.2004

erstellt am: 17. Feb. 2005 18:41    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 eum 10 Unities + Antwort hilfreich

statt mate, flush

es gibt mehrere Verknüpfungsobjekte
zei davon sind
kMateConstraintObject
kFlushConstraintObject

in der Hilfe eingeben

------------------
Gruss IngMar

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

Linkshänder
Mitglied
Dipl.-Inf.

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

Beiträge: 5
Registriert: 07.03.2005

Inventor 9 Service Pack 2

erstellt am: 07. Mrz. 2005 16: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 eum 10 Unities + Antwort hilfreich

Moin,
wir haben uns heute morgen ein passendes Makro entwickelt, evtl. hilft es dir ja weiter

Public Sub bewegeKomponenteZumUrsprung()
Dim oDoc As Document
Dim oAsmCompDef As AssemblyComponentDefinition
Dim oAsmWorkPlane(1 To 3) As WorkPlane
Dim oOcc2 As ComponentOccurrence
Dim oPartPlane2 As WorkPlane
Dim oAsmPlane2 As WorkPlaneProxy
Dim oSelectSet As SelectSet
Dim i As Long
 
  Set oDoc = ThisApplication.ActiveDocument
  If oDoc.DocumentType <> kAssemblyDocumentObject Then
    MsgBox "Dieses Makro funktioniert nur in einer Baugruppe! Dieses Makro fixiert eine Bauteil/Baugruppe im Ursprung der aktuellen Baugruppe.", vbCritical
    Exit Sub
  End If
 
  Set oSelectSet = ThisApplication.ActiveDocument.SelectSet
   
  ' Validate the correct data is in the select set.
  If oSelectSet.Count <> 1 Then
    MsgBox "Es darf nur ein einzelnes Element ausgewählt sein!", vbCritical
    Exit Sub
  End If
 
  'Debug.Print oSelectSet.Item(1).Type
  If oSelectSet.Item(1).Type = 67113776 Then
    ' Die Nummer ist "hart verdrahtet", weil ich sonst keine andere Möglichkeit/Konstante gefunden habe.
    Set oAsmCompDef = ThisApplication.ActiveDocument.ComponentDefinition
    Set oOcc2 = oAsmCompDef.Occurrences.ItemByName(oSelectSet.Item(1).Name)
 
    For i = 1 To 3
      ' Arbeitsebenen der Baugruppe auslesen
      Set oAsmWorkPlane(i) = ThisApplication.ActiveDocument.ComponentDefinition.WorkPlanes.Item(i)
      'Arbeitsebene des Bauteils/Baugruppe auslesen
      Set oPartPlane2 = oOcc2.Definition.WorkPlanes.Item(i)
      ' Proxy Berechnung (Bauteil-Koords -> Baugruppen-Koords)
      Call oOcc2.CreateGeometryProxy(oPartPlane2, oAsmPlane2)
      ' fluchtende Abhängigkeit vergeben
      Call oAsmCompDef.Constraints.AddFlushConstraint(oAsmWorkPlane(i), oAsmPlane2, 0)
    Next i
  Else
    MsgBox "Es muß ein Bauteil oder eine Baugruppe ausgewählt sein!", vbCritical
  End If
End Sub

Das Makro hat noch zwei kleine Probleme:
1. Wenn es zweimal auf das gleiche Teil/Baugruppe ausgeführt wird, werden die Abhängigkeiten auch doppelt angelegt.
2. Es funktioniert nur für ein einzelnes Bauteil/Baugruppe. Aber das kann man bei Bedarf leicht anpassen

Ich hoffe, es läuft auch bei euch. Und falls jemand Fehler findet, bitte hier bescheid sagen.

Gruß
der Linkshänder

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