Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Vordefinierte Variablen holen

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:  Vordefinierte Variablen holen (726 mal gelesen)
richycad
Mitglied



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

Beiträge: 33
Registriert: 01.10.2010

AutoCAD 2015
Windows 7 Enterprise 64-bit
HP ZBook 17 G3
Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz, 2601 MHz, 4 Kern(e), 8 logische(r) Prozessor(en)
Memory: 8192MB RAM
Card name: NVIDIA Quadro M3000M

erstellt am: 08. Mrz. 2011 14:50    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

Guten Tag,

ich möchte aus vordefinierten Variablen "button1....14" die Werte holen.
Er soll 14 Mal abfragen. Beim ersten Mal wird z.B ein Kreis an der Stelle gezeichnet wie z.B (0,0)(button1).
Beim zweiten Mal ein Kreis an der Stelle (42,0) - button2...usw. bis button14.

Ich bekomme das mit "while" oder "repeat" leider nicht hin. Unschön bekomme ich das nur mit einer langen Abfrage hin. Soll aber nicht Sinn der Sache sein.

(setq button1  (list 0 0)
      button2  (list 42 0)
      button3  (list 0 42)
      button4  (list 42 42)
      button5  (list 0 84)
      button6  (list 42 84)
      button7  (list 0 126)
      button8  (list 42 126)
      button9  (list 0 168)
      button10 (list 42 168)
      button11 (list 0 210)
      button12 (list 42 210)
      button13 (list 0 252)
      button14 (list 42 252)
)

Danke und gruß

Richy

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

neurosis
Mitglied
dipl.ing.


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

Beiträge: 222
Registriert: 22.08.2006

erstellt am: 08. Mrz. 2011 15: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 richycad 10 Unities + Antwort hilfreich

hallo richy,
ich habs zwar nicht ganz verstanden, aber vielleicht geht das in die richtige richtung:

(setq i 0)
(repeat 14
  (print (eval (read (strcat "button" (itoa (setq i (1+ i)))))))
)
diese schleife zeigt alle werte der variablen button1...14 an.

gruss
marco

------------------
Marco Heuer
www.arc-aachen.de
Airport Office

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

richycad
Mitglied



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

Beiträge: 33
Registriert: 01.10.2010

AutoCAD 2015
Windows 7 Enterprise 64-bit
HP ZBook 17 G3
Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz, 2601 MHz, 4 Kern(e), 8 logische(r) Prozessor(en)
Memory: 8192MB RAM
Card name: NVIDIA Quadro M3000M

erstellt am: 08. Mrz. 2011 15: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

Danke Marco,

hier ist das was ich erreichen wollte. Dein Tipp war die Lösung.

(setq button1  (list 0 0)
      button2  (list 42 0)
      button3  (list 0 42)
      button4  (list 42 42)
      button5  (list 0 84)
      button6  (list 42 84)
      button7  (list 0 126)
      button8  (list 42 126)
      button9  (list 0 168)
      button10 (list 42 168)
      button11 (list 0 210)
      button12 (list 42 210)
      button13 (list 0 252)
      button14 (list 42 252)
);;end setq

(setq i 0)
(repeat 14
  (command "_circle" (eval (read (strcat "button" (itoa (setq i (1+ i)))))) "d" 34.5)

  (initget (+ 2 4) "J N")
  (setq eingabe (getkword "\nSoll hier ein Kreis hin? J oder N <J>: "))

  (if (= eingabe nil)
    (setq eingabe "J"))

  (cond ;;Fallunterscheidung
((= eingabe "N")
(progn
  (command "_erase" "L" "")
)
)
  );;end cond

);;end repeat

Besten Dank
Gruß Richy

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

andi2050
Mitglied



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

Beiträge: 107
Registriert: 11.03.2003

erstellt am: 08. Mrz. 2011 21: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 richycad 10 Unities + Antwort hilfreich

Lisp ist eine Sprache, die LISTEN verarbeitet.
Hier eine Variante die eine Liste verwendet.

(setq pointlist '((0 0)
(42 0)
(0 42)
(42 42)
(0 84)
(42 84)
(0 126)
(42 126)
(0 168)
(42 168)
(0 210)
(42 210)
(0 252)
(42 252)
)
)
(foreach point pointlist
  (command "_circle" point "d" 34.5)
  (initget (+ 2 4) "J N")
  (if (= "N" (getkword "\nSoll hier ein Kreis hin? J oder N <J>: "))
    (command "_erase" "L" "")
  )
)

Grüße

Andi

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



Entwicklungsingenieur (m/w/d) Simulation und Modellierung

Krauss-Maffei Wegmann, ein Unternehmen der deutsch-französischen Wehrtechnikgruppe KNDS, ist Marktführer in Europa für hochgeschützte Rad- und Kettenfahrzeuge. An Standorten in Deutschland, Brasilien, Griechenland, Mexiko, Singapur und den USA entwickeln, fertigen und betreuen mehr als 4.000 Mitarbeiter ein umfassendes Produktportfolio. Auf die Einsatzsysteme von KMW verlassen sich weltweit die Streitkräfte von über 50 Nationen....

Anzeige ansehenEntwicklung
richycad
Mitglied



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

Beiträge: 33
Registriert: 01.10.2010

AutoCAD 2015
Windows 7 Enterprise 64-bit
HP ZBook 17 G3
Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz, 2601 MHz, 4 Kern(e), 8 logische(r) Prozessor(en)
Memory: 8192MB RAM
Card name: NVIDIA Quadro M3000M

erstellt am: 09. Mrz. 2011 15:10    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 Andi,

auch eine gute Lösung. Habe wieder was gelernt.
Deine Lösung ist kürzer und einfacher.

Gruß Richy

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