[Luogu4724][模板]三维凸包(增量构造法)

Posted hocriser

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Luogu4724][模板]三维凸包(增量构造法)相关的知识,希望对你有一定的参考价值。

1.向量点积同二维,x1y1+x2y2+x3y3。向量叉积是行列式形式,(y1z2-z1y2,z1x2-x1z2,x1y2-y1x2)。

2.增量构造法:

  1)首先定义,一个平面由三个点唯一确定。一个平面是有方向的,它的法向量只有一个方向(即逆时针相邻两向量的叉积的方向)。

  2)初始时只有(p1,p2,p3)和(p3,p2,p1)两个平面(相当于两个方向相反的面组成了一个体积为0的凸包)

  3)每次加入一个新点时,以这个点为光源中心投影到凸包上,不能被照到的面在新凸包中仍然存在,否则不存在。

  4)将新点和明暗分界线上的边组成的面加入凸包。

3.具体实现:

  1)一个面是否能被照到的判断:点在这个面的正面,即平面上任意一点到这个点的向量与平面法向量的点积为正值。

  2)明暗分界线的判断:每次

以上是关于[Luogu4724][模板]三维凸包(增量构造法)的主要内容,如果未能解决你的问题,请参考以下文章

P4724 模板三维凸包(简洁)

UVA1438 Asteroids(增量法求三维凸包,加权所有三棱锥质量求多面体重心)

三维凸包模板

hdu4266(三维凸包模板题)

[模板]三维凸包(无讲解)

POJ3528 HDU3662 三维凸包模板