- ;;;(_@ld "int_face")
- (defun C:C_AXIS (/ is_list init_dlg do_list axde erase ll tgt1 tgt2
- od_hlight l0l l1l what_next
- )
- (defun is_list ()
- (if (/= l0l "")
- (progn (mode_tile "axde" 0) (mode_tile "a_erase" 0))
- (progn (mode_tile "axde" 1) (mode_tile "a_erase" 1))
- )
- )
- (defun init_dlg ()
- (set_tile "ax_tget" tgt1)
- (set_tile "axde" axde)
- (set_tile "a_erase" erase)
- (is_list)
- )
- (defun do_list ()
- (rs_error)
- (setq l0l $value
- l1l (after_list l0l ll)
- )
- (is_list)
- )
- (setq ll (ai_table "LAYER" 6)
- l0l ""
- axde "0"
- erase "0"
- tgt1 (parea "轴线")
- tgt2 (parea "轴标")
- )
- (setvar "highlight" 0)
- (if (and (not _int_fc_id)
- (< (setq _int_fc_id (load_dialog (strcat _prefix "int_face.dcl")))
- 0
- )
- )
- (exit)
- )
- (setq what_next 7)
- (while (< 2 what_next)
- (if (not (new_dialog "c_axis" _int_fc_id))
- (exit)
- )
- (init_dlg)
- (#disp_list "ax_ly_l" ll)
- (if (and l0l (> (strlen l0l) 0))
- (set_tile "ax_ly_l" l0l)
- )
- (action_tile "ax_ly_l" "(do_list)")
- (action_tile "ax_ly" "(done_dialog 3)")
- (action_tile "axde" "(setq axde $value)")
- (action_tile "a_erase" "(setq erase $value)")
- (action_tile "help" "(do_help \"int_face:c_axis\")")
- (setq what_next (start_dialog))
- (cond ((= what_next 3) (find_layer "轴线")))
- )
- (if (and (= what_next 1) (/= l0l ""))
- (progn
- (change_layer l1l "轴线")
- (if (= axde "1")
- (progn (setq s2 (ssget "X" (list (cons 8 tgt1) '(0 . "*POLYLINE"))))
- (transws s2 0)
- (while (setq e1 (slb_slb 0)) (command ".EXPLODE" e1))
- )
- )
- (if (= erase "1")
- (erase_other "LINE,ARC,CIRCLE" tgt1)
- )
- (princ "\n 轴线转换已完成 ! ")
- )
- )
- (setvar "highlight" 1)
- (princ)
- )
天正lisp的源码。
|