【增量算法】三维凸包

这篇博客介绍了计算几何中的三维凸包问题,重点讲解了包裹法和增量算法,其中增量算法因运算简单(仅使用+-*)而被作者推荐。博客中提供了增量算法的详细步骤,并给出了C语言实现的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

很长一段时间没有写总结了,随着冬令营的结束,最近对大幅度的总结。

 

最后一天LRJ讲了下计算几何我才发现3D凸包原来如此简单。

 

主要讲了两个算法:包裹法和增量算法。

 

个人感觉增量法比较好,整个过程只用到了+-*这集中运算,不涉及实数运算。

 

包裹法:首先确定一条一定为凸包上的线段,然后由这条线段为轴,像包纸一样的往顺时针(逆时针)包,碰到的第一个点就是凸包上的点,这时候又可以确定两条直线,递归操作;

 

增量法:首先任选4个点形成的一个四面体,然后每次新加一个点;

            分两种情况:1.在凸包内,无视;

                              2.在凸包外,找到从这个点可以“看见”的面,删除这些面,然后对于一边没有面的线段,和新加的这个点新建一个面;

            至于这个点可以看见的面,就是求出这个面的方程(可以直接求法向量)。

 

明天就是冬令营了,{$RP++}!

 

code:

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值