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

mitk::Cylinder Class Reference
[Data Classes]

Data class containing an cylinder. More...

#include <mitkCylinder.h>

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

List of all members.

Public Types

typedef Cylinder 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

 Cylinder ()
virtual ~Cylinder ()

Detailed Description

Data class containing an cylinder.

Definition at line 30 of file mitkCylinder.h.


Member Typedef Documentation

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

Reimplemented from mitk::BoundingObject.

Definition at line 33 of file mitkCylinder.h.

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

Reimplemented from mitk::BoundingObject.

Definition at line 33 of file mitkCylinder.h.

Reimplemented from mitk::BoundingObject.

Definition at line 33 of file mitkCylinder.h.

Reimplemented from mitk::BoundingObject.

Definition at line 33 of file mitkCylinder.h.


Constructor & Destructor Documentation

mitk::Cylinder::Cylinder (  ) [protected]

Definition at line 25 of file mitkCylinder.cpp.

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

: BoundingObject()
{
  vtkCylinderSource* cylinder = vtkCylinderSource::New();
  cylinder->SetRadius(1.0);
  cylinder->SetHeight(2.0);
  cylinder->SetCenter(0.0, 0.0, 0.0);
  cylinder->SetResolution(20);
  cylinder->CappingOn();
  cylinder->Update();
  SetVtkPolyData(cylinder->GetOutput());
  cylinder->Delete();
}
mitk::Cylinder::~Cylinder (  ) [protected, virtual]

Definition at line 40 of file mitkCylinder.cpp.

{
}

Member Function Documentation

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

Reimplemented from mitk::BoundingObject.

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

Reimplemented from mitk::BoundingObject.

Definition at line 62 of file mitkCylinder.cpp.

References mitk::Geometry3D::GetExtentInMM().

{
  Geometry3D* geometry = GetTimeSlicedGeometry();
  return   geometry->GetExtentInMM(0) * 0.5
    * geometry->GetExtentInMM(2) * 0.5
    * vnl_math::pi
    * geometry->GetExtentInMM(1);
}
bool mitk::Cylinder::IsInside ( const Point3D &  p ) const [virtual]

Definition at line 45 of file mitkCylinder.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);

  mitk::ScalarType v =  pow(p[0], 2) + pow(p[2], 2);
  bool retval = (v <= 1) && (p[1] >= -1) && (p[1] <= 1);
  return retval; 
}
static Pointer mitk::Cylinder::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