Hot News:

Unser Angebot:

  Foren auf CAD.de
  ArchTools
  Lisp-Programm für Textskalierung

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
  
TRICAD MS Piping 3D - Effizient Apparate- und Rohrleitungsmodelle planen , eine App
Autor Thema:  Lisp-Programm für Textskalierung (854 mal gelesen)

Ex-Mitglied

erstellt am: 02. Feb. 2004 16:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Mit dem unten stehenden kleinen Programm können Sie beliebige Text- und Mtext-Elemente um einen Faktor skalieren und so an unterschiedliche Plotmaßstäbe anpassen. Kopieren Sie das Programm einfach in eine leere Textdatei (z.B. in Notepad) und speichern Sie diese z.B. als SCALETEXT.LSP ab.

Der Befehl SCALETEXT fordert Sie auf, einen Skalierfaktor anzugeben udn Text- bzw Mtext-Elemente zu wählen, die entsprehend skaliert werden sollen. Der Befehl SCALEALLTEXT skaliert nach Eingabe eines Faktors alle Text- und Mtext-Elemente in der Zeichnung.

Die Funktion benötigt ArchTools, das geladen sein muß.

;;; LISP beginnt hier ->
(defun ss_s2e (sset / eset counter)
  (setq counter 0)
  (if (= 'PICKSET (type sset))
    (repeat (sslength sset)
      (setq eset    (cons (cdr (assoc -1 (entget (ssname sset counter)))) eset)
    counter (1+ counter)
      )
    )
  )
  eset
)

(defun scaletext (sset factor / ent)
  (foreach ent sset
    (if (setq scale (cdr (assoc 40 (entget ent))))
      (ssmodent ent 40 (* scale factor))
    )
  )
)


(defun c:scaletext (/ factor)
  (command "._undo" "_group")
  (if (and (setq factor (getreal "\nFaktor für Textgrößenskalierung: "))
  (setq sset (ss_s2e (ssget '((0 . "TEXT,MTEXT")))))
      )
    (if c:at-version
      (scaletext sset factor)
      (alert
"Fehler:\nSCALETEXT funktioniert nur, wenn ARCHTOOLS geladen ist.\nDownload -> http://www.archtools.de"
      )
    )
  )
  (command "._undo" "_group")
  (prin1)
)

(defun c:scalealltext (/ factor)
  (command "._undo" "_group")
  (if (setq factor (getreal "\nFaktor für Textgrößenskalierung: "))
    (if c:at-version
      (scaletext (ss_s2e (ssget "X" '((0 . "TEXT,MTEXT")))) factor)
      (alert
"Fehler:\nSCALEALLTEXT funktioniert nur, wenn ARCHTOOLS geladen ist.\nDownload -> http://www.archtools.de"
      )
    )
  )
  (command "._undo" "_group")
  (prin1)
)
;;; <- LISP endet hier

------------------
Architekturwerkzeuge für AutoCAD: http://www.archtools.de

Brischke
Ehrenmitglied V.I.P. h.c.
CAD on demand GmbH



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

Beiträge: 4191
Registriert: 17.05.2001

erstellt am: 02. Feb. 2004 16:35    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 Tom,

Ein ergänzender Hinweis:
Ein Beitrag im Forum 'Rund um AutoCAD' widmete sich bereits diesem Thema. Demnach ist diese Funktionalität bereits ab AutoCAD2002 im Befehlsumfang enthalten.
In diesem Beitrag gibt es auch noch weitere Tools, deren Funktionalität über die einfache Skalierung hinaus geht.

Grüße Holger

------------------
Holger Brischke
(defun - Lisp over night!
AutoLISP-Programmierung für AutoCAD
Da weiß man, wann man's hat!

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


Ex-Mitglied

erstellt am: 02. Feb. 2004 16:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Zitat:
Original erstellt von Brischke:
Hallo Tom,

Ein ergänzender Hinweis:
Ein Beitrag im Forum 'Rund um AutoCAD' widmete sich bereits diesem Thema. Demnach ist diese Funktionalität bereits ab AutoCAD2002 im Befehlsumfang enthalten.


Danke - es wird halt immer nur das selbe Rad immer neu efunden :-) Aber immerhin haben damit auch die Anwender von AutoCAD2000 eine Lösung dafür.

Gruß
Tom Berger

------------------
Architekturwerkzeuge für AutoCAD: http://www.archtools.de

cadwomen
Ehrenmitglied V.I.P. h.c.
Mädchen für fast alles


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

Beiträge: 3115
Registriert: 26.08.2002

erstellt am: 02. Feb. 2004 17:28    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

und die hatten ne lisp.
cht.lsp
war da glaub und dann gabs noch was ganz lustiges, da wurde
der Text in einen Editor geschrieben mit allen
Daten, da konnte man dann nach suche und finde
Änderungen vornehmen und dann mit einem klick wieder zurück in die DWG

Falls von interresse ist such ich auf meinen ACAD 12 / 14 Rechner danach

CUSee you = Wir sehen uns cw

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



Anzeige:Infos zum Werbeplatz >>

cseTools Kanalkataster CAD APP für Tiefbau, AEC - Architektur-, Ingenieur- und Bauwesen

Mit dem cseTools Kanalkataster werden komfortable Funktionen zu Aufbau, Verwaltung, Berechnung, Dokumentation, Analyse und Auswertung von Kanalnetzen bereitgestellt. Als Grundlage dienen u.a. Inspektions- bzw. Befahrungsdaten inklusive Schadensbildern und -Filmen.


Ex-Mitglied

erstellt am: 02. Feb. 2004 17:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Zitat:
Original erstellt von cadwomen:
und die hatten ne lisp.
cht.lsp
Falls von interresse ist such ich auf meinen ACAD 12 / 14 Rechner danach
CUSee you = Wir sehen uns cw

Im Netz geistert wohl immer noch mein vor Jahrzehnten geschriebenes GSR.LSP herum. GSR steht für "global search and replace", womit man Textteile in Texten, Mtexten und Attributen suchen und ersetzen konnte. Sowas wird heute wohl nicht mehr als Zusatzprogramm benötigt :-)

Gruß
Tom Berger

------------------
Architekturwerkzeuge für AutoCAD: http://www.archtools.de

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)2025 CAD.de | Impressum | Datenschutz