ROOT logo
#ifndef TTEXT3D
#define TTEXT3D
#include "TPolyLine3D.h"
#include "TAttText.h"

class TNamed;
class TText3D;
class TPolyLine3D;

class TPol3Dtext : public TPolyLine3D {
	
	private:
		TText3D *fText;
		TString fTitle;
	public:
		TPol3Dtext() {};
		virtual ~TPol3Dtext();
		TPol3Dtext(Int_t n, TText3D *text);
		const char * GetTitle() const {return fTitle.Data();};
		const char * GetText() const ;     //*MENU*            
		void SetText(const char * text); //*MENU*
		
		ClassDef (TPol3Dtext, 1)
};

class TText3D : public TPolyLine3D, public TAttText {
	
private:
	TList * fListOfLetters;
	TString fText;
	Double_t fX;
	Double_t fY;
	Double_t fZ;
	Double_t fDirX;
	Double_t fDirY;
	Double_t fDirZ;
	TString fName;
	TString fTitle;
	
//	Width_t fLineWidthText;
	
public:
	TText3D() {};
	virtual ~TText3D();
	TText3D(Double_t x, Double_t y, Double_t z, 
	        Double_t dx, Double_t dy, Double_t dz, 
			  const char * text);
	void Compute();
	void Draw(const char * option="");
	void Paint(const char * option="");
//	Width_t GetLineWidthText() const {return fLineWidthText;};                 
//	void SetLineWidthText(const Width_t wid) {fLineWidthText = wid; Paint();}; //*MENU*
	Width_t GetLineWidth() const {return fLineWidth;};                 
	void SetLineWidth(const Width_t wid) {fLineWidth = wid; Paint();}; //*MENU*
	const char * GetText() const {return fText.Data();};                 
	void SetText(const char * text) {fText = text; Compute(); Paint();}; //*MENU*
	Color_t  GetTextColor() const {return fTextColor;}
	void SetTextColor(Color_t col) {fTextColor = col; Paint();}; //*MENU*
//	Width_t GetLineWidth() {return fLineWidth;};                 
//	void SetLineWidth(Width_t wid) {fLineWidth = wid; Paint();}; //*MENU*
	Size_t GetTextSize() const {return fTextSize;};                 
	void SetTextSize(Size_t siz) {fTextSize =siz; Compute(); Paint();}; //*MENU*
	void SetName(const char * name) {fName = name;};      
	const char * GetName() const {return fName.Data();};      
	void SetTitle(const char * name) {fTitle = name;};      
	const char * GetTitle() const {return fTitle.Data();};      
	Int_t DistancetoPrimitive(Int_t px, Int_t py);
	void ExecuteEvent(Int_t event, Int_t px, Int_t py);
	ClassDef (TText3D, 1)
};
#endif
 TText3D.h:1
 TText3D.h:2
 TText3D.h:3
 TText3D.h:4
 TText3D.h:5
 TText3D.h:6
 TText3D.h:7
 TText3D.h:8
 TText3D.h:9
 TText3D.h:10
 TText3D.h:11
 TText3D.h:12
 TText3D.h:13
 TText3D.h:14
 TText3D.h:15
 TText3D.h:16
 TText3D.h:17
 TText3D.h:18
 TText3D.h:19
 TText3D.h:20
 TText3D.h:21
 TText3D.h:22
 TText3D.h:23
 TText3D.h:24
 TText3D.h:25
 TText3D.h:26
 TText3D.h:27
 TText3D.h:28
 TText3D.h:29
 TText3D.h:30
 TText3D.h:31
 TText3D.h:32
 TText3D.h:33
 TText3D.h:34
 TText3D.h:35
 TText3D.h:36
 TText3D.h:37
 TText3D.h:38
 TText3D.h:39
 TText3D.h:40
 TText3D.h:41
 TText3D.h:42
 TText3D.h:43
 TText3D.h:44
 TText3D.h:45
 TText3D.h:46
 TText3D.h:47
 TText3D.h:48
 TText3D.h:49
 TText3D.h:50
 TText3D.h:51
 TText3D.h:52
 TText3D.h:53
 TText3D.h:54
 TText3D.h:55
 TText3D.h:56
 TText3D.h:57
 TText3D.h:58
 TText3D.h:59
 TText3D.h:60
 TText3D.h:61
 TText3D.h:62
 TText3D.h:63
 TText3D.h:64
 TText3D.h:65
 TText3D.h:66
 TText3D.h:67
 TText3D.h:68
 TText3D.h:69
 TText3D.h:70
 TText3D.h:71