找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 590|回复: 7

[编程申请]:测量各交点间的样条曲线的长度

[复制链接]
发表于 2004-7-21 23:51:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
各位专家:
  能否帮助我编写这样一个程序:样条曲线与多条直线相交,在不打断样条曲线的情况下测量曲线上相邻交点间的实际长度(即例图中的ab、bc、cd、de、ef间的曲线长度),并能自动列出报表。如果能一次性量出多条曲线上的各相邻交点间的长度是最佳愿望。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-7-22 04:09:34 | 显示全部楼层
返回任意曲线上两点间的长度:
[php]
(defun c:test (cur p1 p2)
  (abs (- (vlax-curve-getDistAtPoint cur p2)
          (vlax-curve-getDistAtPoint cur p1))
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-7-22 17:44:54 | 显示全部楼层
非常感谢二楼楼主的支持。小弟只是一位只会用ACAD绘图,而不懂程序开发。特此请求楼主能较之详细地告诉我怎么用你写的这段程序运用到我的ACAD2004中。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-7-24 07:09:11 | 显示全部楼层
将下面的程序放到VLISP编辑器(或支持路径下), 加载并运行. 按照提示选取曲线和拾取那两个点.
[PHP]
(defun c:test ()
  (setq cur (car (entsel "\nSelect the curve: ")))
  (setq p1 (getpoint "\nPick First Point: "))
  (Setq p2 (getpoinr "\nPick Seconf Point :"))
  (abs (- (vlax-curve-getDistAtPoint cur p2)
             (vlax-curve-getDistAtPoint cur p1)))
)
[/PHP]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-7-24 20:26:29 | 显示全部楼层
谢谢楼主再次对我的帮助。我是从事船舶船体技术服务和管理工作,这个小程序对我的工作实在是作用巨大。我将你写的程序按要求进行操作。可是为啥出现图中所示的错误提示?命令是不是“TEST”
   敬请楼主再一次协助。感谢你。。。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-7-24 21:33:11 | 显示全部楼层
少了两个),

(defun c:test (/ CUR P1 P2)
  (vl-load-com)
(setq cur (car (entsel "\nSelect the curve: ")))
(setq p1 (getpoint "\nPick First Point: "))
(Setq p2 (getpoint "\nPick Seconf Point :"))
(abs (- (vlax-curve-getDistAtPoint cur p2)
(vlax-curve-getDistAtPoint cur p1)))
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-7-25 13:34:31 | 显示全部楼层
6楼说的对. 贴程序的时候丢掉了. 原程序已改好.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-7-25 19:05:07 | 显示全部楼层
真诚感谢楼主的大力支持,你们的协助解决了我工作中的困难。程序已能正常运行。
  特此至谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-21 11:55 , Processed in 0.183745 second(s), 47 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表