
Security News
Crates.io Implements Trusted Publishing Support
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
A library for modelling and processing 2.5D terrains using a (2D) Delaunay triangulation. The triangulation is computed in 2D, but the z-elevation of the vertices are kept.
The underlying code is written in Rust (so it's rather fast) and robust arithmetic is used (so it shouldn't crash). startinpy uses the startin Rust library and adds several utilities and functions, for instance NumPy support for input/output, exporting to several formats, and easy-of-use.
startinpy allows you to:
To install the latest release: pip install startinpy
(watch out: this does not work with Linux currently, it installs an old version!)
maturin build --release
cd ./target/wheels/
pip install [name-wheel].whl
will install it to your local Pythonmaturin develop
import startinpy
shouldn't return any errorTo run the automated test suite:
pip install -r tests/requirements.txt
pytest
The folder ./demo
contains a few examples.
import laspy
import numpy as np
import startinpy
las = laspy.read("../data/small.laz")
pts = np.vstack((las.x, las.y, las.z)).transpose()
dt = startinpy.DT()
dt.insert(pts)
# -- remove vertex #4
try:
dt.remove(4)
except Exception as e:
print(e)
print("# vertices:", dt.number_of_vertices())
print("# triangles:", dt.number_of_triangles())
# -- print the vertices forming the convex hull, in CCW-order
print("CH: ", dt.convex_hull())
# -- fetch all the incident triangles (CCW-ordered) to the vertex #235
vi = 235
one_random_pt = dt.points[vi]
print("one random point:", one_random_pt)
print(dt.incident_triangles_to_vertex(vi))
# -- interpolate at a location with the linear in TIN method
zhat = dt.interpolate({"method": "TIN"}, [[85718.5, 447211.6]])
print("result: ", zhat[0])
@article{Ledoux24,
author = {Ledoux, Hugo},
title = {{startinpy}: {A} {P}ython library for modelling and processing {2.5D} triangulated terrains},
journal = {Journal of Open Source Software},
year = {2024},
volume = {9},
number = {103},
pages = {7123},
doi = {10.21105/joss.07123}
}
FAQs
Modelling terrains with Delaunay triangulation
We found that startinpy demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
Research
/Security News
Undocumented protestware found in 28 npm packages disrupts UI for Russian-language users visiting Russian and Belarusian domains.
Research
/Security News
North Korean threat actors deploy 67 malicious npm packages using the newly discovered XORIndex malware loader.