10 #ifndef vtkImplicitConeFrustum_h
11 #define vtkImplicitConeFrustum_h
13 #include "smtk/extension/vtk/source/vtkSMTKSourceExtModule.h"
14 #include "vtkImplicitBoolean.h"
16 #include "vtkVector.h"
43 void PrintSelf(ostream& os, vtkIndent indent)
override;
60 virtual bool SetBottomRadius(
double radius);
61 vtkGetMacro(BottomRadius,
double);
71 virtual bool SetTopRadius(
double radius);
72 vtkGetMacro(TopRadius,
double);
80 virtual bool SetBottomPoint(
const vtkVector3d& pt);
81 virtual bool SetBottomPoint(
double x,
double y,
double z)
83 return this->SetBottomPoint(vtkVector3d(x, y, z));
85 vtkGetMacro(BottomPoint, vtkVector3d);
93 virtual bool SetTopPoint(
const vtkVector3d& pt);
94 virtual bool SetTopPoint(
double x,
double y,
double z)
96 return this->SetTopPoint(vtkVector3d(x, y, z));
98 vtkGetMacro(TopPoint, vtkVector3d);
105 double GetAngle()
const;
114 void UpdateImplicit();
116 vtkNew<vtkCone> InfiniteCone;
117 vtkNew<vtkTransform> ConeTransform;
119 vtkVector3d BottomPoint;
120 double BottomRadius{ 0.5 };
121 vtkNew<vtkPlane> BottomPlane;
123 vtkVector3d TopPoint;
124 double TopRadius{ 0.0 };
125 vtkNew<vtkPlane> TopPlane;