Interstellar … Fantasy 【18EC】

Interstellar … Fantasy

题意

三维空间内存在一个球,给球外两个点,问这两个点的最短距离

思路

只要判断线段与圆是否相交就可以

对于圆 (O) 外的两点 (s,t) , 线段 (st) 与圆 (O) 相交的条件为

[dfrac {overrightarrow{st} *overrightarrow{so}} {|st|} > sqrt{|so|^2 - r^2} and overrightarrow{to} *overrightarrow{ts} > 0 ]

第一个条件确定的范围是粉色直线内的区域,但是灰色区域是不合法的

第二个条件是蓝色的圆之外的点,这样就是满足题意的区域了

原文地址:https://www.cnblogs.com/sduwh/p/14061697.html