32int main(
int argc,
char* argv[])
44 JParser<> zap(
"Example program to test convex hull and enclosing circle.");
54 catch(
const exception &error) {
55 FATAL(error.what() << endl);
58 gRandom->SetSeed(seed);
69 if (inputFile !=
"") {
71 ifstream in(inputFile.c_str());
73 for (
double x, y; in >> x >> y; ) {
93 for (const_iterator i = buffer.begin(); i != buffer.end(); ++i)
94 out <<
FIXED(7,3) << i->getX() <<
' '
105 for (const_iterator i = buffer.begin(); i != buffer.end(); ++i) {
125 double area = getArea2D(buffer.begin(),
hull.second);
133 for (const_iterator i = buffer.begin(); i != buffer.end(); ++i) {
134 if (!inside2D(buffer.begin(),
hull.second, *i)) { ++n[0]; }
135 if (!inside2D(buffer.begin(),
hull.first,
hull.second, *i)) { ++n[1]; }
137 if (!inside2D(buffer.begin(),
hull.first,
hull.second, *i)) {
142 for (
int i = 0; i !=
sizeof(n)/
sizeof(n[0]); ++i) {
143 NOTICE(
"Number of points outside [" << i <<
"] " << n[i] <<
endl);
149 TCanvas cv(
"cv",
"", 400, 400);
151 cv.SetFillStyle(4000);
168 for (const_iterator i = buffer.begin(); i != buffer.end(); ++i, ++N) {
191 g.SetMarkerStyle(20);
193 g.SetMarkerSize(0.7);
219 TGraph g2(N, &x[i], &y[i]);
221 g2.SetLineColor(
kRed);