Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  AutoCAD ObjectARX und .NET
  RGB-Farbe einer Entity auslesen

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:  RGB-Farbe einer Entity auslesen (1172 mal gelesen)
Zerael
Mitglied


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

Beiträge: 1
Registriert: 20.09.2006

erstellt am: 20. Sep. 2006 15: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

Hallo!

Ich versuche die Farbe einer Linie auszulesen. Das klappt auch, solange die Farbe nicht vom Layer übernommen wird.

Gibt es in ObjectARX 2007 eine Möglichkeit, einfach an die RGB-Werte der Farbe einer Entity ranzukommen? Keine Farbindex, kein Hinweis auf den Layer - einfach nur die RGB-Werte?

Oder alternativ ... wie komme ich an die Farbe des Layers ran? Per layer() oder layerId() kriege ist einen Hinweis auf den Layer ... aber wie komme ich von dort an dessen Farbe?

Danke!
Zerael

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

yamaha
Mitglied
Konstrukteur


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

Beiträge: 374
Registriert: 19.05.2004

Autocad/Inventor 2020, Windows 10 64Bit

erstellt am: 23. Sep. 2006 15:47    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 Zerael 10 Unities + Antwort hilfreich

Hallo Zerael,

zur Frage mit der layerfarbe hab ich folgendes beispiel
gefunden, welches nicht 100&ig passt, aber
die Logik ist wohl ableitbar. Hoffe ich zumindestens.
ich habs nicht ausprobiert.

    Private Function CreateLayer() As ObjectId
        Dim layerId As ObjectId 'the return value for this function
        Dim db As Database = HostApplicationServices.WorkingDatabase
        Dim trans As Transaction = db.TransactionManager.StartTransaction()
        Try
            'Get the layer table first, open for read as it may already be there
            Dim lt As LayerTable = trans.GetObject(db.LayerTableId, OpenMode.ForRead)

            'Check if EmployeeLayer exists...
            If lt.Has("EmployeeLayer") Then
                layerId = lt.Item("EmployeeLayer")
            Else
                'If not, create the layer here.
                Dim ltr As LayerTableRecord = New LayerTableRecord()
                ltr.Name = "EmployeeLayer" ' Set the layer name
                ltr.Color = Color.FromColorIndex(ColorMethod.ByAci, 2)
                ' it doesn't exist so add it, but first upgrade the open to write
                lt.UpgradeOpen()
                layerId = lt.Add(ltr)
                trans.AddNewlyCreatedDBObject(ltr, True)
                trans.Commit()
            End If
        Catch ex As System.Exception
            MsgBox("Error in CreateLayer Command" + ex.Message)
        Finally
            trans.Dispose()
        End Try
        Return layerId
    End Function

------------------
Gruß Jörn

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

criecky
Mitglied
MENSCH


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

Beiträge: 251
Registriert: 13.01.2004

ACAD 2011- 2017
www.cbyte.eu

erstellt am: 24. Sep. 2006 11:56    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 Zerael 10 Unities + Antwort hilfreich

hi,

benutze doch diese methode:

AcCmEntityColor entityColor() const;

This function returns the color settings of the entity in an AcCmEntityColor form.

Most clients should use the color() function, which returns the heavyweight AcCmColor object. However, if color name information is not required, this function provides faster access to the lightweight AcCmEntityColor data.

gruss criecky 

------------------

Softlan macht das Netzwerk weich!

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