好像有个什么等比分线段的。我记不太清楚了,你试下。
用定数等分的命令,快捷键是div 等分数目700(点样式改成能看到的那种,就可以了)
我赞同他的说法,用定数等分的命令,快捷键是div 等分数目700(点样式改成能看到的那种,就可以了)
我帮你写的以下代码可以解决你的问题,你将代码拷到记事本然后存为Brl.lsp加载运行即可,无论线有多长(不能是多段线哦),分多少段都可以。且坐标会方在d盘的uCS.txt文件里面
(defun c:Brl()
(setq oce (getvar "cmdecho"))
(setvar "cmdecho" 0)
(setq os (getvar "osmode"))
(setvar "osmode" 0)
(PRint "请选择直线:")
(setq lin (ssget ":s" '((0 . "line"))))
(setq msg "请输入等分数:")
(setq f (open "d:\\uCS.txt" "w"))
(setq df (getint msg))
(setq lindat (ssname lin 0))
(setq lindate (entget lindat))
(setq fip (CDR (assoc '10 lindate)))
(setq sep (CDR (assoc '11 lindate)))
(setq ang (angle fip sep))
(setq len (distance fip sep))
(setq dc (/ len df))
(setq i 1)
(setq fs fip)
(setq us (strcat (rtos (car fs)) "," (rtos (CADr fs)) "," (rtos (CADdr fs))))
(write-line us f)
(while (<= i df)
(setq fe (polar fs ang dc))
(command "line" fs fe "")
(setq fs fe)
(setq us (strcat (rtos (car fs)) "," (rtos (CADr fs)) "," (rtos (CADdr fs))))
(write-line us f)
(setq i (+ i 1))
)
(close f)
(command "erase" lindat "")
(setvar "osmode" os)
(setvar "cmdecho" oce)
(PRinc)
)