找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1040|回复: 28

[求助] 三角网 插值

[复制链接]
发表于 2017-10-30 10:04:08 | 显示全部楼层 |阅读模式

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

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

×
请问哪位有生成三角网及插值的代码呀?求给发一份,多谢了。

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 20个

财富等级: 恭喜发财

发表于 2017-10-30 10:13:47 | 显示全部楼层
用 三角网 搜索下论坛。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-30 11:23:21 | 显示全部楼层
搜了,要不买了,却不能下载,要不不是代码。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-10-30 11:29:47 | 显示全部楼层
加载 XDRX API


(xdrx_points_Delaunay pts t)

搜狗截图20171030112819.png
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 488个

财富等级: 日进斗金

发表于 2017-10-31 00:05:47 | 显示全部楼层
https://www.theswamp.org/index.php?topic=9042.0
国外的网站,这三角网的lsp写的很牛。
特别是可以画出等高线,我没时间研究他的算法。你如果看出来了,在晓东这里说一下。

当然如果有大量的点要计算,还是用 arx比较快。

写出什么好程序一定要分享吆
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6468个

财富等级: 富甲天下

发表于 2017-10-31 00:22:15 | 显示全部楼层
这是哪个行业的?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-10-31 17:20:36 | 显示全部楼层
没有看到插值计算,请问插值计算怎么实现呀?求指点
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 24个

财富等级: 恭喜发财

发表于 2017-10-31 23:11:55 | 显示全部楼层
Theswamp上那个三角剖分程序,最初核心算法是ElpanovEvgeniy写的,用的是Bowyer-Watson算法,后来主要是YMG画了大量精力完善。基本上已经提供了所有需要的素材,但使用的时候还需要根据实际需求适当改写。其中插值命令是DEMOZ,用的是Lawson's Walk算法,效率很高。不过它实现的方式是在三角剖分的时候就建立好三角网的相互关系,存盘退出后就失效了。
PS : 我猜YMG应该是中国人,他的算法能力很强,但是不清楚他在国内论坛上的ID是哪个。

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-1 09:03:17 | 显示全部楼层
(defun triloc (p pl tl nl
c:demoZ-------(setq tn (triloc p))
这个参数个数不对应呀,怎么可以运行呢?

p pl tl nl这几个参数是怎么得到的呀?看了很久,没看明白

求指点,多谢了

点评

p是插值点,pl是点集,tl是三角形集,nl是相邻三角形集。原程序用的是全局变量,三角剖分的时候生成的,建议你用XRECORD存在文件中。关键是用Lawson's Walk算法,不用遍历全部三角形,非常快就能找到点所在三角形  发表于 2017-11-1 12:13
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2017-11-1 09:43:38 | 显示全部楼层

你说的插值计算是指什么呢? 生成三角网? 还是给一个点,算这个点的高程?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-1 09:52:30 | 显示全部楼层
就是生成三角网后,对于指定平面位置点,获得对应的高程。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-11-1 10:14:34 | 显示全部楼层

三点构成平面,你把点投影到平面上,就得到点的Z坐标了。

ARX有现成的方法,用LISP,可以使用XDRX API的AcGe几何库,构建AcGePlane平面几何实体,然后点投影到这个平面上。

如果使用AcDb实体,你可以根据三点创建一个临时的3DFACE,然后创建个XLINE,求两个实体的交点。

如果用数学方法,也能求,先求一个边上的位置的的坐标,然后和另外顶点连线,根据距离,求出。

论坛以前好像ST还是谁,写过代码,搜索下看看。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-1 10:24:46 | 显示全部楼层
问题是不知道点落在哪个三角形内呀,如果知道了,那就没问题了。
就是怎么快速确定落在哪个三角形内。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2017-11-1 10:30:15 | 显示全部楼层

遍历所有三角形,然后判断点在哪个三角形内。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-11-1 10:35:48 | 显示全部楼层

如果你已经构建了三角网3DFACE实体,那么遍历这些3DFACE实体,判断点在哪个FACE内。

如果你不想建立看见的三角网,只想根据高程点表,就得到,xdrx_points_delaunay可以不给T参数,得到三角网的三角形表,在计算。

命令: (setq a (xdrx_points_delaunay pts))
(((5060.17 729.896 0.0) (5427.33 72.8092 0.0) (6298.66 1129.62 0.0)) ((5060.17
729.896 0.0) (6298.66 1129.62 0.0) (5427.33 1469.12 0.0)) ((5427.33 72.8092
0.0) (6079.46 -233.831 0.0) (6298.66 1129.62 0.0)) ((5427.33 1469.12 0.0)
(6298.66 1129.62 0.0) (7071.35 1589.58 0.0)) ((6079.46 -233.831 0.0) (7263.16
-458.336 0.0) (6632.95 -310.492 0.0)) ((6079.46 -233.831 0.0) (6632.95 -310.492
0.0) (6298.66 1129.62 0.0)) ((6298.66 1129.62 0.0) (6632.95 -310.492 0.0)
(7674.16 1036.54 0.0)) ((6298.66 1129.62 0.0) (7674.16 1036.54 0.0) (7071.35
1589.58 0.0)) ((6632.95 -310.492 0.0) (7263.16 -458.336 0.0) (7674.16 1036.54
0.0)) ((7263.16 -458.336 0.0) (8085.17 488.964 0.0) (7674.16 1036.54 0.0)))

命令: (length a)
10

命令: (car a)
((5060.17 729.896 0.0) (5427.33 72.8092 0.0) (6298.66 1129.62 0.0))

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-20 04:52 , Processed in 0.307759 second(s), 63 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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