球面多边形运算中的预制点
pySphericalPolygon的Python项目详细描述
执行多边形中的点操作
在github上:https://github.com/omrivolk/pySphericalPolygon
安装
pipinstallpySphericalPolygon
用法
importpySphericalPolygonaspysp
创建具有顶点的球形多边形[[tetah_1,phi_1],[tetah_2,phi_2]…]。
因为地理目的特提斯是纬度,而phi是经度。
sp=pysp.SpericalPolygon([[0,0],[80,30],[10,60]])
检查点是否在内部
printsp.contains_points([[30,30]])[True]
一次检查多个点
printsp.contains_points([[30,30],[-30,30],[-90,40]])[TrueFalseFalse]
顶点和/或点都可以用弧度指定
printsp.contains_points([[0.52359878,0.52359878],[-0.52359878,0.52359878],[-1.57079633,0.6981317]],radians=True)[TrueFalseFalse]
会议的主题是地理:
(-π/2 rad) -90° ≤ tetha ≤ 90° (π/2 rad)
(-π rad) -180° ≤ phi ≤ 180° (π rad)
但也需要数学上的转换:
(0 rad) 0° ≤ tetha ≤ 180° (π rad)
(0 rad) 0° ≤ phi ≤ 360° (2π rad)
sp=pysp.SpericalPolygon([[90,0],[10,30],[80,60]],convention='math')