AfraLISP - Learn AutoLISP for AutoCAD productivity

Learn AutoLISP for AutoCAD productivity

What is AutoLISP?

AutoLISP is a programming language designed specifically for use with the full version of AutoCAD (i.e. it does not work with AutoCAD LT). AutoLISP is one of a number of Application Programming Interfaces (APIs) built into AutoCAD but it is probably the easiest to use and therefore the most productive for the beginner. If you'd like to learn how to use AutoLISP to improve productivity, you're in the right place.

AfraLISP will help you get to grips with AutoLISP as quickly and easily as possible using some great tutorials for beginners. But the site also contains many intermediate and advanced AutoLISP tutorials to take you much further than the basics. In addition, AfraLISP provides DCL Tutorials (Dialog Control Language), Visual LISP tutorials, VBA Tutorials and AutoCAD customization tutorials in case you'd like to take your AutoLISP and AutoCAD programming to the next level.

Beginners Start Here

Featured Tutorials

Tip of the Day

Restoring a Circle

This routine will join 2 arcs back into a circle. It will also complete a circle from an Arc.

(defun c:rcirc (/ os pt2 a pt1 ra pt3)
	(setq os (getvar "osmode"))
	(setvar "osmode" 512)
	(setq pt2 (getpoint "\nPick one of the Arcs : "))
	(setq a (entget (ssname (ssget pt2) 0)))
	(setq pt1 (cdr (assoc 10 a)))
	(setq ra (cdr (assoc 40 a)))
	(command "erase" pt2 "")
	(setq pt3 (getpoint "\nPick other Arc : "))
	(setvar "osmode" os)
	(command "erase" pt3 "")
	(command "circle" pt1 ra)

Begin this routine with one or two arcs. Pick either arc. That arc will disappear. Pick the remaining arc if you started with two. If you started with only one arc, pick any blank space on the screen or press Enter. Now the circle will be restored or the single arc is turned into a complete circle.

Missed a Tip?

Did you miss yesterday's tip? Maybe you forgot to drop by or maybe you didn't visit over the weekend. If so, you can now see all the tips published during the past week.