| |
| 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: Zahlen.lsp mit Ortho? (1638 mal gelesen)
|
GIGIMAN Mitglied TECHNIKER im THEATER
Beiträge: 395 Registriert: 22.06.2009
|
erstellt am: 31. Okt. 2009 09:03 <-- editieren / zitieren --> Unities abgeben:
Hi Gemeinde, hab mitgeschicktes Zahlen.lsp von Cadwiesel in Verwendung. Die Routine ist von Kollegen im Forum bisschen weiterbearbeitet worden, sodaß man nun auch einen Wunschlayer + eine Texthöhe eingeben kann. So weit - so gut! Was noch wünschenswert wäre ist ,daß sich NICHT der Orthomode ausschaltet wenn ich die lsp. starte - ich möchte nämlich die Zahlen brav in einer Reihe (Vertikal oder Horizontal) schreiben - irgendwie gelingt mir das nicht - hab schon probiert, in der lisp die Orthomode Eingaben zu ändern - leider ohne Erfolg Da ich von lisp so viel Ahnung habe wie vom " übers Wasser Gehen" : Kann mir da wer helfen ? ------------------ Gruß GIG Wenn weniger mehr ist, dann ist nichts vielleicht alles. (Rem Koolhaas) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 31. Okt. 2009 09:16 <-- editieren / zitieren --> Unities abgeben: Nur für GIGIMAN
Im Lisp wird eigentlich nichts am ORTHO gemacht , allerdings wird da noch eine Funktion (START) aufgerufen , vielleicht ist die dafür verantwortlich ? ne (END) gibts auch noch .... ------------------ - 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 |
GIGIMAN Mitglied TECHNIKER im THEATER
Beiträge: 395 Registriert: 22.06.2009
|
erstellt am: 31. Okt. 2009 09:39 <-- editieren / zitieren --> Unities abgeben:
Hi Thom, sorry , das mit dem Ortho - ( mort ( getvar "ORTHOMODE" ) - war nur in der Originallisp vom Wiesel - trotzdem : es wird dennoch ,sobald ich die lisp starte Orthomode auf OFF geschalten - kann ich in diesem Moment auch nicht mit F8 "overrulen" , solange ich in der lisp arbeite - beim Beenden der Routine ist der Orthomodus dann wieder auf EIN ! ------------------ Gruß GIG Wenn weniger mehr ist, dann ist nichts vielleicht alles. (Rem Koolhaas) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 31. Okt. 2009 09:47 <-- editieren / zitieren --> Unities abgeben: Nur für GIGIMAN
in dem Lisp werden Funktionen (START) und (END) aufgerufen ... die in deinem Post nicht dabei sind ..... ohne die läuft der code auch nicht ... und in denen wird wahrscheinlich an einigen sysvars rumgeschraubt .....
------------------ - 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 |
GIGIMAN Mitglied TECHNIKER im THEATER
Beiträge: 395 Registriert: 22.06.2009
|
erstellt am: 31. Okt. 2009 10:02 <-- editieren / zitieren --> Unities abgeben:
Hab die Lisp nochmal hochgeladen! Da find ich aber schon ( start ) + (end) drin! Wie meinst du das jetzt? ------------------ Gruß GIG Wenn weniger mehr ist, dann ist nichts vielleicht alles. (Rem Koolhaas) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 31. Okt. 2009 10:13 <-- editieren / zitieren --> Unities abgeben: Nur für GIGIMAN
ja... da stehen die Aufrufe drin, aber wo werden diese Funktionen mit (defun START () ...) usw definiert ? ------------------ - 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 |
GIGIMAN Mitglied TECHNIKER im THEATER
Beiträge: 395 Registriert: 22.06.2009
|
erstellt am: 31. Okt. 2009 10:21 <-- editieren / zitieren --> Unities abgeben:
Haste recht - aber die Lisp läuft genauso wie ich sie hochgeladen habe! Nur halt mit dem Ortho - Problem! Mehr kann ich dazu leider auch nicht sagen - läuft die Routine bei Dir nicht? ------------------ Gruß GIG Wenn weniger mehr ist, dann ist nichts vielleicht alles. (Rem Koolhaas) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 31. Okt. 2009 10:25 <-- editieren / zitieren --> Unities abgeben: Nur für GIGIMAN
Zitat: Original erstellt von GIGIMAN: Haste recht - aber die Lisp läuft genauso wie ich sie hochgeladen habe! Nur halt mit dem Ortho - Problem! Mehr kann ich dazu leider auch nicht sagen - läuft die Routine bei Dir nicht?
Nein, da ich keine Funktionen START und END habe. kannst ja bei dir mal in einer Zeichnung, wo noch nichts geladen ist (START) eingeben ... du kannst natürlich auch in deiner lsp (START) und (END) löschen und sie dann mal laden und testen... ------------------ - 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 |
Geos Mitglied Vermessungstechniker i.R.
Beiträge: 1017 Registriert: 21.09.2001 ACAD Map 2010, Win 7 Pro eigene Lisp's<P>HW: Core i7 860, 2.8 GHz 3.3 GB, NVIDIA GeForce GTS 250
|
erstellt am: 01. Nov. 2009 18:53 <-- editieren / zitieren --> Unities abgeben: Nur für GIGIMAN
In Wiesels Original sind (start) und (end) vorhanden - ebenso (*error*)! Einmal geladen, stehen sie natürlich zur Verfügung - auch wenn Du sie nachher aus der *.lsp löscht - zumindest bis Du eine neue DWG öffnest oder ACAD neu startest. Code: (defun end() (if clay (progn (command "LAYER" "SE" clay "") (setvar "BLIPMODE" bmod) (setvar "CMDECHO" 1) (setvar "MENUECHO" mech) (setvar "OSMODE" mosm) (setvar "SNAPMODE" msna) (setvar "ORTHOMODE" mort) ) ) (princ) ) (defun start() (setq bmod (getvar "BLIPMODE") mosm (getvar "OSMODE") msna (getvar "SNAPMODE") mort (getvar "ORTHOMODE") clay (getvar "CLAYER") mech (getvar "MENUECHO") ) (setvar "BLIPMODE" 0) (setvar "CMDECHO" 0) (setvar "MENUECHO" 3) (setvar "OSMODE" 0) (setvar "SNAPMODE" 0) (setvar "ORTHOMODE" 0) (command "LAYER" "M" "Text" "Fa" "1" "" "") ) (defun *error* (em) (end) (princ "\nAbbruch : ") (princ em) )
------------------ Schöne Grüße Ernst www.geopaint.at Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
GIGIMAN Mitglied TECHNIKER im THEATER
Beiträge: 395 Registriert: 22.06.2009
|
erstellt am: 01. Nov. 2009 20:01 <-- editieren / zitieren --> Unities abgeben:
Hab verstanden - hoffentlich - denk ich Bleibt aber immer noch die anfängliche Frage für mich als "Lisp-Unwissenden": Wie krieg ich die Orthomode Abschaltung in der Lisp weg ! (setvar "ORTHOMODE" 1) bringt nämlich gar nix! ------------------ Gruß GIG Wenn weniger mehr ist, dann ist nichts vielleicht alles. (Rem Koolhaas) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Dorfy Mitglied Double-Dipl.-Ing. Bleistiftanspitzer
Beiträge: 900 Registriert: 21.07.2006 AutoCad2007, ProE, HiCad
|
erstellt am: 01. Nov. 2009 20:36 <-- editieren / zitieren --> Unities abgeben: Nur für GIGIMAN
Hi Gig, ihmo liegt es am getpoint, deine Folgepunkte in der while-Schleife müsstest du dir in Abhängigkeit vom ersten Punkt bzw. vorherigen Punkt neu berechnen/zusammenbauen. ... ------------------ Mfg Heiko Elefantenjagd in Afrika "... LISP-Programmierer bauen einen Irrgarten aus Klammern und hoffen, dass sich der Elefant darin verirrt..." (www.uni-leipzig.de/~rotheh/elefant.htm) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
GIGIMAN Mitglied TECHNIKER im THEATER
Beiträge: 395 Registriert: 22.06.2009
|
erstellt am: 01. Nov. 2009 21:56 <-- editieren / zitieren --> Unities abgeben:
Hi Dorfy, vielen Dank für die Anregung + den Tip, woran es liegen könnte ! Zitiere jedoch nochmals aus meinem ersten Posting: " Da ich von lisp so viel Ahnung habe wie vom " übers Wasser Gehen" " Da werd ich wohl selber nicht weiterkommen! ------------------ Gruß GIG Wenn weniger mehr ist, dann ist nichts vielleicht alles. (Rem Koolhaas) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
CADmium Moderator Maschinenbaukonstrukteur
Beiträge: 13527 Registriert: 30.11.2003 .
|
erstellt am: 01. Nov. 2009 22:07 <-- editieren / zitieren --> Unities abgeben: Nur für GIGIMAN
(Defun C:ZAHLEN ( / temp) (if (or (not (setq wunschlayer (getstring (strcat "Wunschlayer:<" (if (and wunschlayer (/= wunschlayer "")) wunschlayer "0") ">")))) (= wunschlayer "")) (setq wunschlayer "0")) (if (not (setq wunschhoehe (getreal (strcat "Wunschhöhe:<" (if wunschhoehe (rtos wunschhoehe 2 1) "2.5") ">")))) (setq wunschhoehe 2.5)) (prompt "\n\n\nDie aktuelle Texthöhe wird übernommen...") (Setq A (Getint "\nStartnummer: ")) (Setq E 1) (Setq I 0) (Initget 1 "A") (Setq P1T (Setq P1 (Getpoint"\nEinfuegepunkt oder Abbruch"))) (While(/= P1T "A") (Setq F (strcat"Stellplatz"(Itoa A))) (Command "Text" "z" P1 "" I F) (entmod (subst (cons 8 wunschlayer) (assoc 8 (setq temp (subst (cons 40 wunschhoehe) (assoc 40 (entget (entlast))) (entget (entlast))))) temp)) (Setq A (+ A E)) (Initget 1 "A") (Setq P1T (Setq P1 (Getpoint P1 "\nEinfuegepunkt oder A für Abbruch"))) )
(Princ) ) Änderung : (Getpoint P1 "\nEinfuegepunkt oder A für Abbruch"))) und (start) und (end) entfernt
ansonsten distanziere ich mich von dem Code und desssen Formatierung ------------------ - 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 |
GIGIMAN Mitglied TECHNIKER im THEATER
Beiträge: 395 Registriert: 22.06.2009
|
erstellt am: 01. Nov. 2009 22:59 <-- editieren / zitieren --> Unities abgeben:
Hi Thomas, danke recht narrisch für die Hilfe! funzt jetzt so wie von mir gewünscht. Version, die ich jetzt verwende anbei ! ( aber mit (start) + (end) ) Aber wieso die Distanzierung - Würde mich als "Lisp-Nackerpazzl" - wie du siehst komm ich aus Wien - schon interessieren! ------------------ Gruß GIG Wenn weniger mehr ist, dann ist nichts vielleicht alles. (Rem Koolhaas) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |