[OpenSCAD] slow render, need help

Michael Brown mebrown at michaels-house.net
Tue Oct 25 01:17:43 CEST 2011


I'm getting the same assertion now. :(

But at least its only taking an hour to give it.
--
Michael

On Mon, Oct 24, 2011 at 5:50 PM, Brad Pitcher <bradpitcher at gmail.com> wrote:

> I get an assertion error when I make using tip:
>
> openscad -o lid.stl box.scad -Dlayout=\"$(basename lid.stl .stl)\"
> Compiling library
> `/media/code/container-round-decorative/container_module.scad'.
> Compiling library `/media/code/container-round-decorative/pins.scad'.
> ECHO: "Running build for layout", "lid"
> CGAL Cache insert: group(); (0 verts)
> Number of polygons before reduction: 1
>
> Number of polygons after reduction: 1
>
> CGAL Cache insert: circle($fn=0,$fa=1.27324,$fs=1,r=40); (130 verts)
> Number of polygons before reduction: 124
>
> Number of polygons after reduction: 1
>
> CGAL Cache insert: multmatrix([[0.125,0,0,0],[0,0.875,0,0], (130 verts)
> Number of polygons before reduction: 124
>
> Number of polygons after reduction: 1
>
> CGAL Cache insert: multmatrix([[1,0,0,40],[0,1,0,0],[0,0,1, (130 verts)
> CGAL Cache insert: rotate_extrude(convexity=2,$fn=0,$fa=1.2 (17892 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,3 (17892 verts)
> CGAL Cache insert: group(){multmatrix([[1,0,0,0],[0,1,0,0], (17892 verts)
> Number of polygons before reduction: 1
>
> Number of polygons after reduction: 1
>
> CGAL Cache insert: circle($fn=0,$fa=1.33246,$fs=1,r=40); (130 verts)
> Number of polygons before reduction: 124
>
> Number of polygons after reduction: 1
>
> CGAL Cache insert: multmatrix([[0.075,0,0,0],[0,0.85,0,0],[ (130 verts)
> Number of polygons before reduction: 124
>
> Number of polygons after reduction: 1
>
> CGAL Cache insert: multmatrix([[1,0,0,40],[0,1,0,0],[0,0,1, (130 verts)
> CGAL Cache insert: rotate_extrude(convexity=2,$fn=0,$fa=1.3 (17136 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,3 (17136 verts)
> CGAL Cache insert: group(){multmatrix([[1,0,0,0],[0,1,0,0], (17136 verts)
> CGAL Cache insert: difference(){group(){multmatrix([[1,0,0, (35300 verts)
> CGAL Cache insert: group(){difference(){group(){multmatrix( (35300 verts)
> CGAL Cache insert: cylinder($fn=0,$fa=12,$fs=1,h=70.2,r1=40 (60 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,- (60 verts)
> CGAL Cache insert: cylinder($fn=0,$fa=12,$fs=1,h=70,r1=50,r (60 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,3 (60 verts)
> CGAL Cache insert: difference(){group(){difference(){group( (3756 verts)
> CGAL Cache insert: cube(size=[5,10,7.5],center=false); (8 verts)
> CGAL Cache insert: multmatrix([[1,0,0,-44],[0,1,0,-5],[0,0, (8 verts)
> Number of polygons before reduction: 1
>
> Number of polygons after reduction: 1
>
> CGAL Cache insert: circle($fn=0,$fa=1.27324,$fs=1,r=40); (130 verts)
> Number of polygons before reduction: 124
>
> Number of polygons after reduction: 1
>
> CGAL Cache insert: multmatrix([[0.125,0,0,0],[0,0.875,0,0], (130 verts)
> Number of polygons before reduction: 124
>
> Number of polygons after reduction: 1
>
>  CGAL Cache insert: multmatrix([[1,0,0,40],[0,1,0,0],[0,0,1, (130 verts)
> CGAL Cache insert: rotate_extrude(convexity=2,$fn=0,$fa=1.2 (17892 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,3 (17892 verts)
> CGAL Cache insert: group(){multmatrix([[1,0,0,0],[0,1,0,0], (17892 verts)
> CGAL Cache insert: difference(){multmatrix([[1,0,0,-44],[0, (196 verts)
> CGAL Cache insert: cube(size=[2,10,1],center=false); (8 verts)
> CGAL Cache insert: multmatrix([[1,0,0,-1],[0,1,0,-5],[0,0,1 (8 verts)
> CGAL Cache insert: multmatrix([[0.707107,0,0.707107,0],[0,1 (8 verts)
> CGAL Cache insert: multmatrix([[1,0,0,-42.75],[0,1,0,0],[0, (8 verts)
> CGAL Cache insert: multmatrix([[0.707107,0,-0.707107,0],[0, (8 verts)
> CGAL Cache insert: multmatrix([[1,0,0,-42.75],[0,1,0,0],[0, (8 verts)
> CGAL Cache insert: multmatrix([[1,0,0,-44],[0,1,0,-5],[0,0, (8 verts)
> CGAL Cache insert: group(){difference(){multmatrix([[1,0,0, (200 verts)
> CGAL Cache insert: cylinder($fn=0,$fa=12,$fs=1,h=4,r1=4,r2= (26 verts)
> CGAL Cache insert: multmatrix([[1,0,0,38],[0,1,0,0],[0,0,1, (26 verts)
> CGAL Cache insert: cylinder($fn=30,$fa=12,$fs=1,h=7,r1=4,r2 (60 verts)
> CGAL Cache insert: cylinder($fn=30,$fa=12,$fs=1,h=0.75,r1=4 (60 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,7 (60 verts)
> CGAL Cache insert: cylinder($fn=30,$fa=12,$fs=1,h=0.75,r1=4 (60 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,7 (60 verts)
> CGAL Cache insert: cylinder($fn=30,$fa=12,$fs=1,h=1.5,r1=4. (60 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,8 (60 verts)
> CGAL Cache insert: union(){cylinder($fn=30,$fa=12,$fs=1,h=7 (150 verts)
> CGAL Cache insert: group(){union(){cylinder($fn=30,$fa=12,$ (150 verts)
> CGAL Cache insert: cube(size=[2,10,10],center=false); (8 verts)
> CGAL Cache insert: multmatrix([[1,0,0,-1],[0,1,0,-5],[0,0,1 (8 verts)
> CGAL Cache insert: cylinder($fn=20,$fa=12,$fs=1,h=13,r1=1.6 (40 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,2 (40 verts)
> CGAL Cache insert: cube(size=[16,2,12],center=false); (8 verts)
> CGAL Cache insert: multmatrix([[1,0,0,-8],[0,1,0,-5.5],[0,0 (8 verts)
> CGAL Cache insert: multmatrix([[1,0,0,-8],[0,1,0,3.5],[0,0, (8 verts)
> CGAL Cache insert: difference(){group(){union(){cylinder($f (186 verts)
> CGAL Cache insert: group(){difference(){group(){union(){cyl (186 verts)
> CGAL Cache insert: group(){group(){difference(){group(){uni (186 verts)
> CGAL Cache insert: group(){group(){group(){difference(){gro (186 verts)
> CGAL Cache insert: multmatrix([[1,0,0,38],[0,1,0,0],[0,0,1, (186 verts)
> CGAL Cache insert: cylinder($fn=0,$fa=12,$fs=1,h=3,r1=41,r2 (60 verts)
> CGAL Cache insert: cylinder($fn=0,$fa=12,$fs=1,h=3.2,r1=39. (60 verts)
> CGAL Cache insert: difference(){cylinder($fn=0,$fa=12,$fs=1 (120 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,1 (120 verts)
> CGAL Cache insert: group(){multmatrix([[1,0,0,0],[0,1,0,0], (120 verts)
> CGAL Cache insert: cylinder($fn=0,$fa=12,$fs=1,h=3,r1=20.5, (60 verts)
> CGAL Cache insert: cylinder($fn=0,$fa=12,$fs=1,h=3.2,r1=19, (60 verts)
> CGAL Cache insert: difference(){cylinder($fn=0,$fa=12,$fs=1 (120 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,1 (120 verts)
> CGAL Cache insert: group(){multmatrix([[1,0,0,0],[0,1,0,0], (120 verts)
> CGAL Cache insert: multmatrix([[1,0,0,20.5],[0,1,0,0],[0,0, (120 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,0 (120 verts)
> CGAL Cache insert: multmatrix([[0.951057,-0.309017,0,0],[0. (120 verts)
> CGAL Cache insert: multmatrix([[0.809017,-0.587785,0,0],[0. (120 verts)
> CGAL Cache insert: multmatrix([[0.587785,-0.809017,0,0],[0. (120 verts)
> CGAL Cache insert: multmatrix([[0.309017,-0.951057,0,0],[0. (120 verts)
> CGAL Cache insert: multmatrix([[2.22045e-16,-1,0,0],[1,1.77 (120 verts)
> CGAL Cache insert: multmatrix([[-0.309017,-0.951057,0,0],[0 (120 verts)
> CGAL Cache insert: multmatrix([[-0.587785,-0.809017,0,0],[0 (120 verts)
> CGAL Cache insert: multmatrix([[-0.809017,-0.587785,0,0],[0 (120 verts)
> CGAL Cache insert: multmatrix([[-0.951057,-0.309017,0,0],[0 (120 verts)
> CGAL Cache insert: multmatrix([[-1,-1.22461e-16,0,0],[1.224 (120 verts)
> CGAL Cache insert: multmatrix([[-0.951057,0.309017,0,0],[-0 (120 verts)
> CGAL Cache insert: multmatrix([[-0.809017,0.587785,0,0],[-0 (120 verts)
> CGAL Cache insert: multmatrix([[-0.587785,0.809017,0,0],[-0 (120 verts)
> CGAL Cache insert: multmatrix([[-0.309017,0.951057,0,0],[-0 (120 verts)
> CGAL Cache insert: multmatrix([[-2.22045e-16,1,0,0],[-1,-1. (120 verts)
> CGAL Cache insert: multmatrix([[0.309017,0.951057,0,0],[-0. (120 verts)
> CGAL Cache insert: multmatrix([[0.587785,0.809017,0,0],[-0. (120 verts)
> CGAL Cache insert: multmatrix([[0.809017,0.587785,0,0],[-0. (120 verts)
> CGAL Cache insert: multmatrix([[0.951057,0.309017,0,0],[-0. (120 verts)
> CGAL Cache insert: group(){multmatrix([[1,0,0,0],[0,1,0,0], (2800 verts)
> CGAL Cache insert: group(){group(){multmatrix([[1,0,0,0],[0 (2800 verts)
> CGAL Cache insert: cube(size=[2,1,1],center=false); (8 verts)
> CGAL Cache insert: multmatrix([[1,0,0,-1],[0,1,0,39],[0,0,1 (8 verts)
> CGAL Cache insert: multmatrix([[1,0,0,-1],[0,1,0,-40],[0,0, (8 verts)
> CGAL Cache insert: group(){multmatrix([[1,0,0,-1],[0,1,0,39 (16 verts)
> CGAL Cache insert: multmatrix([[1,0,0,0],[0,1,0,0],[0,0,1,3 (16 verts)
> CGAL Cache insert: union(){difference(){group(){difference( (5670 verts)
> CGAL Cache insert: group(){union(){difference(){group(){dif (5670 verts)
> CGAL Cache insert: group(){group(){union(){difference(){gro (5670 verts)
> openscad: src/CGALEvaluator.cc:86: CGAL_Nef_polyhedron
> CGALEvaluator::applyToChildren(const AbstractNode&, CGALEvaluator::CsgOp):
> Assertion `isCached(*chnode)' failed.
> Aborted
> make: *** [lid.stl] Error 134
>
>
> On Mon, Oct 24, 2011 at 3:05 PM, Don Bright <hugh.m.bright at gmail.com>wrote:
>
>> nevermind. i see it requires a script.
>> however the script doesn't work under mingw nor does it work under cygwin
>>
>>
>> On Mon, Oct 24, 2011 at 5:00 PM, Don Bright <hugh.m.bright at gmail.com>
>> wrote:
>> > Sorry, I can't find pins.scad
>> >
>> >
>> > On Mon, Oct 24, 2011 at 12:36 AM, Michael Brown
>> > <mebrown at michaels-house.net> wrote:
>> >> I am trying out openscad to make a few things, and I've run up against
>> a
>> >> brick wall in that my designs are previewing, but wont render or stl
>> export
>> >> in a 'reasonable' time. I'm using latest openscad git updated yesterday
>> on a
>> >> Fedora 15 Linux system running quad-core AMD Phenom @3.2Ghz.
>> >> I thought I'd make a mashup of MakeALot's Spiro Coaster and Bracelet V,
>> >> (http://www.thingiverse.com/thing:7361
>> >> and http://www.thingiverse.com/thing:8928). I'm trying to make a
>> container
>> >> using the bracelet design as the sides and spiro coaster design for the
>> >> lid. I merged the scad programs, and basically rewrote a lot of it, so
>> it's
>> >> more 'inspired' by at this point, but it all previews nicely and looks
>> good.
>> >> My problem at this point is that it is taking *forever* to compile, and
>> >> using almost 2GB of ram. I'm trying to figure out why it is taking so
>> long.
>> >>  I've uploaded my code to github
>> >> (https://github.com/superchalupa/container-round-decorative). Attached
>> is
>> >> the main module I've developed.
>> >> For comparison, I've re-compiled MakeALot's bracelet and it compiles in
>> >> about 41 minutes for me. When I redid the same basic bracelet design
>> with my
>> >> code, it literally took 23 hours. The object is fairly simple, so I am
>> at a
>> >> loss as to why it takes so long. It is a torus with about 100 oval
>> holes. At
>> >> first I was specifying $fn variables, but under the assumption that I
>> was
>> >> over-specifying things, I've removed almost all of those. The second
>> thing I
>> >> did was that I was using unit circles and scaling, which ends up using
>> only
>> >> 5 fragments, so I started using larger circles and different scaling
>> factors
>> >> to let openscad choose a more appropriate number of fragments. This has
>> not
>> >> seemed to help.
>> >> Calling my main module with this:
>> >>
>> >> // for my 3 year old (small)
>> >> radius=23;
>> >> bracelet_width=35;
>> >> wall_thick=3;
>> >> hole_len=8;
>> >> distance_between_holes=1;
>> >> hole_rotation_angle = 80;
>> >> num_divisions_around = 16;
>> >> edge_buffer=2;
>> >> holy_squished_hollow_torus(bracelet_width,
>> >>                            radius,
>> >>                            wall_thick,
>> >>                            edge_buffer,
>> >>                            hole_len,
>> >>                            distance_between_holes,
>> >>                            hole_rotation_angle,
>> >>                            num_divisions_around);
>> >>
>> >> Results in this:
>> >> time make bracelet.stl
>> >> openscad -o bracelet.stl bracelet.scad -Dlayout=\"$(basename
>> bracelet.stl
>> >> .stl)\"
>> >> Compiling library
>> >>
>> `/home/michael_e_brown/thingomatic/things/my-designs/box/container_module.scad'.
>> >> Compiling library
>> >> `/home/michael_e_brown/thingomatic/things/my-designs/box/pins.scad'.
>> >> ECHO: "y_step: ", 8.863269777109872
>> >> ECHO: "num big ovals: ", 3
>> >> ECHO: "degrees_per_y", 0.4392519091611444
>> >> ECHO: "leftover", 11
>> >> CGAL Cache insert: group(); (0 verts)
>> >> Number of polygons before reduction: 1
>> >>     ... cut ...
>> >> CGAL Cache insert: group(){group(){multmatrix([[1,0,0,0],[0 (3340
>> verts)
>> >> CGAL Cache insert: difference(){group(){difference(){group( (26991
>> verts)
>> >> CGAL Cache insert: group(){group();group();group();group(); (26991
>> verts)
>> >> CGAL Cache insert: group(){group(){group();group();group(); (26991
>> verts)
>> >> real 1415m34.047s
>> >> user 1404m59.223s
>> >> sys 0m10.050s
>> >> --
>> >> Michael
>> >>
>> >>
>> >> _______________________________________________
>> >> OpenSCAD mailing list
>> >> OpenSCAD at rocklinux.org
>> >> http://rocklinux.net/mailman/listinfo/openscad
>> >>
>> >>
>> >
>> _______________________________________________
>> OpenSCAD mailing list
>> OpenSCAD at rocklinux.org
>> http://rocklinux.net/mailman/listinfo/openscad
>>
>
>
> _______________________________________________
> OpenSCAD mailing list
> OpenSCAD at rocklinux.org
> http://rocklinux.net/mailman/listinfo/openscad
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://rocklinux.net/pipermail/openscad/attachments/20111025/c014c865/attachment-0001.html


More information about the OpenSCAD mailing list