Index: draw_wireframe.h =================================================================== --- draw_wireframe.h (revision 11821) +++ draw_wireframe.h (revision 11822) @@ -53,15 +53,13 @@ */ static inline PCB_FUNC_UNUSED void pcb_draw_wireframe_line(pcb_hid_gc_t gc, pcb_coord_t x1, pcb_coord_t y1, pcb_coord_t x2, pcb_coord_t y2, pcb_coord_t thick) { - pcb_coord_t dx, dy, ox, oy; - - dx = x2 - x1; - dy = y2 - y1; - if ((dx != 0) || (dy != 0)) { + if((x1 != x2) || (y1 != y2)) { + double dx = x2 - x1; + double dy = y2 - y1; double h = 0.5 * thick / sqrt(PCB_SQUARE(dx) + PCB_SQUARE(dy)); + pcb_coord_t ox = dy * h + 0.5 * SGN(dy); + pcb_coord_t oy = -(dx * h + 0.5 * SGN(dx)); - ox = dy * h + 0.5 * SGN(dy); - oy = -(dx * h + 0.5 * SGN(dx)); if (coord_abs(ox) >= pcb_pixel_slop || coord_abs(oy) >= pcb_pixel_slop) { pcb_angle_t angle = atan2(dx, dy) * 57.295779; pcb_gui->draw_line(gc, x1 + ox, y1 + oy, x2 + ox, y2 + oy);