segment_t 21 lib/gfxpoly/active.c segment_t*s = a->list; segment_t 42 lib/gfxpoly/active.c segment_t*s = a->list; segment_t 44 lib/gfxpoly/active.c segment_t*l = 0; segment_t 64 lib/gfxpoly/active.c static inline double single_cmp(segment_t*s, point_t p1) segment_t 69 lib/gfxpoly/active.c static inline double cmp(segment_t*s, point_t p1, point_t p2) segment_t 87 lib/gfxpoly/active.c segment_t* actlist_find(actlist_t*a, point_t p1, point_t p2) segment_t 90 lib/gfxpoly/active.c segment_t*t = a->list; segment_t 101 lib/gfxpoly/active.c segment_t*s = a->list; segment_t 123 lib/gfxpoly/active.c segment_t*last=0, *s = a->root; segment_t 155 lib/gfxpoly/active.c segment_t*out = last; segment_t 169 lib/gfxpoly/active.c segment_t*l=0; segment_t 197 lib/gfxpoly/active.c segment_t* actlist_find(actlist_t*a, point_t p1, point_t p2) segment_t 199 lib/gfxpoly/active.c segment_t*last=0, *s = a->list; segment_t 218 lib/gfxpoly/active.c static inline segment_t*rotate_right(actlist_t*a, segment_t*s) segment_t 227 lib/gfxpoly/active.c segment_t*p = s->parent; segment_t 228 lib/gfxpoly/active.c segment_t*n = s->leftchild; segment_t 229 lib/gfxpoly/active.c segment_t*l = n->rightchild; segment_t 244 lib/gfxpoly/active.c static inline segment_t*rotate_left(actlist_t*a, segment_t*s) segment_t 253 lib/gfxpoly/active.c segment_t*p = s->parent; segment_t 254 lib/gfxpoly/active.c segment_t*n = s->rightchild; segment_t 255 lib/gfxpoly/active.c segment_t*r = n->leftchild; segment_t 270 lib/gfxpoly/active.c static int actlist_splay_walk(actlist_t*a, segment_t*s, segment_t**ss, segment_t*parent) segment_t 289 lib/gfxpoly/active.c segment_t*c = a->list; segment_t 294 lib/gfxpoly/active.c static void actlist_splay_dump2(actlist_t*a, segment_t*s, char*mid, char*up, char*down) segment_t 338 lib/gfxpoly/active.c static void move_to_root(actlist_t*a, segment_t*s) segment_t 346 lib/gfxpoly/active.c segment_t*p = s->parent; segment_t 356 lib/gfxpoly/active.c segment_t*pp = p->parent; segment_t 384 lib/gfxpoly/active.c segment_t tmp; segment_t 386 lib/gfxpoly/active.c segment_t*left=&tmp,*right=&tmp; segment_t 398 lib/gfxpoly/active.c segment_t*s = a->root->leftchild; segment_t 417 lib/gfxpoly/active.c segment_t*s = a->root->rightchild; segment_t 438 lib/gfxpoly/active.c static void actlist_insert_after(actlist_t*a, segment_t*left, segment_t*s) segment_t 483 lib/gfxpoly/active.c void actlist_delete(actlist_t*a, segment_t*s) segment_t 514 lib/gfxpoly/active.c segment_t*t = a->root->leftchild; segment_t 516 lib/gfxpoly/active.c segment_t*r = t->rightchild; segment_t 517 lib/gfxpoly/active.c segment_t*l = r->leftchild; segment_t 528 lib/gfxpoly/active.c segment_t*t = a->root->rightchild; segment_t 530 lib/gfxpoly/active.c segment_t*l = t->leftchild; segment_t 531 lib/gfxpoly/active.c segment_t*r = l->rightchild; segment_t 554 lib/gfxpoly/active.c segment_t* actlist_leftmost(actlist_t*a) segment_t 559 lib/gfxpoly/active.c segment_t* actlist_rightmost(actlist_t*a) segment_t 565 lib/gfxpoly/active.c segment_t*s = a->list; segment_t 566 lib/gfxpoly/active.c segment_t*last = 0; segment_t 574 lib/gfxpoly/active.c void actlist_insert(actlist_t*a, point_t p1, point_t p2, segment_t*s) segment_t 576 lib/gfxpoly/active.c segment_t*left = actlist_find(a, p1, p2); segment_t 580 lib/gfxpoly/active.c void actlist_swap(actlist_t*a, segment_t*s1, segment_t*s2) segment_t 588 lib/gfxpoly/active.c segment_t*s = s1; segment_t 596 lib/gfxpoly/active.c segment_t*s1l = s1->left; segment_t 597 lib/gfxpoly/active.c segment_t*s1r = s1->right; segment_t 598 lib/gfxpoly/active.c segment_t*s2l = s2->left; segment_t 599 lib/gfxpoly/active.c segment_t*s2r = s2->right; segment_t 617 lib/gfxpoly/active.c segment_t*l = s2->leftchild; segment_t 618 lib/gfxpoly/active.c segment_t*r = s2->rightchild; segment_t 620 lib/gfxpoly/active.c segment_t*l1 = s1->leftchild; segment_t 621 lib/gfxpoly/active.c segment_t*p = s1->parent; segment_t 640 lib/gfxpoly/active.c segment_t*l = s1->leftchild; segment_t 641 lib/gfxpoly/active.c segment_t*r = s1->rightchild; segment_t 642 lib/gfxpoly/active.c segment_t*r2 = s2->rightchild; segment_t 644 lib/gfxpoly/active.c segment_t*p = s2->parent; segment_t 658 lib/gfxpoly/active.c segment_t*s1p = s1->parent; segment_t 659 lib/gfxpoly/active.c segment_t*s1l = s1->leftchild; segment_t 660 lib/gfxpoly/active.c segment_t*s1r = s1->rightchild; segment_t 661 lib/gfxpoly/active.c segment_t*s2p = s2->parent; segment_t 662 lib/gfxpoly/active.c segment_t*s2l = s2->leftchild; segment_t 663 lib/gfxpoly/active.c segment_t*s2r = s2->rightchild; segment_t 8 lib/gfxpoly/active.h segment_t*list; segment_t 11 lib/gfxpoly/active.h segment_t*root; segment_t 23 lib/gfxpoly/active.h segment_t* actlist_find(actlist_t*a, point_t p1, point_t p2); // finds segment immediately to the left of p1 (breaking ties w/ p2) segment_t 24 lib/gfxpoly/active.h void actlist_insert(actlist_t*a, point_t p1, point_t p2, segment_t*s); segment_t 25 lib/gfxpoly/active.h void actlist_delete(actlist_t*a, segment_t*s); segment_t 26 lib/gfxpoly/active.h void actlist_swap(actlist_t*a, segment_t*s1, segment_t*s2); segment_t 27 lib/gfxpoly/active.h segment_t* actlist_leftmost(actlist_t*a); segment_t 28 lib/gfxpoly/active.h segment_t* actlist_rightmost(actlist_t*a); segment_t 81 lib/gfxpoly/poly.c segment_t*s1; segment_t 82 lib/gfxpoly/poly.c segment_t*s2; segment_t 154 lib/gfxpoly/poly.c segment_t*ending_segments; segment_t 394 lib/gfxpoly/poly.c static void segment_dump(segment_t*s) segment_t 401 lib/gfxpoly/poly.c static void segment_init(segment_t*s, int32_t x1, int32_t y1, int32_t x2, int32_t y2, int polygon_nr, segment_dir_t dir) segment_t 468 lib/gfxpoly/poly.c static segment_t* segment_new(point_t a, point_t b, int polygon_nr, segment_dir_t dir) segment_t 470 lib/gfxpoly/poly.c segment_t*s = (segment_t*)rfx_calloc(sizeof(segment_t)); segment_t 475 lib/gfxpoly/poly.c static void segment_clear(segment_t*s) segment_t 481 lib/gfxpoly/poly.c static void segment_destroy(segment_t*s) segment_t 491 lib/gfxpoly/poly.c segment_t*s = 0; segment_t 545 lib/gfxpoly/poly.c static void schedule_endpoint(status_t*status, segment_t*s) segment_t 557 lib/gfxpoly/poly.c static void schedule_crossing(status_t*status, segment_t*s1, segment_t*s2) segment_t 747 lib/gfxpoly/poly.c segment_t*s1 = e->s1; segment_t 748 lib/gfxpoly/poly.c segment_t*s2 = e->s2; segment_t 760 lib/gfxpoly/poly.c segment_t*left = s2->left; segment_t 761 lib/gfxpoly/poly.c segment_t*right = s1->right; segment_t 812 lib/gfxpoly/poly.c static void insert_point_into_segment(status_t*status, segment_t*s, point_t p) segment_t 853 lib/gfxpoly/poly.c segment_t*segmin; segment_t 855 lib/gfxpoly/poly.c segment_t*segmax; segment_t 861 lib/gfxpoly/poly.c segment_t*min = range->segmin; segment_t 862 lib/gfxpoly/poly.c segment_t*max = range->segmax; segment_t 876 lib/gfxpoly/poly.c static void segrange_test_segment_min(segrange_t*range, segment_t*seg, int32_t y) segment_t 889 lib/gfxpoly/poly.c static void segrange_test_segment_max(segrange_t*range, segment_t*seg, int32_t y) segment_t 910 lib/gfxpoly/poly.c segment_t*first=0, *last = 0; segment_t 914 lib/gfxpoly/poly.c segment_t*seg = actlist_find(status->actlist, box.left2, box.left2); segment_t 953 lib/gfxpoly/poly.c segment_t*first=0, *last = 0; segment_t 957 lib/gfxpoly/poly.c segment_t*seg = actlist_find(status->actlist, box.right2, box.right2); segment_t 998 lib/gfxpoly/poly.c segment_t*seg = status->ending_segments; segment_t 1000 lib/gfxpoly/poly.c segment_t*next = seg->right;seg->right=0; segment_t 1055 lib/gfxpoly/poly.c segment_t*s = range->segmin; segment_t 1056 lib/gfxpoly/poly.c segment_t*end = range->segmax; segment_t 1057 lib/gfxpoly/poly.c segment_t*last = 0; segment_t 1096 lib/gfxpoly/poly.c segment_t* left = actlist_left(status->actlist, s); segment_t 1120 lib/gfxpoly/poly.c static void intersect_with_horizontal(status_t*status, segment_t*h) segment_t 1122 lib/gfxpoly/poly.c segment_t* left = actlist_find(status->actlist, h->a, h->a); segment_t 1123 lib/gfxpoly/poly.c segment_t* right = actlist_find(status->actlist, h->b, h->b); segment_t 1136 lib/gfxpoly/poly.c segment_t* s = left; segment_t 1186 lib/gfxpoly/poly.c segment_t*left = actlist_find(status->actlist, p1, p2); segment_t 1188 lib/gfxpoly/poly.c segment_t*a = actlist_right(status->actlist, left); segment_t 1404 lib/gfxpoly/poly.c segment_t*s = e->s1; segment_t 1413 lib/gfxpoly/poly.c segment_t*s = e->s1; segment_t 1420 lib/gfxpoly/poly.c segment_t*left = s->left; segment_t 1421 lib/gfxpoly/poly.c segment_t*right = s->right; segment_t 1434 lib/gfxpoly/poly.c segment_t*s = e->s1; segment_t 1437 lib/gfxpoly/poly.c segment_t*left = s->left; segment_t 1438 lib/gfxpoly/poly.c segment_t*right = s->right; segment_t 1480 lib/gfxpoly/poly.c DICT_ITERATE_KEY(status->intersecting_segs, segment_t*, s) {