ATLAS Offline Software
Loading...
Searching...
No Matches
SbPlane.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5*/
6
7/*
8 *
9 * New file for VP1HEPVis
10 *
11 * taken from: http://fossies.org/dox/osc_vis_source_16.11.6/HEPVis_2include_2HEPVis_2SbPlane_8h_source.html
12 *
13 * R.M. Bianchi <rbianchi@cern.ch>
14 *
15 * 12.12.2012
16 *
17 *===================
18 * VP1 Customization:
19 *
20 * - look into the code for comments "// VP1 change"
21 *
22 */
23
24//---
25
26
27#ifndef HEPVis_SbPlane_h
28#define HEPVis_SbPlane_h
29
30/*
31 * An SbPlane class that uses doubles instead of floats.
32 * Used by the BooleanProcessor.
33 */
34
35#include <Inventor/C/errors/debugerror.h>
36#include <Inventor/SbVec3d.h>
37
38namespace HEPVis {
39
40class SbPlane {
41public:
42 SbPlane();
43 SbPlane(const SbVec3d& normal,double D);
44 SbPlane(const SbVec3d& normal,const SbVec3d& point);
45 // To follow CLHEP.
46 // Constructor from four numbers - creates plane a*x+b*y+c*z+d=0.
47 //SbPlane(double a,double b,double c,double d);
48 double getDistance(const SbVec3d& point) const;
49 const SbVec3d& getNormal() const;
50 double getDistanceFromOrigin() const;
51public:
52 double distance(const SbVec3d& point) const; //CLHEP compatibility
53private:
54 SbVec3d m_normal;
55 double m_distance;
56};
57
58}
59
60#endif
double distance(const SbVec3d &point) const
Definition SbPlane.cxx:74
SbVec3d m_normal
Definition SbPlane.h:54
const SbVec3d & getNormal() const
Definition SbPlane.cxx:77
double m_distance
Definition SbPlane.h:55
double getDistanceFromOrigin() const
Definition SbPlane.cxx:78
double getDistance(const SbVec3d &point) const
Definition SbPlane.cxx:71