CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Attributes | Private Member Functions | Friends
TEveEllipsoid Class Reference

#include <TEveEllipsoid.h>

Inheritance diagram for TEveEllipsoid:

Public Member Functions

 ClassDefOverride (TEveEllipsoid, 0)
 
void ComputeBBox () override
 
TClass * ProjectedClass (const TEveProjection *p) const override
 
TEveTrans & RefEMtx ()
 
TEveVector & RefExtent3D ()
 
TEveVector & RefPos ()
 
void SetScale (float x)
 
 TEveEllipsoid (const Text_t *n="TEveEllipsoid", const Text_t *t="")
 
 ~TEveEllipsoid () override
 

Protected Attributes

TEveTrans fEMtx
 
float fEScale
 
TEveVector fExtent3D
 
TEveVector fPos
 

Private Member Functions

TEveEllipsoidoperator= (const TEveEllipsoid &)
 
 TEveEllipsoid (const TEveEllipsoid &)
 

Friends

class TEveEllipsoidGL
 
class TEveEllipsoidProjected
 
class TEveEllipsoidProjectedGL
 

Detailed Description

Definition at line 13 of file TEveEllipsoid.h.

Constructor & Destructor Documentation

TEveEllipsoid::TEveEllipsoid ( const TEveEllipsoid )
private
TEveEllipsoid::TEveEllipsoid ( const Text_t *  n = "TEveEllipsoid",
const Text_t *  t = "" 
)

Definition at line 7 of file TEveEllipsoid.cc.

7  : TEveShape(n, t) {
8  // Constructor.
9 }
TEveEllipsoid::~TEveEllipsoid ( )
inlineoverride

Definition at line 31 of file TEveEllipsoid.h.

31 {}

Member Function Documentation

TEveEllipsoid::ClassDefOverride ( TEveEllipsoid  ,
 
)
void TEveEllipsoid::ComputeBBox ( )
override

Definition at line 12 of file TEveEllipsoid.cc.

References a, Abs(), fExtent3D, fPos, and Max().

12  {
13  // Compute bounding-box of the data.
14 
15  BBoxInit();
16 
18 
19  fBBox[0] = -a + fPos[0];
20  fBBox[1] = a + fPos[0];
21 
22  fBBox[2] = -a + fPos[1];
23  fBBox[3] = a + fPos[1];
24 
25  fBBox[4] = -a + fPos[2];
26  fBBox[5] = a + fPos[2];
27 }
TEveVector fExtent3D
Definition: TEveEllipsoid.h:24
TEveVector fPos
Definition: TEveEllipsoid.h:23
T Abs(T a)
Definition: MathUtil.h:49
T Max(T a, T b)
Definition: MathUtil.h:44
double a
Definition: hdecay.h:119
TEveEllipsoid& TEveEllipsoid::operator= ( const TEveEllipsoid )
private
TClass * TEveEllipsoid::ProjectedClass ( const TEveProjection *  p) const
override

Definition at line 30 of file TEveEllipsoid.cc.

30  {
31  // Virtual from TEveProjectable, returns TEveEllipsoidProjected class.
32 
33  return TEveEllipsoidProjected::Class();
34 }
TEveTrans& TEveEllipsoid::RefEMtx ( )
inline
TEveVector& TEveEllipsoid::RefExtent3D ( )
inline

Definition at line 37 of file TEveEllipsoid.h.

References fExtent3D.

Referenced by FWVertexCandidateProxyBuilder::build(), FWVertexProxyBuilder::build(), TEveEllipsoidProjected::ComputeBBox(), and TEveEllipsoidGL::DirectDraw().

37 { return fExtent3D; } // cached member for bbox and 3D rendering
TEveVector fExtent3D
Definition: TEveEllipsoid.h:24
TEveVector& TEveEllipsoid::RefPos ( )
inline
void TEveEllipsoid::SetScale ( float  x)
inline

Definition at line 40 of file TEveEllipsoid.h.

References fEScale, and x.

Referenced by FWVertexCandidateProxyBuilder::build(), and FWVertexProxyBuilder::build().

40 { fEScale = x; }

Friends And Related Function Documentation

friend class TEveEllipsoidGL
friend

Definition at line 15 of file TEveEllipsoid.h.

friend class TEveEllipsoidProjected
friend

Definition at line 14 of file TEveEllipsoid.h.

friend class TEveEllipsoidProjectedGL
friend

Definition at line 16 of file TEveEllipsoid.h.

Member Data Documentation

TEveTrans TEveEllipsoid::fEMtx
protected

Definition at line 25 of file TEveEllipsoid.h.

Referenced by RefEMtx().

float TEveEllipsoid::fEScale
protected
TEveVector TEveEllipsoid::fExtent3D
protected

Definition at line 24 of file TEveEllipsoid.h.

Referenced by ComputeBBox(), and RefExtent3D().

TEveVector TEveEllipsoid::fPos
protected

Definition at line 23 of file TEveEllipsoid.h.

Referenced by ComputeBBox(), and RefPos().