#include <math.h>
#include "polyDBG.h"
Go to the source code of this file.
|
static Real | area (Real A[2], Real B[2], Real C[2]) |
|
Int | DBG_isConvex (directedLine *poly) |
|
Int | DBG_is_U_monotone (directedLine *poly) |
|
Int | DBG_is_U_direction (directedLine *poly) |
|
Int | DBG_edgesIntersect (directedLine *l1, directedLine *l2) |
|
Int | DBG_edgesIntersectGen (Real A[2], Real B[2], Real C[2], Real D[2]) |
|
Int | DBG_intersectChain (vertexArray *chain, Int start, Int end, Real A[2], Real B[2]) |
|
Int | DBG_polygonSelfIntersect (directedLine *poly) |
|
Int | DBG_edgeIntersectPoly (directedLine *edge, directedLine *poly) |
|
Int | DBG_polygonsIntersect (directedLine *p1, directedLine *p2) |
|
Int | DBG_polygonListIntersect (directedLine *pList) |
|
Int | DBG_isCounterclockwise (directedLine *poly) |
|
Int | DBG_rayIntersectEdge (Real v0[2], Real dx, Real dy, Real v10[2], Real v1[2], Real v2[2]) |
|
Int | DBG_rayIntersectPoly (Real v0[2], Real dx, Real dy, directedLine *poly) |
|
Int | DBG_pointInsidePoly (Real v[2], directedLine *poly) |
|
Int | DBG_enclosingPolygons (directedLine *poly, directedLine *list) |
|
void | DBG_reverse (directedLine *poly) |
|
Int | DBG_checkConnectivity (directedLine *polygon) |
|
Int | DBG_check (directedLine *polyList) |
|
static directedLine * | DBG_edgeIntersectChainD (directedLine *e, directedLine *begin, directedLine *end) |
|
directedLine * | DBG_cutIntersectionPoly (directedLine *polygon, int &cutOccur) |
|
directedLine * | DBG_cutIntersectionAllPoly (directedLine *list) |
|
sampledLine * | DBG_collectSampledLinesAllPoly (directedLine *polygonList) |
|
void | DBG_collectSampledLinesPoly (directedLine *polygon, sampledLine *&retHead, sampledLine *&retTail) |
|
◆ area()
Definition at line 50 of file polyDBG.cc.
Referenced by _svcauth_des(), _svcauth_unix(), arcToMultDLines(), cdf_callback(), chainConcave(), chainConvex(), CheckOrientation(), DBG_edgesIntersect(), DBG_edgesIntersectGen(), DBG_isConvex(), DBG_rayIntersectEdge(), Subdivider::findIrregularS(), FT_Outline_Get_Orientation(), GdipCloneBitmapArea(), Patch::getstepsize(), gray_render_line(), gray_sweep(), Mesher::isCcw(), Mesher::isCw(), monoTriangulationRecGenOpt(), polygon_area(), reflexChain::processNewVertex(), render_clipped_polygon(), render_polygon(), scale_internal(), scale_internal_byte(), scale_internal_float(), scale_internal_int(), scale_internal_short(), scale_internal_ubyte(), scale_internal_uint(), scale_internal_ushort(), scaleInternalPackedPixel(), and test_SPI_SETWORKAREA().
◆ DBG_check()
Definition at line 482 of file polyDBG.cc.
485 if(polyList ==
NULL)
return 0;
491 fprintf(
stderr,
"DBG_check: there are self intersections, don't know to modify the polygons\n");
519 if(correctDir != actualDir)
521 fprintf(
stderr,
"DBG_check: polygon with incorrect orientations. reversed\n");
Int DBG_checkConnectivity(directedLine *polygon)
Int DBG_polygonListIntersect(directedLine *pList)
_Check_return_opt_ _CRTIMP int __cdecl fprintf(_Inout_ FILE *_File, _In_z_ _Printf_format_string_ const char *_Format,...)
void DBG_reverse(directedLine *poly)
Int DBG_enclosingPolygons(directedLine *poly, directedLine *list)
Int DBG_isCounterclockwise(directedLine *poly)
◆ DBG_checkConnectivity()
◆ DBG_collectSampledLinesAllPoly()
Definition at line 697 of file polyDBG.cc.
705 if(polygonList ==
NULL)
sampledLine * insert(sampledLine *nline)
directedLine * getNextPolygon()
void DBG_collectSampledLinesPoly(directedLine *polygon, sampledLine *&retHead, sampledLine *&retTail)
◆ DBG_collectSampledLinesPoly()
◆ DBG_cutIntersectionAllPoly()
Definition at line 679 of file polyDBG.cc.
688 tempNext =
temp->getNextPolygon();
directedLine * DBG_cutIntersectionPoly(directedLine *polygon, int &cutOccur)
◆ DBG_cutIntersectionPoly()
Definition at line 549 of file polyDBG.cc.
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
GLdouble GLdouble GLdouble r
Int DBG_edgesIntersect(directedLine *l1, directedLine *l2)
static directedLine * DBG_edgeIntersectChainD(directedLine *e, directedLine *begin, directedLine *end)
GLenum GLuint GLenum GLsizei const GLchar * buf
ios_base &_STLP_CALL fixed(ios_base &__s)
Int DBG_polygonSelfIntersect(directedLine *poly)
static unsigned __int64 next
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Referenced by directedLine::cutIntersectionAllPoly(), and DBG_cutIntersectionAllPoly().
◆ DBG_edgeIntersectChainD()
◆ DBG_edgeIntersectPoly()
◆ DBG_edgesIntersect()
◆ DBG_edgesIntersectGen()
◆ DBG_enclosingPolygons()
Definition at line 412 of file polyDBG.cc.
Int DBG_pointInsidePoly(Real v[2], directedLine *poly)
GLuint GLuint GLsizei count
Referenced by DBG_check().
◆ DBG_intersectChain()
Definition at line 216 of file polyDBG.cc.
Int DBG_edgesIntersectGen(Real A[2], Real B[2], Real C[2], Real D[2])
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Referenced by findDownCorners(), and findUpCorners().
◆ DBG_is_U_direction()
◆ DBG_is_U_monotone()
Definition at line 73 of file polyDBG.cc.
89 if(cur_sign != prev_sign)
93 if(n_changes ==2)
return 1;
Int compV2InX(Real A[2], Real B[2])
◆ DBG_isConvex()
◆ DBG_isCounterclockwise()
◆ DBG_pointInsidePoly()
◆ DBG_polygonListIntersect()
Definition at line 284 of file polyDBG.cc.
Int DBG_polygonSelfIntersect(directedLine *poly)
Int DBG_polygonsIntersect(directedLine *p1, directedLine *p2)
directedLine * getNextPolygon()
Referenced by DBG_check().
◆ DBG_polygonSelfIntersect()
◆ DBG_polygonsIntersect()
◆ DBG_rayIntersectEdge()
Definition at line 321 of file polyDBG.cc.
365 if(nomEdge == denom) {
371 if(denom*nomRay>0 && denom*nomEdge>0 && nomEdge/denom <=1.0)
GLfloat GLfloat GLfloat v2
static Real area(Real A[2], Real B[2], Real C[2])
Referenced by DBG_rayIntersectPoly().
◆ DBG_rayIntersectPoly()
Definition at line 378 of file polyDBG.cc.
GLuint GLuint GLsizei count
Int DBG_rayIntersectEdge(Real v0[2], Real dx, Real dy, Real v10[2], Real v1[2], Real v2[2])
Referenced by DBG_pointInsidePoly().
◆ DBG_reverse()
Definition at line 435 of file polyDBG.cc.
454 oldNext =
temp->getNext();
456 temp->putPrev(oldNext);
void putDirection(short dir)
void putNext(directedLine *p)
void putPrev(directedLine *p)
Referenced by DBG_check().