INET Framework for OMNeT++/OMNEST
inet::ShapeBase Class Referenceabstract

This class represents a 3 dimensional geometric shape independently of its position and orientation. More...

#include <ShapeBase.h>

Inheritance diagram for inet::ShapeBase:
inet::Cuboid inet::Polyhedron inet::Prism inet::Sphere

Public Member Functions

 ShapeBase ()
 
virtual ~ShapeBase ()
 
virtual Coord computeBoundingBoxSize () const =0
 Computes the 3 dimensional size of the shapes's bounding box. More...
 
virtual bool computeIntersection (const LineSegment &lineSegment, Coord &intersection1, Coord &intersection2, Coord &normal1, Coord &normal2) const =0
 Computes the intersection with the given line segment in the shape's coordinate system. More...
 

Detailed Description

This class represents a 3 dimensional geometric shape independently of its position and orientation.

Moving a shape around, rotating it, or reflecting it in a mirror is the same shape as the original, and not a distinct shape.

Constructor & Destructor Documentation

inet::ShapeBase::ShapeBase ( )
inline
33 {}
virtual inet::ShapeBase::~ShapeBase ( )
inlinevirtual
34 {}

Member Function Documentation

virtual Coord inet::ShapeBase::computeBoundingBoxSize ( ) const
pure virtual

Computes the 3 dimensional size of the shapes's bounding box.

Implemented in inet::Polyhedron, inet::Prism, inet::Cuboid, and inet::Sphere.

Referenced by inet::BVHTree::computeBoundingBox(), and inet::BVHTree::AxisComparator::operator()().

virtual bool inet::ShapeBase::computeIntersection ( const LineSegment lineSegment,
Coord intersection1,
Coord intersection2,
Coord normal1,
Coord normal2 
) const
pure virtual

Computes the intersection with the given line segment in the shape's coordinate system.

Implemented in inet::Polyhedron, inet::Prism, inet::Cuboid, and inet::Sphere.

Referenced by inet::physicallayer::DielectricObstacleLoss::computeObjectLoss(), and inet::physicallayer::IdealObstacleLoss::isObstacle().


The documentation for this class was generated from the following file: