VBA中的道路轴和Osnap
您好,我正在尝试找到一种解决方案,自动在其他两个几乎平行的柱网的中间(半距离)绘制一条柱网,例如在道路轴中。这两条样条线始终是手动绘制的,并且永远不会完全平行,因此基于复制(如偏移)的某些内容将无法实现。由于我找不到任何脚本来完成这项工作,我尝试在VBA中完成它。它将使用SelectOnScreen让用户选择两条线,然后遍历一条线的所有点,并为每个点找到另一条线上最近的点,计算并保存中间距离点。迭代后,将绘制一条新的pline,穿过所有保存的点。问题是我无法在VBA中找到使用OSNAP在另一条pline上拾取最近点的方法。我知道LISP有一个函数可以实现这一点,但我找不到将结果返回到VBA的方法。我倾向于VBA,因为我已经相当精通这门语言,而不是LISP的零经验。有什么建议吗?Tks公司 正如我在这里解释的那样(http://www.cadtutor.net/forum/showthread.php?t=39859),这种类型的任务,即曲线分析,在VBA中特别复杂(VBA/VB6不能直接访问适当的API)。使用VB会更容易。NET,但我看到您仍在使用AutoCAD 2005,这排除了该选项。如果lisp不是一个选项,那么本质上还有两个选择:编写自己的例程来对多段线进行分段分析(请参阅我对该线程的响应中链接的示例)。
或
查找并下载“Curves.cls”。该类允许使用一些有助于此过程的原生AutoCAD库。以下是最近的链接:
http://discussion.autodesk.com/forums/thread.jspa?threadID=746328&tstart=0 尊敬的肖恩:,
谢谢你的回复,还有一些提示,为我指明了正确的方向。
我下载了曲线。cls用于以后的调查,但目前我选择建立自己的、非常基本的例程,只是为了好玩。
到目前为止,他们的行为与预期相符,尽管并非在所有情况下都是万无一失的,但他们做到了。
再次感谢。
页:
[1]