Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Farbe von Attributen ändern

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
Autor Thema:   Farbe von Attributen ändern (242 mal gelesen)
MB-fab
Mitglied
Techniker - Elektrotechnik


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

Beiträge: 19
Registriert: 18.10.2016

Autocad 2016, MEP 2016, PIT 2016, MS V8i

erstellt am: 29. Sep. 2017 16:37    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 Zusammen,

ich glaube das Thema wurde schon behandelt - vor Jahren - aber ich finde es einfach nicht mehr.

Das Problem: Wir haben ca. 100 Blockdefinitionen in denen Attribute mit den Einstellungen:
Layer  =  0
Farbe  =  7
liegen.

Jetzt müsste ich diese Farbe auf 250 setzten. Warum!? -> Die .ctb ist so gestrickt, vom Kunden, dass die Farbe 7 183,183,183 wird

Gab es da nicht mal eine Lisp!?

Grüße Fab

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

Meldin
Mitglied



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

Beiträge: 215
Registriert: 15.07.2011

AC2016
Windows10

erstellt am: 29. Sep. 2017 22:45    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 MB-fab 10 Unities + Antwort hilfreich

Hier mal ein Anfang.
Code:
(setq aws(car(entsel)))
(while (= "Attribut" (getpropertyvalue (setq aws (entnext aws)) "LocalizedName"))
  (setpropertyvalue aws "Color" 250)
)

------------------
Gruß Wolfgang

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

MB-fab
Mitglied
Techniker - Elektrotechnik


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

Beiträge: 19
Registriert: 18.10.2016

Autocad 2016, MEP 2016, PIT 2016, MS V8i

erstellt am: 13. Okt. 2017 15:02    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 Wolfgang,

super vielen Dank.

Leider habe ich überhaupt keine Routine im Programmieren und kann nicht viel mit dem Schnipsel anfangen.
Könnte mir noch einer ein bisschen weiterhelfen?

Grüße

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

Meldin
Mitglied



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

Beiträge: 215
Registriert: 15.07.2011

AC2016
Windows10

erstellt am: 13. Okt. 2017 15:44    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 MB-fab 10 Unities + Antwort hilfreich

Hi,
also momentan schlecht da URLAUB     
Aber deine Abgaben sich mager z.B. alle Blöcke in der Zeichnung, nur bestimmte, nur ausgewählte usw. Meine zeilen müssetet du nur in ein Defun packen und du hättest ein tolle um einen block zu ändern also so etwa
(defun c:meinTool ()  ........hier die Zeilen.......... )

------------------
Gruß Wolfgang

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

MB-fab
Mitglied
Techniker - Elektrotechnik


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

Beiträge: 19
Registriert: 18.10.2016

Autocad 2016, MEP 2016, PIT 2016, MS V8i

erstellt am: 16. Okt. 2017 13:42    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,

danke für deine Rückmeldung.
Ich müsste alle Blockdefinitionen in der Zeichnung bearbeiten.
Ob das in einem Arbeitsschritt geht oder die Blöcke einzeln ausgewählt werden müssen wäre mir erstmal egal.

Bin auch schon hingegangen und habe deine Zeilen in das Schema gepackt, aber da kommt der Fehler 'nil' raus.

Schönen Urlaub noch

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

joern bosse
Ehrenmitglied
Dipl.-Ing. Vermessung


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

Beiträge: 1593
Registriert: 11.10.2004

Window 8.1
ACAD 2005-2016
CIVIL 2010 - 2016
BricsCAD V13-V15
Intel(R) Core(TM)i7-4700HQ CPU @ 2.40GHz 2.40 GHz
16.0GB RAM
NVIDIA GeForce GTX 850M

erstellt am: 16. Okt. 2017 15:16    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 MB-fab 10 Unities + Antwort hilfreich

Hallo Fab,
ich habe von Wolfgang den Code mal in eine Schleife gepackt, Blöcke auswählen und dann sollten alle Attribute die Farbe 250 haben:

Code:

(defun c:test ( / AWS AWSBLOCK N)
  (if (and (princ "\nBlöcke auswählen:")
  (setq awsBlock (ssget (list (cons 0 "INSERT")))))
    (progn
      (setq n 0)
      (repeat (sslength awsBlock)
(setq aws (ssname awsBlock n))
(while (= "Attribut" (getpropertyvalue
      (setq aws (entnext aws)) "LocalizedName"))
  (setpropertyvalue aws "Color" 250)
  )
(setq n (+ n 1))))
    )
  (princ)
)

------------------
viele Grüße

Jörn
http://www.bosse-engineering.com

Liniensignaturen Youtube

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

MB-fab
Mitglied
Techniker - Elektrotechnik


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

Beiträge: 19
Registriert: 18.10.2016

Autocad 2016, MEP 2016, PIT 2016, MS V8i

erstellt am: 16. Okt. 2017 15:48    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 Jörn,

das ist natürlich sehr gut. Ich glaube da wäre ich nicht drauf gekommen.

Was meint ihr, kann man auch soweit in die Blockdefinition eingreifen um das Attribut auf Farbe 250 legen.
Also nicht über den Erweiterten Attributs-Editor, sondern so wie wenn man im Blockeditor die Attribute anwählt und auf die Farbe 250 legt.
Für mich ist immer das Problem, wenn man hin geht und Attsync macht, dann ist die ganze Einstellung wieder auf Ursprung.

Grüße Fab

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

Andreas Kraus
Mitglied
Elektrotechniker


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

Beiträge: 1025
Registriert: 11.01.2006

WIN 10
ACAD 2017

erstellt am: 16. Okt. 2017 16:08    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 MB-fab 10 Unities + Antwort hilfreich

Hallo Fab,
lass mich auch mal 
Das hier setzt alle Attribute in alle Blöcken auf die Farbe 250
Wenn du die Blöcke wählen möchtest geht das mit einem kleinen Umbau auch.

(vl-load-com)
(vlax-for blk (vla-get-blocks
(vla-get-activedocument (vlax-get-acad-object))
      )
  (vlax-for obj blk
    (if (= (vla-get-ObjectName obj) "AcDbAttributeDefinition")
      (vla-put-color obj 250)
    )
  )
)

------------------
Geht nicht, gibts nicht

Gruß
Andreas

http://kraus-cad.de

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)2017 CAD.de