library: libGraf3d #include "TNode.h" |
TNode
class description - header file - source file - inheritance tree (.pdf)
protected:
TNode(const TNode&)
TNode& operator=(const TNode&)
public:
TNode()
TNode(const char* name, const char* title, const char* shapename, Double_t x = 0, Double_t y = 0, Double_t z = 0, const char* matrixname = "", Option_t* option = "")
TNode(const char* name, const char* title, TShape* shape, Double_t x = 0, Double_t y = 0, Double_t z = 0, TRotMatrix* matrix = 0, Option_t* option = "")
virtual ~TNode()
virtual void Browse(TBrowser* b)
virtual void BuildListOfNodes()
virtual void cd(const char* path = "0")
static TClass* Class()
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
virtual void Draw(Option_t* option = "")
virtual void DrawOnly(Option_t* option = "")
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
TList* GetListOfNodes() const
virtual TRotMatrix* GetMatrix() const
virtual TNode* GetNode(const char* name) const
virtual char* GetObjectInfo(Int_t px, Int_t py) const
virtual Option_t* GetOption() const
virtual TNode* GetParent() const
TShape* GetShape() const
Int_t GetVisibility() const
virtual Double_t GetX() const
virtual Double_t GetY() const
virtual Double_t GetZ() const
virtual void ImportShapeAttributes()
virtual TClass* IsA() const
virtual Bool_t IsFolder() const
virtual void Local2Master(const Double_t* local, Double_t* master)
virtual void Local2Master(const Float_t* local, Float_t* master)
virtual void ls(Option_t* option = "2") const
virtual void Master2Local(const Double_t* master, Double_t* local)
virtual void Master2Local(const Float_t* master, Float_t* local)
virtual void Paint(Option_t* option = "")
virtual void RecursiveRemove(TObject* obj)
virtual void SetMatrix(TRotMatrix* matrix = 0)
virtual void SetName(const char* name)
virtual void SetNameTitle(const char* name, const char* title)
virtual void SetParent(TNode* parent)
virtual void SetPosition(Double_t x = 0, Double_t y = 0, Double_t z = 0)
virtual void SetVisibility(Int_t vis = 1)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Sizeof3D() const
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
virtual void UpdateMatrix()
virtual void UpdateTempMatrix(const Double_t* dx1, const Double_t* rmat1, Double_t x, Double_t y, Double_t z, Double_t* matrix, Double_t* dxnew, Double_t* rmatnew)
protected:
Double_t fX X offset with respect to parent object
Double_t fY Y offset with respect to parent object
Double_t fZ Z offset with respect to parent object
TRotMatrix* fMatrix Pointer to rotation matrix
TShape* fShape Pointer to shape definition
TNode* fParent Pointer to parent positioned volume
TList* fNodes List of son nodes (if any)
TString fOption List of options if any
Int_t fVisibility Visibility flag
public:
static const enum TNode:: kSonsInvisible
______________________________________________________________________________
T N O D E description
======================
A TNode object is used to build the geometry hierarchy (see TGeometry).
A node may contain other nodes.
A geometry node has attributes:
- name and title
- pointer to the referenced shape (see TShape).
- x,y,z offset with respect to the mother node.
- pointer to the rotation matrix (see TRotMatrix).
A node can be drawn.
TNode()
Node default constructor.
TNode(const char *name, const char *title, const char *shapename, Double_t x, Double_t y, Double_t z, const char *matrixname, Option_t *option)
Node normal constructor.
name is the name of the node
title is title
shapename is the name of the referenced shape
x,y,z are the offsets of the volume with respect to his mother
matrixname is the name of the rotation matrix
This new node is added into the list of sons of the current node
TNode(const char *name, const char *title, TShape *shape, Double_t x, Double_t y, Double_t z, TRotMatrix *matrix, Option_t *option)
Node normal constructor.
name is the name of the node
title is title
shape is the pointer to the shape definition
x,y,z are the offsets of the volume with respect to his mother
matrix is the pointer to the rotation matrix
This new node is added into the list of sons of the current node
~TNode()
Node default destructor.
void cd(const char *)
Change Current Reference node to this.
Int_t DistancetoPrimitive(Int_t px, Int_t py)
Compute distance from point px,py to a Node.
Compute the closest distance of approach from point px,py to this node.
The distance is computed in pixels units.
void ExecuteEvent(Int_t, Int_t, Int_t)
Execute action corresponding to one event.
This member function must be implemented to realize the action
corresponding to the mouse click on the object in the window
TNode * GetNode(const char *name)
Return pointer to node with name in the node tree.
Bool_t IsFolder()
Return TRUE if node contains nodes, FALSE otherwise.
void Local2Master(const Double_t *local, Double_t *master)
Convert one point from local system to master reference system.
Note that before invoking this function, the global rotation matrix
and translation vector for this node must have been computed.
This is automatically done by the Paint functions.
Otherwise TNode::UpdateMatrix should be called before.
void Local2Master(const Float_t *local, Float_t *master)
Convert one point from local system to master reference system.
Note that before invoking this function, the global rotation matrix
and translation vector for this node must have been computed.
This is automatically done by the Paint functions.
Otherwise TNode::UpdateMatrix should be called before.
void ls(Option_t *option)
List Referenced object with current parameters.
void Master2Local(const Double_t *master, Double_t *local)
Convert one point from master system to local reference system.
Note that before invoking this function, the global rotation matrix
and translation vector for this node must have been computed.
This is automatically done by the Paint functions.
Otherwise TNode::UpdateMatrix should be called before.
void Master2Local(const Float_t *master, Float_t *local)
Convert one point from master system to local reference system.
Note that before invoking this function, the global rotation matrix
and translation vector for this node must have been computed.
This is automatically done by the Paint functions.
Otherwise TNode::UpdateMatrix should be called before.
void Paint(Option_t *option)
Paint Referenced node with current parameters.
vis = 1 (default) shape is drawn
vis = 0 shape is not drawn but its sons may be not drawn
vis = -1 shape is not drawn. Its sons are not drawn
vis = -2 shape is drawn. Its sons are not drawn
void SetName(const char *name)
Change the name of this Node
void SetNameTitle(const char *name, const char *title)
Change the name and title of this Node
void SetParent(TNode *parent)
Set the pointer to the parent, keep parents informed about who they have
void SetVisibility(Int_t vis)
Set visibility for this node and its sons.
vis = 3 node is drawn and its sons are drawn
vis = 2 node is not drawn but its sons are drawn
vis = 1 (default) node is drawn
vis = 0 node is not drawn
vis = -1 node is not drawn. Its sons are not drawn
vis = -2 node is drawn. Its sons are not drawn
vis = -3 Only node leaves are drawn
vis = -4 Node is not drawn. Its immediate sons are drawn
void Sizeof3D()
Return total size of this 3-D Node with its attributes.
void UpdateMatrix()
Update global rotation matrix/translation vector for this node
this function must be called before invoking Local2Master
Author: Rene Brun 14/09/95
Last update: root/g3d:$Name: $:$Id: TNode.cxx,v 1.31 2006/05/24 15:31:40 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
ROOT page - Class index - Class Hierarchy - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.