| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Attribut in Abwicklung kopieren (772 mal gelesen)
|
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 12. Aug. 2008 15:01 <-- editieren / zitieren --> Unities abgeben:
Hallo Ich hänge im gekanteten Blechteil ein Attribut an eine Fläche. Zusätzlich, damit ich sehen kann welche Fläche schon dieses Attribut hat, bekommt die Fläche eine andere Farbe verpasst. In der Blechabwicklung ist die Farbe noch da, das Attribut ist aber weg. Gibt es eine Möglichkeit das Attribut mit in die Abwicklung zu nehmen? ------------------ MfG RK Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PaulSchuepbach Moderator Programmierer
Beiträge: 1005 Registriert: 01.10.2003
|
erstellt am: 13. Aug. 2008 07:04 <-- editieren / zitieren --> Unities abgeben: Nur für rkauskh
|
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 13. Aug. 2008 08:20 <-- editieren / zitieren --> Unities abgeben:
|
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 13. Aug. 2008 19:58 <-- editieren / zitieren --> Unities abgeben:
Hallo Ich hab mir das jetzt mal angesehen. Verstehe ich das richtig, das copywithowner anhand eines gewählten Attributsets die Fläche der das Attributsets "gehört" kopiert? Das wäre vermutlich nicht das was ich suche oder ich hab's nicht verstanden. Im englischen Forum hab ich GetFlatPatternEntity gefunden. Stimmt es, das man damit von einer gewählten Fläche des gekanteten Modells die entsprechende Fläche in der Abwicklung finden könnte? Dann könnte ich das Attributset ja übertragen. ------------------ MfG RK Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 19. Aug. 2008 10:09 <-- editieren / zitieren --> Unities abgeben:
Hallo Ich habe doch zuerst ihre Idee versucht, scheitere aber daran das Property auf "True" zu setzen. Code: Set objPartDocument = oInventorApp.ActiveDocument If objPartDocument.SubType <> "{9C464203-9BAE-11D3-8BAD-0060B0CE6BB4}" Then MsgBox "A sheet metal document must be open." Exit Sub Else Dim attrset As AttributeSet Dim SuBody As SurfaceBody Dim i As Integer Dim oSMCD As SheetMetalComponentDefinition Set oSMCD = objPartDocument.ComponentDefinition For i = 1 To oSMCD.SurfaceBodies.Item(1).Edges.Count For Each attrset In oSMCD.SurfaceBodies.Item(1).Edges.Item(i).AttributeSets If attrset.Name = "eigenesattr" Then attrset.CopyWithOwner = True End If Next Next End If End Sub
Die Zeile "attrset.CopyWithOwner = True" erzeugt einen Laufzeitfehler "Method 'CopyWithOwner' of object '_IRxAttributeSet' failed". Ich habs alternativ versucht den Wert beim Erzeugen des AttributSets gleich auf True zu setzen. Dort kommt keine Fehlermeldung, CopyWithOwner bleibt aber auf False. Bin ratlos. ------------------ MfG RK Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PaulSchuepbach Moderator Programmierer
Beiträge: 1005 Registriert: 01.10.2003
|
erstellt am: 19. Aug. 2008 11:53 <-- editieren / zitieren --> Unities abgeben: Nur für rkauskh
|
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 21. Aug. 2008 14:58 <-- editieren / zitieren --> Unities abgeben:
Hallo Kennt ihr diese Trickfilme, in denen ein Auto erst stottert, dann stockt, stehenbleibt und seinen Motor auswürgt? Etwa das Gleiche hat mein Inventor vorgestern gemacht. Daher die Verzögerung. Ich habe ein Beispielteil angehängt. Die eine Seite/Fläche hat den überschriebenen Renderstyle. Alle Kanten dieser Fläche besitzen eigentlich das AttributeSet "eigenesattr". Erzeuge ich die Abwicklung des Teiles, geht der Renderstyle mit, aber die AttributeSets nicht. Ich hoffe es ist jetzt verständlicher. ------------------ MfG RK Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 15. Okt. 2008 19:58 <-- editieren / zitieren --> Unities abgeben:
Hallo Wie ich mittlerweile erfahren habe klappt es mit CopyWithOwner wohl nicht, da eine Abwicklung eher eine Ableitung als eine Kopie ist. Erste Versuche mit GetFlatPatternEntity sahen erfolgversprechend aus. Jetzt stehen wir aber vor einem Problem. Das Script läuft der Reihe nach durch alle Edges des SurfaceBody des gekanteten Teiles. Für jede Kante sucht er nach dem Pendanten in der Abwicklung per GetFlatPatternEntity. Ich habe das mittels Highlightsets und Messageboxen als "Bremse" durchprobiert - paßte scheinbar. Er fand immer eine Kante und mM die Entsprechung in der Abwicklung. Hatte die Kante des gekanteten Teiles das AttributSet wurde es per CopyTo an die Kante der Abwicklung kopiert. Komischerweise hatten danach Kanten auch das AttributSet, deren Ursprungskante das AttributSet nicht hatte. Um verschwindende/zu einer verschmelzende Kanten/Flächen auszuschließen habe ich mal nur eine Fläche ohne Laschen erstellt. Auch da trat der Fehler auf. Kennt jemand eine mögliche Ursache für dieses "Eigenleben" der DIVA? ------------------ MfG RK Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |