00001 // @(#)root/graf:$Id: TGraphPolar.h 24706 2008-07-08 12:37:45Z brun $ 00002 // Author: Sebastian Boser, 02/02/06 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * 00006 * All rights reserved. * 00007 * * 00008 * For the licensing terms see $ROOTSYS/LICENSE. * 00009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00010 *************************************************************************/ 00011 00012 #ifndef ROOT_TGraphPolar 00013 #define ROOT_TGraphPolar 00014 00015 #ifndef ROOT_TGraphErrors 00016 #include "TGraphErrors.h" 00017 #endif 00018 #ifndef ROOT_Riosfwd 00019 #include "Riosfwd.h" 00020 #endif 00021 #ifndef ROOT_TAttText 00022 #include "TAttText.h" 00023 #endif 00024 #ifndef ROOT_TAttLine 00025 #include "TAttLine.h" 00026 #endif 00027 00028 #include "TGraphPolargram.h" 00029 00030 ////////////////////////////////////////////////////////////////////////// 00031 // // 00032 // TGraphPolar // 00033 // // 00034 // Polar graph graphics class. // 00035 // // 00036 ////////////////////////////////////////////////////////////////////////// 00037 00038 class TGraphPolar: public TGraphErrors { 00039 00040 private: 00041 Bool_t fOptionAxis; // Force drawing of new coord system 00042 00043 protected: 00044 TGraphPolargram* fPolargram; // The polar coordinates system 00045 Double_t* fXpol; // [fNpoints] points in polar coordinates 00046 Double_t* fYpol; // [fNpoints] points in polar coordinates 00047 00048 00049 public: 00050 TGraphPolar(); 00051 TGraphPolar(Int_t n, const Double_t* x=0, const Double_t* y=0, 00052 const Double_t* ex=0, const Double_t* ey=0); 00053 virtual ~TGraphPolar(); 00054 00055 TGraphPolargram *GetPolargram() {return fPolargram;}; 00056 00057 void Draw(Option_t* options = ""); 00058 Bool_t GetOptionAxis() {return fOptionAxis;}; 00059 void SetMaxRadial(Double_t maximum = 1); //*MENU* 00060 void SetMinRadial(Double_t minimum = 0); //*MENU* 00061 void SetMaximum(Double_t maximum = 1) {SetMaxRadial(maximum);} 00062 void SetMinimum(Double_t minimum = 0) {SetMinRadial(minimum);} 00063 void SetMaxPolar(Double_t maximum = 6.28318530717958623); //*MENU* 00064 void SetMinPolar(Double_t minimum = 0); //*MENU* 00065 void SetOptionAxis(Bool_t opt) {fOptionAxis = opt;}; 00066 void SetPolargram(TGraphPolargram *p) {fPolargram = p;}; 00067 Double_t *GetXpol(); 00068 Double_t *GetYpol(); 00069 00070 ClassDef(TGraphPolar,1); // Polar graph 00071 }; 00072 00073 #endif