autolisp programs
TRANSCRIPT
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 1/43
NAME
ROLL NO
PROGRAM 1(
defun c:PROG1()
(setq s1 (getreal "Enter length of 1st side: "))(setq s2 (getreal "Enter length of 2nd side: "))
(setq s3 (getreal "Enter length of 3rd side: "))
(cond ;For sorting given sides in ascending order (
(> s1 s2)
(setq temp1 s2)
(setq s2 s1)(setq s1 temp1)
)
(
(> s2 s3)(setq temp2 s3)
(setq s3 s2)(setq s2 temp2)
)
(
(> s1 s2)(setq temp3 s2)
(setq s2 s1)
(setq s1 temp3))
)(cond(
(> (+ s1 s2) s3) ;For checking condition for triangle
(setq pt1 (getpoint "Enter insertion point of triangle: "))
(setq pt2 (list (+ (car pt1) s1) (cadr pt1)))
(setq x (/ (+ (* s1 s1) (- (* s2 s2) (* s3 s3))) (* 2 s1))) ;x=(a^2 + b^2 - c^2)/(2a)
(setq z (- (* s2 s2) (* x x))) ;y=sqrt(b^2 - x^2)(setq y (sqrt z))
(setq pt3 (list (+ (car pt1) x) (+ (cadr pt1) y)))
(command "line" pt1 pt2 pt3 pt1 ""))
(
(<= (+ s1 s2) s3)(princ "These sides do not form a triangle")
)
)
)
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 2/43
****************OUTPUT******************
Command: PROG1
Enter length of 1st side: 5Enter length of 2nd side: 3
Enter length of 3rd side: 7
Enter insertion point of triangle:
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 3/43
NAME
ROLL NO
PROGRAM 2(
defun c:PROG2()
(setq c1 (getpoint "Select center of flange: "))(setq dia (getreal "Enter diameter of flange: "))
(setq pcd (getreal "Enter p.c.d: "))
(setq c2 (list (car c1) (+ (cadr c1) (/ pcd 2))))(setq rhole (getreal "Enter hole radius :"))
(setq n (getint "Enter no.of holes :"))
(command "circle" c1 (/ dia 2))
(command "circle" c2 rhole)(command "array" "l" "" "p" c1 n "360" "n")
(setq pt1 (list (- (car c1) (* dia 0.8)) (cadr c1)))
(setq pt2 (list (+ (car c1) (* dia 0.8)) (cadr c1)))
(command "line" pt1 pt2 "" )(setq pt3 (list (car c1) (- (cadr c1) (* dia 0.8))))
(setq pt4 (list (car c1) (+ (cadr c1) (* dia 0.8))))(command "line" pt3 pt4 "" )
)
******************OUTPUT******************
Command: PROG2Select center of flange: Enter diameter of flange: 20
Enter p.c.d: 12
Enter hole radius :0.5Enter no.of holes :8
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 4/43
NAME
ROLL NO
PROGRAM 3(
defun c:PROG3()
(setq pt1 (getpoint "Enter one endpoint of diagonal of quadrilateral: "))(setq pt3 (getpoint "Enter other endpoint of diagonal of quadrilateral: "))
(setq pt2 (list (car pt3) (cadr pt1)))
(setq pt4 (list (car pt1) (cadr pt3)))(setq x1 (- (car pt3) (car pt1)))
(setq x (abs x1))
(setq y1 (- (cadr pt3) (cadr pt1)))
(setq y (abs y1))(command "line" pt1 pt2 pt3 pt4 pt1 "")
(cond
(
(= x y)(princ "Quadrilateral is square")
)(
(/= x y)
(princ "Quadrilateral is rectangle")
))
(princ)
)***************OUTPUT*****************
Command: PROG3
Enter one endpoint of diagonal of quadrilateral:Enter other endpoint of
diagonal of quadrilateral:
Quadrilateral is rectangle
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 5/43
NAME
ROLL NO
PROGRAM 4(
defun c:PROG4()
(setq s1 (getreal "Enter length of 1st side: "))
(setq s2 (getreal "Enter length of 2nd side: "))(setq s3 (getreal "Enter length of 3rd side: "))
(if (> s1 s2) ;For sorting given sides in ascending order
(progn
(setq temp1 s2)(setq s2 s1)
(setq s1 temp1)) ()
)
(if (> s2 s3)
(progn(setq temp2 s3)
(setq s3 s2)
(setq s2 temp2)) ()
)
(if (> s1 s2)(progn
(setq temp3 s2)
(setq s2 s1)(setq s1 temp3)
) ()
)
(cond(
(> (+ s1 s2) s3)
(setq pt1 (getpoint "Enter insertion point of triangle: "))(setq pt2 (list (+ (car pt1) s1) (cadr pt1)))
(setq x (/ (+ (* s1 s1) (- (* s2 s2) (* s3 s3))) (* 2 s1)))
(setq z (- (* s2 s2) (* x x)))(setq y (sqrt z))
(setq pt3 (list (+ (car pt1) x) (+ (cadr pt1) y)))
(command "line" pt1 pt2 pt3 pt1 "")
(cond
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 6/43
(
(and (= s1 s2) (= s2 s3)) ;Condition for equilateral
(princ "Triangle is equilateral"))
(
(or (= s1 s2) (= s2 s3) (= s1 s3)) ;Condition for isosceles(princ "Triangle is isosceles")
)
(princ "Triangle is scalene"))
)
(
(<= (+ s1 s2) s3)(princ "These sides do not form a triangle")
)
)
)*******************OUTPUT*******************
C:PROG4Command: PROG4
Enter length of 1st side: 5
Enter length of 2nd side: 3
Enter length of 3rd side: 7Enter insertion point of triangle:
“Triangle is scalene”
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 8/43
NAME
ROLL NO
PROGRAM 6(
defun c:PROG6()
(setq a (entget (car (entsel "Select object: "))))
(cond(
(= (cdr (assoc 0 a)) "LINE")
(setq pt1 (cdr (assoc 10 a)))
(setq pt2 (cdr (assoc 11 a)))(princ "End coordinates are ")
(princ pt1)(princ pt2)
(setq len (distance pt1 pt2))
(princ "Length of line is ")
(princ len))
(
(= (cdr (assoc 0 a)) "CIRCLE")(setq c (cdr (assoc 10 a)))
(princ "Center of circle is ")
(princ c)(setq r (cdr (assoc 40 a)))
(princ "Radius of circle is ")
(princ r))
)
(princ)
)*************OUTPUT***************************
C:PROG6
Command: PROG6Select object:
Center of circle is (25.3331 13.5295 0.0)
Radius of circle is 6.15538
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 10/43
NAME
ROLL NO
PROGRAM 7(
defun c:PROG7()
(setq c (getpoint "Select center of circle: "))(setq r (getreal "Enter radius of circle: "))
(command "circle" c r)
(setq opt (getint "Select option for hatching 1 or 2 : "))(if (= opt 1)
(progn
(command "bhatch" "select")
(setq a (entsel "Select object to hatch: "))(command a "" "")
)
(progn
(command "bhatch" "internal" "")(setq b (getpoint "Select internal point for hatching: "))
(command b ""))
)
)
************OUTPUT********************Command: PROG7
Select center of circle:
Enter radius of circle: 5Select option for hatching 1 or 2 : 1
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 11/43
NAME
ROLL NO
PROGRAM 8(
defun c:PROG8()
(setq c1 (getpoint "Select center of arc: "))(setq pt1 (getpoint "Select start point of arc: "))
(setq pt2 (getpoint "Select end point of arc: "))
(command "arc" "c" c1 pt1 pt2)(setq ang (angle c1 pt1))
(princ "Included angle is ")
(princ ang)
(princ)(setq r (distance c1 pt1))
(setq angd (/ ang 5))
(setq i 1)
(setq ang1 angd)(command "line" c1 pt1 "")
(while (<= i 6)
(setq pt1 (polar c1 ang1 r))
(command "line" c1 pt1 "")
(setq ang1 (+ ang1 angd))(setq i (+ i 1))
)
(command "line" c1 pt2 ""))
*******************OUTPUT***************************
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 12/43
NAME
ROLL NO
PROGRAM 9(
defun c:PROG9()
(setq a (entget (car (entsel "Select circle: "))))(setq c (cdr (assoc 10 a)))
(setq r (cdr (assoc 40 a)))
(setq a (entget (car (entsel "Select square: "))))(setq pt1 (cdr (assoc 10 a)))
(setq dis (distance pt1 c))
(if (= dis r)
(princ "Circle is circumscribing square ")(princ "Circle is inscribed in square ")
)
(princ)
)******************OUTPUT*********************
Command: PROG9Select circle: Select square: Circle is circumscribing square
Command: PROG9
Select circle: Select square: Circle is inscribed in square
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 13/43
NAME
ROLL NO
PROGRAM 10(
defun c:PROG10()
(setq pt1 (getpoint "Select starting point of line: "))(setq pt2 (getpoint "Select endpoint of line: "))
(command "line" pt1 pt2 "")
(setq pt3 (getpoint "Select a point on the line: "))(setq x (- (car pt2) (car pt1)))
(setq y (- (cadr pt2) (cadr pt1)))
(setq mid (list (+ (car pt1) (/ x 2)) (+ (cadr pt1) (/ y 2))))
(setq a (- (car mid) (car pt1)))(setq b (- (cadr mid) (cadr pt1)))
(setq dismid (sqrt (+ (* a a) (* b b)))) ;Distance of midpt w.r.t 1st point
(setq c (- (car pt3) (car pt1)))
(setq d (- (cadr pt3) (cadr pt1)))(setq dispt3 (sqrt (+ (* c c) (* d d)))) ;Distance of selected pt w.r.t 1st point
(cond(
(> dismid dispt3)
(princ "Selected point is to the left of midpoint of line")
)(
(< dismid dispt3)
(princ "Selected point is to the right of midpoint of line"))
(
(= dismid dispt3)(princ "You have selected the midpoint")
)
))
*****************OUTPUT************************
Command: PROG10
Select starting point of line:Select endpoint of line:
Select a point on the line:
Selected point is to the right of midpoint of line
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 14/43
NAME
ROLL NO.
PROGRAM 11(
defun c:PROG11_2()
(setq x (getint "Enter series variable: "))(setq n (getint "Enter length of series: "))
(setq i 1)
(setq sum 0)(
while (<= i n)
(setq sum1 (* (expt (- 0 1) (+ i 1)) (expt x i)))
(setq sum (+ sum sum1))(setq i (+ i 1))
)
(princ "Sum is ")
(princ sum)(princ)
)*************OUTPUT*************************
C:PROG11_2
Command: PROG11_2
Enter series variable: 2Enter length of series: 4
Sum is -10
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 15/43
NAME
ROLL NO
PROGRAM 12(
defun c:PROG12()
(setq pt1 (getpoint "Enter start point: "))(setq n (getreal "Enter no. of forces: "))
(setq a pt1)
(setq i 1)(command "pline" pt1)
(
while (<= i n)
(setq mag (getreal "Enter magnitude of force: "))(setq ang (getreal "Enter angle of force: "))
(setq pt2 (polar pt1 (* (/ pi 180) ang) mag))
(command pt2)
(setq pt1 pt2)(setq i (+ i 1))
)(command a "")
(setq mag1 (distance a pt2))
(setq ang1 (angle a pt2))
(prompt "Magnitude = ")(princ mag1)
(prompt "Angle = ")
(princ ang1)(princ)
)
*****************OUTPUT******************Command: PROG12
Enter start point:
Enter no. of forces: 2Enter magnitude of force: 30
Enter angle of force: 45
Enter magnitude of force: 30
Enter angle of force: 120Magnitude = 47.6012 Angle = 1.4399
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 16/43
NAME
ROLL NO
PROGRAM 13(
defun c:PROG13()
(setq pt1 (getpoint "Enter start point: "))(setq n (getint "Enter no. of sides: "))
(setq l (getreal "Enter length of sides: "))
(setq angv (/ 360 n))(setq ang 0)
(setq i 1)
(setq a pt1)
(command "pline" pt1 )(
while (<= i n)
(setq pt2 (polar pt1 (* ang (/ pi 180)) l))
(command pt2)(setq ang (+ ang angv))
(setq pt1 pt2)(setq i (+ i 1))
)
(command a "")
)*********************OUTPUT***********************
C:PROG13
Command: PROG13Enter start point: Enter no. of sides: 5
Enter length of sides: 10
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 17/43
NAME
ROLL NO
PROGRAM 14(
defun c:PROG14_2()
(setq c1 (getpoint "Select center of circle: "))(setq r (getreal "Enter radius of circle: "))
(setq pt1 (polar c1 (/ (* pi 3) 2) r))
(command "point" pt1)(command "array" "l" "" "p" c1 "720" "" "n")
)
******************OUTPUT******************
Command: PROG14_2Select center of circle:
Enter radius of circle: 5
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 18/43
NAME
ROLL NO
PROGRAM 16(
defun c:PROG16()
(setq a (entget (car (entsel "Select circle: "))))(setq c (cdr (assoc 10 a)))
(setq r (cdr (assoc 40 a)))
(setq ans y)(
while (/= ans "n")
(setq c2 (getpoint "\nSelect center for circle to move: "))
(command "circle" c2 r)(setq ans (getstring "Do you want to continue: y / n : "))
)
(princ)
)*************************OUTPUT**********************
Command: PROG16Select circle:
Select center for circle to move:
Do you want to continue: y / n : y
Select center for circle to moveDo you want to continue: y / n : n
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 19/43
NAME
ROLL NO
PROGRAM 17(
defun c:PROG17()
(setq x (getreal "Enter a number: "))(setq a (list x (* 4 x)))
(command "pline" a)
(while (>= x 0.1)
(setq a (list x (* 4 x)))
(command a)
(setq x (- x 0.1)))
(command "")
)
*********************OUTPUT********************C:PROG17
Command: PROG17Enter a number: 6
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 20/43
NAME
ROLL NO
PROGRAM 18(
defun c:PROG18()
(setq pt1 (getpoint "Select insertion point: ")) ;1st heading(setq pt2 (polar pt1 0 30)) ;2nd heading
(setq pt3 (polar pt1 0 60)) ;3rd heading
(setq pt4 (polar pt1 0 90)) ;4th heading(setq pt5 (polar pt1 0 120)) ;5th heading
(setq pt6 (polar pt5 0 30)) ;Line end for row of box
(setq pt7 (polar pt1 (/ pi 2) 100)) ;Line start for column of box
(command "text" (polar pt1 (/ pi 4) 8) 2.5 0 "Part No." "" "") ;Polar command for spacing fromof box
(command "text" (polar pt2 (/ pi 4) 8) 2.5 0 "Description." "" "")
(command "text" (polar pt3 (/ pi 4) 8) 2.5 0 "Material." "" "")
(command "text" (polar pt4 (/ pi 4) 8) 2.5 0 "Qty." "" "")(command "text" (polar pt5 (/ pi 4) 8) 2.5 0 "Remarks." "" "")
(command "line" pt1 pt6 "")(command "array" "l" "" "r" 9 1 12.5)
(command "line" pt1 pt7 "")
(command "array" "l" "" "r" 1 6 30)
)*******************OUTPUT************************
C:PROG18
Command: PROG18Select insertion point:
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 21/43
NAME
ROLL NO
PROGRAM 19(
defun c:PROG19()
(setq a (entget (car (entsel "Select circle: "))))(setq c (cdr (assoc 10 a)))
(setq r (cdr (assoc 40 a)))
(setq c2 (getpoint "\nSelect center for circle to move: "))(command "circle" c2 r)
)
****************OUTPUT**********************
C:PROG19Command: PROG19
Select circle:
Select center for circle to move:
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 22/43
NAME
ROLL NO
PROGRAM 20(
defun c:PROG20()
(setq pt1(list 2 5))(setq pt2(list 3 6))
(setq pt3(list 8 7))
(setq pt4(list 5 8))(command "pline"pt1 pt2 pt3 pt4 "")
(command "spline"pt1 pt2 pt3 pt4"" "" "" )
)
***************OUTPUT*********************
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 23/43
NAME
ROLL NO
PROGRAM 21(
defun c:PROG21()
(setq a (entget (car (entsel "Select line: "))))(setq pt1 (cdr (assoc 10 a)))
(setq pt2 (cdr (assoc 11 a)))
(princ "End coordinates are ")(princ pt1)
(princ pt2)
(setq len (distance pt1 pt2))
(princ "Length of line is ")(princ len)
(princ)
)
******************OUTPUT*********************C:PROG21
Command: PROG21Select line: End coordinates are (-19.0157 20.4025 0.0)(-14.477 29.4409
0.0)Length of line is 10.1139
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 25/43
NAME
ROLL NO
PROGRAM 23(
defun c:PROG23()
(setq a (entget (car (entsel "Select object: "))))(setq type (cdr (assoc 0 a)))
(princ "Entity type is ")
(princ type)(princ)
)
**********************OUTPUT*******************
C:PROG23Command: PROG23
Select object:
Entity type is CIRCLE
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 26/43
PROG.NO:24
NAME:
ROLL NO:
(defun C:RECT()
(setq p1(getpoint "\nEnter the first corner : ") p2(getpoint "\nEnter the second corner : ")
p3(list (car p2) (cadr p1))
p4(list (car p1) (cadr p2)))
(command"LINE" p1 p3 p2 p4 p1 "")
(princ len )
)***********************************OUTPUT*****************************
Command: RECT
Enter the first corner : 9,9
Enter the second corner : 20,20
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 27/43
PROG.NO:25
NAME:
ROLL NO:
(defun c:triangle()
(setq p1 (getpoint "\n Enter the first point of the triangle: "))
(setq p2 (getpoint "\n Enter the second point of the triangle: "))(setq p3 (getpoint "\n Enter the third point of the triangle: "))
(command "line" p1 p2 p3 "c")
)
****************************OUTPUT*******************************
Command: TRIANGLEEnter the first point of the triangle: 10,20
Enter the second point of the triangle:30,60
Enter the third point of the triangle: 20,80
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 28/43
PROG.NO:26
NAME:
ROLL NO:
(defun c:hexa()
(setq p1(getpoint "enter start point"))
(setq l(getreal "enter length of sides"))(setq a p1)
(setq i 1)
(setq angv(/ 360 6))
(setq ang 0)(command "pline" p1)
(while (<= i 6)
(setq p2(polar p1(* (/ pi 180) ang)1))
(command p2)(setq ang(+ ang angv))
(setq p1 p2)(setq i(+ i 1))
)
(command a "")
(princ))
****************************OUTPUT********************************
Command: HEXA
enter start point10,10
enter length of sides35
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 29/43
PROG.NO:27
NAME:ROLL NO:
(defun C:string()
(setq str1 "college")(setq str2 "P")
(setq str4 (substr str1 1 4))
(princ str4)
(setq int1 (strlen str4))(princ int1)
(setq str5 (strcat str4 "" str2))
(princ str5)
(princ))
******************************OUTPUT**********************************
Command: STRING
coll4collP
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 30/43
PROG.NO:28
NAME:
ROLL NO:
(defun c:rect()
(setq a(getpoint "\n Enter Insertion Point: ")
l(getreal "\n Enter Length of rectangle: ") br(getreal "\n Enter Breadth of rectangle: ")
)
(setq b(list (+ (car a) br) (cadr a))c(list (+ (car a) br) (+ (cadr a) l))
d(list (car a) (+ (cadr a) l))
)
(setq p(list (+ (car a) (/ br 2.0)) (cadr a))
q(list (+ (car a) br) (+ (cadr a) (/ l 2.0)))r(list (+ (car a) (/ br 2.0)) (+ (cadr a) l))
s(list (car a) (+ (cadr a) (/ l 2.0)))
)
(command "pline" a b c d a ""
"pline" p q r s p ""
)
(setq ent(ssget "x"))
(command "hatch" "" "2" "" ent ""))
*******************************OUTPUT******************************Command: RECT
Enter Insertion Point: 10,30
Enter Length of rectangle: 40
Enter Breadth of rectangle: 60
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 32/43
PROG.NO:29
NAME:ROLL NO:
(defun c:maths()
(setq x (getreal "\n Enter value of x: "))(setq y (- (expt x 8) (/ 4 (expt x 9)) (/ 3 x) 4))
(princ "The answer is: ")
(princ y)
)
**************************OUTPUT*****************************
Command: MATHS
Enter value of x: 10
The answer is: 1.0e+0081.0e+008
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 33/43
PROG.NO:30
NAME:ROLL NO:
(defun c:pr30()
(setq pt1(getpoint "\n Enter first point: ")
H(getreal "Enter height of equilateral triangle: ")L(/ H (sin (/ pi 3)))
A(* 0.5 H L )
P(* 3 L)
pt2(polar pt1 0 L)pt3(polar pt1 (/ pi 3) L)
)
(command "pline" pt1 pt2 pt3 "C")
(print L)(print A)
(print P))
**************************OUTPUT*****************************
Enter first point: 9,9
Enter height of equilateral triangle: 78.0829
28.2902
24.2487 24.2487
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 34/43
NAME
ROLL NO
PROGRAM 31(
defun c:PROG31()
(setq pt1 (getpoint "\n enter 1st point"))(setq H (getreal "\n enter height of triangle"))
(setq B (getreal "\n enter base of triangle"))
(setq L (sqrt (+ (expt H 2) (expt (/ B 2 ) 2))))(princ "Length is ")
(princ L)
(setq A (* 0.5 B H))
(princ "Area is ")(princ A)
(setq P (+ (* L 2) B))
(princ "Perimeter is ")
(princ P)(setq pt2(polar pt1 0 B))
(setq pt3(list(+ (nth 0 pt1) (/ B 2)) (+ (nth 1 pt1) H)))(command "pline" pt1 pt2 pt3 pt1 "")
(princ)
)
***************OUTPUT*********************C:PROG31
Command: PROG31
Enter 1st pointEnter height of triangle25
Enter base of triangle10
Length is 25.4951Area is 125.0
Perimeter is 60.9902
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 35/43
NAME
ROLL NO
PROGRAM 32(
defun c:PROG32()
(setq pt1 (getpoint"enter 1st point"))(setq D (getreal"enter diagonal length"))
(setq l (/ D (sqrt 2)))
(princ "Length of side ")(princ l)
(setq A (expt l 2))
(princ "Area is ")
(princ A)(setq p (* 4 l))
(princ "Perimeter is ")
(princ p)
(setq pt2 (polar pt1 0 l))(setq pt3 (polar pt2 (/ pi 2) l))
(setq pt4 (polar pt3 pi l))(command "pline" pt1 pt2 pt3 pt4 pt1 "")
(princ)
)
*************OUTPUT**********************C:PROG32
Command: PROG32
Enter 1st pointEnter diagonal length20
Length of side 14.1421
Area is 200.0Perimeter is 56.5685
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 36/43
NAMEROLL NO
PROGRAM 33
(defun c:PROG33()
(setq a (getreal "enter area"))
(setq pt1(getpoint"enter start point"))(setq l(sqrt(/ (* 2 a) (sin (/ pi 3)))))
(princ "Length is ")
(princ l)
(setq p(* 3 l))(princ "Perimeter is ")
(princ p)
(setq pt2(polar pt1 0 l))
(setq pt3(polar pt1 (/ pi 3) l))(command "pline" pt1 pt2 pt3 pt1 "")
)**************OUTPUT*********************
C:PROG33
Command: PROG33
Enter area : 45
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 37/43
PROG.NO:34 NAME:
ROLL NO:
(defun c:PR34()(setq O(getpoint "\n enter centre")
A(getreal "\n enter area of circle")
R(sqrt (/ A pi))
P(* 2 pi R))
(command "circle" O R "")
(print P)
(print R))
**************************OUTPUT*****************************enter centre10,10
enter area of circle40
22.42
3.56825 3.56825
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 38/43
NAMEROLL NO
PROGRAM 35
(defun c:PROG35()
(setq c (getpoint "Select center of nut: "))
(setq r (getreal "Enter radius of nut: "))(command "polygon" "6" c "i" r)
(command "circle" c r)
)
****************OUTPUT*******************Command: PROG35
Select center of nut:
Enter radius of nut: 5
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 39/43
PROG.NO:36 NAME:
ROLL NO:
(defun C:dist()(setq A(getpoint "\n enter first point:")
B(getpoint "\n enter second point:")
L(distance A B)
)(print L)
)
(defun C:ang()
(setq A(getpoint "\n enter first point:")B(getpoint "\n enter second point:")
L(angle A B))
(print L)
)
**********************************OUTPUT***************************************
Command: dist
Specify first point: 10,20
Specify second point: 20,30Distance = 14.1421, Angle in XY Plane = 45, Angle from XY Plane = 0
Delta X = 10.0000, Delta Y = 10.0000, Delta Z = 0.0000
Command: ang
enter first point:10,20
enter second point:20,30
0.785398 0.785398
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 40/43
PROG.NO:37 NAME:
ROLL NO:
(defun C:prg37()(setq A(GETSTRING "\n Enter X cordinate: ")
B(GETSTRING "\n ENTER Y cordinate: ")
C(atof A)
D(atof B)P(list C D)
Q(GETSTRING "\n Enter X cordinate: ")
R(GETSTRING "\n ENTER Y cordinate: ")
T(atof Q)U(atof R)
J(list T U)H(list T D)
G(list C U)
)
(command "pline" P H J G P ""))
********************************OUTPUT*******************************
Command: prg37Enter X cordinate: 30
ENTER Y cordinate: 50
Enter X cordinate: 20ENTER Y cordinate: 45
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 41/43
PROG.NO:38 NAME:
ROLL NO:
(defun C:prg38()(setq A(GETSTRING "\N Enter X cordinate: ")
B(GETSTRING "\N ENTER Y cordinate: ")
C(atof A)
D(atof B)P(list C D)
L(getreal "\n Enter length: ")
Q(polar P 0.0 L)
R(polar Q (/ pi 3.0) L)S(polar R (* 2 (/ pi 3.0)) L)
T(polar S pi L)W(polar T (* 4 (/ pi 3.0)) L)
)
(command "line" P Q R S T W P "")
)
**************************OUTPUT****************************
Command: PRG38Enter X cordinate: 10
ENTER Y cordinate: 20
Enter length: 30
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 42/43
PROG.NO:39
NAME:
ROLL NO:
(defun C:prg39()
(setq A(GETSTRING "\N Enter X cordinate: ")
B(GETSTRING "\N ENTER Y cordinate: ")C(atof A)
D(atof B)
P(list C D)
L(getreal "\n Enter length: ")Q(polar P 0.0 L)
R(polar Q (* 2 (/ pi 5.0)) L)
S(polar R (* 4 (/ pi 5.0)) L)
T(polar S (* 6 (/ pi 5.0)) L))
(command "line" P Q R S T P ""))
**********************************OUTPUT******************************
Command: PRG39
N Enter X cordinate: 10
N ENTER Y cordinate: 30Enter length: 60
8/3/2019 Autolisp Programs
http://slidepdf.com/reader/full/autolisp-programs 43/43
PROG.NO:40
NAME:
ROLL NO:
(defun c:PR40()
(textscr)(setq r (getreal "\n Enter a real value: "))
(setq j (getstring "\n Enter your first name: "))
(setq rcon (rtos r))(setq jlen (strlen j))
(setq jstr (itoa jlen))
(setq a "2")
(setq b "3")(setq i1 (atoi a))
(setq r1 (atof b))
(setq res (* i1 r1))
(print (strcat "The value of real number you entered is " rcon))(print (strcat "Your name contains " (strcat jstr " letters")))
(print (strcat (strcat "The multiplication of " a) (strcat " and " b)))(print res)
)
**********************************OUTPUT******************************
Enter a real value: 50Enter your first name: AMEYA
"The value of real number you entered is 4'-2.0000\""
"Your name contains 5 letters""The multiplication of 2 and 3"
6.0 6.0