PlutoISaPlanet 发表于 2022-7-6 09:35:00

帮助更改此LISP routin

我试图在学校的“野外”练习中为每条线生成X和Y坐标。我有数百条多段线,在这篇文章中:
http://www.afralisp.net/visual-lisp/tutorials/polylines-part-1.php
 
它正是我所需要的,但我需要能够选择我的绘图中的每一行,并有x-y输出。这可能吗?这将是一个救命恩人。

MSasu 发表于 2022-7-6 09:40:51

请看一下SSGET、SSNAME、ENTGET和ASSOC函数。
 
当做
米尔恰

alanjt 发表于 2022-7-6 09:44:53

[列表]
[*]查看ssget函数以进行多项选择。
[*]查看while或重复以逐步通过选择集(使用ssget创建)和ssname从选择集中提取每个实体。
[/列表]
这里有大量的代码。我给你举个例子,但我会做太多你的家庭作业。

PlutoISaPlanet 发表于 2022-7-6 09:51:29

 
谢谢,但我不知道第一件事是如何将这些函数实际应用到例程中。
 
我猜你会觉得我在一个LISP脚本类中,但我提到的任务实际上是为我的设计工作室,我们在那里生成一些字段,相当随机。我试图比作业要求的更系统一点,在我正在创建的可视化中加入一些实质内容。我可以在Illustrator中轻松做到这一点,而不用担心数据集。
 
到目前为止,我所做的是在illustrator中创建“场”,现在想要导出坐标,将其引入可视化软件,并生成连接5条或更多这些线相交的每个点的线,并在每个特定大小的绑定区域中着色。
 
我不知道写例行公事的第一件事,我只是试着从另一个角度来解决这个问题。不过,谢谢你。

PlutoISaPlanet 发表于 2022-7-6 09:54:29

这个特定的例程告诉我,我的线条不是多边形线条,而事实上,它们也是。它们不一定非得如此,但我把它们转换成这样,专门用于常规训练。

PlutoISaPlanet 发表于 2022-7-6 09:57:09

如果有人能给我指出一个例程,可以提取除这一行之外的每一行的x-y值,我也会非常感激。

alanjt 发表于 2022-7-6 10:04:07

(defun c:TEst (/ ss i d)
(if (setq ss (ssget '((0 . "LINE"))))
   (repeat (setq i (sslength ss))
   (print
       (append (cons "START:" (cdr (assoc 10 (setq d (entget (ssname ss (setq i (1- i))))))))
               (cons "END: " (cdr (assoc 11 d)))
       )
   )
   )
)
(princ)
)

PlutoISaPlanet 发表于 2022-7-6 10:06:02

 
非常感谢。我可能回来了

alanjt 发表于 2022-7-6 10:09:52

我可能会帮忙。

PlutoISaPlanet 发表于 2022-7-6 10:16:15

真诚地感谢你。
页: [1] 2
查看完整版本: 帮助更改此LISP routin