SsetPoint.Select acSelectionSetAll, , , groupCode, dataCode
这条语句有点问题,如果在图中除了这条曲线外还有别的AcadPoint,怎么办,也会把别的AcadPoint选择上去,不知道gyl怎么解决这个问题? 你可以新建一个图层,专门存放measure命令生成的点图元,一条曲线处理完之后,就删除这个图层上的所有点,然后再进行另一条曲线的处理工作,全部曲线处理完之后,把这个图层删除即可。 楼,问题怎么解决的? 其它做measure前先统计当前的图元数量,measure后再统计当前的图元数量,多出来的部分就是新的对象了。 zshuling发表于2003-10-26 8:43:00static/image/common/back.gif求助:如何获得曲线上的等分点?
想通过程序自动找到样条曲线上的等分点,在绘图时可以用divide命令进行等分,但VBA里好像没有divide命令,不知道该怎么办:(请哪位高手指点一下,急,多谢了。
(defun ea:divpl (n obj / len sp ep pam dis div ptl)
(setq len (vla-get-length obj)
sp(vlax-curve-getstartpoint obj)
ep(vlax-curve-getendpoint obj)
)
(if (> n 1)
(progn
(setq dis 0.
div (/ len n)
)
(while (< dis len)
(setq pam (vlax-curve-getParamAtDist obj dis)
dis (+ dis div)
)
(setq ptl (cons (vlax-curve-getpointatparam obj pam) ptl))
)
(setq ptl (reverse ptl))
)
(setq ptl (list ep sp))
)
ptl
)
本帖最后由 作者 于 2004-6-12 8:50:06 编辑
想问gyl一个问题:如果我的取点间隔是10,但是在这些曲线中大部分线长度达不到10,我又不想减小取点间隔,我还想在上面取等分点,怎么办?
我想这样做:当在某一条曲线上取点时,发现这个曲线长度不足。用divide命令取一些点。这里,有一个问题,怎样判断MEASURE命令执行错误? 学习学习,谢谢 8楼的代码好极了,很实用啊 标记好帖子
页:
1
[2]