获取指向ss的点
你好有没有办法从选择集中的getpoint函数中获取点?
我试着这样做:
(setq pnt(ssadd))
(while(setq pntx(getpoint“\n从左到右选择点:”))
;(setq pntx(entget(entlast)));第一条路
(ssadd pntx pnt);第二种方式
)
thanx公司 (setq pnt nil)
(while (setq pntx (getpoint"\nSelect points from the LEFT to RIGHT : "))
(setq pnt (cons pntx pnt))
) 你好
ssadd函数是将实体添加到选择集,但在您的情况下,您需要有一个坐标点列表,所以这里是这样的。
(while (setq pntx (getpoint "\n Select points from the LEFT to RIGHT : "))
(setq lst (cons pntx lst))
)
因此,变量lst具有从用户处拾取的所有点。 行得通,塔克斯。。。唯一的问题是,我需要将其余代码转换为处理list而不是ss,这就是为什么我尝试在ss中使用它们 汤姆,你在用密码干什么? 我正在写一种横截面图lisp,我完全是在ss的基础上写的,就在调试的时候,我发现这种方式不能通过getpoint。。。
我可以用这个:
(princ“\n从左到右选择点:”)
(setq pnt(ssget“:E”((0.“点”)))
但是,我需要缩放到每个点(因为picbox)来选择它,而使用getpoint时,我只需将osnap设置为point并“点击离开” 是否从图形中已存在的点绘制横截面?
你能在之前和之后上传一个画展样本吗? 这是示例。。。我已经在你在中看到的车站上勘测了道路。dwg,通过这个lisp,我想创建道路的横截面或纵断面,选择所需的点(在dwg中的左侧),并将其放置在所需的横截面上,并在表格中填充数据(在dwg中的右侧)。。。
现在我正在用CadTools做这件事,虽然它有更多的选项,但我不能选择一个配置文件和表格直接将数据放在上面,它不会填充表格,而是我必须复制/粘贴CadTools创建的数据,这需要一些额外的时间。。。
样本:样本。图纸 我对所有这些部分都感到迷茫,所以只要把你想得到它们坐标的点以及添加到哪里,正如我从你之前的回复中所理解的那样。 以路上的任何一个车站为例,你会看到三个黄点。。。它们都有海拔,道路中间有主要的要素线或轴线。。。目标是在一个桩号上选择点(在本例中为3个点,但有时可能更多或更少),然后将其添加到右侧任何所需截面上的多段线轮廓,并在表中所需行中输入高度。。。在该段中,它们必须相对于道路要素线或轴输入。。。。我几乎完成了,现在只需要将lisp转换为使用列表而不是ss,我不知道如何从点列表中创建多段线,除了在命令栏中?
页:
[1]
2