# Programmers_Computational_Geometry **Repository Path**: lizhibang720/Programmers_Computational_Geometry ## Basic Information - **Project Name**: Programmers_Computational_Geometry - **Description**: Programmer's Computational Geometry - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-02-27 - **Last Updated**: 2025-02-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 版权说明 本作品版权归TwinklingStar所有,允许你自由的下载、打印、复制、转载本作品,但需要注明来源,禁止用于任何商业目的。 ## 版本说明 Beta版 ## 内容概要 本作品提供网页版和PDF版: * 网页版:http://www.twinklingstar.cn/category/computational-geometry * PDF版:https://github.com/twinklingstar20/Programmers_Computational_Geometry 本作品中介绍的绝大部分算法,都有与之相对应的C++源码实现: * 源码:https://github.com/twinklingstar20/Programmers_Computational_Geometry 本作品包括九个章节,第1章主要介绍计算几何相关的数学概念,主要涉及向量和矩阵,例如在计算凸包的最小包围盒中就应用了矩阵的特征向量。第2、3、4、5章,分别介绍了几何中的四种基础图元:面、线、三角形和矩形,以及与之相关的计算几何算法。第6章介绍更复杂的图元:多边形,涉及点与多边形的关系判定、多边形类型判定等。第7章介绍旋转测径法,它能高效地解决计算凸多边形的宽、凸多边形间距离等问题。第8、9章分别介绍三维空间下的凸包算法和包围体相关的算法。 ## 修改记录 由于作者能力有限,作品中定有缺点和错误,欢迎读者的批评指正,可以在个人网站留言或者发电子邮件,不胜感激。 网页版将会实时的更进并修改发现的错误,但PDF版的错误修改将需要较长的时间周期。 2016.10.06 发布Beta版,未经过严格校正的不稳定版本 ## 个人信息 * 电子邮箱:zhangjianlong20@gmail.com * 个人网站:www.twinklingstar.cn * github:https://github.com/twinklingstar20 ## 致谢 感谢胡凯博对第1章的审校,王莹对第3章的审校。 ## 推荐书籍 推荐几本与计算几何相关的书籍: [1]. Philip J. Schneider, and David H. Eberly. Geometric Tools for Computer Graphics. Morgan Kaufmann, 2002. [2]. Franco P.Preparata, and Michael Shamos. Computational Geometry: An Introduction. Springer Science & Business Media, 2012. [3]. Joseph O'Rourke. Computational Geometry in C. Cambridge university press, 1998. [4]. Mark De Berg, et al. Computational Geometry: Algorithms and Applications. Springer Berlin Heidelberg, 2000. ## 其它 本人书写本作品的初衷就是希望能给计算机专业的同学提供基础计算几何算法的实现说明,它的侧重点在于实现和说明,所以本作品所有的阐述都是围绕着理解算法并实现算法这一个中心展开。 本作品采用自愿付费的方式,你可以从前面提供的网址免费的下载本作品和源码,如果它确实能给你带来便利,能达到它的价值,你也很愿意为之付费,那么谢谢你的支持! 附,支付宝帐号:zhangjianlong20@gmail.com