Quote Originally Posted by dial.lsp
Code:
(defun c:star()  (setq dir "D:\\CHEMERIS\\Pog\\")
  ;(setq dir "e:\\Kolesov\\")




  (data)
  (dial)
  (if (= st_dl 2)
    (progn
      (load (strcat dir "autolisp_val.lsp"))
      (c:autolisp_VAL)
  ))
  (if (= st_dl 2) (Vinoski))
  
  (if (= st_dl 3) (3d))


  (princ)
) 
;---------------------------------------------------
(defun dial()
  (setq rf (load_dialog (strcat dir "Dial_0.dcl")))
  (new_dialog "dial_pr" rf)


  ; ×òåíèå èç ôàéëà
  (if (findfile (strcat dir "Dan.txt")) (load (strcat dir "Dan.txt")))


  ; Âûçîâ ñëàéäà
  (setq xmax (dimx_tile "RIS") ymax (dimy_tile "RIS"))
  (start_image "RIS")
    (slide_image 0 0 xmax ymax (strcat dir "slide.sld"))
  (end_image)


  
  ; Óñòàíîâêà çíà÷åíèé


  (foreach n nab_isx   (set_tile n (rtos (eval (read n)) 2 2)) ) 




   ; Áëîêèðîâêà êëàâø
  (gas_ok 1)




  
  ; Ââîä ìàñøòàáîâ
  (setq nab_mas '("M1:1" "M1:2" "M1:2.5" "M1:5" "M1:10" "M1:15" "M1:20"))
  (setq nab_masch '(1.0   0.5     0.4     0.2    0.1   0.06667   0.05))
  (start_list "MS")    (mapcar 'add_list nab_mas)  (end_list)
  (setq masch (nth 0 nab_masch)) (set_tile "MS" "0")




  ; Âûïîëíåíèå ïðèâõîäå â ïîëå
  (foreach n nab_isx  (action_tile n (strcat "(setq " n " (atof $value))") ))


  
  (action_tile "MS" "(setq masch (nth (atoi $value) nab_masch)) ")
  (action_tile "DEFAULT" "(progn (data)(foreach n nab_isx (set_tile n (rtos (eval (read n)) 2 2)) ))")
  (action_tile "PROV" "(prov_vv)")
  (action_tile "3D" "(done_dialog 3)")
  (action_tile "accept" "(done_dialog 2)")
  (action_tile "cancel" "(done_dialog 0)")


  (setq st_dl (start_dialog))


  (if (> st_dl 0)
    (progn




   ; Çàïèñü â ôàéë
      (setq f (open (strcat dir "Dan.txt") "w"))
         (princ "(setq \n" f)
         (foreach n nab_isx
       (princ (strcat "   " n " " (rtos (eval (read n))) "\n" ) f)
     )
         (princ ") \n" f)
      (close f)




    ; Îïðåäåëåíèå ôàéëîâ ñ ó÷åòîì ìàñøòàáà
      (if (= st_dl 3) (setq masch 1.0))
      (maschtab masch)


  ))


)
  
; -------------------------------------------------
(defun data()
 ; Ââîä èñõîäíûõ äàííûõ
 (setq nab_isx '("_M24" "_L1" "_L2" "_L3" "_L4" "_L5" "_L43" "_L53" "_D1" "_D2" "_D3" "_D4"  "_D5" "_L" "_SR" "_A1" "_A2" "_Q" "_R1" "_R2" "_L0" "_SO"))
(setq nab_rab '("M24" "L1" "L2" "L3" "L4" "L5" "L43" "L53" "D1" "D2" "D3" "D4" "D5" "L"  "SR" "A1" "A2" "Q" "R1" "R2" "L0" "SO"))
(setq nab_dan '(10.0 160.0 267.0 440.0 400.0  130.0 267.0 160.0 260.0 300.0 310.0 330.0 20.0 165.0 133.0 5.0 3.0 4.0 7.0 5.0 2000.0 10.0))
(setq masch 1.0)
(mapcar '(lambda (isx dan)
       (set (read isx) dan)
      )
     nab_isx
     nab_dan
  )
  )




;--------------------------------------
(defun gas_ok($k)
  (mode_tile "3D" $k) (mode_tile "accept" $k)
)


;--------------------------------------------------------------------


;--------------------------------------------------------------------
(defun prov_vv()
; Ïðîâåðêà ââîäà
  (setq prov 0)
  (if (> _D1 _D2)(alert (strcat "çíà÷åíèå _D1<"(rtos _d1)">  Äîëæíî áûòü ìåíüøå ÷åì _D2<"(rtos _d2)">")))
  (if (> _D1 _D2)(setq prov (+ 1 prov)))
  (if (> _D2 _D3)(alert (strcat "çíà÷åíèå _D2<"(rtos _d2)">  Äîëæíî áûòü ìåíüøå ÷åì _D3<"(rtos _d3)">")))
  (if (> _D2 _D3)(setq prov (+ 1 prov)))
       (if (> _D3 _D4)(alert (strcat "çíà÷åíèå _D3<"(rtos _d2)">  Äîëæíî áûòü ìåíüøå ÷åì _D4<"(rtos _d4)">")))
  (if (> _D3 _D4)(setq prov (+ 1 prov)))
   (if (< _D4 _D5)(alert (strcat "çíà÷åíèå _D4<"(rtos _d4)">  Äîëæíî áûòü áîëüøå ÷åì _D5<"(rtos _d5)">")))
  (if (< _D4 _D5)(setq prov (+ 1 prov)))


  (if (> _L1 _L2)(alert (strcat "çíà÷åíèå _L1<"(rtos _L1)">  Äîëæíî áûòü ìåíüøå ÷åì L2<"(rtos _L2)">")))
  (if (> _L1 _L2)(setq prov (+ 1 prov)))
    (if (< _L1 160.0)(alert (strcat "çíà÷åíèå _L1<"(rtos _L1)">  Äîëæíî áûòü áîëüøå ÷åì 160.0<"(rtos 160.0)">")))
  (if (< _L1 160.0)(setq prov (+ 1 prov)))
  (if (> _L2 _L3)(alert (strcat "çíà÷åíèå _L2<"(rtos _L2)">  Äîëæíî áûòü ìåíüøå ÷åì _L3<"(rtos _L3)">")))
  (if (> _L2 _L3)(setq prov (+ 1 prov)))
  (if (< _L3 _L4)(alert (strcat "çíà÷åíèå _L3<"(rtos _L3)">  Äîëæíî áûòü áîëüøå ÷åì _L4<"(rtos _L4)">")))
  (if (< _L3 _L4)(setq prov (+ 1 prov)))
    (if (< _A1 _A2)(alert (strcat "çíà÷åíèå _A1<"(rtos _A1)">  Äîëæíî áûòü áîëüøå ÷åì _A2<"(rtos _A2)">")))
  (if (< _A1 _A2)(setq prov (+ 1 prov)))
  (if (> _A1 25.0)(alert (strcat "çíà÷åíèå _A1<"(rtos _A1)">  Äîëæíî áûòü ìåíüøå ÷åì 25.0<"(rtos 25.0)">")))
  (if (> _A1 25.0)(setq prov (+ 1 prov)))
  
 ;
   


  (if (= prov 0)
    (progn
      (alert  "Â èñõîäíûõ äàííûõ îøèáîê íå îáíàðóæåííî")
      (gas_ok 0)
   ))   
  
)
;--------------------------------
(defun maschtab ($ms)
      (mapcar '(lambda (rab isx)
       (set (read rab) (* (eval (read isx)) $ms))
      )
    nab_rab
    nab_isx
      )


  )
;--------------------------------------------------------
(defun Vinoski ()


;   (setq rf (load_dialog "E:\\Stud\\LS-81\\Vinoski.dcl"))
  (setq rf (load_dialog (strcat dir "Dial_0.dcl")))
  
 ; Óñòàíîâêà toggle
   (setq VIN1 1) (set_tile "VIN1" (itoa VIN1))
   (setq VIN2 1) (set_tile "VIN2" (itoa VIN2))
   (setq VIN3 1) (set_tile "VIN3" (itoa VIN3))
;;;   (setq VIN4 0) (set_tile "VIN4" (itoa VIN4))


  ; Ââoä ìàñøòàáîâ
  (setq nab_mas '("M5:1" "M4:1" "M2:1" "M1:1" "M1:2" "M1:2.5" "M1:5" "M1:10" "M1:15" "M1:20"))
  (setq nab_masch '(5.0   4.0   2.0    1.0     0.5     0.4     0.2    0.1    0.06667   0.05))


  (start_list "MS1")  (mapcar 'add_list nab_mas)  (end_list)
  (setq ms1 (nth 4 nab_masch)) (set_tile "MS1" "4")


  (start_list "MS2")  (mapcar 'add_list nab_mas)  (end_list)
  (setq ms2 (nth 7 nab_masch)) (set_tile "MS2" "7")


  (start_list "MS3")  (mapcar 'add_list nab_mas)  (end_list)
  (setq ms3 (nth 7 nab_masch)) (set_tile "MS3" "7")
    
 ; (action_tile "MS1" "(setq ms1 (nth (atoi $value) nab_masch)) ")
 ; (action_tile "MS2" "(setq ms2 (nth (atoi $value) nab_masch)) ")
  ;(action_tile "MS3" "(setq ms3 (nth (atoi $value) nab_masch)) ")
)


(defun 3d()


  
  (command "_ERASE" "_ALL" "")
  (setvar "OSMODE" 0) ; îòêëþ÷èòü ïðèâçÿêè
  (command "_shademode" "_2")


  (if (null autolisp_kolesov_VAL_DETAL)  (load (strcat dir "autolisp_VAL.lsp")))
  (load "ramka")
  (setq bp '(0 0 0))
  (setq hline 0)
  
  (opred_point)


  ; ×åðòåæ äåòàëè
(command "_pline" p1 p2 p3 p4 p5 p6 p7 "_a" "_a" 90 p8 "_l" p9 p10 p11 p12 p13 "_a" "_a" 90 p14 "_l" p15 p16 p17 p18 p19 p20 "_c")
   (command "_revolve" (entlast) "" BP (polar BP 0 1) "")
    (setq obj3 (entlast))
   (command "_circle" KP2 d5)
    (setq obj4 (entlast))
    (command "_move" obj4 "" (list 0 0 0) (list 0 0 (+ (/ d3 2) r1)) "")
   (command "_circle" KP3 d5)
    (setq obj5 (entlast))
    (command "_move" obj5 "" (list 0 0 0) (list 0 0 (+ (/ d3 2) r1)) "")
     (command "_circle" KP4 d5)
    (setq obj6 (entlast))
    (command "_move" obj6 "" (list 0 0 0) (list 0 0 (+ (/ d3 2) r1)) "")
     (command "_circle" KP5 d5)
    (setq obj7 (entlast))
    (command "_move" obj7 "" (list 0 0 0) (list 0 0 (+ (/ d3 2) r1)) "")
  (command "_pline" KP6 KP7 KP8 KP9 "_c")
      (setq obj8 (entlast))
    (command "_move" obj8 "" (list 0 0 0) (list 0 0 (+ (/ d3 2) r1)) "")
    (command "_pline" KP10 KP11 KP12 KP13 "_c")
      (setq obj9 (entlast))
    (command "_move" obj9 "" (list 0 0 0) (list 0 0 (+ (/ d3 2) r1)) "")
    (command "_extrude" obj4 obj5 obj6 obj7 obj8 obj9 "" (- 100) 0)
    (setq obj10 (entlast))
  (setq kont (ssadd))


  (while obj4
    (ssadd obj4 kont)
    (setq obj4 (entnext obj4)))


  (command "_subtract" obj3 "" kont "")
  
 
  (command "_pline" OSI OSI2 "")
   (setq obj17 (entlast))
  (command "_pline" OSI OTV OTV3 OTV4 OTV5 OTV6 "_c")
   (setq obj18 (entlast))
   (command "_revolve" obj18 "" "_o" obj17 "")
   (setq obj19 (entlast))
  (command "_ucs" "_g" "_f")
 (command "_copy" obj19 "" BP1 (polar QQ1 0 62.5))
   (setq obj20 (entlast))
(command "_copy" obj19 "" BP1 (polar QQ1 PI 62.5))
   (setq obj21 (entlast))
    (command "_-view" "_o" "_l")
  (command "_ucs" "_g" "_l")
  (command "_mirror" obj19 obj20 obj21 "" MIR MIR1 "")
     (setq obj22 (entlast))
   (setq kont3 (ssadd))


  (while obj19
    (ssadd obj19 kont3)
   (setq obj19 (entnext obj19)))
     (command "_subtract" obj3 "" kont3 "")
    (command "_subtract" obj3 "" obj22 "")
  
)


Error: bad argument type: numberp: nil.

When Try use 2D or load autolisp_val