| |
| 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: Textausrichten (1101 mal gelesen)
|
vision Mitglied
Beiträge: 113 Registriert: 27.10.2003 AutoCAD 2015 Expresstools Windows 10
|
erstellt am: 22. Dez. 2003 18:45 <-- editieren / zitieren --> Unities abgeben:
ACAD 2002 Hallo, die letzte Frage in diesem Jahr. Ich möchte durch Anklicken einen vorhandenen einzeiligen Text auf "Position: unten links" ausrichten. Wer kennt sich in den "Tiefen" von AutoCAD aus? Für Eure Bemühungen bedanke ich mich schon im Voraus. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cadffm Moderator 良い精神
Beiträge: 22275 Registriert: 03.06.2002 Alles
|
erstellt am: 22. Dez. 2003 19:17 <-- editieren / zitieren --> Unities abgeben: Nur für vision
Dafür benötigst du keine individuelles Programm, das funktioniert gut genug mit AutoCAD-Befehlen ! Siehe in der Hilfe unter: ZENTRTEXTAUSR (oder auch Befehl _justifytext) um die "Voreinstellung" UntenLinks zu bewerkstelligen setzt man ein MAKRO ein, nutze die Suchfunktion im Forum "Rund um AutoCAD" mit dem Stichwort "Makro" , deine AutoCADhilfe kannst du ebenfalls mit : "Makro" oder "Skript" belästigen um mehr über solcher Dinge zu erfahren. Wenn du fragen hast oder du die gewünschte Form der Objektwahl nicht hinbekommst, dann schreibe hier einfach nochmal dein genaues anliegen. schöne Feiertage, wünscht : ------------------ - von: Sebastian Mattis - Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
vision Mitglied
Beiträge: 113 Registriert: 27.10.2003 AutoCAD 2015 Expresstools Windows 10
|
erstellt am: 23. Dez. 2003 10:19 <-- editieren / zitieren --> Unities abgeben:
|
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 23. Dez. 2003 11:40 <-- editieren / zitieren --> Unities abgeben: Nur für vision
entweder über die eigenschaften oder (defun c:tp ( / as) (setq as(entget(car(entsel)))) (setq as(subst (cons 73 1) (assoc 73 as)as)) (setq as(subst (cons 72 0) (assoc 72 as)as)) (entmod as) ) ciao georg Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
vision Mitglied
Beiträge: 113 Registriert: 27.10.2003 AutoCAD 2015 Expresstools Windows 10
|
erstellt am: 23. Dez. 2003 12:16 <-- editieren / zitieren --> Unities abgeben:
Hallo gmk, erst mal Danke für Deine Anwort. Mit dem Lisp-Prg. wird der Einfügepunkt "unten links" gesetzt, aber der Text verschiebt sich auch auf den Nullpunkt (unten links in der Zeichnung)! Er sollte sich aber nur um den neuen Einfügepunkt verschieben (wie es auch bei der Ausführung in dem Eigenschaftsfenster passiert)!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gmk Mitglied Dipl.-Ing.(FH) Vermessung
Beiträge: 669 Registriert: 23.10.2002 Autocad 2004, WS CadCompass, Normica V2000, WinXP Prof., AMD Athlon 64 X2, 2GB, NVIDIA GeForce 7600GS, HP1055CM
|
erstellt am: 23. Dez. 2003 12:46 <-- editieren / zitieren --> Unities abgeben: Nur für vision
|
vision Mitglied
Beiträge: 113 Registriert: 27.10.2003 AutoCAD 2015 Expresstools Windows 10
|
erstellt am: 23. Dez. 2003 13:05 <-- editieren / zitieren --> Unities abgeben:
|
spider_dd Mitglied
Beiträge: 1144 Registriert: 27.11.2003 Win 10Pro Intel(R) Core(TM) i7-7700 NVIDIA Quadro P1000 ACAD, Civil-3D 2018
|
erstellt am: 25. Dez. 2003 23:06 <-- editieren / zitieren --> Unities abgeben: Nur für vision
Hallo vision, versuch mal folgendes (defun c:liun() (setq ct nil) (setq ct (entget (ssname (ssget ) 0))) (setq ct (subst (cons 72 0) (assoc 72 ct) ct)) (setq ct (subst (cons 73 1) (assoc 73 ct) ct)) ; eine der nachfolgenden je zwei zeilen auskommentieren ; wenn alter basispunkt (nahezu) gehalten werden soll (leichte y verschiebung möglich) ; (setq pos (cdr (assoc 10 ct))) ; (setq ct (subst (cons 11 pos) (assoc 11 ct) ct)) ; wenn alter ausrichtungspunkt gehalten werden soll ; (setq pos (cdr (assoc 11 ct))) ; (setq ct (subst (cons 10 pos) (assoc 10 ct) ct)) (entupd (entmod ct)) ) Falls Ausrichtung links (statt unten links) gemeint ist, sieht das ganze so aus:
(defun c:li() (setq ct nil) (setq ct (entget (ssname (ssget ) 0))) (setq ct (subst (cons 72 0) (assoc 72 ct) ct)) (setq ct (subst (cons 73 0) (assoc 73 ct) ct)) ; eine der nachfolgenden bloecke auskommentieren ; wenn alte position gehalten werden soll ; (setq pnull (list 0.0 0.0 0.0)) ; (setq ct (subst (cons 11 pnull) (assoc 11 ct) ct)) ; wenn alter ausrichtungspunkt gehalten werden soll ; (setq pos (cdr (assoc 11 ct))) ; (setq ct (subst (cons 10 pos) (assoc 10 ct) ct)) ; (setq ct (subst (cons 11 pnull) (assoc 11 ct) ct)) (entupd (entmod ct)) ) Ich habe dies aber nicht mit allen ausrichtungsvarianten getestet, also einfach mal probieren, ob dass rauskommt was du brauchst. Schöne Feiertage spider Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
vision Mitglied
Beiträge: 113 Registriert: 27.10.2003 AutoCAD 2015 Expresstools Windows 10
|
erstellt am: 26. Dez. 2003 09:43 <-- editieren / zitieren --> Unities abgeben:
Hallo spider_dd, ich bekomme mit (entupd (entmod ct)) folgende Fehlermeldung: "Fehlerhafter Argumenttyp: ..." Mit nur (entmod ct) kommt kein Fehler u. das Progr. funktioniert damit auch!!! Wie kann man noch folgende funktionen umsetzen: Um nicht ein noch angewählten Text bei dem Lisp-Prg.-Aufruf zu versetzen, sollte eine evtl. Auswahl in der Zeichnung gelöscht werden. Das Programm in einer Wiederholschleife laufen lassen. MfG Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
spider_dd Mitglied
Beiträge: 1144 Registriert: 27.11.2003 Win 10Pro Intel(R) Core(TM) i7-7700 NVIDIA Quadro P1000 ACAD, Civil-3D 2018
|
erstellt am: 26. Dez. 2003 23:06 <-- editieren / zitieren --> Unities abgeben: Nur für vision
Hallo vision, wie das rücksetzen einer noch vorh. Auswahl im lisp geht, weis ich auch nicht (besser vorher löschen), die schleife sollte so funktionieren: (defun c:li() (setq ct nil ctl nil) (setq weiter 1) (while weiter (setq ctl (ssget )) (if (= ctl nil) (setq weiter nil) (progn (setq anz (sslength ctl)) (setq x 0) (while (< x anz) (setq ct (entget (ssname ctl x))) (if (= (cdr (assoc 0 ct)) "TEXT") (progn (setq ct (subst (cons 72 0) (assoc 72 ct) ct)) ... ... s. lisp von gestern ... (entmod ct) )) ; end progn, end if text (setq x (1+ x)) ) ; end < x anz ) ; end progn ) ; end if ctl ) ; end while weiter ) Bei der Elementauswahl können beliebig viele Elemente (mit beliebiger Auswahlmethode (fenster, kreuzen ...)) gewählt werden, nur Texte werden "behandelt". Leere Auswahl beendet Prog.
viele Grüße spider Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
vision Mitglied
Beiträge: 113 Registriert: 27.10.2003 AutoCAD 2015 Expresstools Windows 10
|
erstellt am: 27. Dez. 2003 10:11 <-- editieren / zitieren --> Unities abgeben:
|