简介
网格简化是图形学中的一项重要操作,可以加深对于图形学的理解
论文
Surface Simplification Using Quadric Error Metrics
实现步骤
算法思路:
- 计算每一个点的 Kp 矩阵
2建立最小堆 使用 multiset 建立
3.迭代
a.移动顶点
b.删除顶点
c.增加面
TIPS
1.
上式 其实就是 Q 二次误差的计算方式
2.
为什么这样可以得到 两个点之间 二次误差最小的点呢?
我的理解
因为假设Q是0那说明是不是误差最小呢?是的
那么
若 正定那么
3.
关于为啥二次误差有用
我的理解
表示的是一个顶点 带入 面的方程 ax + by + cz + d = Q
Q就表示偏差 如果Q等于0那么就表示这个顶点就在面上,不会产生误差
4.
论文的启发点,其实就是利用了 ax + by + cz + d = Q
的性质,然后计算的快些,然后就可以简化发论文了,所以,发论文好难......
结果图片
是不是很有感jio???jojo
code
https://github.com/lishaohsuai/digital_geo/tree/master/Surface_Framework_VS2017
参考文献
---------------------------我的天空里没有太阳,总是黑夜,但并不暗,因为有东西代替了太阳。虽然没有太阳那么明亮,但对我来说已经足够。凭借着这份光,我便能把黑夜当成白天。我从来就没有太阳,所以不怕失去。
--------《白夜行》
标签:
图形学
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
2019-05-31 DXF 最简单的一个文件生成一个直线 (1)