| |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
 | PNY präsentiert die neue NVIDIA RTX A400 und die A1000 Grafikkarte, eine Pressemitteilung
|
Autor
|
Thema: Neuer Befehl:Schattieren (1841 mal gelesen)
|
Ajani Mitglied Student
 Beiträge: 9 Registriert: 06.02.2006 AutoCad 2004, Windows XP Pro
|
erstellt am: 08. Feb. 2006 16:53 <-- editieren / zitieren --> Unities abgeben:         
Hallo! Muss zugeben-bin absoluter Neuanfänger in Bezug auf AutoLisp. Möchte trotzdem versuchen einen neuen Befehl selbst zu schreiben. Der Befehl soll wie folgt funktionieren: Objekt wählen, kopieren, verschieben, neues Objekt mit solid füllen! Hab jetzt anhand von anderen Beiträgen, die hier im Forum gepostet wurden, versucht, den Befehl zu schreiben - wenn ich ihn dann aber Visual Lisp für AutoCad prüfen lasse, bekomme ich die Antwort: "Fehler:Falsch formatierte Liste in Eingabe". Hier mein Versuch: (defun shade() (setq pline(car(entsel "\nPolylinie wählen:"))) (command "_.copy"(entlast) "" (car(assoc 10(entget(entlast)))) "_.move"(entlast) "" (car(assoc 10(entget(entlast)))) "_.bhatch"(entlast) "" (car(assoc 10(entget(entlast)))) ) (princ) ) Vielleicht kann mir jemand helfen! Danke schon mal im Voraus! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
       

 Beiträge: 13529 Registriert: 30.11.2003 .
