| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Farbe eines Bauteils in einer Baugruppe ändern (873 mal gelesen)
|
Cookiie Mitglied
Beiträge: 32 Registriert: 20.06.2005
|
erstellt am: 20. Jul. 2005 14:09 <-- editieren / zitieren --> Unities abgeben:
Ja die Überschrift sagt eigentlich schon alles. Ich versuche jetzt schon seit ner geraumen Weile zu einer Lösung zu kommen. Ich erstelle per Code eine Baugruppe, dann füge ich dieser Gruppe ein Bauteil hinzu (importiertes Teil) und jetzt will ich die Farb des Bauteils ändern. Stöbern im Forum brachte zwar mehrere Ansäze die eigentlich alle gut aussahen, aber irgendwie will mir die Umsetzung nicht so recht gelingen. Code:
Sub AddLeiterplatte(projpfad As String, projname As String, LPDicke As Double) Dim LPname As String, LPdatei As String Dim tempstring As String, temp As String Dim NewRenderStyle As RenderStyle tempstring = Mid(projname, 2, 4) LPname = "036" & tempstring LPdatei = Dir(projpfad & "\3DModelle\lp\" & LPname & "*.*") temp = Mid(LPdatei, 1, 7) If temp <> LPname Then LPdatei = "LPDummy.ipt" End If Dim oLeiterplatte As AssemblyComponentDefinition Set oLeiterplatte = ThisApplication.ActiveDocument.ComponentDefinition Dim oLPTG As TransientGeometry Set oLPTG = ThisApplication.TransientGeometry Dim oLPMatrix As Matrix Set oLPMatrix = oLPTG.CreateMatrix Call oLPMatrix.SetTranslation(oLPTG.CreateVector(0, 0, 0)) Dim oLPOcc As ComponentOccurrence Set oLPOcc = oLeiterplatte.Occurrences.Add(projpfad & "\3DModelle\lp\" & LPdatei, oLPMatrix) oLPOcc.Name = LPname NewRenderStyle = ThisApplication.ActiveDocument.RenderStyles.Item("Orange") '<-- und hier streikt er oLPOcc.RenderStyle = NewRenderStyle 'misst die Dicke der Leiterplatte LPDicke = oLPOcc.RangeBox.MaxPoint.z - oLPOcc.RangeBox.MinPoint.z Set oLeiterplatte = Nothing Set oLPTG = Nothing Set oLPMatrix = Nothing Set oLPOcc = Nothing End Sub
Bin schon langsam am verzweifeln weil ich da nicht weiterkomme. Gruß Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SEHER Mitglied Systemanalytiker
Beiträge: 1203 Registriert: 13.03.2001 Inventor 2 bis 2022 häufig wechselnder Rechnerverkehr
|
erstellt am: 21. Jul. 2005 09:34 <-- editieren / zitieren --> Unities abgeben: Nur für Cookiie
Hallo Michael, hier ist ein Ansatz alles was auf Referenz gestellt ist, wird mit der gewünschten Farbe eingefärbt For i = 1 To ende Set oOcc = oAsmDoc.ComponentDefinition.Occurrences.Item(i) Bauteil = oAsmDoc.ComponentDefinition.Occurrences.Item(i).name If oOcc.Reference = True Then oOcc.RenderStyle = oAsmDoc.RenderStyles.Item(Farbe) 'oOcc.RenderStyle = Nothing 'auf wie Material stellen End If Next i Gruß Seher Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|