计算球体贴片的边界球体

时间:2018-03-01 21:58:14

标签: 3d geometry

假设我们有一个半径为R的球体,并在这个球体上给出一个补丁,其起始角度为phi和theta,扫掠角度为phi_len和theta_len。贴片被定义为球体上[phi,phi + phi_len]和[theta,theta + theta_len]内所有角度的表面。

我想在三维坐标中计算这个补丁的最小边界球,即中心(x,y,z)和半径r,以便上面的补丁完全包含在球体内。

1 个答案:

答案 0 :(得分:1)

我有两个想法:

ONE:让p1= [x1,y1,z1]是补丁开始的点,p2= [x2,y2,z2]angle_max = max(phi_len, theta_len)的点。

对于angle_max<=PI最小球体将在

中居中的情况
c = p1+(p2-p1)/2

p1p2之间距离的半径:

r = |p2-p1|/2

对于PI<angle_max<=2PI最小球体是半球为R的完整球体的情况。

SECOND:让p1= [x1,y1,z1]是补丁开始的点,p2= [x2,y2,z2]是角度phitheta_lenp3= [x3,y3,z3]是角度点{{1} }和phi_len。设theta然后angle_max = max(phi_len, theta_len),最小球体由其赤道描述,在三角形p1,p2,p3上为Circumscribed circle。对于案例angle_max<=PI,最小球体是半球为R的完整球体。