Index: trunk/src_plugins/export_openscad/export_openscad.c =================================================================== --- trunk/src_plugins/export_openscad/export_openscad.c (revision 11826) +++ trunk/src_plugins/export_openscad/export_openscad.c (revision 11827) @@ -330,8 +330,9 @@ static void openscad_fill_rect(pcb_hid_gc_t gc, pcb_coord_t x1, pcb_coord_t y1, pcb_coord_t x2, pcb_coord_t y2) { - TRX(x1); TRY(y1); TRX(x2); TRY(y2); fix_rect_coords(); + pcb_fprintf(f, " pcb_fill_rect(%mm, %mm, %mm, %mm, %f);\n", + x1, y1, x2, y2, layer_thickness); } static void openscad_draw_line(pcb_hid_gc_t gc, pcb_coord_t x1, pcb_coord_t y1, pcb_coord_t x2, pcb_coord_t y2) @@ -358,7 +359,6 @@ static void openscad_fill_circle(pcb_hid_gc_t gc, pcb_coord_t cx, pcb_coord_t cy, pcb_coord_t radius) { -/* TRX(cx); TRY(cy);*/ pcb_fprintf(f, " pcb_fcirc(%mm, %mm, %mm, %f);\n", cx, cy, radius, layer_thickness); } Index: trunk/src_plugins/export_openscad/scad_draw.c =================================================================== --- trunk/src_plugins/export_openscad/scad_draw.c (revision 11826) +++ trunk/src_plugins/export_openscad/scad_draw.c (revision 11827) @@ -50,7 +50,14 @@ fprintf(f, " }\n"); fprintf(f, "}\n"); + fprintf(f, "// filled rectangle\n"); + fprintf(f, "module pcb_fill_rect(x1, y1, x2, y2, thick) {\n"); + fprintf(f, " translate([(x1+x2)/2,(y1+y2)/2,0])\n"); + fprintf(f, " rotate([0,0,angle])\n"); + fprintf(f, " cube([x2-x1, y2-y1, thick], center=true);\n"); + fprintf(f, "}\n"); + fprintf(f, "// filled circle\n"); fprintf(f, "module pcb_fcirc(x1, y1, radius, thick) {\n"); fprintf(f, " translate([x1,y1,0])\n");