Releases: micycle1/PGS
Releases · micycle1/PGS
PGS 1.1.0
Added
PGS_CirclePacking— a class for circle packings of shapes, subject to varying constraints and patterns of tangenciesclosestPointPair()toPGS_Optimisation. Efficiently computes the closest pair of points in a set of points.farthestPointPair()toPGS_Optimisation. Efficiently computes the farthest pair of points in a set of points.chaikinCut()toPGS_Morphology. Smoothes shapes via iterated corner cuts.createHeart()toPGS_Construction. Generates heart-shaped PShapes.urquhartFaces()toPGS_Triangulation. Tesselates a triangulation into polygons corresponding to the faces of an Urquhart graph.gabrielFaces()toPGS_Triangulation. Tesselates a triangulation into polygons corresponding to the faces of an Gabriel graph.- Additional method signature for
earCutTriangulation()accepts a PShape argument (previously it accepted a list of points only) - Additional method signature for
generateRandomPoints()that accepts a random seed. - Additional method signature for each of the existing 3 Delaunay Triangulation methods, accepting a collection of points only.
- Expand
PGS_Conversionto support conversion between:PATHPShape<->JTSLineStringPOINTSPShape<->JTSMultiPointLINESPShape<->JTSMultiLineString
Changed
- Split
PGS_Processing.concaveHull()intoconcaveHullDFS()andconcaveHullBFS()(the method previously used the BFS approach only). - Compute (rather than ignore) circle sites of radius 0 (these are effectively points) in
PGS_Voronoi.voronoiCirclesDiagram() - Replaced the algorithm used by
PGS_Processing.generateRandomPoints()with a triangulation-based approach. The new approach is ~10x faster! - Renamed
delaunayTriangulationTin()todelaunayTriangulationMesh(). - Renamed
poissonTriangulation()topoissonTriangulationPoints()(the method of the same original name now outputs a PShape).
Fixed
- Error when
concaveHull2()was called with alpha > 1. - Concave hull methods no longer mutate the input point set.
- PShapes marked as closed and having less than 3 vertices could cause an error during conversion (#22).
PGS_Conversion.toPVector()now handles primitive PShapes- Constrained Delaunay triangulations now respect shape holes
Removed
PGS_Processing.concaveHull()(see Changed)
PGS 1.0.0
The first release😀.
Download the .jar from here to use PGS as a library within Processing.
A notable behavior (yet inconsequential for most users) at the moment is that GROUP PShapes (i.e. PShapes with multiple children) are flattened (unioned) before being processed. If this is behavior is ever problematic to you, then iterate over the child PShapes individually, calling the method for each one.