- Main Page
- Namespaces
- Classes
- Files
- Related Pages

- Class List
- Class Hierarchy
- Class Members

# col::Data Struct Reference

Holds results from collision detection and client data. More...

Collaboration diagram for col::Data:

[legend]
List of all members.

## Public Member Functions
| Data (const osg::NodePtr &node1, const osg::NodePtr &node2)
| Construct a struct for passing data down to individual polygon checks.
void | addPolygonIntersectionData (const osg::Pnt3f *points1, const osg::Pnt3f *points2, const unsigned int *pgon1, const unsigned int *pgon2, unsigned int nvertices1, unsigned int nvertices2, const osg::GeometryPtr &geom1, const osg::GeometryPtr &geom2, unsigned int pgon_index1, unsigned int pgon_index2)
| Fill polisecdata.
## Public Attributes
std::vector< PolygonIntersectionData > | polisecdata
osg::NodePtr | node [2]
| Pointers to the two geometries being checked.
osg::Matrix | m12
| Transformation from geom[0] into geom[1]'s frame.
bool | all_polygons
void * | client_data
| client data
PolyIntersectT | intersect_fun
| The function for checking a pair of polygons, NULL = built-in.
const Dop * | dop [2]
| Only for debugging; DOPs of leaves in geom[1]'s coord system.
## Protected Member Functions
| Data (const Data &source)
Data & | operator= (const Data &source)

## Detailed Description

Holds results from collision detection and client data.

This struct is used to pass data to collision callbacks.

It is also used internally to pass data around within the collision pipeline and recursive collision detection algos.

Todo:
  - Aus intersect_fun einen Funktor machen.
  - Interne Daten vielleicht in eine Unterklasse ziehen.

Author:
  Gabriel Zachmann

## Constructor & Destructor Documentation

col::Data::Data | ( | const osg::NodePtr & | node1,
|  | const osg::NodePtr & | node2 |
| ) |  |  |

Construct a struct for passing data down to individual polygon checks.

Parameters:

  | node1,node2 | the two geometries to be checked for collision

Exceptions:

  | XCollision | If a `geom` does not have a positions array.

Todo:
  - Ist es ok, die Fkt getPoints() zu verwenden, wenn sich die Punkte waehrend der Koll.erkennung veraendern (durch OSG)?

The documentation for this struct was generated from the following files:

- Collision.h
- Collision.cpp