Index: trunk/src/find_any_isect.c =================================================================== --- trunk/src/find_any_isect.c (revision 37134) +++ trunk/src/find_any_isect.c (revision 37135) @@ -51,11 +51,11 @@ case PCB_OBJ_LINE: switch(b->type) { case PCB_OBJ_VOID: return rnd_false; + case PCB_OBJ_GFX: return rnd_false; /* pixmap never intersects */ case PCB_OBJ_LINE: return pcb_isc_line_line(ctx, (pcb_line_t *)a, (pcb_line_t *)b); case PCB_OBJ_TEXT: return pcb_isc_text_line(ctx, (pcb_text_t *)b, (pcb_line_t *)a); case PCB_OBJ_POLY: return pcb_isc_line_poly(ctx, (pcb_line_t *)a, (pcb_poly_t *)b); case PCB_OBJ_ARC: return pcb_isc_line_arc(ctx, (pcb_line_t *)a, (pcb_arc_t *)b); -/* case PCB_OBJ_GFX: return pcb_isc_line_gfx(ctx, (pcb_line_t *)a, (pcb_gfx_t *)b);*/ case PCB_OBJ_PSTK: return pcb_isc_pstk_line(ctx, (pcb_pstk_t *)b, (pcb_line_t *)a, ctx->pstk_anylayer); case PCB_OBJ_RAT: return pcb_isc_rat_line(ctx, (pcb_rat_t *)b, (pcb_line_t *)a); default:; @@ -64,11 +64,11 @@ case PCB_OBJ_TEXT: switch(b->type) { case PCB_OBJ_VOID: return rnd_false; + case PCB_OBJ_GFX: return rnd_false; /* pixmap never intersects */ case PCB_OBJ_LINE: return pcb_isc_text_line(ctx, (pcb_text_t *)a, (pcb_line_t *)b); case PCB_OBJ_TEXT: return pcb_isc_text_text(ctx, (pcb_text_t *)a, (pcb_text_t *)b); case PCB_OBJ_POLY: return pcb_isc_text_poly(ctx, (pcb_text_t *)a, (pcb_poly_t *)b); case PCB_OBJ_ARC: return pcb_isc_text_arc(ctx, (pcb_text_t *)a, (pcb_arc_t *)b); -/* case PCB_OBJ_GFX: return pcb_isc_text_gfx(ctx, (pcb_text_t *)a, (pcb_gfx_t *)b);*/ case PCB_OBJ_PSTK: return pcb_isc_text_pstk(ctx, (pcb_text_t *)a, (pcb_pstk_t *)b, ctx->pstk_anylayer); case PCB_OBJ_RAT: return rnd_false; /* text is invisible to find for now */ default:; @@ -78,11 +78,11 @@ case PCB_OBJ_POLY: switch(b->type) { case PCB_OBJ_VOID: return rnd_false; + case PCB_OBJ_GFX: return rnd_false; /* pixmap never intersects */ case PCB_OBJ_LINE: return pcb_isc_line_poly(ctx, (pcb_line_t *)b, (pcb_poly_t *)a); case PCB_OBJ_TEXT: return pcb_isc_text_poly(ctx, (pcb_text_t *)b, (pcb_poly_t *)a); case PCB_OBJ_POLY: return pcb_isc_poly_poly(ctx, (pcb_poly_t *)a, (pcb_poly_t *)b); case PCB_OBJ_ARC: return pcb_isc_arc_poly(ctx, (pcb_arc_t *)b, (pcb_poly_t *)a); -/* case PCB_OBJ_GFX: return pcb_isc_gfx_poly(ctx, (pcb_gfx_t *)b, (pcb_poly_t *)a);*/ case PCB_OBJ_PSTK: return pcb_isc_pstk_poly(ctx, (pcb_pstk_t *)b, (pcb_poly_t *)a, ctx->pstk_anylayer); case PCB_OBJ_RAT: return pcb_isc_rat_poly(ctx, (pcb_rat_t *)b, (pcb_poly_t *)a); default:; @@ -91,37 +91,26 @@ case PCB_OBJ_ARC: switch(b->type) { case PCB_OBJ_VOID: return rnd_false; + case PCB_OBJ_GFX: return rnd_false; /* pixmap never intersects */ case PCB_OBJ_LINE: return pcb_isc_line_arc(ctx, (pcb_line_t *)b, (pcb_arc_t *)a); case PCB_OBJ_TEXT: return pcb_isc_text_arc(ctx, (pcb_text_t *)b, (pcb_arc_t *)a); case PCB_OBJ_POLY: return pcb_isc_arc_poly(ctx, (pcb_arc_t *)a, (pcb_poly_t *)b); case PCB_OBJ_ARC: return pcb_isc_arc_arc(ctx, (pcb_arc_t *)a, (pcb_arc_t *)b); -/* case PCB_OBJ_GFX: return pcb_isc_gfx_arc(ctx, (pcb_gfx_t *)a, (pcb_arc_t *)b);*/ case PCB_OBJ_PSTK: return pcb_isc_pstk_arc(ctx, (pcb_pstk_t *)b, (pcb_arc_t *)a, ctx->pstk_anylayer); case PCB_OBJ_RAT: return pcb_isc_rat_arc(ctx, (pcb_rat_t *)b, (pcb_arc_t *)a); default:; } break; -/* case PCB_OBJ_GFX: - switch(b->type) { - case PCB_OBJ_VOID: return rnd_false; - case PCB_OBJ_LINE: return pcb_isc_line_gfx(ctx, (pcb_line_t *)b, (pcb_gfx_t *)a); - case PCB_OBJ_TEXT: return pcb_isc_text_gfx(ctx, (pcb_text_t *)b, (pcb_gfx_t *)a); - case PCB_OBJ_POLY: return pcb_isc_gfx_poly(ctx, (pcb_gfx_t *)a, (pcb_poly_t *)b); - case PCB_OBJ_ARC: return pcb_isc_arc_arc(ctx, (pcb_arc_t *)a, (pcb_arc_t *)b); - case PCB_OBJ_GFX: return pcb_isc_gfx_gfx(ctx, (pcb_gfx_t *)a, (pcb_gfx_t *)b); - case PCB_OBJ_PSTK: return pcb_isc_pstk_arc(ctx, (pcb_pstk_t *)b, (pcb_arc_t *)a); - case PCB_OBJ_RAT: return pcb_isc_rat_arc(ctx, (pcb_rat_t *)b, (pcb_arc_t *)a); - default:; - } - break;*/ + case PCB_OBJ_GFX: + return rnd_false; /* pixmap never intersects */ case PCB_OBJ_PSTK: switch(b->type) { case PCB_OBJ_VOID: return rnd_false; + case PCB_OBJ_GFX: return rnd_false; /* pixmap never intersects */ case PCB_OBJ_LINE: return pcb_isc_pstk_line(ctx, (pcb_pstk_t *)a, (pcb_line_t *)b, ctx->pstk_anylayer); case PCB_OBJ_TEXT: return pcb_isc_text_pstk(ctx, (pcb_text_t *)b, (pcb_pstk_t *)a, ctx->pstk_anylayer); case PCB_OBJ_POLY: return pcb_isc_pstk_poly(ctx, (pcb_pstk_t *)a, (pcb_poly_t *)b, ctx->pstk_anylayer); case PCB_OBJ_ARC: return pcb_isc_pstk_arc(ctx, (pcb_pstk_t *)a, (pcb_arc_t *)b, ctx->pstk_anylayer); -/* case PCB_OBJ_GFX: return pcb_isc_pstk_gfx(ctx, (pcb_pstk_t *)a, (pcb_gfx_t *)b, ctx->pstk_anylayer);*/ case PCB_OBJ_PSTK: return pcb_isc_pstk_pstk(ctx, (pcb_pstk_t *)a, (pcb_pstk_t *)b, ctx->pstk_anylayer); case PCB_OBJ_RAT: return pcb_isc_pstk_rat(ctx, (pcb_pstk_t *)a, (pcb_rat_t *)b); default:; @@ -130,11 +119,11 @@ case PCB_OBJ_RAT: switch(b->type) { case PCB_OBJ_VOID: return rnd_false; + case PCB_OBJ_GFX: return rnd_false; /* pixmap never intersects */ case PCB_OBJ_LINE: return pcb_isc_rat_line(ctx, (pcb_rat_t *)a, (pcb_line_t *)b); case PCB_OBJ_TEXT: return rnd_false; /* text is invisible to find for now */ case PCB_OBJ_POLY: return pcb_isc_rat_poly(ctx, (pcb_rat_t *)a, (pcb_poly_t *)b); case PCB_OBJ_ARC: return pcb_isc_rat_arc(ctx, (pcb_rat_t *)a, (pcb_arc_t *)b); -/* case PCB_OBJ_GFX: return pcb_isc_rat_gfx(ctx, (pcb_rat_t *)a, (pcb_gfx_t *)b);*/ case PCB_OBJ_PSTK: return pcb_isc_pstk_rat(ctx, (pcb_pstk_t *)b, (pcb_rat_t *)a); case PCB_OBJ_RAT: return pcb_isc_rat_rat(ctx, (pcb_rat_t *)a, (pcb_rat_t *)b); default:;