Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Rund um AutoCAD
  Lisp --> Variable --> Wert ändern

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
  
PNY Technologies präsentiert auf der COMPUTEX 2026 neue Lösungen für KI, Gaming und professionelle Anwendungen, eine Pressemitteilung
Autor Thema:  Lisp --> Variable --> Wert ändern (249 mal gelesen)
benwisch
Mitglied
Bautechniker, CAD-Konstrukteur


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

Beiträge: 375
Registriert: 01.02.2001

erstellt am: 06. Nov. 2002 10:37    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

ich habe eine Variable namens "temp" mit einem car-wert "ANZA" und einem cdr-wert "4"

nun möchte ich den wert "4" durch den wert "33" ersetzen lassen. also --> (subst neu alt wo)....aber denkste...ich krieg's nicht hin. egal welche kominationen ich nutze, es will nicht gelingen.

die online-hile zu diesem befehl hilft mir NICHT weiter und bitte euch deswegen um hilfe.

wie sollte der code aussehen ?


------------------
Grüße aus dem Rheingau.
Rolf aka Benwisch

[Diese Nachricht wurde von benwisch am 14. Sep. 2005 editiert.]

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: 3336
Registriert: 14.03.2001

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

erstellt am: 06. Nov. 2002 11:05    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 benwisch 10 Unities + Antwort hilfreich

Also (subst "33" "4" temp) geht nit?
Ist temp vielleicht keine Liste?

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

cadffm
Moderator
良い精神




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

Beiträge: 22275
Registriert: 03.06.2002

System: F1
und Google

erstellt am: 06. Nov. 2002 11:11    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 benwisch 10 Unities + Antwort hilfreich

wenig Info´s...

bin absoluter Anfänger, ich hatte das Problem das zB bei
Dottpairs so nicht agiert werden kann...das muß man erstmal wissen, hat mir Nächte (wie gesagt: Anfänger) lang den Schlaf geraubt...

mach doch mal ein "!temp"
und zeig mir so was da eigentlich alles WIE vorhanden ist.

------------------
Gruß Sebastian ,FFM

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

StephanJP
Mitglied
CAD-Admin


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

Beiträge: 834
Registriert: 09.11.2000

erstellt am: 06. Nov. 2002 11:38    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 benwisch 10 Unities + Antwort hilfreich


warum denn subst?
warum nicht (setq temp (cons "ANZA" "4"))?
ergibt=>("ANZA" . "4")
(setq temp (cons "ANZA" 4))
ergibt=>("ANZA" . 4)

aber wie die anderen schon sagen:
mehr Infos zur Art der Liste 

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

gruß
stephan

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

benwisch
Mitglied
Bautechniker, CAD-Konstrukteur


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

Beiträge: 375
Registriert: 01.02.2001

Autocad 2005-2010
Microstation V8
Photoshop CS4 + Camera Raw
Nikon Capture NX2
Nikon D90

erstellt am: 06. Nov. 2002 14: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

 
Zitat:
Original erstellt von StephanJP:

warum denn subst?
warum nicht (setq temp (cons "ANZA" "4"))?
ergibt=>("ANZA" . "4")
(setq temp (cons "ANZA" 4))
ergibt=>("ANZA" . 4)

aber wie die anderen schon sagen:
mehr Infos zur Art der Liste    



hi stephan

jepp....das klappt !!

allerdings steckt hier bei mir noch ein gedankenfehler drin. das bereitgestellte lsting von marc bringt mich dann aber weiter.... ( hier nachzulesen)

das habe ich (und so funzt es) folg. genutzt
.
.
.
(setq ATT-LST (ALL-BL-TXT OBJ)); <defun ALL-BL-TXT>!! Erstellt Liste von den Attributswerten vom Block AIRUL ...sehr gut für spätere Entwicklungen
(setq stk (atoi (cdr (nth 1 att-lst)))) ; auslesen der Eisenanzahl und umwandeln in eine Zahl
(setq eingabewert -12); wird später vom Benutzer aus Dialog übergeben...wenn abziehen dann negativer Wert !!
(setq stk (rtos (+ stk eingabewert) 2 0)); stk wird mit eingabewert addiert, bei negativ abgezogen !! ..rtos=in String umwandeln zahl="zahl"

;; temporäre Var
;;(setq temp (cadr ATT-LST)); klappt !
;;(setq temp (cons "ANZA" "33")); Klappt!
;;(setq ATT-LST (subst (cdr(cons "ANZA" temp)) (assoc "ANZA" ATT-LST) ATT-LST)); klappt !
;; problem : o.g. Variablen dem gepickten OBJ hinzugeben...
;; also schleife ausführen, bis Attributs-Bezeichnung ANZA "erscheint"

(while (/= (cdr (assoc 0 OBJ-DATA)) "MARKER"); Schleife bis MARKER da ist
    (setq OBJ-DATA (entget (entnext (cdr (assoc -1 OBJ-DATA)))))
    (if (= (cdr (assoc 2 OBJ-DATA)) "ANZA"); ...Attributsbezeichnung ANZA gefunden ... bin fast am ziel
      (progn
        (setq OBJ-DATA (subst (cons 1 stk) (assoc 1 OBJ-DATA) OBJ-DATA)); Eisenanzahl wird ersetzt
        (entmod OBJ-DATA); update der Daten
(entupd OBJ); update des Blockes -->screen (neuer Wert wird in Block geschrieben !!; OBJ = Grunddaten
        (setq   OBJ-DATA (list (cons 0 "MARKER"))); nachdem der gewünschte Wert ersetzt ist, setze in Liste MARKER, welches Ende der Schleife bedeutet
       ) ;_ end progn
    ) ;_ end if
);end while

so.. jetzt habe ich einen dicken kopf und bin zufrieden...
------------------
Grüße aus dem Rheingau.
Rolf aka Benwisch

[Diese Nachricht wurde von benwisch am 06. November 2002 editiert.]

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