明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 304|回复: 10

[提问] 求交点位置不对

[复制链接]
发表于 前天 21:22 | 显示全部楼层 |阅读模式
下图中有两根直线  用这段代码求得交点 位置竟然不对 请各位看看什么原因
  1. ;; 选择两条直线并计算交点
  2. (setq ent1 (car (entsel "\n选择第一条直线: ")))
  3. (setq ent2 (car (entsel "\n选择第二条直线: ")))
  4. (setq obj1 (vlax-ename->vla-object ent1))
  5. (setq obj2 (vlax-ename->vla-object ent2))
  6. ;; 计算交点
  7. (setq intersectPoints (vlax-invoke obj1 'IntersectWith obj2 0))
  8. (entmake (list '(0 . "CIRCLE")'(62 . 10)(cons 10 intersectPoints) (cons 40 0.1)))





本帖子中包含更多资源

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

x

点评

实体离坐标原点'(0 0)太远,IntersectWith函数的bug  发表于 前天 22:29
"觉得好,就打赏"
还没有人打赏,支持一下
回复

使用道具 举报

发表于 前天 22:41 | 显示全部楼层
坐标数据太大,小数点前面数字太多,后面的精度就要被吃掉了,因为预留的内存长度放不下,计算精度上也就呵呵了。
回复 支持 3 反对 0

使用道具 举报

发表于 前天 21:24 | 显示全部楼层
用户坐标转一下世界坐标试试
回复 支持 反对

使用道具 举报

 楼主| 发表于 前天 21:47 | 显示全部楼层
lxw320 发表于 2025-4-27 21:24
用户坐标转一下世界坐标试试

坐标系没有问题呢
回复 支持 反对

使用道具 举报

发表于 前天 22:15 | 显示全部楼层



;飞雪神光于 10 分钟前 | 只看该作者 回帖奖励
;下图中有两根直线  用这段代码求得交点 位置竟然不对 请各位看看什么原因
;普通浏览复制代码
;; 选择两条直线并计算交点
……

      obj1
      'IntersectWith  ; 相交计算方法
      obj2
      0  ; *******************
……


本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

发表于 昨天 04:17 | 显示全部楼层
如果只是直线的话,用直线方程联立是能够破除大坐标问题的,
如果是样条的话,还是要改为这个算法+平移到原点
回复 支持 反对

使用道具 举报

发表于 昨天 08:48 | 显示全部楼层
平移到原点吧,再转换
回复 支持 反对

使用道具 举报

发表于 昨天 10:10 | 显示全部楼层
可以需要优化完善IntersectWith函数
回复 支持 反对

使用道具 举报

发表于 昨天 17:49 | 显示全部楼层
直线长度太短,两条直线分别向两边延长后,再画就是准确的。应该是2楼说的原因。
回复 支持 反对

使用道具 举报

发表于 昨天 19:46 | 显示全部楼层
新手一枚,对于以上高深函数不太会用,,下面图片这个函数是否可行,

(inters pt1 pt2 pt3 pt4 [onseg])
所有的点都以当前 UCS 表示,如果提供的四个点都是三维点,inters 函数检查三维交点。只要所提供的点中有一个是二维点,inters 函数就将这两条线投影到当前构造平面上,仅检查二维交点。

参数

pt1

第一条直线的端点。

pt2

第一条直线的另一端点。

pt3

第二条直线的端点。

pt4

第二条直线的另一端点。

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-29 05:19 , Processed in 0.204056 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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