(defun C:okvir() (setvar "CMDECHO" 0) (princ "\nUSVOJENA razmera crtanja je:< 1 ACAD jedinica = 1 metar >") (princ "\n ") (setq rzac (getreal "\nRazmera STAMPANJA CRTEZA ?<1: ????>; <1000>:")) (if (= rzac nil) (setq rzac 1000)) (setq izbor "") (initget 1 "A0 A1 A2 A3 A4 A4Prod Proiz") (setq izbor (getkword "\nVELICINA OKVIRA: /////_1200/

roizvoljan ?:")) (cond ((= izbor "A0") (setq Aastr 840 Bbstr 1188) (crtajo)) ((= izbor "A1") (setq Aastr 840 Bbstr 594) (crtajo)) ((= izbor "A2") (setq Aastr 420 Bbstr 594) (crtajo)) ((= izbor "A3") (setq Aastr 420 Bbstr 297) (crtajo)) ((= izbor "A4") (setq Aastr 210 Bbstr 297) (crtajo)) ((= izbor "A4Prod") (setq Aastr 1200 Bbstr 297) (crtajo)) ((= izbor "Proiz") (setq Aastr (getreal "\nDuzina okvira na papiru?:") Bbstr (getreal "\nVisina okvira na papiru?:")) (crtajo)) ) ) (defun crtajo() (setq scala (/ rzac 1000.0) astr (* Aastr scala) bstr (* Bbstr scala) za185 (* 180.00 scala) za5 (* 5.00 scala) za15 (* 15.00 scala) prazno (* (- Bbstr 30) scala) ) (command "LAYER" "M" "okvir" "C" "7" "" "" ) (setq dl (getpoint "\nPokazite donji levi ugao ukvira:?")) (setq dl1 (polar dl 0 astr )) (setq dl2 (polar dl1 (* pi 0.5) bstr)) (setq dl3 (polar dl2 pi astr )) (command "pline" dl dl1 dl2 dl3 "close") ; (command "zoom" "e") ;iscrtan spoljni okvir (setq veltxt (* 2 scala)) (setq dlth (polar dl (* 1.5 pi) (* veltxt 2))) (setq dltv (polar dl (* 1.0 pi) (* veltxt 2))) (setq duzina (strcat "DUZINA PAPIRA = " (rtos Aastr 2 0) " mm " "R {tampanja = 1: " (rtos rzac 2 0))) (setq visina (strcat "VISINA PAPIRA = " (rtos Bbstr 2 0) " mm ")) (COMMAND "TEXT" dlth veltxt "0" duzina) (COMMAND "TEXT" dltv veltxt "90" visina) (command "LAYER" "M" "uokvir" "C" "2" "" "" ) (setq dl (polar dl 0 (* 25 SCALA))) (setq dl (polar dl (* pi 0.5) (* 5 SCALA))) (setq dl1 (polar dl1 pi (* 5 SCALA))) (setq dl1 (polar dl1 (* pi 0.5) (* 5 SCALA))) (setq dl2 (polar dl2 pi (* 5 SCALA))) (setq dl2 (polar dl2 (* pi 1.5) (* 5 SCALA))) (setq dl3 (polar dl3 0 (* 25 SCALA))) (setq dl3 (polar dl3 (* pi 1.5) (* 5 SCALA))) (command "pline" dl dl1 dl2 dl3 "close") ;iscrtan unutrasnji okvir (setq dl6 (polar dl1 pi za185)) (setq dl6 (polar dl6 (* pi 1.5) za5)) (setq dl7 (polar dl6 (* pi 0.5) za15)) (setq dl8 (polar dl7 (* pi 0.5) prazno)) (setq dl9 (polar dl8 (* pi 0.5) za15)) (setq hor (distance dl dl1)) ; povr{ina unutar okvira (setq ver (distance dl1 dl2)) (if (> ver (* 287 SCALA)) (odrezi)) ;iscrtavanje pomocne mreze za crtanje (setq izbor "") (initget "Ne Da") (setq izbor (getkword "\nIscrtavanje pomocne mreze a / e ; ")) (cond ((= izbor "Da") (pommre))) ; (setq komlis (getint "\nKoliko listova da nacrtam:? <<1>>")) ; (if (= komlis nil) (setq komlis 1)) ; (setq dl4 (polar dl1 pi (+ hor (* 30 SCALA)))) ; (setq dl4 (polar dl4 (/ pi 2) (+ ver (* 15 SCALA)))) ; (setq korak (* (+ ver (* 60 SCALA)) -1.)) ; (if (> komlis 1) ; (command "array" "c" dl1 dl4 "" "r" komlis "1" korak)) ; (command "zoom" "e") ; (command "zoom" "0.8X") (princ) ) (defun odrezi() (setq pooc (polar dl (/ pi 2) (* 292 SCALA))) (command "line" pooc (polar pooc pi (* 25 SCALA)) "") (if (> Aastr 210) (progn (command "line" dl6 dl7 "") (command "line" dl8 dl9 "") ) ) ) (defun pommre() (command "LAYER" "M" "mreza" "C" "6" "" "L" "dot" "" "") ; (command "LTSCALE" "3") (setq brver (+ 1 (fix (/ hor (* 50 SCALA))))) (setq brhor (+ 1 (fix (/ ver (* 50 SCALA))))) (setq hor1 (/ (rem hor (* 50 SCALA)) 2)) (setq dl (polar dl 0 hor1)) (setq dl (polar dl (/ pi 2) (* 10 SCALA))) (command "line" dl (polar dl (/ pi 2) (- ver (* 20 SCALA))) "") (setq mreza (* 50 SCALA)) (command "array" "last" "" "r" "1" brver mreza) ; (command "array" dl "" "r" "1" brver "50") (setq ver1 (/ (rem ver (* 50 SCALA)) 2)) (setq dl3 (polar dl3 0 (* 10 SCALA))) (setq dl3 (polar dl3 (* pi 1.5) ver1)) (command "line" dl3 (polar dl3 0 (- hor (* 20 SCALA))) "") (command "array" "last" "" "r" brhor "1" (- 0.0 mreza)) ; (command "array" dl3 "" "r" brhor "1" "-50") )