Skip to content

anitagraser/PyMEOS

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

335 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MEOS Logo

MEOS (Mobility Engine, Open Source) is a C library which enables the manipulation of temporal and spatio-temporal data based on MobilityDB's data types and functions.

PyMEOS is a library built on top of MEOS that provides all of its functionality wrapped in a set of Python classes.

This repository contains 3 subprojects:

  • PyMEOS CFFI: wrapper of the MEOS C Library built using CFFI.
  • PyMEOS: library that exposes the set of classes that should be used by the developer. Built on top of PyMEOS CFFI.
  • PyMEOS Examples: set of example programs using PyMEOS.

Usage

Installation

pip install pymeos

PyMEOS wheel should be compatible with any system, but it is possible that the pre-built distribution is not available for PyMEOS CFFI for some OS/Architecture.
If it is not available, see the source installation notes on PyMEOS CFFI's readme on how to proceed

Sample code

IMPORTANT Before using any PyMEOS function, always call pymeos_initialize. Otherwise, the library will crash with a Segmentation Fault error. You should also always call pymeos_finalize at the end of your code.

from pymeos import pymeos_initialize, pymeos_finalize, TGeogPointInst, TGeogPointSeq

# Important: Always initialize MEOS library
pymeos_initialize()

sequence_from_string = TGeogPointSeq(string='[Point(10.0 10.0)@2019-09-01 00:00:00+01, Point(20.0 20.0)@2019-09-02 00:00:00+01, Point(10.0 10.0)@2019-09-03 00:00:00+01]')
print(f'Output: {sequence_from_string}')

sequence_from_points = TGeogPointSeq(instant_list=[TGeogPointInst(string='Point(10.0 10.0)@2019-09-01 00:00:00+01'), TGeogPointInst(string='Point(20.0 20.0)@2019-09-02 00:00:00+01'), TGeogPointInst(string='Point(10.0 10.0)@2019-09-03 00:00:00+01')], lower_inc=True, upper_inc=True)
speed = sequence_from_points.speed()
print(f'Speeds: {speed}')

# Call finish at the end of your code
pymeos_finalize()

About

Python wrapper for the MEOS library

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Jupyter Notebook 94.5%
  • Python 4.8%
  • Other 0.7%