30 return coll.NumPoints(face);
34 Point p = coll.FacePoint(face, point);
35 float x = pl.CoordsX(p);
36 float y = pl.CoordsY(p);
54 int facescount = pol.NumFaces();
55 for(
int i=0;i<facescount;i++)
61 int size = pol.NumPoints(i);
69 triangles.push_back(t);
77 int NumFaces()
const {
return triangles.size(); }
84 Tri t = triangles[face];
86 if (point == 0) index = t.
a;
87 if (point == 1) index = t.
b;
88 if (point == 2) index = t.
c;
89 return pol.FacePoint(faces[face], index);
97 std::vector<int> faces;
98 std::vector<Tri> triangles;
111 return p.NumPoints(face);
115 PlaneIn3d pp(p.FacePoint(face,point), pl);
122 virtual float Attrib(
int face,
int point,
int id)
const
126 virtual unsigned int Color(
int face,
int point)
const
132 return p.FacePoint(face, point);
145 int s = p.NumFaces();
150 count += p.NumPoints(i);
160 int s = p.NumFaces();
165 count += p.NumPoints(i);
166 if (face<count)
return i;
172 int s = p.NumFaces();
177 int oldcount = count;
178 count += p.NumPoints(i);
179 if (face<count)
return face-oldcount;
189 if (point==1 || point==2)
f++;
191 if (point==0 || point==1) pl = p1;
192 if (point==2 || point==3) pl = p2;
206 virtual float Attrib(
int face,
int point,
int id)
const
210 virtual unsigned int Color(
int face,
int point)
const
216 return p.FacePoint(face, point);
233 return p.Index(point);
249 count += arr.Index(i)->NumFaces();
267 count += arr.Index(i)->NumFaces();
268 if (face<count)
return i;
278 int oldcount = count;
279 count += arr.Index(i)->NumFaces();
280 if (face<count)
return face-oldcount;
301 bool (*fptr)(
bool,
bool))
302 : p1(p1), p2(p2), fptr(fptr) { }
305 bool b1 = p1.Inside(p);
306 bool b2 = p2.Inside(p);
312 bool (*fptr)(bool, bool);
336 if (p.
x < tl.x)
return false;
337 if (p.
x > br.x)
return false;
338 if (p.
y < tl.y)
return false;
339 if (p.
y > br.y)
return false;
359 int SizeX()
const {
return g.XSize()-1; }
360 int SizeY()
const {
return g.YSize()-1; }
364 Point2d br = g.Index(x+1, y+1);
382 int size = coll.Size();
384 for(
int i=0;i<
size;i++)
400 int Size()
const {
return c.Size()*2; }
416 int Size()
const {
return g.SizeX()*g.SizeY(); }
419 int size = g.SizeX();
438 p.
x = (tl.
x + br.
x)/2;
439 p.
y = (tl.
y + br.
y)/2;
481 for(
int i=0;i<
size;i++)
486 std::sort(x.begin(), x.end(),
CompareX(p));
487 std::sort(y.begin(), y.end(),
CompareY(p));
491 std::sort(x.begin(), x.end(),
CompareX(p));
492 std::sort(y.begin(), y.end(),
CompareY(p));
494 int XSize()
const {
return p.Size(); }
495 int YSize()
const {
return p.Size(); }
499 pp.
x = p.Index(x[xx]).x;
500 pp.
y = p.Index(y[yy]).y;
517 bool b = bp.Inside(p);
524inline bool AndFuncOp(
bool b,
bool b2) {
return b && b2; }
525inline bool OrFuncOp(
bool b,
bool b2) {
return b || b2; }
533 bool (*op)(
bool b,
bool b2))
534 : points1(r), points2(r2),
535 pointscomb(points1, points2),
542 boolplane(bp1, bp2, op),
546 int Size()
const {
return coll.Size(); }
549 return coll.
Index(i);
ArrayConvert< PointCollection2d, int, Point2d > PointCollection2dConvert
Definition Effect.hh:2666
bool AndFuncOp(bool b, bool b2)
Definition Plane.hh:524
bool OrFuncOp(bool b, bool b2)
Definition Plane.hh:525
bool AndNotFuncOp(bool b, bool b2)
Definition Plane.hh:526
ArrayPolygons2d(Array< int, Polygons2d * > &arr)
Definition Plane.hh:242
Point2d FacePoint(int face, int point) const
Definition Plane.hh:257
int FaceToRemainder(int face) const
Definition Plane.hh:272
int NumPoints(int face) const
Definition Plane.hh:253
int NumFaces() const
Definition Plane.hh:243
int FaceToIndex(int face) const
Definition Plane.hh:261
virtual int Size() const=0
virtual bool Inside(Point2d p) const =0
BoolRectangle(Point2d tl, Point2d br)
Definition Plane.hh:319
int Size() const
Definition Plane.hh:320
Point2d Index(int i) const
Definition Plane.hh:324
bool Inside(Point2d p) const
Definition Plane.hh:334
bool operator()(int p1_, int p2_) const
Definition Plane.hh:451
CompareX(const PointCollection2d &pc1)
Definition Plane.hh:449
CompareY(const PointCollection2d &pc1)
Definition Plane.hh:463
bool operator()(int p1_, int p2_) const
Definition Plane.hh:465
Definition EffectI.hh:212
bool Inside(Point2d p) const
Definition Plane.hh:303
FuncBoolPlane(const BoolPlane &p1, const BoolPlane &p2, bool(*fptr)(bool, bool))
Definition Plane.hh:299
virtual int YSize() const =0
virtual Point2d Index(int x, int y) const =0
virtual int XSize() const =0
Definition Effect.hh:2218
Point Elem() const
Definition Effect.hh:2221
Definition VectorTools.hh:350
Definition Effect.hh:2663
Point2d Index(int i) const
Definition Plane.hh:401
int Size() const
Definition Plane.hh:400
PointsFromRectangleCollection(const RectangleCollection &c)
Definition Plane.hh:399
virtual unsigned int Color(int face, int point) const
Definition Plane.hh:210
int FaceToFace(int face) const
Definition Plane.hh:158
int FaceToRemainder(int face) const
Definition Plane.hh:170
Point FacePoint(int face, int point) const
Definition Plane.hh:184
virtual float Attrib(int face, int point, int id) const
Definition Plane.hh:206
int NumFaces() const
Definition Plane.hh:143
virtual Point2d TexCoord(int face, int point) const
Definition Plane.hh:214
int NumPoints(int face) const
Definition Plane.hh:154
Vector PointNormal(int face, int point) const
Definition Plane.hh:197
Polygons2Faces(Polygons2d &p, Plane p1, Plane p2)
Definition Plane.hh:142
Point FacePoint(int face, int point) const
Definition Plane.hh:113
virtual Point2d TexCoord(int face, int point) const
Definition Plane.hh:130
Vector PointNormal(int face, int point) const
Definition Plane.hh:118
virtual float Attrib(int face, int point, int id) const
Definition Plane.hh:122
int NumFaces() const
Definition Plane.hh:105
int NumPoints(int face) const
Definition Plane.hh:109
Polygons2dFaceCollection(Polygons2d &p, Plane pl)
Definition Plane.hh:104
virtual unsigned int Color(int face, int point) const
Definition Plane.hh:126
int NumFaces() const
Definition Plane.hh:27
Polygons2dFromFaceCollection(FaceCollection &coll, int face, Plane pl)
Definition Plane.hh:26
int NumPoints(int) const
Definition Plane.hh:28
Point2d FacePoint(int, int point) const
Definition Plane.hh:32
virtual Point2d FacePoint(int face, int point) const =0
virtual int NumFaces() const =0
virtual int NumPoints(int face) const =0
Point2d Elem() const
Definition Plane.hh:433
RectCenterPoint(const BoolRectangle &r)
Definition Plane.hh:432
int Size() const
Definition Plane.hh:416
BoolRectangle Index(int a) const
Definition Plane.hh:417
RectCollectionFromRectGrid(const RectangleGrid &g)
Definition Plane.hh:415
RectCondition(const BoolPlane &bp)
Definition Plane.hh:512
bool Index(BoolRectangle r) const
Definition Plane.hh:513
bool Inside(Point2d p) const
Definition Plane.hh:380
RectangleCollectionBoolPlane(const RectangleCollection &coll)
Definition Plane.hh:379
RectangleGridFromGrid(GridIn2d &g)
Definition Plane.hh:358
int SizeY() const
Definition Plane.hh:360
int SizeX() const
Definition Plane.hh:359
BoolRectangle Index(int x, int y) const
Definition Plane.hh:361
virtual BoolRectangle Index(int x, int y) const =0
virtual int SizeY() const =0
virtual int SizeX() const =0
Point2d FacePoint(int face, int point) const
Definition Plane.hh:231
SinglePolygon2d(PointCollection2d &p)
Definition Plane.hh:228
int NumFaces() const
Definition Plane.hh:229
int NumPoints(int) const
Definition Plane.hh:230
int XSize() const
Definition Plane.hh:494
Point2d Index(int xx, int yy) const
Definition Plane.hh:496
void Refresh()
Definition Plane.hh:489
SplitRect(const PointCollection2d &p)
Definition Plane.hh:478
int YSize() const
Definition Plane.hh:495
void Gen()
Definition Plane.hh:52
int NumFaces() const
Definition Plane.hh:77
int NumPoints(int face) const
Definition Plane.hh:78
TriangulateConvexPolygons(Polygons2d &pol)
Definition Plane.hh:51
Point2d FacePoint(int face, int point) const
Definition Plane.hh:82
Definition VectorTools.hh:125
static Vector CrossProduct(const Vector &aVec, const Vector &aVec2)
Definition VectorTools.hh:193
n< br > font size
Definition meshpage.php:3536
double f(const std::string &, double, bool) noexcept
Definition profile_cpp_calls_2.cpp:4
Definition VectorTools.hh:910
float x
Definition VectorTools.hh:911
float y
Definition VectorTools.hh:911
int b
Definition Plane.hh:93
int a
Definition Plane.hh:93
int c
Definition Plane.hh:93