Visibility based recursive polygon triangulation for improving farm distance metrics. This repository provides code for implementing the recursive visibility-based polygon triangulation algorithm and associated distance metrics introduced in the manuscript Improving the accuracy of distance-based metrics in livestock farms by Sharp, McGree and Sabir.
Repository contains
- triangulation_algorithms.ipynb: Notebook containing example implementations of the triangulation algorithms.
- environment.yml: The YAML file for constructing the Python environment containing all packages required to run the triangulation algorithms
- triangulation_tools: Folder containing functions for implementing the triangulation algorithm
- distance_functions.py: helper functions for computing Haversine and Euclidean distances
- gate_processing.py: Logic for processing triangulation across a network of paddocks connected by gates
- paddock_processing.py Logic for processing triangulation for paddocks containing multiple viewpoints/points of interest
- polygon_triangulation.py VisibilityCalculator class for performing visibility-based recursive polygon triangulation for a region containing a single viewpoint/point of interest
- triangle_average_distance.py: Helper functions for computing paddock average distances from triangulation.