|  |  | 
|  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | 
|  |  | 
|  | PNY wird von NVIDIA zum Händler des Jahres gewählt - zum dritten Mal in Folge, eine Pressemitteilung 
 | 
| Autor | Thema:  Transparenz hinzufügen (1329 mal gelesen) | 
 | besele Mitglied
 
 
  
 
      Beiträge: 62Registriert: 14.07.2011
 |    erstellt am: 15. Jul. 2015 19:40  <-- editieren / zitieren -->    Unities abgeben:            
  Hallo Lispexperten, ich möchte gerne zur Lisp von Lee Mac noch die Transparent Steuerung der Layer hinzufügen, weiß aber leider nicht wo ich anfangen soll. Vielleicht kann mir jemand helfen. Wäre mir sehr geholfen! Dann hätte ich noch eine Bitte - kann man diese Lisp so einstellen das die Datei mit "LDOFF" gestartet wird und nicht mit "LDON" weil bei einer neuen Zeichnung  brauche ich das noch nicht. Danke im Vorhinein und LG Besele     Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP | 
                        | Brischke Moderator
 CAD on demand GmbH
 
         
 
  
 
      Beiträge: 4201Registriert: 17.05.2001
 AutoCAD 20XX, defun-tools (d-tools.eu) |    erstellt am: 15. Jul. 2015 20:07  <-- editieren / zitieren -->    Unities abgeben:           Nur für besele   | 
                        | besele Mitglied
 
 
  
 
      Beiträge: 62Registriert: 14.07.2011
 |    erstellt am: 15. Jul. 2015 21:23  <-- editieren / zitieren -->    Unities abgeben:            
  Hallo Holger, wenn ich die Transparenz hinzufüge macht das Programm nichts mehr habe dann alles wieder zum Ursprung zurückgeführt. Habe mich in den letzten 1 1/2 Jahren nicht mehr mit Lisp befasst, und so schlau war ich davor auch noch nicht. Deshalb habe ich mich an euch gewendet. lg besele   Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP | 
                        | Brischke Moderator
 CAD on demand GmbH
 
         
 
  
 
      Beiträge: 4201Registriert: 17.05.2001
 AutoCAD 20XX, defun-tools (d-tools.eu) |    erstellt am: 16. Jul. 2015 07:41  <-- editieren / zitieren -->    Unities abgeben:           Nur für besele   
 Zitat:Original erstellt von besele:
 ... wenn ich die Transparenz hinzufüge macht das Programm nichts mehr habe dann alles wieder zum Ursprung zurückgeführt.
 
 ... hmm, die nicht funktionierende Variante wäre allerdings eine gute Grundlage gewesen, dir deine Fehler aufzuzeigen. Schau mal, dass du deinen Versuch hier einstellst .. am konkreten Fall lässt sich eine Thematik doch sehr viel konkreter helfen/diskutieren.Zudem müssen sich diejenigen, die dir helfen wollen, in den Code reindenken und eine Lösung erarbeiten .. das ist Aufwand, der vermieden werden kann und für deinen Lerneffekt bei weitem nicht so förderlich (man lernt ja bekanntlich aus Fehlern am meisten). Wenn du also (schnelle) Hilfe möchtest, dann solltest du deine nicht funktionierende Lösung posten.
 Grüße!Holger
 
 ------------------Holger Brischke
 CAD on demand GmbH
 Individuelle Lösungen von Heute auf Morgen.
 
  defun-tools Das Download-Portal für AutoCAD-Zusatzprogramme!
 
 
  
 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP | 
                        | CADmium Moderator
 Maschinenbaukonstrukteur
 
         
 
  
 
      Beiträge: 13533Registriert: 30.11.2003
 . |    erstellt am: 16. Jul. 2015 08:22  <-- editieren / zitieren -->    Unities abgeben:           Nur für besele   
  Die Transparenz ist keine "Standard"-Layereigenschaft sondern hängt an den XDATA  Zur Verdeutlichung schenk ich dir mal einen Code zum Auslesen der Transparenz (defun LAYER:GETTRANSPARENZ(LAYERNAME)(setq TRANSPARENCY '((33554687  "0")(33554684  "1")(33554681  "2")(33554679  "3")(33554676  "4")
 (33554674  "5")(33554671  "6")(33554669  "7")(33554666  "8")(33554664  "9")
 (33554661 "10")(33554658 "11")(33554656 "12")(33554653 "13")(33554651 "14")
 (33554648 "15")(33554646 "16")(33554643 "17")(33554641 "18")(33554638 "19")
 (33554636 "20")(33554633 "21")(33554630 "22")(33554628 "23")(33554625 "24")
 (33554623 "25")(33554620 "26")(33554618 "27")(33554615 "28")(33554613 "29")
 (33554610 "30")(33554607 "31")(33554605 "32")(33554602 "33")(33554600 "34")
 (33554597 "35")(33554595 "36")(33554592 "37")(33554590 "38")(33554587 "39")
 (33554585 "40")(33554582 "41")(33554579 "42")(33554577 "43")(33554574 "44")
 (33554572 "45")(33554569 "46")(33554567 "47")(33554564 "48")(33554562 "49")
 (33554559 "50")(33554556 "51")(33554554 "52")(33554551 "53")(33554549 "54")
 (33554546 "55")(33554544 "56")(33554541 "57")(33554539 "58")(33554536 "59")
 (33554534 "60")(33554531 "61")(33554528 "62")(33554526 "63")(33554523 "64")
 (33554521 "65")(33554518 "66")(33554516 "67")(33554513 "68")(33554511 "69")
 (33554508 "70")(33554505 "71")(33554503 "72")(33554500 "73")(33554498 "74")
 (33554495 "75")(33554493 "76")(33554490 "77")(33554488 "78")(33554485 "79")
 (33554483 "80")(33554480 "81")(33554477 "82")(33554475 "83")(33554472 "84")
 (33554470 "85")(33554467 "86")(33554465 "87")(33554462 "88")(33554460 "89")
 (33554457 "90")
 )
 )
 (if(and(=(type LAYERNAME)'STR)
 (setq LAYER(tblobjname "LAYER" LAYERNAME))
 (setq DATA(cdr(assoc -3(entget LAYER '("*")))))
 (setq DATA(car(vl-remove-if-not
 '(lambda(Y) (and(=(type(car Y))'STR)(=(strcase(car Y))"ACCMTRANSPARENCY")))
 DATA
 )
 )
 )
 (or(setq DATA(cadr(assoc(cdr(assoc 1071 (cdr DATA)))TRANSPARENCY)))
 (setq DATA "0")
 )
 )
 DATA
 )
 )
 ------------------Also ich finde Unities gut ... und andere sicher auch
 ---------------------------------------
 
  - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP | 
                        | besele Mitglied
 
 
  
 
      Beiträge: 62Registriert: 14.07.2011
 |    erstellt am: 16. Jul. 2015 08:43  <-- editieren / zitieren -->    Unities abgeben:            
  Hallo Cadmium, wollte die Transparenz nicht auslesen sondern mitgeben so wie ich sie bei meiner Layersteuerung habe. Weil der Layer wird doch auch bei einer neuen Zeichnung angelegt  wenn er nicht vorhanden ist. zB.: (defun C:000()   (command "_-layer" "_m" "---000-Konlinie" "_c" 191 "" "_ltype" "Continuous" "" "_lw" 0.09 "" "_Transparency" 40 "" "_Plot" "k" "" "") ) Hallo Holger,habe die Variablen "_Transparency" 40 - oben hineinkopiert und unten im Programm selber kenne ich mich nicht aus.
 Vielleicht kann mir jemand helfen
 lg Besele
 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP | 
                       
 | CADmium Moderator
 Maschinenbaukonstrukteur
 
         
 
  
 
      Beiträge: 13533Registriert: 30.11.2003
 . |    erstellt am: 16. Jul. 2015 08:50  <-- editieren / zitieren -->    Unities abgeben:           Nur für besele   
 Zitat:Original erstellt von besele:
 Hallo Cadmium,
 wollte die Transparenz nicht auslesen sondern mitgeben
 so wie ich sie bei meiner Layersteuerung habe.
 
 
 und ich wollte dir Zeigen, wo die Transparenz gespeichert wird ... und wenn du LeeMacs Proggi nutzen willst mußt du bei der Funktion LM:layerdirector:createlayer ansetzen und da siehst du die GCs die Werte aus der Layerliste verpasst bekommen ... naja .. iwie ist mir jetzt die Lust , weiterzumachen , verlorengegangen .. Für andere Interessierte dann noch dieser Code (defun LAYER:PUTTRANSPARENZ(LAYERNAME TRANSPARENZ)(setq TRANSPARENCY '((33554687  "0")(33554684  "1")(33554681  "2")(33554679  "3")(33554676  "4")
 (33554674  "5")(33554671  "6")(33554669  "7")(33554666  "8")(33554664  "9")
 (33554661 "10")(33554658 "11")(33554656 "12")(33554653 "13")(33554651 "14")
 (33554648 "15")(33554646 "16")(33554643 "17")(33554641 "18")(33554638 "19")
 (33554636 "20")(33554633 "21")(33554630 "22")(33554628 "23")(33554625 "24")
 (33554623 "25")(33554620 "26")(33554618 "27")(33554615 "28")(33554613 "29")
 (33554610 "30")(33554607 "31")(33554605 "32")(33554602 "33")(33554600 "34")
 (33554597 "35")(33554595 "36")(33554592 "37")(33554590 "38")(33554587 "39")
 (33554585 "40")(33554582 "41")(33554579 "42")(33554577 "43")(33554574 "44")
 (33554572 "45")(33554569 "46")(33554567 "47")(33554564 "48")(33554562 "49")
 (33554559 "50")(33554556 "51")(33554554 "52")(33554551 "53")(33554549 "54")
 (33554546 "55")(33554544 "56")(33554541 "57")(33554539 "58")(33554536 "59")
 (33554534 "60")(33554531 "61")(33554528 "62")(33554526 "63")(33554523 "64")
 (33554521 "65")(33554518 "66")(33554516 "67")(33554513 "68")(33554511 "69")
 (33554508 "70")(33554505 "71")(33554503 "72")(33554500 "73")(33554498 "74")
 (33554495 "75")(33554493 "76")(33554490 "77")(33554488 "78")(33554485 "79")
 (33554483 "80")(33554480 "81")(33554477 "82")(33554475 "83")(33554472 "84")
 (33554470 "85")(33554467 "86")(33554465 "87")(33554462 "88")(33554460 "89")
 (33554457 "90")
 )
 )
 (if(and(=(type LAYERNAME)'STR)
 (=(type TRANSPARENZ)'STR)
 (setq TRANSPARENCY(car(car(vl-remove-if-not'(lambda(X)(=(cadr X)TRANSPARENZ))TRANSPARENCY))))
 (setq LAYER(tblobjname "LAYER" LAYERNAME))
 (setq DATA(cdr(assoc -3(entget LAYER '("*")))))
 (setq DATA(vl-remove-if
 '(lambda(Y) (and(=(type(car Y))'STR)(=(strcase(car Y))"ACCMTRANSPARENCY")))
 DATA
 )
 )
 (setq DATA(cons -3 (append DATA (list(list "AcCmTransparency" (cons 1071 TRANSPARENCY))))))
 (setq DATA(append(entget LAYER)  (list DATA)))
 (entmod DATA)
 )
 TRANSPARENZ
 )
 )
 Aufruf z.B: mit (LAYER:PUTTRANSPARENZ "0" "26") ------------------Also ich finde Unities gut ... und andere sicher auch
 ---------------------------------------
 
  - Thomas - "Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."
 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |