Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor .NET
  Darstellungen (Appearances) in .Net

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:  Darstellungen (Appearances) in .Net (818 mal gelesen)
C-Hoppen
Mitglied
CAD-Trainer


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

Beiträge: 51
Registriert: 23.10.2006

Inventor 2019-22 Professional
Produkt Design Suite, Factory Design Suite
Win 10
Core i9/9900k @ 5 GHz
32 GB RAM
GeForce RTX 270
---
Sinclair ZX 81 mit 16 KB RAM-Erweiterung und High-Res-Platine für Grafikauflösung 256 x 256 Pixel, Grundig-Kassettenrekorder, S/W-Fernseher ;-)

erstellt am: 24. Jul. 2014 12:28    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

Moin!

Hatte schon jemand das "Vergnügen"? Die Beispiele aus der API-Hilfe funktionieren vielleicht im VBA, aber...

Code:

    Inventor.Assets oAssets = oPartDef.Document.Assets;
    ...
    Inventor.Faces oFaces;
    oFaces = oSrfBody.Faces;

    for (int i = 1; i <= oFaces.Count; i++)
    {
        Inventor.Face oFace = oFaces[i];

        try
        {
            Inventor.Asset oAsset = DarstellungAbrufen(oAssets, darstellung); // darstellung ist string "Rot"
            oFace.AppearanceSourceType = Inventor.AppearanceSourceTypeEnum.kOverrideAppearance;
            oFace.Appearance = oAsset;
        }
        catch { }
    }

...

        Inventor.Asset DarstellungAbrufen(Inventor.Assets oDocumentAssets, string name)
        {
            Inventor.Asset oAppearanceAssetNeu = null;

            try
            {
                oAppearanceAssetNeu = oDocumentAssets[name];
            }
            catch
            {
                try
                {
                    Inventor.AssetLibrary oAssetLib;
                    oAssetLib = oApp.AssetLibraries["Inventor-Materialbibliothek"];

                    oAppearanceAssetNeu = oAssetLib.AppearanceAssets[name]; // findet gültiges Asset!
                }
                catch
                {
                    // nix gefunden: Schwarz machen
                    //
                    oAppearanceAssetNeu = oDocumentAssets.Add(
                        Inventor.AssetTypeEnum.kAssetTypeAppearance,
                        "Kanten", name, name);

                    Inventor.Color oColor;
                    oColor = oApp.TransientObjects.CreateColor(0, 0, 0);

                    Inventor.ColorAssetValue oColorAssetValue;
                    oColorAssetValue = (Inventor.ColorAssetValue)oAppearanceAssetNeu["generic_diffuse"];

                    oColorAssetValue.Value = oColor;
                }
            }

            return oAppearanceAssetNeu;
        }



oFace.AppearanceSourceType = ... Ausnahme ("Falscher Parameter")
oFace.Appearance =  ... Ausnahme ("Falscher Parameter")
oAppearanceAssetNeu = oDocumentAssets.Add( ... Ausnahme ("Falscher Parameter")

Die "alte" Methode über oFace.SetRenderStyle(... funktioniert.

Hat irgendwer eine Idee?

Danke & Gruß
Christoph

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