Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Platzhalter in Acad

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Platzhalter in Acad (5233 mal gelesen)
domda
Mitglied
selbständig


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

Beiträge: 148
Registriert: 18.02.2002

ACAD 2000i/2004
Express tools(english)
cadmandu,cadlibdu
modulcad
Win2k
P4 1,5GHz
512MBRam

erstellt am: 25. Aug. 2003 21:48    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

hi leute, ich wieder mal ;-)

mal ne frage, das mit dem platzhaltern habe ich soweit verstanden
* für beliebige weitere buchstabenfolge
? für einzelnen Platzhalter....
so stehts geschrieben.....
allerdings brauche ich diese platzhalter in der suche von acad (text suchen)[_find]
oder noch lieber in der schnellsuche mit auswahlkriterium text und dann inhalt....
ich muss nämlich aus einer zeichnung wo alle Beschriftungen von den Blöcken in normalem TEXT vorhanden sind Blöcke und deren Beschriftung löschen...
BSP.: Lösche 7 verschiedene Blöcke des Layers Brandmelde (geht ja recht einfach da die blöcke namen besitzen..)
dann folgendes problem, die schlauen leute von dem planungsbüro haben alle elektroteschnischen symbole auf einem layer beschriftet... d.h. keine chance durch layer isolieren zu einem ergebnis zu kommen...
d.h. immer in der schnellsuche nach einem bestimmten text suchen-->
A01, A02, A03,... ,B01,B02,..usw und einzeln rauslöschen.....
ich könnte aber gleich gut die bezeichnung A* und B* löschen wenn das funktionieren würde... tut es aber nicht, ....
kennt jemand ne nette möglichkeit um das zu beschleunigen ..???
es handelt sich nämllich um 20 solche bezeichnungen pro plan (10 pläne sinds) und irgendwie sollte das doch auch schneller gehen oder?

------------------
ciao
dominik
---------------------

---------------------

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

CADchup
Ehrenmitglied V.I.P. h.c.




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

Beiträge: 3329
Registriert: 14.03.2001

Sicher ist, dass nichts sicher ist. Selbst das nicht.
Joachim Ringelnatz

erstellt am: 25. Aug. 2003 22:51    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 Nur für domda 10 Unities + Antwort hilfreich

Hi,

auf die Schnelle zusammengekloppt und ohne Beautyfier und Prüfung, ob man im richtigen Layout ist:

