Advertisement
Guest User

Untitled

a guest
May 29th, 2016
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.19 KB | None | 0 0
  1. (defun duzinaLinije(pt1 pt2)
  2.  
  3.  
  4.   (setq x1 (car pt1))
  5.  
  6.   (setq y1 (cadr pt1))
  7.  
  8.   (setq x2 (car pt2))
  9.  
  10.   (setq y2 (cadr pt2))
  11.  
  12.   (setq a (- x2 x1))
  13.  
  14.  (setq b (- y2 y1))
  15.  
  16.  (setq c (sqrt (+ (* a a) (* b b))))
  17.  
  18.  
  19. )
  20.  
  21.  
  22.  
  23. ;;;(setq ptA(getpoint "Odaberite prvu tacku"))
  24.  
  25. ;;;(setq ptB(getpoint "Odaberite drugu tacku"))
  26.  
  27. ;;;(print (duzinaLinije ptA ptB))
  28.  
  29.  
  30.  
  31. (defun kvadrat ()
  32.  
  33.  (setq ptGoreLevo (getpoint "Odaberite tacku gore levo"))
  34.  
  35.  (setq a (getint "Unesite duzinu stranice"))
  36.  
  37.  (setq xGoreLevo (car ptGoreLevo))
  38.  
  39.  (setq yGoreLevo (cadr ptGoreLevo))
  40.   (if (>= a 0)
  41.  
  42.    (;uslov ispunjen
  43.  
  44.  
  45.      (command "rectang" ptGoreLevo (list (+ xGoreLevo a) (- yGoreLevo a)))
  46.      (setq obimPovrsina (getstring "Da li zelite da izracunate obim i povrsinu kvadrata [Da/Ne]"))
  47.  
  48.           (if (= obimPovrsina "D")
  49.  
  50.        (alert (strcat "Povrsina kvadrata je: "
  51.              (rtos (* a a) 2 0) "\nObim kvadrata je: " (rtos (* 4 a) 2 0)))
  52.    
  53.       )
  54.    
  55.    )
  56.  
  57.     ;uslov nije ispunjen
  58.  
  59.    (alert "Duzina stranice mora biti veca od nule!")
  60.  
  61.   )
  62. )
  63.  
  64.  
  65.  
  66.  
  67. (defun pravougaonik ()
  68.  
  69.  (setq ptGoreLevo (getpoint "Odaberite tacku gore levo"))
  70.  
  71.   (setq a (getint "Unesite duzinu pravougaonika"))
  72.  
  73.   (setq b (getint "Unesite sirinu pravougaonika"))
  74.  
  75.   (setq xGoreLevo (car ptGoreLevo))
  76.  
  77.   (setq yGoreLevo (cadr ptGoreLevo))
  78.  
  79.  
  80.     (if (and (>= a 0) (>= b 0))
  81.  
  82.     (;uslov ispunjen
  83.  
  84.  
  85.        (command "rectang" ptGoreLevo (list (+ xGoreLevo a) (- yGoreLevo b)))
  86.         (setq obimPovrsina
  87.       (getstring "Da li zelite da izracunate obim i povrsinu pravougaonika [Da/Ne]"))
  88.  
  89.            (if (= obimPovrsina "D")
  90.  
  91.          (alert
  92.                (strcat "Povrsina pravougaonika je: "
  93.                  (rtos (* a b) 2 0) "\nObim pravougaonika je: " (rtos (+ a a b b) 2 0)))
  94.  
  95.              )
  96.  
  97.     )
  98.    
  99.     (alert "Duzina stranice mora biti veca od nule!") ;uslov nije ispunjen
  100.  )
  101.  
  102. )
  103.  
  104.  
  105.  
  106. (defun trougao ()
  107.  
  108.  (setq ptA(getpoint "Odaberite prvo teme trougla"))
  109.  
  110.  (setq ptB(getpoint "Odaberite drugo teme trougla"))
  111.  
  112.  (setq ptC(getpoint "Odaberite trece teme trougla"))
  113.  
  114.   (setq xA (car ptA))
  115.  
  116.   (setq yA (cadr ptA))
  117.  
  118.   (setq xB (car ptB))
  119.  
  120.   (setq yB (cadr ptB))
  121.  
  122.   (setq xC (car ptC))
  123.  
  124.   (setq yC (cadr ptC))
  125.  
  126.  
  127.    (command "line" ptA ptB "")
  128.  
  129.    (command "line" ptB ptC "")
  130.  
  131.    (command "line" ptC ptA "")
  132.  
  133.  
  134.  (setq obim (getstring "Da li zelite da izracunate obim trougla [Da/Ne]"))
  135.  
  136.    (if (= obim "D")
  137.    
  138.       (alert (strcat "Obim trougla je: " (rtos (+ (duzinaLinije ptA ptB) (duzinaLinije ptB ptC) (duzinaLinije ptC ptA)) 2 2)))
  139.  
  140.    )
  141.  
  142. )
  143.  
  144.  
  145.  
  146.  
  147. (defun crtanje ()
  148.  
  149.  
  150.  (setq opcija (getstring "Odaberite oblik za crtanje [Kvadrat/Pravougaonik/Trougao]"))
  151.  
  152.   (if (= opcija "K")
  153.  
  154.     (kvadrat)
  155.  
  156.  )
  157.  
  158. (if (= opcija "P")
  159.  
  160.   (pravougaonik)
  161.  
  162.  )
  163.  
  164.  (if (= opcija "T")
  165.  
  166.   (trougao)
  167.  
  168.  )
  169.  
  170.  
  171. )
  172.  
  173. ;(crtanje)
  174.  
  175.  
  176. (defun krug (ptPocetna)
  177.   (setq x (car ptPocetna))
  178.   (setq y (cadr ptPocetna))
  179.   (setq r (getint "Unesite poluprecnik kruga: "))
  180.   (command "circle" ptPocetna r)
  181.   (setq x2 (+ x r))
  182.   (setq ptPocetna (list x2 y))
  183.   )
  184.  
  185. (defun luk (ptPocetna)
  186.   (setq x (car ptPocetna))
  187.   (setq y (cadr ptPocetna))
  188.   (setq pt2 (getpoint "Odaberite drugu tacku:"))
  189.   (setq pt3 (getpoint "Odaberite trecu tacku:"))
  190.   (command "arc" ptPocetna pt2 pt3)
  191.   (setq ptPocetna pt3)
  192.   )
  193.  
  194. (defun linija (ptPocetna)
  195.   (setq x (car ptPocetna))
  196.   (setq y (cadr ptPocetna))
  197.   (setq pt2 (getpoint "Odaberite drugu tacku:"))
  198.   (command "line" ptPocetna pt2 "")
  199.   (setq ptPocetna pt2)
  200.   )
  201.  
  202.  
  203. (defun kvadrat (ptPocetna)
  204.   (setq x (car ptPocetna))
  205.   (setq y (cadr ptPocetna))
  206.   (setq a (getint "Odaberite duzinu stranice kvadrata: "))
  207.   (command "rectang" ptPocetna (list (+ x a) (- y a)))
  208.   (setq x2 (+ x a))
  209.   (setq ptPocetna (list x2 y))
  210.   )
  211.  
  212.  
  213. (defun prav (ptPocetna)
  214.   (setq x (car ptPocetna))
  215.   (setq y (cadr ptPocetna))
  216.   (setq a (getint "Odaberite duzinu stranice pravougaonika: "))
  217.   (setq b (getint "Odaberite sirinu stranice pravougaonika"))
  218.   (command "rectang" ptPocetna (list (+ x a) (- y b)))
  219.   (setq x2 (+ x a))
  220.   (setq ptPocetna (list x2 y))
  221.   )
  222.  
  223.  
  224. (defun trougao (ptPocetna)
  225.   (setq x (car ptPocetna))
  226.   (setq y (cadr ptPocetna))
  227.   (setq pt2 (getpoint "Odaberite drugu tacku:"))
  228.   (setq pt3 (getpoint "Odaberite trecu tacku:"))
  229.   (command "line" ptPocetna pt2 "")
  230.   (command "line" ptPocetna pt3 "")
  231.   (command "line" pt2 pt3 "")
  232.   )
  233.  
  234.  
  235.  
  236.  
  237. (defun oblici ()
  238.   (setq izbor "D")
  239.   (setq ptPocetna (getpoint "Odaberite prvu tacku: "))
  240.   (while (= izbor "D")
  241.    
  242.       (setq figura (getstring "Koju figuru zelite da nacrtate? [Krug/Luk/linijU/kVadrat/Pravougaonik/Trougao]"))
  243.       (if (= figura "K")
  244.       (krug ptPocetna)
  245.     )
  246.       (if (= figura "L")
  247.       (luk ptPocetna)
  248.     )
  249.       (if (= figura "U")
  250.       (linija ptPocetna)
  251.     )
  252.       (if (= figura "V")
  253.       (kvadrat ptPocetna)
  254.     )
  255.       (if (= figura "P")
  256.       (prav ptPocetna)
  257.     )
  258.       (if (= figura "T")
  259.       (trougao ptPocetna)
  260.     )
  261.  
  262.     (setq provera (getstring "Zelite li jos crtati ? [Da/Ne]"))
  263.     (if (= provera "D")
  264.       (setq izbor "D")
  265.       )
  266.     (if (= provera "N")
  267.       (setq izbor "N")
  268.       )
  269.     )
  270.   )
  271.  
  272. (oblici)
  273.  
  274.  
  275. ;BUG
  276. (command "circle" "0,0" "1")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement