ALDGP是一个轻量的离散几何处理库,记录在学习GAMES102课程中写下的一些代码,代码使用C#语言实现,基于Plankton半边网格库和Eigen线性代数库,代码大部分由C#完成,数值计算部分由C++编写,算法实现参考了The Polygon Mesh Processing Library,在这里感谢上述开源库作者的贡献。
- 目前ALDGP还处于一个非常初级的阶段,本人将在后续逐步完善。
- 相关知识的笔记可以在Notes中找到。
- 欲了解更多关于数字几何的知识,欢迎关注公众号:AlbertLiDesign。
- 计算平均曲率、高斯曲率和主曲率
- 计算顶点法向、面法向
- 计算混合Voronoi面积
- 计算三角形面积、外接圆圆心
- 计算均匀拉普拉斯算子和余切拉普拉斯算子,计算余切拉普拉斯边权重
- 构造均匀拉普拉斯矩阵和余切拉普拉斯矩阵
- MathUtils放置了计算余切及相关Clamp方法
- Vector3D实现了基本的三维向量方法,包括点积、叉积、求模等
- 实现了obj格式的读取与写入
- 为Plankton半边网格库补充了一些常用方法
- 基于余切权的显式拉普拉斯光滑
- 基于余切权的隐式拉普拉斯光滑
- 可计算边界的网格对偶
- 任意多边形网格的三角化
- 提取特征边,当相邻面夹角大于给定角度即被视为特征边