乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 229|回复: 14

Delaunator,Delaunay三角剖分,三角网

[复制链接]

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2021-10-26 21:38:51 | 显示全部楼层 |阅读模式
值得拥有自己的线程,因为它非常令人印象深刻的性能
Source是https://github.com/delfrrr/delaunator-cpp
注意原始源是2D,但输入点集是const,因此索引似乎适用于任何数组。请参阅我在代码中的注释。它本可以更快,但作者使用了他们自己的点类,因此存在内存重复。
Gentin Num Point=1000004, time=645.811500
总时间Num Point=1000004, time=11666.346100
BricsCAD-Gentin Num Point=1000004, time=640.873300
BricsCAD-总时间Num Point=1000004, time=47141.696700
添加面孔可以通过使用事务进行优化,而不是打开和关闭数据库一百万次
这是源

e2u3hcnxzxx.jpg

e2u3hcnxzxx.jpg

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

61

主题

792

帖子

35

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1015
发表于 2021-10-26 23:43:44 | 显示全部楼层
你有没有研究过这类工作的ECS?它非常适合这种有大量数据的事情
https://www . game developer . com/design/the-entity-component-system-an-awesome-game-design-pattern-in-c-part-1-
回复

使用道具 举报

11

主题

85

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
129
发表于 2021-10-27 02:57:37 | 显示全部楼层
我发现民用和点云领域很吸引人,至少在它们处理大数据的方式上是如此。
我认为其中一些引擎正在使用图形卡进行处理。CAD或DWG肯定不是最好的平台。
回复

使用道具 举报

11

主题

85

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
129
发表于 2021-10-29 20:41:00 | 显示全部楼层
找到一个优化,最后一个版本,我保证
回复

使用道具 举报

11

主题

85

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
129
发表于 2021-10-29 22:13:28 | 显示全部楼层
过去几天你一直让我读这些东西。仍然知之甚少(去了那么多兔子洞),但是想想这些东西还是很有趣的。
回复

使用道具 举报

11

主题

85

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
129
发表于 2021-10-30 19:49:14 | 显示全部楼层
我几乎没有什么理解,哈哈。这周只是胡说八道。
自从我退休以来,我一直在考虑加入一些开源项目,只是为了保持我的印章,但这些东西大部分真的很难。
回复

使用道具 举报

61

主题

792

帖子

35

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1015
发表于 2021-11-16 03:44:33 | 显示全部楼层
添加了一个受约束
的 TIN 命令是 createhull、createtin、createctin
回复

使用道具 举报

11

主题

85

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
129
发表于 2021-11-19 20:50:06 | 显示全部楼层
新版本使用createctin
使性能翻倍,从以毫秒为单位的总时间Num Point=36976,time=512

总时间Num Point=36976,time=204
编辑,将最新的附加到第一篇文章
回复

使用道具 举报

11

主题

85

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
129
发表于 2021-11-22 03:03:13 | 显示全部楼层
我发现了一个非常快速的方法来使用现有的TIN算法获得凹面外壳。计算三角形外接圆的半径并检查与用户输入的
注意事项,它有岛屿,边界是从三角形边缘收集的单独线段。边可以翻转,因此很难创建折线边。Createhull2
回复

使用道具 举报

11

主题

85

帖子

1

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
129
发表于 2021-11-24 05:25:26 | 显示全部楼层
将命令Createhull2重命名为Createctin2。
我发现我能够通过使用三角形重置边缘方向来构建一个合适的折线。
对于每个边缘三角形,顺时针定向外部边缘。对于300,000点,它在1s左右确实很快。
但这是用于计算边界和TIN。我可能可以提高一点性能,
但是我用完了葵花籽和黑甘草
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2024-11-22 01:12 , Processed in 0.377725 second(s), 77 queries .

© 2020-2024 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表