Logo ROOT  
Reference Guide
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Loading...
Searching...
No Matches
basic3d.C File Reference

Detailed Description

View in nbviewer Open in SWAN
Show 3-D polylines and markers.

void basic3d(){
TCanvas *c1 = new TCanvas("c1","PolyLine3D & PolyMarker3D Window",200,10,700,500);
// create a pad
TPad *p1 = new TPad("p1","p1",0.05,0.02,0.95,0.82,46,3,1);
p1->Draw();
p1->cd();
// creating a view
view->SetRange(5,5,5,25,25,25);
// create a first PolyLine3D
// set points
pl3d1->SetPoint(0, 10, 10, 10);
pl3d1->SetPoint(1, 15, 15, 10);
pl3d1->SetPoint(2, 20, 15, 15);
pl3d1->SetPoint(3, 20, 20, 20);
pl3d1->SetPoint(4, 10, 10, 20);
// set attributes
pl3d1->SetLineWidth(3);
pl3d1->SetLineColor(5);
// create a second PolyLine3D
// set points
pl3d2->SetPoint(0, 5, 10, 5);
pl3d2->SetPoint(1, 10, 15, 8);
pl3d2->SetPoint(2, 15, 15, 18);
pl3d2->SetPoint(3, 5, 20, 20);
pl3d2->SetPoint(4, 10, 10, 5);
// set attributes
pl3d2->SetLineWidth(5);
pl3d2->SetLineColor(2);
// create a first PolyMarker3D
// set points
pm3d1->SetPoint(0, 10, 10, 10);
pm3d1->SetPoint(1, 11, 15, 11);
pm3d1->SetPoint(2, 12, 15, 9);
pm3d1->SetPoint(3, 13, 17, 20);
pm3d1->SetPoint(4, 14, 16, 15);
pm3d1->SetPoint(5, 15, 20, 15);
pm3d1->SetPoint(6, 16, 18, 10);
pm3d1->SetPoint(7, 17, 15, 10);
pm3d1->SetPoint(8, 18, 22, 15);
pm3d1->SetPoint(9, 19, 28, 25);
pm3d1->SetPoint(10, 20, 12, 15);
pm3d1->SetPoint(11, 21, 12, 15);
// set marker size, color & style
pm3d1->SetMarkerSize(2);
pm3d1->SetMarkerColor(4);
pm3d1->SetMarkerStyle(2);
// create a second PolyMarker3D
pm3d2->SetPoint(0, 22, 15, 15);
pm3d2->SetPoint(1, 23, 18, 21);
pm3d2->SetPoint(2, 24, 26, 13);
pm3d2->SetPoint(3, 25, 17, 15);
pm3d2->SetPoint(4, 26, 20, 15);
pm3d2->SetPoint(5, 27, 15, 18);
pm3d2->SetPoint(6, 28, 20, 10);
pm3d2->SetPoint(7, 29, 20, 20);
// set marker size, color & style
pm3d2->SetMarkerSize(2);
pm3d2->SetMarkerColor(1);
pm3d2->SetMarkerStyle(8);
// draw
pl3d1->Draw();
pl3d2->Draw();
pm3d1->Draw();
pm3d2->Draw();
//
// draw a title/explanation in the canvas pad
c1->cd();
TPaveText *title = new TPaveText(0.1,0.85,0.9,0.97);
title->SetFillColor(24);
title->AddText("Examples of 3-D primitives");
TText *click=title->AddText("Click anywhere on the picture to rotate");
click->SetTextColor(4);
title->Draw();
}
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
virtual void SetFillColor(Color_t fcolor)
Set the fill area color.
Definition TAttFill.h:37
The Canvas class.
Definition TCanvas.h:23
The most important graphics class in the ROOT system.
Definition TPad.h:28
A Pave (see TPave) with text, lines or/and boxes inside.
Definition TPaveText.h:21
virtual TText * AddText(Double_t x1, Double_t y1, const char *label)
Add a new Text line to this pavetext at given coordinates.
void Draw(Option_t *option="") override
Draw this pavetext with its current attributes.
A 3-dimensional polyline.
Definition TPolyLine3D.h:33
A 3D polymarker.
Base class for several text objects.
Definition TText.h:22
See TView3D.
Definition TView.h:25
static TView * CreateView(Int_t system=1, const Double_t *rmin=nullptr, const Double_t *rmax=nullptr)
Create a concrete default 3-d view via the plug-in manager.
Definition TView.cxx:27
virtual void SetRange(const Double_t *min, const Double_t *max)=0
return c1
Definition legend1.C:41
Author
Rene Brun

Definition in file basic3d.C.