|
erstellt am: 08. Feb. 2006 17:14 <-- editieren / zitieren --> Unities abgeben:          Nur für Ajani
Erstmal willkommen! Guck dir mal den Code und die Kommentare an .. weiterhin mach dich mit den Gruppencodes und den Grundfuntionen vertraut z.B: car / cdr (defun c:testus( / pline1 pline2) (if(setq pline1(car(entsel "\nPolylinie wählen:"))) (progn (command "_.copy"pline1 "" '(0 0 0) '(0 0 0)) ;Kopie erstellen (setq pline2 (entlast)) ; Kopie merken ;Schieben vom ersten Stützpunkt nach ... (command "_.move" pline2 "" (cdr(assoc 10(entget pline2))) pause) ;(command "_-bhatch" "a" pline2 "" ... hier einfach mal durchhangeln... ; der interne Punkt macht dann vielleicht noch Probleme. ) ) (princ) ) ------------------ - Thomas - "Du bist einen uns unbekannten Weg in eine andere Form des Seins gegangen. - Wir sehen uns wieder in deinem Paradies! - Tschüß Axel.." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ajani Mitglied Student
 Beiträge: 9 Registriert: 06.02.2006 AutoCad 2004, Windows XP Pro
|
erstellt am: 09. Feb. 2006 17:15 <-- editieren / zitieren --> Unities abgeben:         
Hey CADmium! Danke für den guten Tipp! Hab alles nochmal überarbeitet und jetzt zeigt es mir bei der Prüfung keinen Fehler mehr an! Jetzt gibt es nur ein Problem: Ich habe den Befehl ins AutoCad geladen und wenn ich den Befehl jetzt eingebe, passiert GAR NIX! Kann es daran liegen dass ich eine, sagen wir mal, nicht wirklich lizensierte Version( ) habe....? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SebZ Mitglied Bauingenieur Tiefbau
 
 Beiträge: 189 Registriert: 17.10.2004 AutoCAD 2010 Civil 3D DACH WinXP Professional 2002 SP3 MS Office 2007 Intel Core2Duo 2.80 GHz, 3.00 GB RAM
|
erstellt am: 09. Feb. 2006 17:42 <-- editieren / zitieren --> Unities abgeben:          Nur für Ajani
das kannst du mit einer Mini-Codezeile selbst schnell rauskriegen: gib einfach folgendes in der Befehlszeile ein: Code: (princ "\nTest")
Wenn dann Test"\nTest" angezeigt wird, wird dein Lisp verstanden.
------------------ Gruß SebZ Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ajani Mitglied Student
 Beiträge: 9 Registriert: 06.02.2006 AutoCad 2004, Windows XP Pro
|
erstellt am: 09. Feb. 2006 18:02 <-- editieren / zitieren --> Unities abgeben:         
Das hab ich probiert - funktioniert. Aber das mit dem Befehl nicht. Mir ist aber auch nicht wirklich klar, was sonst noch falsch sein kann-dieser Test im Visual Lisp hat sonst immer gezeigt, wenn was falsch war und wenn es dann keinen Fehler mehr gezeigt hat, hat auch ein befehl funktioniert.... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur

 Beiträge: 7085 Registriert: 13.01.2004 ich hab eh keine Probleme damit...
|
erstellt am: 09. Feb. 2006 18:04 <-- editieren / zitieren --> Unities abgeben:          Nur für Ajani
|
Ajani Mitglied Student
 Beiträge: 9 Registriert: 06.02.2006 AutoCad 2004, Windows XP Pro
|
erstellt am: 09. Feb. 2006 19:28 <-- editieren / zitieren --> Unities abgeben:         
Funktion: (defun c:shade( / pline1 pline2) (if(setq pline1(car(entsel "\nPolylinie wählen:"))) (progn (command "_.copy"pline1 "" '(0 0 0) '(0 0 0)) (setq pline2 (entlast)) (command "_.move" pline2 "" (cdr(assoc 10(entget pline2))) pause) (command "_-bhatch" "a" pline2 "" (cdr(assoc 10(entget pline2))) ) ) (princ) ) Rufe den Befehl mit: _shade auf! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
tunnelbauer Ehrenmitglied V.I.P. h.c. Bauingenieur

 Beiträge: 7085 Registriert: 13.01.2004 ich hab eh keine Probleme damit...
|
erstellt am: 09. Feb. 2006 19:45 <-- editieren / zitieren --> Unities abgeben:          Nur für Ajani
Lass' mal den Unterstrich weg - der Unterstrich bewirkt normal nur, dass der englische Befehle aktiv wird (in zB der deutschen Version) (im Gegensatz zum Punkt, der die internen Befehle, welche in der acad.exe definiert sind, aufruft). ------------------ Grüsse Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
       

 Beiträge: 13529 Registriert: 30.11.2003 .
|
erstellt am: 09. Feb. 2006 19:59 <-- editieren / zitieren --> Unities abgeben:          Nur für Ajani
Ähmmm .. kann deine Funktion nicht anders heißen - shade2 oder so - ? .. shade gibts nämlich schon in ACAD .... ------------------ - Thomas - "Du bist einen uns unbekannten Weg in eine andere Form des Seins gegangen. - Wir sehen uns wieder in deinem Paradies! - Tschüß Axel.." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ajani Mitglied Student
 Beiträge: 9 Registriert: 06.02.2006 AutoCad 2004, Windows XP Pro
|
erstellt am: 09. Feb. 2006 20:52 <-- editieren / zitieren --> Unities abgeben:         
Es lag wohl daran, dass ich es nur shade genannt hab - bei shade2 hats funktioniert. Nur irgendwie überspringt er den Kopierbefehl in der Routine. Wenn ich die Polylinie wähle, kann ich sagenauf welche Zeit es versetzt werden soll, aber es wird dann die Polylinie 1 versetzt! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
       

 Beiträge: 13529 Registriert: 30.11.2003 .
|
erstellt am: 09. Feb. 2006 21:12 <-- editieren / zitieren --> Unities abgeben:          Nur für Ajani
Fangen wir mal ganz von vorn an ... was willst du eigentlich erreichen? in dem Proggie wird zuerst eine PL angewählt, die wir uns in PLine1 merken. Diese wird mittels (command "_copy" '(0 0 0) '(0 0 0)) auf sich selbst kopiert. Die Kopie das neueste Element in der Datenbank ... also über (entlast) ermittelbar und in der Variable PLINE2 gemerkt. PLINE2 wird nun verschoben .... Ausgangspunkt ist dabei der erste Stützpunkt der LW-Poly... der 2. Punkt wird durch "pause" vom User erwartet. ob daduch dann eine geschlossene Kontur entsteht, die irgentwie schraffiert werden kann .. keine Ahnung ... Deshalb noch mal die Frage: Wo soll es hingehen? Ich kann zumindest kein Ziel erkennen. .. und bevor es an Programme geht ... ein guter Anfang ist immer das Tutorial von Axel der leider viel zu früh verstorben ist. Wenn du vielleicht irgendwann mal soweit bist und auch ein MAPCAR verstehst und einsetzt, denk an ihn ------------------ - Thomas - "Du bist einen uns unbekannten Weg in eine andere Form des Seins gegangen. - Wir sehen uns wieder in deinem Paradies! - Tschüß Axel.." Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ajani Mitglied Student
 Beiträge: 9 Registriert: 06.02.2006 AutoCad 2004, Windows XP Pro
|
erstellt am: 09. Feb. 2006 21:26 <-- editieren / zitieren --> Unities abgeben:         
Das Tutorial von Axel fand ich sehr gut-hab es schon vor ein paar Tagen durchgearbeitet - bin aber dann leider beim fortgeschrittenen Modus nicht mehr ganz hinterhergekommen. Die Funktion soll die Differenz zwischen Pline2 und Pline1 schraffieren mit solid. Mein Problem ist jetzt nur, dass ich irgendwie nur 1 Linie habe. Er zeigt mir keine 2 Linien nach dem verschieben von Pline2 an, sondern nur 1! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Paulchen Mitglied Bauing./SW-Entwickler
   
 Beiträge: 1227 Registriert: 19.08.2004
|
erstellt am: 13. Feb. 2006 19:51 <-- editieren / zitieren --> Unities abgeben:          Nur für Ajani
Willkommen! Bin auch kein Profi und finde, dass Du Dich ganz gut schlägst. Mal sehen, ob ich Dir weiterhelfen kann... Zunächst mal fehlt in Deinem Code eine Klammer (bei mir hat er gleich gemeckert), und zwar eine schliessende vor dem
Code: ... (princ) ...
Dadurch ist die if-Routine nicht geschlossen. Ich vermute, dass dieses Fehlerchen erst beim Einstellen ins Forum reingerutscht ist, sonst wäre es vorher ja gar nicht gelaufen. Deine Frage mit nur EINER Linie könnte ich Dir leichter beantworten, wenn ich wüsste, welche Version Du verwendest (Profil ausfüllen). Du arbeitest mit englischen Befehlen ("_-bhatch"), allerdings springst Du bei
Code: ... (command "_-bhatch" "a" pline2 "" ...
ins Deutsche über - nehme an, Du meinst mit "a" "auswählen", da danach auch ein Objekt gewählt wird. Wahrscheinlich taucht nur eine Linie auf, weil die Funktion abgebrochen wird, d.h. er führt auch den Kopierbefehl gar nicht aus. Nun zwei Vorschläge - keine Endlösungen - meinerseits. 1. Mach Dir das Textfenster in AutoCAD zunutze (F2), dann siehst Du besser, wann er warum nicht so mag, wie Du es gerne hättest. 2. Modifizierter Code:
Code: (defun c:shade3 (/ pline1 pline2) (if (setq pline1 (car (entsel "\nPolylinie wählen:"))) (progn (command "_.copy" pline1 "" '(0 0 0) '(0 0 0)) (setq pline2 (entlast)) (command "_.move" pline2 "" (cdr (assoc 10 (entget pline2))) pause ) (command "_-bhatch" "_p" "_s" pause "" ) ) ) (princ) )
Habe nur den unteren Teil (ab "_-bhatch") verändert. Auch die Kürzel werden hier durch den "_" auf Englisch angenommen - funktioniert zumindest bei mir bestens. "_p" steht für "properties", also "Eigenschaften", "_s" für "solid". Du musst hier (leider) ein weiteres Mal (in die zu schraffierende Region) klicken. Habe mit ACAD2000 engl. und ACAD2004 deu. getestet, sollte in beiden Sprachen laufen.Wie gesagt, keine Endlösung, möchte Dir nur `nen Denkanstoss geben:-) Weiterhin viel Erfolg! Freddy
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ajani Mitglied Student
 Beiträge: 9 Registriert: 06.02.2006 AutoCad 2004, Windows XP Pro
|
erstellt am: 24. Feb. 2006 12:41 <-- editieren / zitieren --> Unities abgeben:         
Hey! Super tolle Idee! Danke! Jetzt funzt alles so wie ich es will!! Dafür gibts zehn! Aber jetzt noch eine Frage: Hab gehört es gibt einen Befehl, mit dem man sagen kann, dass alle Schraffuren unten liegen sollen! Kann mir jemand sagen, wo ich diesen Befehl finde? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Paulchen Mitglied Bauing./SW-Entwickler
   
 Beiträge: 1227 Registriert: 19.08.2004
|
erstellt am: 25. Feb. 2006 12:21 <-- editieren / zitieren --> Unities abgeben:          Nur für Ajani
Freut mich, Dir geholfen zu haben! Schön, daß Du Dein Profil ausgefüllt hast:-) Zu Deiner Frage: Den Befehl gibt es - mehr oder weniger jedenfalls. Ist ´ne AutoCAD-Sache. Schau mal in ACAD unter Menü Extras - Anzeigereihenfolge Da sind einige Optionen drin. Diese gibt es bereits als eigenen Werkzeugkasten namens Zeich.reihenfolge im Menü ACAD. Ob und wie diese Befehle dann alle Schraffuren nach unten legen, kann ich Dir nicht genau sagen; da mußt Du wohl ein bißchen ´rumprobieren. Leg´ mal alle Schraffuren auf einen Layer etc. Die ACAD-Hilfe hilft da bestimmt auch weiter... Freddy Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
danielboukreev Mitglied

 Beiträge: 27 Registriert: 10.03.2005
|
erstellt am: 25. Feb. 2006 20:40 <-- editieren / zitieren --> Unities abgeben:          Nur für Ajani
|