Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. AutoLISP – Wikipedia
AutoLISP – Wikipedia
aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von AutoLisp)

AutoLISP [ˈɑːtoʊˌlɪsp] ist ein Dialekt der Programmiersprache LISP und Bestandteil des verbreiteten CAD-Programmes AutoCAD.

Mit Hilfe von AutoLisp können Funktionen in einem AutoCAD-System hinzugefügt, gelöscht und geändert werden. Um dies zu gewährleisten, gibt es spezielle AutoLisp-Routinen, die direkt auf die AutoCAD-Datenbasis zugreifen können. Das sind im Wesentlichen Funktionen zur Behandlung von Koordinateneingaben, deren zeichnerische Umsetzung in CAD-Elemente, wie Linie, Kreis usw. möglich ist. Mit Hilfe von AutoLISP lassen sich komplexe Umgebungen zur Handhabung von AutoCAD, beispielsweise hinsichtlich der Anwendung von Normteilen, erstellen.

Hello World

[Bearbeiten | Quelltext bearbeiten]
 (defun c:HelloWorld()
     (princ "\nHello World")
 )

Beispiel: zum Zeichnen eines Rechtecks

[Bearbeiten | Quelltext bearbeiten]
  (defun c:recht2 ( / p1 laenge breite w p2 p3 p4)
   (setq p1 (getpoint "\nEinfügepunkt: "))
   (setq laenge (getdist p1 "\nLänge: "))
   (setq breite (getdist p1 "\nBreite: "))
   (setq w (getangle p1 "\nEinfügewinkel: "))
   (setq p2 (polar p1 w laenge))
   (setq p3 (polar p2 (+(/ pi 2)w) breite))
   (setq p4 (polar p3 (+ pi w) laenge))
   (command "linie" p1 p2 p3 p4 "s") 
   (princ)
 )

Beispiel: Ermittlung eines Abstandes in Autolisp

[Bearbeiten | Quelltext bearbeiten]
 (defun c:Distanz()
  (setq old_osmode (getvar "osmode"))
  (setvar "osmode" 1)
  (setq P01 (getpoint    "\nErster  Punkt:"))
  (setq Distanz (getdist P01 "\nZweiter Punkt:" ))
  (princ "\nDistanzwert: ")
  (princ Distanz)
  (princ "\n , zugreifen in AutoCAD mit !DISTANZ ")
  (setvar "osmode" old_osmode)
 )

Beispiel: Drehen von Objekten in Autolisp

[Bearbeiten | Quelltext bearbeiten]
 (defun c:verdreh (/ Drehpunkt Radius Auswahl Erster_Punkt)
  (setq Drehpunkt  (getpoint "\nDrehen mit dem Kreis <Zentrum des Bezugskreis>: "))
 (if Drehpunkt 
  (progn
   (setq Radius (abs (getdist Drehpunkt "\nRadius für den <Bezugskreis>:")))
   (if Radius
    (command "Kreis" Drehpunkt Radius )
   );end if Radius
  );end progn Drehpunkt
 );end if Drehpunkt
 (if Radius  
  (setq Auswahl (ssget  )  ) ;Wählen der Elemente zum Drehen 
 );end if Radius
 (if Auswahl 
  (progn
   (setq Erster_Punkt  (getpoint Drehpunkt "\nAusgangspunkt der Drehung [Schnittpunkt] mit dem <Bezugskreis>:"))
   (if Erster_Punkt
    (progn
     (command "drehen"  (ssget "V") ""  Drehpunkt "B" Drehpunkt Erster_Punkt pause nil)
     (command "Löschen" "L" "" )
     );end progn Erster_Punkt
    );end if Erster_Punkt
   );end progn Auswahl
  ); end if Auswahl
 ); Ende der Funktion verdreh
 (princ "\nVERDREH.LSP wurde geladen.." )
 (princ "\nStarten mit verdreh \n")
 (princ)

Beispiel: setzt Objekte auf den aktuellen Layer in AutoLisp

[Bearbeiten | Quelltext bearbeiten]
 ; Setzt gewählte Objekte auf den aktuellen Layer
 (defun c:selayer(/ ak_layer)
 (setq ak_layer (getvar "clayer"))
 (princ "\nObjekte setzen auf: <")
 (princ ak_layer)
 (princ "> alle Eigenschaften des Layers werden übernommen.")
 (command "_change" (ssget) "" "_p"  "_LA"  ak_layer  "_LT" "_bylayer"  "_C"  "_bylayer" "_S"  "1" "")
 )

Weblinks

[Bearbeiten | Quelltext bearbeiten]
  • AutoLisp FAQ (eng.)
  • CADwiesel.de - Lisp für ACAD Codeschnippsel und Downloads
  • Inoffizielle AutoCAD Hilfeseite auf cad.de
  • AutoLisp Tutorials (eng.)
Abgerufen von „https://de.teknopedia.teknokrat.ac.id/w/index.php?title=AutoLISP&oldid=164588778“
Kategorien:
  • Lisp
  • Skriptsprache

  • indonesia
  • Polski
  • العربية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصرى
  • Nederlands
  • 日本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українська
  • Tiếng Việt
  • Winaray
  • 中文
  • Русский
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id