Index: trunk/src/find.h =================================================================== --- trunk/src/find.h (revision 21748) +++ trunk/src/find.h (revision 21749) @@ -80,7 +80,7 @@ pcb_bool pcb_isc_line_poly(pcb_line_t *, pcb_poly_t *); pcb_bool pcb_isc_arc_poly(pcb_arc_t *, pcb_poly_t *); pcb_bool pcb_intersect_obj_obj(pcb_any_obj_t *a, pcb_any_obj_t *b); -pcb_bool_t pcb_pstk_intersect_line(pcb_pstk_t *ps, pcb_line_t *line); +pcb_bool_t pcb_isc_pstk_line(pcb_pstk_t *ps, pcb_line_t *line); pcb_cardinal_t pcb_lookup_conn_by_obj(void *ctx, pcb_any_obj_t *obj, pcb_bool AndDraw, pcb_cardinal_t (*cb)(void *ctx, pcb_any_obj_t *obj)); Index: trunk/src/find_any_isect.c =================================================================== --- trunk/src/find_any_isect.c (revision 21748) +++ trunk/src/find_any_isect.c (revision 21749) @@ -29,11 +29,11 @@ TODO(": implement text intersections") -pcb_bool pcb_intersect_text_line(pcb_text_t *a, pcb_line_t *b) { return pcb_false; } -pcb_bool pcb_intersect_text_text(pcb_text_t *a, pcb_text_t *b) { return pcb_false; } -pcb_bool pcb_intersect_text_poly(pcb_text_t *a, pcb_poly_t *b) { return pcb_false; } -pcb_bool pcb_intersect_text_arc(pcb_text_t *a, pcb_arc_t *b) { return pcb_false; } -pcb_bool pcb_intersect_text_pstk(pcb_text_t *a, pcb_pstk_t *b) { return pcb_false; } +pcb_bool pcb_isc_text_line(pcb_text_t *a, pcb_line_t *b) { return pcb_false; } +pcb_bool pcb_isc_text_text(pcb_text_t *a, pcb_text_t *b) { return pcb_false; } +pcb_bool pcb_isc_text_poly(pcb_text_t *a, pcb_poly_t *b) { return pcb_false; } +pcb_bool pcb_isc_text_arc(pcb_text_t *a, pcb_arc_t *b) { return pcb_false; } +pcb_bool pcb_isc_text_pstk(pcb_text_t *a, pcb_pstk_t *b) { return pcb_false; } pcb_bool pcb_intersect_obj_obj(pcb_any_obj_t *a, pcb_any_obj_t *b) { @@ -49,10 +49,10 @@ switch(b->type) { case PCB_OBJ_VOID: return pcb_false; case PCB_OBJ_LINE: return pcb_isc_line_line((pcb_line_t *)a, (pcb_line_t *)b); - case PCB_OBJ_TEXT: return pcb_intersect_text_line((pcb_text_t *)b, (pcb_line_t *)a); + case PCB_OBJ_TEXT: return pcb_isc_text_line((pcb_text_t *)b, (pcb_line_t *)a); case PCB_OBJ_POLY: return pcb_isc_line_poly((pcb_line_t *)a, (pcb_poly_t *)b); case PCB_OBJ_ARC: return pcb_isc_line_arc((pcb_line_t *)a, (pcb_arc_t *)b); - case PCB_OBJ_PSTK: return pcb_pstk_intersect_line((pcb_pstk_t *)b, (pcb_line_t *)a); + case PCB_OBJ_PSTK: return pcb_isc_pstk_line((pcb_pstk_t *)b, (pcb_line_t *)a); default:; } break; @@ -59,11 +59,11 @@ case PCB_OBJ_TEXT: switch(b->type) { case PCB_OBJ_VOID: return pcb_false; - case PCB_OBJ_LINE: return pcb_intersect_text_line((pcb_text_t *)a, (pcb_line_t *)b); - case PCB_OBJ_TEXT: return pcb_intersect_text_text((pcb_text_t *)a, (pcb_text_t *)b); - case PCB_OBJ_POLY: return pcb_intersect_text_poly((pcb_text_t *)a, (pcb_poly_t *)b); - case PCB_OBJ_ARC: return pcb_intersect_text_arc((pcb_text_t *)a, (pcb_arc_t *)b); - case PCB_OBJ_PSTK: return pcb_intersect_text_pstk((pcb_text_t *)a, (pcb_pstk_t *)b); + case PCB_OBJ_LINE: return pcb_isc_text_line((pcb_text_t *)a, (pcb_line_t *)b); + case PCB_OBJ_TEXT: return pcb_isc_text_text((pcb_text_t *)a, (pcb_text_t *)b); + case PCB_OBJ_POLY: return pcb_isc_text_poly((pcb_text_t *)a, (pcb_poly_t *)b); + case PCB_OBJ_ARC: return pcb_isc_text_arc((pcb_text_t *)a, (pcb_arc_t *)b); + case PCB_OBJ_PSTK: return pcb_isc_text_pstk((pcb_text_t *)a, (pcb_pstk_t *)b); default:; } break; @@ -72,10 +72,10 @@ switch(b->type) { case PCB_OBJ_VOID: return pcb_false; case PCB_OBJ_LINE: return pcb_isc_line_poly((pcb_line_t *)b, (pcb_poly_t *)a); - case PCB_OBJ_TEXT: return pcb_intersect_text_poly((pcb_text_t *)b, (pcb_poly_t *)a); + case PCB_OBJ_TEXT: return pcb_isc_text_poly((pcb_text_t *)b, (pcb_poly_t *)a); case PCB_OBJ_POLY: return pcb_isc_poly_poly((pcb_poly_t *)a, (pcb_poly_t *)b); case PCB_OBJ_ARC: return pcb_isc_arc_poly((pcb_arc_t *)b, (pcb_poly_t *)a); - case PCB_OBJ_PSTK: return pcb_pstk_intersect_poly((pcb_pstk_t *)b, (pcb_poly_t *)a); + case PCB_OBJ_PSTK: return pcb_isc_pstk_poly((pcb_pstk_t *)b, (pcb_poly_t *)a); default:; } break; @@ -83,10 +83,10 @@ switch(b->type) { case PCB_OBJ_VOID: return pcb_false; case PCB_OBJ_LINE: return pcb_isc_line_arc((pcb_line_t *)b, (pcb_arc_t *)a); - case PCB_OBJ_TEXT: return pcb_intersect_text_arc((pcb_text_t *)b, (pcb_arc_t *)a); + case PCB_OBJ_TEXT: return pcb_isc_text_arc((pcb_text_t *)b, (pcb_arc_t *)a); case PCB_OBJ_POLY: return pcb_isc_arc_poly((pcb_arc_t *)a, (pcb_poly_t *)b); case PCB_OBJ_ARC: return pcb_isc_arc_arc((pcb_arc_t *)a, (pcb_arc_t *)b); - case PCB_OBJ_PSTK: return pcb_pstk_intersect_arc((pcb_pstk_t *)b, (pcb_arc_t *)a); + case PCB_OBJ_PSTK: return pcb_isc_pstk_arc((pcb_pstk_t *)b, (pcb_arc_t *)a); default:; } break; @@ -93,11 +93,11 @@ case PCB_OBJ_PSTK: switch(b->type) { case PCB_OBJ_VOID: return pcb_false; - case PCB_OBJ_LINE: return pcb_pstk_intersect_line((pcb_pstk_t *)a, (pcb_line_t *)b); - case PCB_OBJ_TEXT: return pcb_intersect_text_pstk((pcb_text_t *)b, (pcb_pstk_t *)a); - case PCB_OBJ_POLY: return pcb_pstk_intersect_poly((pcb_pstk_t *)a, (pcb_poly_t *)b); - case PCB_OBJ_ARC: return pcb_pstk_intersect_arc((pcb_pstk_t *)a, (pcb_arc_t *)b); - case PCB_OBJ_PSTK: return pcb_pstk_intersect_pstk((pcb_pstk_t *)a, (pcb_pstk_t *)b); + case PCB_OBJ_LINE: return pcb_isc_pstk_line((pcb_pstk_t *)a, (pcb_line_t *)b); + case PCB_OBJ_TEXT: return pcb_isc_text_pstk((pcb_text_t *)b, (pcb_pstk_t *)a); + case PCB_OBJ_POLY: return pcb_isc_pstk_poly((pcb_pstk_t *)a, (pcb_poly_t *)b); + case PCB_OBJ_ARC: return pcb_isc_pstk_arc((pcb_pstk_t *)a, (pcb_arc_t *)b); + case PCB_OBJ_PSTK: return pcb_isc_pstk_pstk((pcb_pstk_t *)a, (pcb_pstk_t *)b); default:; } break; Index: trunk/src/find_geo.c =================================================================== --- trunk/src/find_geo.c (revision 21748) +++ trunk/src/find_geo.c (revision 21749) @@ -673,7 +673,7 @@ /* returns whether a round-cap pcb line touches a polygon; assumes bounding boxes do touch */ -PCB_INLINE pcb_bool_t pcb_intersect_line_polyline(pcb_pline_t *pl, pcb_coord_t x1, pcb_coord_t y1, pcb_coord_t x2, pcb_coord_t y2, pcb_coord_t thick) +PCB_INLINE pcb_bool_t pcb_isc_line_polyline(pcb_pline_t *pl, pcb_coord_t x1, pcb_coord_t y1, pcb_coord_t x2, pcb_coord_t y2, pcb_coord_t thick) { pcb_coord_t ox, oy, vx, vy; double dx, dy, h, l; @@ -728,7 +728,7 @@ pcb_line.Flags = shape_line.square ? pcb_flag_make(PCB_FLAG_SQUARE) : pcb_no_flags(); \ } while(0) -pcb_bool_t pcb_pstk_intersect_line(pcb_pstk_t *ps, pcb_line_t *line) +pcb_bool_t pcb_isc_pstk_line(pcb_pstk_t *ps, pcb_line_t *line) { pcb_pstk_shape_t *shape = pcb_pstk_shape_at(PCB, ps, line->parent.layer); if (shape == NULL) return pcb_false; @@ -736,7 +736,7 @@ case PCB_PSSH_POLY: if (shape->data.poly.pa == NULL) pcb_pstk_shape_update_pa(&shape->data.poly); - return pcb_intersect_line_polyline(shape->data.poly.pa->contours, line->Point1.X - ps->x, line->Point1.Y - ps->y, line->Point2.X - ps->x, line->Point2.Y - ps->y, line->Thickness); + return pcb_isc_line_polyline(shape->data.poly.pa->contours, line->Point1.X - ps->x, line->Point1.Y - ps->y, line->Point2.X - ps->x, line->Point2.Y - ps->y, line->Thickness); case PCB_PSSH_LINE: { pcb_line_t tmp; @@ -761,7 +761,7 @@ } -PCB_INLINE pcb_bool_t pcb_pstk_intersect_arc(pcb_pstk_t *ps, pcb_arc_t *arc) +PCB_INLINE pcb_bool_t pcb_isc_pstk_arc(pcb_pstk_t *ps, pcb_arc_t *arc) { pcb_pstk_shape_t *shape = pcb_pstk_shape_at(PCB, ps, arc->parent.layer); if (shape == NULL) return pcb_false; @@ -825,7 +825,7 @@ return shp; } -PCB_INLINE pcb_bool_t pcb_pstk_intersect_poly(pcb_pstk_t *ps, pcb_poly_t *poly) +PCB_INLINE pcb_bool_t pcb_isc_pstk_poly(pcb_pstk_t *ps, pcb_poly_t *poly) { pcb_pstk_shape_t *shape = pcb_pstk_shape_at(PCB, ps, poly->parent.layer); if (shape == NULL) return pcb_false; @@ -864,14 +864,14 @@ return pcb_false; } -PCB_INLINE pcb_bool_t pstk_shape_int_circ_poly(pcb_pstk_t *p, pcb_pstk_shape_t *sp, pcb_pstk_t *c, pcb_pstk_shape_t *sc) +PCB_INLINE pcb_bool_t pstk_shape_isc_circ_poly(pcb_pstk_t *p, pcb_pstk_shape_t *sp, pcb_pstk_t *c, pcb_pstk_shape_t *sc) { pcb_coord_t px = sc->data.circ.x + c->x - p->x; pcb_coord_t py = sc->data.circ.y + c->y - p->y; - return pcb_intersect_line_polyline(sp->data.poly.pa->contours, px, py, px, py, sc->data.circ.dia); + return pcb_isc_line_polyline(sp->data.poly.pa->contours, px, py, px, py, sc->data.circ.dia); } -PCB_INLINE pcb_bool_t pstk_shape_int_circ_line(pcb_pstk_t *l, pcb_pstk_shape_t *sl, pcb_pstk_t *c, pcb_pstk_shape_t *sc) +PCB_INLINE pcb_bool_t pstk_shape_isc_circ_line(pcb_pstk_t *l, pcb_pstk_shape_t *sl, pcb_pstk_t *c, pcb_pstk_shape_t *sc) { pcb_any_line_t tmp; tmp.Point1.X = sl->data.line.x1 + l->x; @@ -904,9 +904,9 @@ return res; } case PCB_PSSH_LINE: - return pcb_intersect_line_polyline(shape1->data.poly.pa->contours, shape2->data.line.x1 + ps2->x - ps1->x, shape2->data.line.y1 + ps2->y - ps1->y, shape2->data.line.x2 + ps2->x - ps1->x, shape2->data.line.y2 + ps2->y - ps1->y, shape2->data.line.thickness); + return pcb_isc_line_polyline(shape1->data.poly.pa->contours, shape2->data.line.x1 + ps2->x - ps1->x, shape2->data.line.y1 + ps2->y - ps1->y, shape2->data.line.x2 + ps2->x - ps1->x, shape2->data.line.y2 + ps2->y - ps1->y, shape2->data.line.thickness); case PCB_PSSH_CIRC: - return pstk_shape_int_circ_poly(ps1, shape1, ps2, shape2); + return pstk_shape_isc_circ_poly(ps1, shape1, ps2, shape2); case PCB_PSSH_HSHADOW: return 0; /* non-object won't intersect */ } @@ -915,7 +915,7 @@ case PCB_PSSH_LINE: switch(shape2->shape) { case PCB_PSSH_POLY: - return pcb_intersect_line_polyline(shape2->data.poly.pa->contours, shape1->data.line.x1 + ps1->x - ps2->x, shape1->data.line.y1 + ps1->y - ps2->y, shape1->data.line.x2 + ps1->x - ps2->x, shape1->data.line.y2 + ps1->y - ps2->y, shape1->data.line.thickness); + return pcb_isc_line_polyline(shape2->data.poly.pa->contours, shape1->data.line.x1 + ps1->x - ps2->x, shape1->data.line.y1 + ps1->y - ps2->y, shape1->data.line.x2 + ps1->x - ps2->x, shape1->data.line.y2 + ps1->y - ps2->y, shape1->data.line.thickness); case PCB_PSSH_LINE: { pcb_line_t tmp1, tmp2; @@ -924,7 +924,7 @@ return pcb_isc_line_line(&tmp1, &tmp2); } case PCB_PSSH_CIRC: - return pstk_shape_int_circ_line(ps1, shape1, ps2, shape2); + return pstk_shape_isc_circ_line(ps1, shape1, ps2, shape2); case PCB_PSSH_HSHADOW: return 0; /* non-object won't intersect */ } @@ -933,9 +933,9 @@ case PCB_PSSH_CIRC: switch(shape2->shape) { case PCB_PSSH_POLY: - return pstk_shape_int_circ_poly(ps2, shape2, ps1, shape1); + return pstk_shape_isc_circ_poly(ps2, shape2, ps1, shape1); case PCB_PSSH_LINE: - return pstk_shape_int_circ_line(ps2, shape2, ps1, shape1); + return pstk_shape_isc_circ_line(ps2, shape2, ps1, shape1); case PCB_PSSH_CIRC: { double cdist2 = pcb_distance2(ps1->x + shape1->data.circ.x, ps1->y + shape1->data.circ.y, ps2->x + shape2->data.circ.x, ps2->y + shape2->data.circ.y); @@ -953,7 +953,7 @@ return pcb_false; } -PCB_INLINE pcb_bool_t pcb_pstk_intersect_pstk(pcb_pstk_t *ps1, pcb_pstk_t *ps2) +PCB_INLINE pcb_bool_t pcb_isc_pstk_pstk(pcb_pstk_t *ps1, pcb_pstk_t *ps2) { pcb_layer_t *ly; int n; @@ -977,7 +977,7 @@ } -PCB_INLINE pcb_bool_t pcb_pstk_intersect_rat(pcb_pstk_t *ps, pcb_rat_t *rat) +PCB_INLINE pcb_bool_t pcb_isc_pstk_rat(pcb_pstk_t *ps, pcb_rat_t *rat) { pcb_board_t *pcb = PCB; Index: trunk/src/find_lookup.c =================================================================== --- trunk/src/find_lookup.c (revision 21748) +++ trunk/src/find_lookup.c (revision 21749) @@ -272,7 +272,7 @@ pcb_line_t *line = (pcb_line_t *) b; struct ps_info *i = (struct ps_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, line) && pcb_pstk_intersect_line(&i->ps, line) && !INOCN(&i->ps, line)) { + if (!PCB_FLAG_TEST(TheFlag, line) && pcb_isc_pstk_line(&i->ps, line) && !INOCN(&i->ps, line)) { if (ADD_LINE_TO_LIST(i->layer, line, PCB_OBJ_PSTK, &i->ps, PCB_FCT_COPPER, i->orig_ps)) longjmp(i->env, 1); } @@ -284,7 +284,7 @@ pcb_arc_t *arc = (pcb_arc_t *) b; struct ps_info *i = (struct ps_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, arc) && pcb_pstk_intersect_arc(&i->ps, arc) && !INOCN(&i->ps, arc)) { + if (!PCB_FLAG_TEST(TheFlag, arc) && pcb_isc_pstk_arc(&i->ps, arc) && !INOCN(&i->ps, arc)) { if (ADD_ARC_TO_LIST(i->layer, arc, PCB_OBJ_PSTK, &i->ps, PCB_FCT_COPPER, i->orig_ps)) longjmp(i->env, 1); } @@ -296,7 +296,7 @@ pcb_rat_t *rat = (pcb_rat_t *) b; struct ps_info *i = (struct ps_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, rat) && pcb_pstk_intersect_rat(&i->ps, rat) && ADD_RAT_TO_LIST(rat, PCB_OBJ_PSTK, &i->ps, PCB_FCT_RAT, i->orig_ps)) + if (!PCB_FLAG_TEST(TheFlag, rat) && pcb_isc_pstk_rat(&i->ps, rat) && ADD_RAT_TO_LIST(rat, PCB_OBJ_PSTK, &i->ps, PCB_FCT_RAT, i->orig_ps)) longjmp(i->env, 1); return PCB_R_DIR_NOT_FOUND; } @@ -306,7 +306,7 @@ pcb_poly_t *polygon = (pcb_poly_t *) b; struct ps_info *i = (struct ps_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, polygon) && pcb_pstk_intersect_poly(&i->ps, polygon) && !INOCN(&i->ps, polygon)) { + if (!PCB_FLAG_TEST(TheFlag, polygon) && pcb_isc_pstk_poly(&i->ps, polygon) && !INOCN(&i->ps, polygon)) { if (ADD_POLYGON_TO_LIST(i->layer, polygon, PCB_OBJ_PSTK, &i->ps, PCB_FCT_COPPER, i->orig_ps)) longjmp(i->env, 1); } @@ -319,7 +319,7 @@ pcb_pstk_t *ps2 = (pcb_pstk_t *)b; struct ps_info *i = (struct ps_info *)cl; - if (!PCB_FLAG_TEST(TheFlag, ps2) && pcb_pstk_intersect_pstk(&i->ps, ps2) && !INOCN(&i->ps, ps2)) { + if (!PCB_FLAG_TEST(TheFlag, ps2) && pcb_isc_pstk_pstk(&i->ps, ps2) && !INOCN(&i->ps, ps2)) { if (ADD_PADSTACK_TO_LIST(ps2, PCB_OBJ_PSTK, &i->ps, PCB_FCT_COPPER, i->orig_ps)) longjmp(i->env, 1); } @@ -473,7 +473,7 @@ pcb_pstk_t *ps = (pcb_pstk_t *) b; struct lo_info *i = (struct lo_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, ps) && pcb_pstk_intersect_line(ps, &i->line) && !INOCN(ps, &i->line)) { + if (!PCB_FLAG_TEST(TheFlag, ps) && pcb_isc_pstk_line(ps, &i->line) && !INOCN(ps, &i->line)) { if (ADD_PS_TO_LIST(ps, PCB_OBJ_LINE, &i->line, PCB_FCT_COPPER, i->orig_line)) longjmp(i->env, 1); } @@ -485,7 +485,7 @@ pcb_pstk_t *ps = (pcb_pstk_t *) b; struct lo_info *i = (struct lo_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, ps) && pcb_pstk_intersect_arc(ps, &i->arc) && !INOCN(ps, &i->arc)) { + if (!PCB_FLAG_TEST(TheFlag, ps) && pcb_isc_pstk_arc(ps, &i->arc) && !INOCN(ps, &i->arc)) { if (ADD_PS_TO_LIST(ps, PCB_OBJ_ARC, &i->arc, PCB_FCT_COPPER, i->orig_arc)) longjmp(i->env, 1); } @@ -497,7 +497,7 @@ pcb_pstk_t *ps = (pcb_pstk_t *) b; struct lo_info *i = (struct lo_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, ps) && pcb_pstk_intersect_poly(ps, &i->polygon) && !INOCN(ps, &i->polygon)) { + if (!PCB_FLAG_TEST(TheFlag, ps) && pcb_isc_pstk_poly(ps, &i->polygon) && !INOCN(ps, &i->polygon)) { if (ADD_PS_TO_LIST(ps, PCB_OBJ_POLY, &i->polygon, PCB_FCT_COPPER, i->orig_polygon)) longjmp(i->env, 1); } @@ -511,7 +511,7 @@ struct lo_info *i = (struct lo_info *) cl; /* rats can't cause DRC so there is no early exit */ - if (!PCB_FLAG_TEST(TheFlag, ps) && pcb_pstk_intersect_rat(ps, &i->rat)) + if (!PCB_FLAG_TEST(TheFlag, ps) && pcb_isc_pstk_rat(ps, &i->rat)) ADD_PS_TO_LIST(ps, PCB_OBJ_RAT, &i->rat, PCB_FCT_RAT, i->orig_rat); return PCB_R_DIR_NOT_FOUND; } Index: trunk/src/obj_line_drcenf.c =================================================================== --- trunk/src/obj_line_drcenf.c (revision 21748) +++ trunk/src/obj_line_drcenf.c (revision 21749) @@ -212,7 +212,7 @@ pcb_pstk_t *ps = (pcb_pstk_t *)b; struct drc_info *i = (struct drc_info *)cl; - if (!PCB_FLAG_TEST(PCB_FLAG_FOUND, ps) && pcb_pstk_intersect_line(ps, i->line)) + if (!PCB_FLAG_TEST(PCB_FLAG_FOUND, ps) && pcb_isc_pstk_line(ps, i->line)) longjmp(i->env, 1); return PCB_R_DIR_FOUND_CONTINUE; }