Slicer 5.13
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
vtkMRMLRayCastMapper.h
Go to the documentation of this file.
1/*==============================================================================
2
3 Program: 3D Slicer
4
5 Copyright (c) Kitware Inc.
6
7 See COPYRIGHT.txt
8 or http://www.slicer.org/copyright/copyright.txt for details.
9
10 Unless required by applicable law or agreed to in writing, software
11 distributed under the License is distributed on an "AS IS" BASIS,
12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 See the License for the specific language governing permissions and
14 limitations under the License.
15
16==============================================================================*/
17
18#ifndef vtkMRMLRayCastMapper_h
19#define vtkMRMLRayCastMapper_h
20
21// MRMLDisplayableManager includes
22#include "vtkMRMLDisplayableManagerExport.h"
23
24// VTK includes
25#include <vtkMapper.h>
26
27class vtkMatrix4x4;
28
34class VTK_MRML_DISPLAYABLEMANAGER_EXPORT vtkMRMLRayCastMapper : public vtkMapper
35{
36public:
38 void PrintSelf(ostream& os, vtkIndent indent) override;
39
54 virtual bool IntersectWithRay(const double p1[3], const double p2[3], double t1, double t2, vtkMatrix4x4* toWorld, double& t, double xyz[3], double n[3]) = 0;
55
56protected:
58 ~vtkMRMLRayCastMapper() override = default;
59
60private:
62 void operator=(const vtkMRMLRayCastMapper&) = delete;
63};
64
65#endif
~vtkMRMLRayCastMapper() override=default
vtkAbstractTypeMacro(vtkMRMLRayCastMapper, vtkMapper)
vtkMRMLRayCastMapper()=default
void PrintSelf(ostream &os, vtkIndent indent) override
virtual bool IntersectWithRay(const double p1[3], const double p2[3], double t1, double t2, vtkMatrix4x4 *toWorld, double &t, double xyz[3], double n[3])=0