#include "cutil.h"
#include "matrix.h"
#include "seam.h"
#include "stopper.h"
Go to the source code of this file.
Function Documentation
Definition at line 283 of file chopper.cpp.
{
int length;
int index;
length = seams.size();
for (index = 0; index < length; index++)
if (shared_split_points(seams[index], seam))
return TRUE;
return FALSE;
}
Definition at line 300 of file chopper.cpp.
{
TESSLINE *outline;
EDGEPT *edgept;
for (outline = blob->outlines; outline != NULL; outline = outline->next) {
edgept = outline->loop;
do {
if (edgept == NULL)
break;
edgept = edgept->next;
}
while (edgept != outline->loop);
if (edgept == NULL)
return 1;
}
return 0;
}
Definition at line 397 of file chopper.cpp.
{
TESSLINE *outline;
inT8 found_em[3];
if (seam->split1 == NULL || blob == NULL)
return (TRUE);
found_em[0] = found_em[1] = found_em[2] = FALSE;
for (outline = blob->outlines; outline; outline = outline->next) {
if (!found_em[0] &&
((seam->split1 == NULL) ||
is_split_outline (outline, seam->split1))) {
found_em[0] = TRUE;
}
if (!found_em[1] &&
((seam->split2 == NULL) ||
is_split_outline (outline, seam->split2))) {
found_em[1] = TRUE;
}
if (!found_em[2] &&
((seam->split3 == NULL) ||
is_split_outline (outline, seam->split3))) {
found_em[2] = TRUE;
}
}
if (!found_em[0] || !found_em[1] || !found_em[2])
return (FALSE);
else
return (TRUE);
}
Definition at line 68 of file chopper.cpp.
{
EDGEPT *srcpt;
if (start == NULL)
return;
srcpt = start;
do {
srcpt->flags[1] = 1;
srcpt = srcpt->next;
}
while (srcpt != start);
srcpt->flags[1] = 2;
}
Definition at line 98 of file chopper.cpp.
{
EDGEPT *srcpt;
EDGEPT *real_start;
if (start == NULL)
return NULL;
srcpt = start;
do {
if (srcpt->flags[1] == 2)
break;
srcpt = srcpt->next;
}
while (srcpt != start);
real_start = srcpt;
do {
srcpt = srcpt->next;
if (srcpt->prev->flags[1] == 0) {
remove_edgept(srcpt->prev);
}
}
while (srcpt != real_start);
return real_start;
}