明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 45225|回复: 263

能否根据起点终点定长定距等分曲线?

  [复制链接]
发表于 2012-3-26 14:11 来自手机 | 显示全部楼层 |阅读模式
例如有一根曲线en,我之指定曲线上两点pt1,pt2,能不能实现两个功能:
1,指定数量n,沿曲线定数等分
2,指定距离d,沿曲线pt1到pt2定距等分(距离小于d终止)
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2018-5-22 11:05 | 显示全部楼层
fanqinwei 发表于 2012-6-26 22:17
第一个是老版主lockmyeye
另一个是绝情一剑
这两个程序都把定数定距等分合成到一起,用时只要加以选择即 ...

好代码,多谢分享。要是能间隔着色把线段区分下就更好了
发表于 2018-9-30 12:08 | 显示全部楼层
lidaxiu 发表于 2012-3-27 13:41
此论坛中一两年前就有这样的贴 子了吧,不知理解的是不是这个程序,先上个图,主要是能支持异面曲等分,忘  ...

我需要这个功能,能提供吗
发表于 2012-3-26 14:30 | 显示全部楼层
所谓的等分,是取等分点还是等长裁截曲线?
发表于 2012-3-26 15:26 | 显示全部楼层
本帖最后由 xyh 于 2012-3-26 15:28 编辑

先将曲线原位复制,再在2点打断,
再用cad的divide命令和measure命令即可满足要求
使用时先设置好pdmode和pdsize,或用块。
 楼主| 发表于 2012-3-26 16:14 来自手机 | 显示全部楼层
xyh 发表于 2012-3-26 15:26
先将曲线原位复制,再在2点打断,
再用cad的divide命令和measure命令即可满足要求
使用时先设置好pdmode和 ...

恩,好想法,谢谢呵。。。。
 楼主| 发表于 2012-3-26 17:09 | 显示全部楼层
本帖最后由 tm20038175 于 2012-3-26 17:09 编辑
nzl1116 发表于 2012-3-26 14:30
所谓的等分,是取等分点还是等长裁截曲线?

取等分点
发表于 2012-3-26 18:59 | 显示全部楼层
本帖最后由 Gu_xl 于 2012-3-26 19:10 编辑


;;等分曲线,返回点坐标
;;参数 Curve = 曲线图元名 p1 = 曲线上第一点 p2 = 曲线上第一点
;;     Flag = T 定数等分曲线 nil 定长等分曲线
;;     n = 当 Flag = T 时 n 为等分数,当Flag = nil 时 n 为等分长度
;;测试: (DivdeCurve (car(entsel "\n选择曲线:")) (getpoint "\n起点:") (getpoint "\n终点:") nil 15)
  1. (defun DivdeCurve (CURVE P1 P2 FLAG N / D1 D2 D FUN D0 PTS)
  2.   (setq p1 (vlax-curve-getclosestpointto Curve p1)
  3.         d1 (vlax-curve-getDistAtPoint Curve p1)
  4.         p2 (vlax-curve-getclosestpointto Curve p2)
  5.         d2 (vlax-curve-getDistAtPoint Curve p2)
  6.         )
  7.   (if Flag
  8.     (setq d (/ (- d2 d1) n) )
  9.     (setq d (if (MINUSP (- d2 d1)) (* -1.0 n) n) )
  10.     )
  11.   (if (> d2 d1) (setq Fun '<) (setq Fun '>))
  12.   (setq d0 d1)
  13.   (while (apply fun (list (setq d0 (+ d0 d)) d2))
  14.     (setq pts (cons (vlax-curve-getPointAtDist curve d0) pts))
  15.     )
  16.   (reverse pts)
  17.   )

发表于 2012-3-26 19:23 | 显示全部楼层
用me可以啊
 楼主| 发表于 2012-3-26 19:24 来自手机 | 显示全部楼层
Gu_xl 发表于 2012-3-26 18:59
;;等分曲线,返回点坐标
;;参数 Curve = 曲线图元名 p1 = 曲线上第一点 p2 = 曲线上第一点
;;     Flag ...

哈哈,好!赞一个!!!
如果能有定距等分就更完美了,很受用!
谢谢啦。。。
 楼主| 发表于 2012-3-26 19:27 来自手机 | 显示全部楼层
哦,原来都实现啦!
没仔细看,太感谢了!………
发表于 2012-3-27 12:41 | 显示全部楼层
本帖最后由 LLXXZZ 于 2012-7-18 13:02 编辑

学习.围观中.....

本帖子中包含更多资源

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

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

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-20 16:05 , Processed in 1.076542 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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