多段线长度
你好,如何使用LISP获得已通过命令“PEDIT”“FIT”平滑的多段线的曲线长度。非常感谢。 基本发动机可能如下所示:
大卫 大卫
非常感谢。 你的请求让我想起了我不久前写的一个例程,所以我把它去掉了。它是在1995年写的,所以我需要做一些小的修改,特别是要使它与新的轻型多段线一起工作。
有一段时间,我从图纸上取下许多测量值进行估算,因此我编写了一整套用于测量、标记和调度图纸的命令。这只是一个简单的测量例程,可以给出任何指定图层上所有多段线的总长度或面积。通过拾取该层上的对象来选择层。
我相信David和fuccaro会对代码提出很多批评,但它确实管用 CADTutor,
如果一个计划奏效,那就是目标的90%。
在过去硬件有限的日子里,评估代码的速度是一个问题。不再是这样了。至少用一些真正小的东西。我有一些程序需要3-4分钟才能执行,但我们要处理大约100000张脸。
除了工作之外,我认为唯一重要的是作者理解代码,以便将来可以轻松地进行编辑。如果需要的话,它是否有文字注释?它的格式是否可以使人类的眼睛和大脑以最初预期的方式组织代码。
是的,你可能会少用75%的代码,但这件事是否可行呢-大卫
当然,你是对的。最初,这两个子例程在套件中的其他地方使用,因此分别编写。既然我已经9年没有Lisp程序了,这可能是一个很好的测试,看看我是否可以重写这一个,把代码降到只有25%。不知怎的,我对此表示怀疑。大卫,我一直很钦佩你代码的简洁。我很想看看你能用这个多小。
挑战?对 我随时准备接受挑战。
原始张贴代码:
发布日期:
看起来代码减少了62%,语句减少了58%。看起来你有15个全局变量。这是一个“不,不”。
-大卫 干得好,大卫!这太令人印象深刻了。
告诉我,“*POLYLINE”是否同时包含“POLYLINE”和“LWPOLYLINE”?自从R14以来,我没有写过任何LISP,所以我不确定如何涵盖这两种多段线类型。
我注意到,您的例程在功能上有一个不同之处-您不包括用于面积计算的开放多段线,而我的例程包括它们,但会警告用户。
关于这些全局变量,你是对的 CADTutor,
是的,“*”符号是通配符。(ssget)将comforms筛选为(wcmatch)通配符参数。退一步说,现在有人可以创建一个自定义实体类型,该类型可能被错误地包括在集合中,但不符合组dxf代码。以这种方式命名自定义实体类型(IMO)是一种不好的做法,即RTEXT。
我错过了你包括开放普林斯的事实。需要做些小改动。
-大卫
3 谢谢你,大卫。这对我(我希望对其他人)来说是一个非常有用的一课。
页:
[1]
2