Hallo Leute,
ich habe ein Problem und zwar, möchte ich an ein Teil Material und Render-Stil übergeben.
Hier ein Paar Zeilen:
Dim oApp As Inventor.Application
Dim oAsm As AssemblyDocument
Dim oNewDoc As PartDocument
Dim oMaterial As Material
Dim oRenderStyle As RenderStyle
Dim oTransGeom As TransientGeometry
Dim CurrentTransform As Matrix
Set oApp = GetObject(, "Inventor.Application")
Set oAsm = oApp.ActiveDocument
Set oTransGeom = oApp.TransientGeometry
CurrentTransform.SetToIdentity
Set oNewDoc = oApp.Documents.Open("C:\Temp\Test.ipt", False)
Set oMaterial = oNewDoc.Materials.Item("1.2162 21 MnCr 5")
Set oRenderStyle = oNewDoc.RenderStyles.Item("Chrom")
oMaterial.RenderStyle = oRenderStyle
Call oNewDoc.Update
Das Material bleibt aber immer gleich, egal was ich übergebe. Ich habe in einer anderen Funktion das schon mal gemacht, und es hat gefunzt, aber es war nicht wirklich identisch. Deklarationen wie oben, nur hier:
Dim oDerivedAsmDef As DerivedAssemblyDefinition
Set oPartDoc = oApp.Documents.Add(kPartDocumentObject, oApp.FileManager.GetTemplateFile(kPartDocumentObject))
Set oDerivedAsmDef = oPartDoc.ComponentDefinition.ReferenceComponents.DerivedAssemblyComponents.CreateDefinition(sFilePath & "test.iam")
oDerivedAsmDef.Occurrences.Item("meine Occurence").InclusionOption = kDerivedIncludeAll
Call oPartDoc.ComponentDefinition.ReferenceComponents.DerivedAssemblyComponents.Add(oDerivedAsmDef)
Dim oMaterial As material
Set oMaterial = oPartDoc.Materials.Item("Standard")
Dim oRenderStyle As RenderStyle
Set oRenderStyle = oPartDoc.RenderStyles.Item("Gold (metallisch)")
oMaterial.RenderStyle = oRenderStyle
Call oPartDoc.Update
Irgendwie sieht der erste Quellcode "richtiger" als der zweite, es ist aber nicht so.
Vielleicht weiss jemand wo das Problem liegt ?
------------------
Grüße daywa1k3r
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP