← Back

ofxDabGeom

github.com/bisnad/ofxDabGeom · @bisnad
OF 0.11 Geometry Algorithms 3D / Point Cloud

ofxDabGeom - The library includes various spline algorithms, such as B-Spline, Bezier, and Hermite for interpolation.

0 0 Last commit 1y ago Created 1y ago

README

ofxDabGeom



Author: Daniel Bisig - Coventry University, UK - ad5041@coventry.ac.uk - Zurich University of the Arts, CH - daniel.bisig@zhdk.ch

Dependencies: ofxDabBase, ofxDabMath, ofxAssimpModelLoader

---

Summary



ofxDabGeom provides a variety of two and three dimensional geometrical objects including methods for calculating their axis aligned bounding boxes, closest points, and intersections. The following geometrical objects are available: Ray, Line, Polyline, Triangle, Plane, Cuboid, Polysurface, Spline, Splinesurface, and Mesh. The code is compatible with OpenFrameworks 0.11 and has been tested on Windows and MacOS. The following classes are available.

Geometry: base class of all geometrical objects

GeometryGroup: composite geometry consisting of other geometries and geometry groups.

Ray: infinite line with origin and direction

Line: finite line with start and end point

PolyLine: consecutive line segments

LineTools: calculate closest points between point and ray, point and line, point and polyline, and intersection between two rays, ray and line, two lines, ray and polyline, line and polyline

Triangle: triangle defined by three corner points

TrangleTools: calculate distance between point and triangle, projection of point into triangle, closest point to triangle

Plane: infinite plan with origin and normal

PlaneTools: calculate closest point, intersection between ray and plane, line intersection of two planes

Cuboid: Axis aligned bounding box with minimum and maximum position

CuboidTools: calculate closest point to cuboid surface, interaction between ray and cuboid

PolySurface: Surface consisting of vertices organised in rows and columns

Spline: Polyline consisting of control points and vertices, the latter of which are calculated using a line interpolation algorithm

SplineGroup: Multiple splines sharing the same interpolation algorithm

SplineAlgorithm: base class for calculating interpolated vertices from control points

LineAlg: Linear interpolation algorithm

BSplineAlg: BSpline based interpolation algorithm

BezierSplineAlg: Bezier based interpolation algorithm

HermiteSplineAlg: Hermite based interpolation algorithm

SplineTools: calculate closest points or closest indices between point and spline

SplineSurface: Polysurface consisting of control points and vertices, the latter of which are calculated using a surface interpolation algorithm

LineSurfaceAlg: Linear surface interpolation algorithm

BSurfaceAlg: BSpline based surface interpolation algorithm

BezierSurfaceAlg: Bezier based surface interpolation algorithm

Get this addon

HTTPS
SSH