mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-29 16:20:11 -04:00
parent
343c808fc4
commit
66b338c112
@ -2185,6 +2185,8 @@ triangulate_single_polygon(int nvert, int posmax, int side) {
|
||||
endv = mchain[posmax].vnum;
|
||||
}
|
||||
|
||||
int num_triangles = 0;
|
||||
|
||||
while ((v != endv) || (ri > 1))
|
||||
{
|
||||
// cerr << " v = " << v << " ri = " << ri << " rc = " << rc.size() << "
|
||||
@ -2199,8 +2201,13 @@ triangulate_single_polygon(int nvert, int posmax, int side) {
|
||||
vert[rc[ri]].pt);
|
||||
if ( crossResult >= 0 ) /* could be convex corner or straight */
|
||||
{
|
||||
if ( crossResult > 0) /* convex corner: cut it off */
|
||||
if (crossResult > 0) { /* convex corner: cut it off */
|
||||
_result.push_back(Triangle(this, rc[ri - 1], rc[ri], v));
|
||||
if (++num_triangles >= nvert - 2) {
|
||||
// We can't generate more than this number of triangles.
|
||||
return;
|
||||
}
|
||||
}
|
||||
/* else : perfectly straight, will be abandoned anyway */
|
||||
ri--;
|
||||
rc.pop_back();
|
||||
|
Loading…
x
Reference in New Issue
Block a user