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

Detailed Description

View in nbviewer Open in SWAN
Test the IsInside methods of various graphics primitives.

void inside() {
auto el = new TEllipse(0.75, 0.25, .2,.15,45,315,62);
el->Draw();
auto gr = new TGraph();
double gr_x1[5] = {0.1, 0.3388252, 0.03796561, 0.4176218, 0.1};
double gr_y1[5] = {0.5, 0.9644737, 0.7776316, 0.6960526, 0.5};
gr = new TGraph(5, gr_x1, gr_y1);
gr->Draw("L");
auto bx = new TBox(.7, .8, .9, .95);
bx->Draw();
auto pv = new TPave(.05, .1, .3, .2);
pv->Draw();
auto di = new TDiamond(.05, .25, .3, .4);
di->Draw();
auto cr = new TCrown(.5, .5, .1, .15);
cr->SetFillColor(19);
cr->Draw();
for (int i = 0; i < 10000; i++) {
double x = gRandom->Rndm();
double y = gRandom->Rndm();
auto p = new TMarker(x,y,7);
p->Draw();
if (el->IsInside(x,y) || bx->IsInside(x,y) || pv->IsInside(x,y) || di->IsInside(x,y) || cr->IsInside(x,y) ||
gr->IsInside(x,y)) {
p->SetMarkerColor(kGreen);
} else {
p->SetMarkerColor(kRed);
}
}
}
@ kRed
Definition Rtypes.h:66
@ kGreen
Definition Rtypes.h:66
winID h TVirtualViewer3D TVirtualGLPainter p
R__EXTERN TRandom * gRandom
Definition TRandom.h:62
Create a Box.
Definition TBox.h:22
To draw a Crown.
Definition TCrown.h:19
Draw a Diamond.
Definition TDiamond.h:17
Draw Ellipses.
Definition TEllipse.h:23
A TGraph is an object made of two arrays X and Y with npoints each.
Definition TGraph.h:41
virtual Int_t IsInside(Double_t x, Double_t y) const
Return 1 if the point (x,y) is inside the polygon defined by the graph vertices 0 otherwise.
Definition TGraph.cxx:1841
void Draw(Option_t *chopt="") override
Draw this graph with its current attributes.
Definition TGraph.cxx:831
Manages Markers.
Definition TMarker.h:22
A TBox with a bordersize and a shadow option.
Definition TPave.h:19
Double_t Rndm() override
Machine independent random number generator.
Definition TRandom.cxx:559
Double_t y[n]
Definition legend1.C:17
Double_t x[n]
Definition legend1.C:17
TGraphErrors * gr
Definition legend1.C:25
Author
Olivier Couet

Definition in file inside.C.