@grrr nice LM风格
这是另一个新手的较低版本
- (defun c:test (/ dcl dd en cp ob l pt)
- [color="green"];error handler try to code it by yourself[/color]
- (setq dcl (load_dialog "pickpoint.dcl")
- dd 2
- en '("e" "n")
- cp '("Circle" "Point")
- pt (getvar 'viewctr)
- )
- (while (>= dd 2)
- (if (null (new_dialog "pickpoint" dcl))
- (exit)
- )
- (set_tile "crt"
- (setq ob (cond (ob)("0")))
- )
- (start_list "crt")
- (mapcar 'add_list cp)
- (end_list)
- (action_tile "crt" "(setq ob $value)")
- (mapcar 'set_tile en (mapcar 'rtos pt '(2 2)))
- (action_tile
- "ok"
- "(setq pt (mapcar '(lambda (x)(atof(get_tile x))) en ))(done_dialog 1)"
- )
- (action_tile "pick" "(done_dialog 2)")
- (setq dd (start_dialog))
- (cond ((= dd 2) (setq pt (getpoint "\nSpecify point ")))
- ((= dd 1) (princ (mapcar ''((a b)(strcat " "(strcase a) "= "(rtos b 2)" ")) en pt)))
- )
- ); While
-
- (setq l (list (cons 0 (nth (atoi ob) cp) )(cons 10 ([color="blue"]trans[/color] pt 1 0))))
- (unload_dialog dcl)
- (entmakex (if (zerop (atoi ob)) (append l '((40 . 2)))l))
- (princ)
-
- )
|