(defun deltextblock (xxx / ins i txts)
  (if (setq ins (ssget "x" (list '(0 . "INSERT") (cons 2 xxx))))
    (progn
      (setq i 0)
      (while (< i (sslength ins))
(if (setq txts
  (ssget
    "x"
    (list '(0 . "TEXT,MTEXT")
  (cons 1 (cdr (assoc 2 (entget (ssname ins i)))))
    )
  )
    )
  (command "_.erase" txts "")
) ; if
(setq i (1+ i))
      )
      (command "_.erase" ins "")
      (command "_.purge" "_bl" "*" "_n")
    ) ; progn
  ) ; if
)

Start mit (deltextblock "A*") wenn Du alle Blöcke und Texte mit Name/Inhalt "A*" löschen willst.

Gruß
CADchup

------------------
www.cadditions.de

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

domda
Mitglied
selbständig


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

Beiträge: 148
Registriert: 18.02.2002

ACAD 2000i/2004
Express tools(english)
cadmandu,cadlibdu
modulcad
Win2k
P4 1,5GHz
512MBRam

erstellt am: 25. Aug. 2003 22:53    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

danke dir... werds gleich mal testen,....

------------------
ciao
dominik
---------------------

---------------------

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

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: 4171
Registriert: 17.05.2001

AutoCAD 20XX, defun-tools

erstellt am: 25. Aug. 2003 23:01    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 Nur für domda 10 Unities + Antwort hilfreich

Hi dominik,

versusuch mal das, damit kannst du die Texte Löschen, die mit einem Buchstaben (Groß/Kleinschreibung beachten!!) beginnen und 2 weitere Ziffern als Text haben. Das A* wäre mir zu unsicher.

Code:

(defun c:dela00 (/ as bs bsl)
  (command "_.undo" "_G")
  (while (/= "" (VL-STRING-LEFT-TRIM " " (setq bs (getstring "\nBuchstabe: "))))
    (setq bsl (cons (substr bs 1 1) bsl))
    )
  (setq as (ssget "_X"
  (append
    (list
      '(-4 . "<and")
      '(0 . "TEXT")
      '(-4 . "<or")
      )
    (mapcar '(lambda (S)
       (cons 1 (strcat S "##"))
       )
    bsl
    )
    (list
      '(-4 . "or>")
      '(-4 . "and>")
      )
    )
  )
)
  (if as (command "_.erase" as ""))
  (command "_.undo" "_E")
  (princ)
  )


Bei Fragen ...

Grüße Holger
------------------
Holger Brischke
CADlon - Lisp over night!

[Diese Nachricht wurde von Brischke am 25. August 2003 editiert.]

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

domda
Mitglied
selbständig


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

Beiträge: 148
Registriert: 18.02.2002

ACAD 2000i/2004
Express tools(english)
cadmandu,cadlibdu
modulcad
Win2k
P4 1,5GHz
512MBRam

erstellt am: 26. Aug. 2003 01:17    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

danke, wieder mal holger, genau das was ich gesucht habe....
unities sind unterwegs

------------------
ciao
dominik
---------------------

---------------------

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

sponk-mg
Mitglied



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

Beiträge: 38
Registriert: 10.10.2011

Einstieg in LSP, da Makro nicht alles leisten können, was ich inzwischen benötige

erstellt am: 10. Okt. 2011 17:40    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 Nur für domda 10 Unities + Antwort hilfreich

Neueinsteiger!
Bisher habe ich nur Makros genutzt. Leider ist es damit nicht möglich, nach
Blöcken und Texten mit Inhalt unter Verwendung von Platzhaltern zu suchen.
Suche daher nach Lösungen mit AutoLisp:

Ziel:
Erstellung von LSP mit folgenden Inhalten
Suchen und Löschen von Text mit der Zeichenfolgen RVZ* oder *VZ
Suchen und Löschen von mehreren Blöcken mit festen Zeichnfolgen.

Gesucht soll in allen Layer werden.

Vielen Dank vorab.

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

CAD-Huebner
Ehrenmitglied V.I.P. h.c.
Verm.- Ing., ATC-Trainer



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

Beiträge: 9732
Registriert: 01.12.2003

AutoCAD 2.5 - 2022, Civil 3D, MAP 3D, ACADM
Inventor AutoCAD 2022, AIP 4-2022
Win 10

erstellt am: 11. Okt. 2011 08:43    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 Nur für domda 10 Unities + Antwort hilfreich

Ja, aber die Lösung steht doch schon im Beitrag vorher. Nur das Löschen (ERASE) muss man auskommentieren und den Auswahlsatz "as" weiterverwenden.
Reine Programmbestellungen werden hier allerdings nicht entgegengenommen (sondern nur Hilfe zur Selbsthilfe gegeben).

------------------
Mit freundlichem Gruß

Udo Hübner
www.CAD-Huebner.de

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

sponk-mg
Mitglied



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

Beiträge: 38
Registriert: 10.10.2011

Einstieg in LSP, da Makro nicht alles leisten können, was ich inzwischen benötige

erstellt am: 14. Okt. 2011 08: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 Nur für domda 10 Unities + Antwort hilfreich

Sehr geehrter Herr Hübner,

ich habe im Vorfeld beide hier vorgestellten Lisp-Programme ausprobiert. Ich arbeite mit AutoCAD Architecture. Leider laufen beide Programme bei mir nicht. Als absoluter Anfänger bin ich momentan auf erfolgloser Fehlersuche und lese mich gerade eben in die Syntax von LISP ein. Ich verstehe soweit die Programme, kann den Fehler dennoch nicht finden.

Ich entschuldige meine ungeschickt formulierte "Programmbestellung".
Ich suche einen Einstieg in LISP, der mit geringer Programmiererfahrung sehr schwierig ist. Mir ist bewußt, dass eine falsch gesetzte Klammer/Leerzeichen u.a. das Programm nicht zum laufen bringt. Von daher suche ich einen Erfahrungsaustausch, der auch einem absoluten Laien wie mir den Einstieg etwas erleichtert.

Mit freundlichen Grüßen.

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

spider_dd
Mitglied



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

Beiträge: 1111
Registriert: 27.11.2003

Win 10Pro
Intel(R) Core(TM) i7-7700
NVIDIA Quadro P1000
ACAD, Civil-3D 2018

erstellt am: 14. Okt. 2011 09:24    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 Nur für domda 10 Unities + Antwort hilfreich

Hallo Sponk,

erst mal Herzlich Willkommen im WBF. 
Als Einstieg in Auto-Lips sind diese Seitensehr empfehlenswert.
Und dann gibt es in diesem Forum noch das Lisp-Brett, dort gibt es dann Hilfe und Erfahrungsaustausch zum Proggen in Lisp.

Gruß
Thomas

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

CADchup
Ehrenmitglied V.I.P. h.c.




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

Beiträge: 3329
Registriert: 14.03.2001

Sicher ist, dass nichts sicher ist. Selbst das nicht.
Joachim Ringelnatz

erstellt am: 14. Okt. 2011 13:30    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 Nur für domda 10 Unities + Antwort hilfreich

Hi,

dann gebe ich dir für den Anfang (keiner hier weiß, wie weit du bist) einen ganz rudimentären Code-Schnipsel, mit dem du den Text schon mal löschen kannst und auf dem du aufbauen kannst:

Code:
(if
  (setq ss (ssget "_X" '((0 . "TEXT")(1 . "RVZ*"))))
  (command "_erase" ss "")
  )

Den kannst du je nach Wissenstand ausbauen und mithilfe des LISP-Bretts sicher erweitern.

Gruß
CADchup

------------------
CADmaro.de

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

sponk-mg
Mitglied



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

Beiträge: 38
Registriert: 10.10.2011

Einstieg in LSP, da Makro nicht alles leisten können, was ich inzwischen benötige

erstellt am: 14. Okt. 2011 16:49    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 Nur für domda 10 Unities + Antwort hilfreich

Vielen lieben Dank.

Ich habe es sofort verstanden und es funktioniert. Auch meine Erweiterungen.

Routine deltextblock hab ich jetzt zum Glück auch verstanden.

Zu dem weiter oben aufgeführten Beispiel, das ich zur Übung verwenden wollte:
Routine dela00 gibt mir nur die Abfrage "Buchstabe" auf den Bildschirm aus, die ich nur mit Escape beenden kann. Eine Auswahl erfolgt nicht obwohl ich mehrere Kombinationen ausprobiert habe, die in Frage kommen könnten. Welche Eingabe wird zur erfolgreichen Suche erwartet?

@CADchup: Ich freue mich sehr über diese Hilfestellung

Jetzt macht es mir wieder Spaß und ich ich habe eine praktische Basis, auf die ich aufbauen und mit der ich experimentieren kann. Ich hab das Tutorial  http://www.autolisp-tutorial.mapcar.net/  durchgearbeitet und nehm mir am WE das Handbuch von Autocad zu Autolisp vor. Bei mir führt noch jede kleinste Unkenntnis zum Misserfolg auch wenn es bisher sicherlich sehr einfache Routinen sind.

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

runkelruebe
Moderator
Straßen- / Tiefbau




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

Beiträge: 8075
Registriert: 09.03.2006

Kinder, kauft Kämme!
Es kommen lausige Zeiten.

erstellt am: 14. Okt. 2011 18:48    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 Nur für domda 10 Unities + Antwort hilfreich

N'Abend,
Zitat:
Original erstellt von sponk-mg:

Zu dem weiter oben aufgeführten Beispiel, das ich zur Übung verwenden wollte:
Routine dela00 gibt mir nur die Abfrage "Buchstabe" auf den Bildschirm aus, die ich nur mit Escape beenden kann. Eine Auswahl erfolgt nicht obwohl ich mehrere Kombinationen ausprobiert habe, die in Frage kommen könnten. Welche Eingabe wird zur erfolgreichen Suche erwartet?

Holger  hatte nicht gelogen als er schrieb: 

Zitat:
damit kannst du die Texte Löschen, die mit einem Buchstaben (Groß/Kleinschreibung beachten!!) beginnen und 2 weitere Ziffern als Text haben.

Da ich lisp ebenfalls nicht sonderlich gut lesen kann, war ich schneller, das grad in einer Zeichnung durchzutesten 
Das Teil ist cool: Du darfst mehrere Anfangsbuchstaben angeben, wenn Du alle nacheinander eingetippt hast, einfach nochmal ein "leeres" enter und zack, sind alle Texte weg, auf die die o.a. Bedingungen zutreffen.

Auszug aus meiner Befehlszeile:

Code:
Befehl: DELA00
_.undo Aktuelle Einstellungen: Automatisch = Ein, Steuerung = Alle,
Zusammenfügen = Ja, Layer = Ja
Anzahl der rückgängig zu machenden Operationen eingeben oder
[Auto/Steuern/Beginn/Ende/Markierung/Rück] <1>: _G
Befehl:
Befehl:
Buchstabe: A

Buchstabe: a

Buchstabe:
_.erase
Objekte wählen:  5 gefunden



Sei tapfer, das wird sicher mit der Zeit, Du scheinst mir auf einem sehr guten Weg zu sein, wenn Du schon online-Tutorial und Buch entdeckt und durchstöbert hast, weiter als bis Seite 42 bin ich leider nie gekommen   

------------------
Gruß,
runkelruebe          Herr Kann-ich-nich wohnt in der Will-ich-nich-Straße...

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

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