84( PlaneComputer & computer,
unsigned int nbplanes,
int diameter )
86 typedef typename PlaneComputer::Space
Space;
91 unsigned int nbok = 0;
93 Point( diameter, diameter, diameter ) );
95 std::random_device rd;
98 for (
unsigned int p = 0; p < nbplanes; ++p )
105 while ( ( a == 0 ) && ( b == 0 ) && ( c == 0 ) );
108 computer.init( 2*diameter, 1, 1 );
109 ++nb; nbok += computer.extend( pts.begin(), pts.end() ) ? 1 : 0;
110 trace.
info() <<
"Primitive=" << computer.primitive() << std::endl;
111 trace.
info() <<
"(" << nbok <<
"/" << nb <<
") extend "
112 << pts.size() <<
" points of plane "
113 << mu <<
" <= " << a <<
"*x+" << b <<
"*y+" << c <<
"*z+"
114 <<
" < " << (mu+a+b+c) << std::endl;
115 computer.init( 2*diameter, 1, 1 );
116 std::shuffle( pts.begin(), pts.end(), g );
117 ++nb; nbok += computer.extend( pts.begin(), pts.end() ) ? 1 : 0;
118 trace.
info() <<
"Primitive=" << computer.primitive() << std::endl;
119 trace.
info() <<
"(" << nbok <<
"/" << nb <<
") extend "
120 << pts.size() <<
" shuffled points of plane "
121 << mu <<
" <= " << a <<
"*x+" << b <<
"*y+" << c <<
"*z+"
122 <<
" < " << (mu+a+b+c) << std::endl;
136 plane.
init( 100, 1, 1 );
137 ok = plane.extend(
Point(0,0,0) );
138 trace.
info() <<
"Point(0,0,0) is " << ( ok ?
"ok" :
"ko" ) << std::endl;
140 ok = plane.extend(
Point(1,0,0) );
141 trace.
info() <<
"Point(1,0,0) is " << ( ok ?
"ok" :
"ko" ) << std::endl;
143 ok = plane.extend(
Point(0,1,0) );
144 trace.
info() <<
"Point(0,1,0) is " << ( ok ?
"ok" :
"ko" ) << std::endl;
146 ok = plane.extend(
Point(1,1,0) );
147 trace.
info() <<
"Point(1,1,0) is " << ( ok ?
"ok" :
"ko" ) << std::endl;
149 ok = plane.extend(
Point(2,0,0) );
150 trace.
info() <<
"Point(2,0,0) is " << ( ok ?
"ok" :
"ko" ) << std::endl;
152 ok = plane.extend(
Point(0,2,0) );
153 trace.
info() <<
"Point(0,2,0) is " << ( ok ?
"ok" :
"ko" ) << std::endl;
155 ok = plane.extend(
Point(0,2,0) );
156 trace.
info() <<
"Point(0,2,0) is " << ( ok ?
"ok" :
"ko" ) << std::endl;
158 ok = plane.extend(
Point(1,1,1) );
159 trace.
info() <<
"Point(1,1,1) is " << ( ok ?
"ok" :
"ko" ) << std::endl;
Iterator for HyperRectDomain.
const ConstIterator & begin() const
const ConstIterator & end() const