Go to the source code of this file.
Define Documentation
#define is_inside_angle |
( |
|
pt | ) |
(angle_change ((pt)->prev, (pt), (pt)->next) < chop_inside_angle) |
#define same_outline_bounds |
( |
|
outline, |
|
|
|
other_outline |
|
) |
| |
Value:(outline->topleft.x == other_outline->topleft.x && \
outline->topleft.y == other_outline->topleft.y && \
outline->botright.x == other_outline->botright.x && \
outline->botright.y == other_outline->botright.y) \
Definition at line 54 of file olutil.h.
#define weighted_edgept_dist |
( |
|
p1, |
|
|
|
p2, |
|
|
|
chop_x_y_weight |
|
) |
| |
Value:(((p1)->pos.x - (p2)->pos.x) * \
((p1)->pos.x - (p2)->pos.x) * chop_x_y_weight + \
((p1)->pos.y - (p2)->pos.y) * \
((p1)->pos.y - (p2)->pos.y))
Definition at line 67 of file olutil.h.
Function Documentation
void correct_blob_order |
( |
TBLOB * |
blob1, |
|
|
TBLOB * |
blob2 |
|
) |
| |
void eliminate_duplicate_outlines |
( |
TBLOB * |
blob | ) |
|
Definition at line 67 of file olutil.cpp.
{
TESSLINE *outline;
TESSLINE *other_outline;
TESSLINE *last_outline;
for (outline = blob->outlines; outline; outline = outline->next) {
for (last_outline = outline, other_outline = outline->next;
other_outline;
last_outline = other_outline, other_outline = other_outline->next) {
if (same_outline_bounds (outline, other_outline)) {
last_outline->next = other_outline->next;
other_outline->loop = NULL;
delete other_outline;
other_outline = last_outline;
outline->is_hole = false;
}
}
}
}
void setup_blob_outlines |
( |
TBLOB * |
blob | ) |
|