Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions

mitk::Ellipsoid Class Reference
[Data Classes]

Data class containing an ellipsoid. More...

#include <mitkEllipsoid.h>

Inheritance diagram for mitk::Ellipsoid:
Inheritance graph
[legend]
Collaboration diagram for mitk::Ellipsoid:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Ellipsoid Self
typedef BoundingObject Superclass
typedef itk::SmartPointer< SelfPointer
typedef itk::SmartPointer
< const Self
ConstPointer

Public Member Functions

virtual const char * GetClassName () const
virtual mitk::ScalarType GetVolume ()
virtual bool IsInside (const Point3D &p) const

Static Public Member Functions

static Pointer New ()

Protected Member Functions

 Ellipsoid ()
virtual ~Ellipsoid ()

Detailed Description

Data class containing an ellipsoid.

Definition at line 30 of file mitkEllipsoid.h.


Member Typedef Documentation

typedef itk::SmartPointer<const Self> mitk::Ellipsoid::ConstPointer

Reimplemented from mitk::BoundingObject.

Definition at line 33 of file mitkEllipsoid.h.

typedef itk::SmartPointer<Self> mitk::Ellipsoid::Pointer

Reimplemented from mitk::BoundingObject.

Definition at line 33 of file mitkEllipsoid.h.

Reimplemented from mitk::BoundingObject.

Definition at line 33 of file mitkEllipsoid.h.

Reimplemented from mitk::BoundingObject.

Definition at line 33 of file mitkEllipsoid.h.


Constructor & Destructor Documentation

mitk::Ellipsoid::Ellipsoid (  ) [protected]

Definition at line 25 of file mitkEllipsoid.cpp.

References New(), and mitk::Surface::SetVtkPolyData().

: BoundingObject()
{
  vtkSphereSource* sphere = vtkSphereSource::New();
  sphere->SetRadius(1.0);
  sphere->SetThetaResolution(20);
  sphere->SetPhiResolution(20);
  sphere->Update();
  SetVtkPolyData(sphere->GetOutput());
  sphere->Delete();
}
mitk::Ellipsoid::~Ellipsoid (  ) [protected, virtual]

Definition at line 39 of file mitkEllipsoid.cpp.

{
}

Member Function Documentation

virtual const char* mitk::Ellipsoid::GetClassName (  ) const [virtual]

Reimplemented from mitk::BoundingObject.

mitk::ScalarType mitk::Ellipsoid::GetVolume (  ) [virtual]

Reimplemented from mitk::BoundingObject.

Definition at line 59 of file mitkEllipsoid.cpp.

{
  return   GetGeometry()->GetExtentInMM(0) * 0.5
    * GetGeometry()->GetExtentInMM(1) * 0.5
    * GetGeometry()->GetExtentInMM(2) * 0.5
    * vnl_math::pi * 4.0/3.0;
}
bool mitk::Ellipsoid::IsInside ( const Point3D &  p ) const [virtual]

Definition at line 44 of file mitkEllipsoid.cpp.

References QuadProgPP::pow().

{
  // transform point from world to object coordinates
  ScalarType p[4];
  p[0] = worldPoint[0];
  p[1] = worldPoint[1];
  p[2] = worldPoint[2];
  p[3] = 1;

  GetGeometry()->GetVtkTransform()->GetInverse()->TransformPoint(p, p);

  return (pow(p[0], 2) + pow(p[1], 2) + pow(p[2], 2) <= 1);
}
static Pointer mitk::Ellipsoid::New (  ) [static]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines