43 std :: vector< Scalar >
x_;
61 this->vPt_.push_back(
this);
63 marker_.symbol =
"'o'";
65 marker_.edgeColor =
Black;
66 marker_.faceColor =
White;
73 assert(x0.size() >=
dim);
75 for (
unsigned int iDim = 0; iDim <
dim; ++iDim ) {
76 x_ [ iDim ] = x0 [ iDim ];
88 const std :: vector< Scalar > &
pos()
const
91 const std :: vector< Scalar > &
x()
const
94 std :: vector< Scalar > &
x()
111 std :: vector< Point * > onBlockBoundNeighbors;
112 for (
unsigned int iPt1 = 0; iPt1 < 4; ++iPt1 ) {
114 onBlockBoundNeighbors.push_back(vpNeighbor1_ [ iPt1 ]);
118 return onBlockBoundNeighbors;
135 for (
int i = 0; i <
dim; ++i ) {
136 x_ [ i ] += dx [ i ];
146 std :: vector< Scalar > dx(
dim,
Scalar( 0.0 ) );
147 for (
int i = 0; i <
dim; ++i ) {
148 dx [ i ] = x_ [ i ] - mc.
x_ [ i ];
151 x_ [ 0 ] = std :: cos(angle) * dx [ 0 ] - std :: sin(angle) * dx [ 1 ] + mc.
x_ [ 0 ];
152 x_ [ 1 ] = std :: sin(angle) * dx [ 0 ] + std :: cos(angle) * dx [ 1 ] + mc.
x_ [ 1 ];
158 for (
int iDim = 0; iDim <
dim; ++iDim ) {
159 const Scalar dxi = ( pt0.
x_ [ iDim ] - pt1.
x_ [ iDim ] );
163 return std :: sqrt(s);
171 Point ab(b.
x() [ 0 ] - a.
x() [ 0 ], b.
x() [ 1 ] - a.
x() [ 1 ]);
172 Point cb(b.
x() [ 0 ] - c.
x() [ 0 ], b.
x() [ 1 ] - c.
x() [ 1 ]);
173 Scalar dot = ( ab.x() [ 0 ] * cb.x() [ 0 ] + ab.x() [ 1 ] * cb.x() [ 1 ] );
174 Scalar cross = ( ab.x() [ 0 ] * cb.x() [ 1 ] - ab.x() [ 1 ] * cb.x() [ 0 ] );
185 friend const std :: vector< Point * >
notMarked(
const std :: vector< Point * > &vPt0)
187 std :: vector< Point * > vPt1;
189 for (
int iPt = 0; iPt < vPt0.size(); ++iPt ) {
190 if ( !vPt0 [ iPt ]->
mark() ) {
191 vPt1.push_back(vPt0 [ iPt ]);
200 for (
int iDim = 0; iDim <
dim; ++iDim ) {
209 template<
typename VEdgePtrT >
213 for (
int ie = 0; ie < vEd0.size(); ++ie ) {
222 void infos(
const std :: string &name0 =
"")
const
224 std :: cout <<
"# point " << name0 <<
" ";
226 std :: cout <<
": (";
227 for (
int i = 0; i <
dim - 1; ++i ) {
228 std :: cout << x_ [ i ] <<
", ";
231 std :: cout << x_ [ dim - 1 ] <<
")";
234 <<
" , Id = " << this->
Id()
235 <<
" , mark = " << this->
mark()
238 std :: cout <<
" , markersize = " << marker_.size
239 <<
" , markerSymbol = " << marker_.symbol
240 <<
" , markerEdgeColor = " <<
colorName(marker_.edgeColor)
241 <<
" , markerFaceColor = " <<
colorName(marker_.faceColor) <<
"\n";