HinetPy.utils 模块

HinetPy用到的工具函数。

  • HinetPy.utils.splitinteger(_number, maxn)[源代码]
  • 将一个整数分割成尽量等大小的多块
  1. >>> split_integer(12, 3)
  2. [3, 3, 3, 3]
  3. >>> split_integer(15, 4)
  4. [4, 4, 4, 3]
  • HinetPy.utils.pointinside_box(_latitude, longitude, minlatitude=None, maxlatitude=None, minlongitude=None, maxlongitude=None)[源代码]
  • 检查一个点是否在一个矩形区域内。
  1. >>> point_inside_box(40, 130)
  2. True
  3. >>> point_inside_box(40, 130, 0, 50, 100, 150)
  4. True
  5. >>> point_inside_box(40, 130, 0, 30, 100, 150)
  6. False
  7. >>> point_inside_box(40, 130, None, 50, 100, None)
  8. True
  • HinetPy.utils.haversine(lat1, lon1, lat2, lon2)[源代码]
  • 使用 haversine 公式计算地球上两点之间的大圆距离。

https://stackoverflow.com/a/4913653/7770208

  1. >>> haversine(40, 130, 50, 140)
  2. 12.224069629545902
  3. >>> haversine(-20, 50, 30, 70)
  4. 53.57930271469817
  • HinetPy.utils.pointinside_circular(_lat1, lon1, lat2, lon2, minradius=None, maxradius=None)[源代码]
  • 检查点是否在环形区域内。
  1. >>> point_inside_circular(30, 50, 30, 52, 0, 5)
  2. True
  • HinetPy.utils.todatetime(_value)[源代码]
  • 将输入转换为 datetime.
  1. >>> to_datetime('201001010000')
  2. datetime.datetime(2010, 1, 1, 0, 0)
  3. >>> to_datetime('2010-01-01T03:45')
  4. datetime.datetime(2010, 1, 1, 3, 45)