Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
## ofxDabGeom
**Author**: Daniel Bisig - Coventry University, UK - [ad5041@coventry.ac.uk](ad5041@coventry.ac.uk) - Zurich University of the Arts, CH - [daniel.bisig@zhdk.ch](daniel.bisig@zhdk.ch)
**Dependencies**: [ofxDabBase](https://bitbucket.org/dbisig/ofxdabbase_011/src/master/), [ofxDabMath](https://bitbucket.org/dbisig/ofxdabmath_011/src/master/), [ofxAssimpModelLoader](https://openframeworks.cc/documentation/ofxAssimpModelLoader/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