Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Warum bekomme ich ein nil?????

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:  Warum bekomme ich ein nil????? (1259 mal gelesen)
Haenig
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 31.10.2002

erstellt am: 31. Mrz. 2004 20:13    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 Leute,

ich hab mir ein kleines Lsp geschrieben.
Ansich funktioniert es ja, aber am Ende bekomme ich immer ein nil!
Was ist denn in der letzten Zeile nicht ganz ok?
Hat jemand einen Vorschlag?
Danke im Vorraus

(defun C:tk (;|keine Argumente|;
    /
    ;|lokale verwendete Variablen|; Zaehnezalh Modul Teilkreis
    )


  ;Benutzereingaben
  (setq Zaehnezahl (getint "Zaehnezahl:")
Modul (getint "Modul:")
Mittelpunkt (getpoint "\nMittelpunkt:")
)


  ;Arithmetische Funktionen
  (setq Teilkreis (/ (* modul Zaehnezahl) 0.93969262)
)


  ;Verwenden von Autocad-Befehlen innerhalb AutoLisp
  (command "_.circle" Mittelpunkt Teilkreis)
  )

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


Ex-Mitglied

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

Zitat:
Original erstellt von Haenig:

  (command "_.circle" Mittelpunkt Teilkreis)
  )

Empfehlung: den LISP Kurs von Axel auf http://www.autolisp-tutorial.mapcar.net/

Jede störungsfrei ablaufende LISP Funktion gibt die Evaluierung des letzten Ausdrucks der Funktion zurück. Bei Dir ist der letzte Ausdruck (command "_.circle" Mittelpunkt Teilkreis), und das erzeugt zwar einen Kreis, gibt aber NIL zurück. Wenn Dir das lästig ist und Du keine Meldung sehen möchtest, dann veranlasse eine Null-Ausgabe, indem Du z.B. (prin1) als letzten Ausdruck Deiner LISP Funktion hinzufügst.

Gruß
Tom Berger

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

Haenig
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 31.10.2002

erstellt am: 01. Apr. 2004 09:44    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 fuer die schnelle Antwort!

Uwe Haenig

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

marc.scherer
Ehrenmitglied V.I.P. h.c.
CAD-Administrator



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

Beiträge: 2490
Registriert: 02.11.2001

Windows 10 64bit
AutoCAD Architecture 2018/2019 (deu/eng)
AEC-Collection 2019 (Revit und Zeugs)
Wenn sich's nicht vermeiden läßt:
D-A-CH Erweiterung (mies implementierter Schrott)

erstellt am: 01. Apr. 2004 09: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 Haenig 10 Unities + Antwort hilfreich

Hi Haenig,
wenn Du Deinen Source Code mit den UBB-Codes
"code" und "/code" umschließt, (vgl. http://ww3.cad.de/foren/ubb/ubbcode.html ) geht die Formatierung nicht verloren.
Zu Deinem Code, benutzt Du die VL-IDE?
Die hat diverse Formatierungs und Analyse-Funktionen.
z.B. kann sie Dir eine Liste der lokalen Variablen erstellen.
Auf die Art hast Du dann weder Schreibfehler (Zaehnezalh) drinnen, noch vergißt Du die Hälfte (MITTELPUNKT)...

Code:

(defun C:TK (;|keine Argumente|;
             / ;|lokale verwendete Variablen|; MITTELPUNKT MODUL
             TEILKREIS ZAEHNEZAHL)
  ;;Benutzereingaben
  (setq ZAEHNEZAHL  (getint "Zaehnezahl:")
        MODUL       (getint "Modul:")
        MITTELPUNKT (getpoint "\nMittelpunkt:")
        ;;Arithmetische Funktionen
        TEILKREIS   (/ (* MODUL ZAEHNEZAHL) 0.93969262)
  ) ;_ end of setq
  ;;Verwenden von Autocad-Befehlen innerhalb AutoLisp
  (command "_.circle" MITTELPUNKT TEILKREIS)
  (princ) ;_ Kein nil als Rückgabe von C:TK
) ;_ end of defun

(princ) ;_ Kein nil nach laden



..

------------------
Ciao,
Marc

[Diese Nachricht wurde von marc.scherer am 01. Apr. 2004 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)2023 CAD.de | Impressum | Datenschutz