谢谢,我总是乐于接受建议
对不起,我没有在rtos函数中包含十进制和0 dp参数-我的错误。
由于32767整数的限制,我想将num保持为实数,并显示它而不带dp。
我必须承认,我讨厌UCS,也没有在这个版本中包含任何处理这个问题的内容,但我会将你的想法融入其中 试一试,它应该包含UCS。。。但是我不太擅长UCS转换,所以如果它不起作用,就大声喊
(defun c:ptwriter(/ *error* oldcmd file num pt)
(vl-load-com)
(defun *error* (msg)
(if oldcmd
(setvar "CMDECHO" oldcmd))
(princ))
(setq oldcmd (getvar "CMDECHO"))
(setvar "CMDECHO" 0)
(if (and (setq file (getfiled "Create a Text File" "" "txt" 9))
(not (initget 5))
(setq num (getint "\nSpecify Starting Point Number: ")))
(progn
(setq file (open file "w"))
(while (setq pt (getpoint (strcat "\nPosition Point Number " (rtos num) ": ")))
(command "_point" "_non" pt)
(write-line
(strcat (rtos num) ","
(rtos (car pt)) ","
(rtos (cadr pt)) ","
(rtos (caddr pt))) file)
(Make_Text (trans pt 1 0) (rtos num 2 0) 0.0)
(setq num (+ num 1.)))
(close file)
(princ "\n<< Points Written to File >>"))
(princ "\n<!> No File Selected <!>"))
(setvar "CMDECHO" oldcmd)
(princ))
(defun Make_Text(pt val rot)
(entmake
(list
(cons 0 "TEXT")
(cons 8 (getvar "CLAYER"))
(cons 10 pt)
(cons 40 (getvar "TEXTSIZE"))
(cons 1 val)
(cons 50 rot)
(cons 7 (getvar "TEXTSTYLE"))
(cons 71 0)
(cons 72 1)
(cons 73 2)
(cons 11 pt))))
神奇的李-麦克
ucs运行良好。屏幕提示和数据文件中还有两个(rtos num)实例,但我自己设法解决了这些问题。此外,我的文本大小没有被拾取,我更喜欢保留对齐方式,但我再次处理了这些问题。
非常感谢。这是一个Lisp程序,我将使用大量。
我希望这不会占用你考试的太多时间——也许是你的放松方式?
啊,是的,也许我不应该这么匆忙地改变它。。。。
没问题,Eldon,当你知道你写的LISP被很好地使用时,我喜欢它-给你一些自豪感
至于考试,我在9天内就要考试了,并且做了一些复习,但可能没有我应该做的那么多——我只是太喜欢写程序了。。。
李
页:
1
[2]