geometry
Base module for geometric abstractions
The geometry module provides general geometry functions.
It is used extensively, so each function should be highly optimized.
Created on Wed May 5, 17:34:45 2021.
@author: HugoFara
- pylinkage.geometry.bounding_box(locus)
Compute the bounding box of a locus.
- Parameters:
locus (list[tuple[float]]) – A list of points or any iterable with the same structure.
- Returns:
Bounding box as (y_min, x_max, y_max, x_min).
- Return type:
tuple[float]
- pylinkage.geometry.circle_intersect(circle1, circle2, tol=0.0)
Return the intersections between two circles.
Transcription of a Matt Woodhead program, method provided by Paul Bourke, 1997. http://paulbourke.net/geometry/circlesphere/.
- Parameters:
circle1 (first circle, sequence of (abscissa, ordinate, radius)) –
circle2 (second circle, sequence of (abscissa, ordinate, radius)) –
tol (distance under which two points are considered equal.) –
- pylinkage.geometry.cyl_to_cart(radius, theta, ori=(0, 0))
Convert polar coordinates into cartesian.
- Parameters:
radius (distance from ori) –
theta (angle is the angle starting from abscissa axis) –
ori (origin point.) –
- pylinkage.geometry.dist_builtin(point1, point2)
Euclidian distance between two 2D points.
Legacy built-in unoptimized equivalent of math.dist in Python 3.8.
- pylinkage.geometry.intersection(obj_1, obj_2, tol=0.0)
Return intersection between two objects (points or circles).
Return nothing of no intersection. tol: absolute tolerance to use if provided.
- pylinkage.geometry.norm(vec)
Return the norm of a 2-dimensional vector.
- pylinkage.geometry.sqr_dist(point1, point2)
Square of the distance between two points.
Faster than dist.