Thanks! I was following the bottle example in which the thread is added to
the bottle and came up with a similar solution. But how should I cut with
the compound object?

On Tue, Jun 22, 2010 at 8:27 AM, Fotios Sioutis <sfo...@gmail.com> wrote:

> Below you can see a simplified code snippet from GEOM on how to create a
> compound object.
> It is in c++ but i think it will not be so difficult to translate in python
>
>     BRep_Builder B;
>     TopoDS_Compound C;
>     B.MakeCompound(C);
>     for (ind = 1; ind <= nbshapes; ind++) {
>       B.Add(C, aShape_i);
>     }
>     aCompoundShape = C;
>
> Fotis
>
>
> On Tue, Jun 22, 2010 at 3:54 PM, Charles McCreary <
> charles.r.mccre...@gmail.com> wrote:
>
>> I've removed the display initialization until after all of the geometry
>> calculations, not a factor in this case. The longitudinal cuts take ~10
>> minutes each!
>>
>> Thanks for the excellent suggestions. I don't think parallelization will
>> work in this particular case, but I think that it will help in a variant of
>> this case, i'll be examining the referenced code.
>>
>> I'd like to try the cut with compound object but I cannot find any
>> examples. Perhaps some pseudo-code indicating how to make a compound object
>> out of a list of solids.
>>
>> On Tue, Jun 22, 2010 at 3:42 AM, Jelle Feringa <jelleferi...@gmail.com>wrote:
>>
>>> You can also speedup the slicing process by distributing the computation
>>> over many cores (with the help of the multiprocess python module). Have a
>>> look to the slides 17 and 18 of this slideshow:
>>> http://www.pythonocc.org/resources/presentations_events/product-data-exchange-2009-conference-pde2009/.
>>> This multiprocess slicing is enabled by the shared serialization of
>>> TopoDS_Shape objects.
>>>
>>> The source code is available at:
>>> http://code.google.com/p/pythonocc/source/browse/trunk/src/examples/Level2/Concurrency/parallel_slicer.py
>>>
>>>
>>> True, for computing slices the multi-core approach works.
>>> However -and I think this is the case we're dealing with- if you change
>>> the object than of course using several processes doesn't speed things up,
>>> since the processes will simple be waiting for another process to finish.
>>> Fotios advice on constructing a compound object and than performing the
>>> boolean operation is most likely the way to go. I also used that trick a
>>> number of times with success.
>>>
>>> A note on display speed; by default, the display.DisplayShape method
>>> updates the viewer. If you use the display.DisplayShape( someShape,
>>> update=False ) the viewer will not redraw, which results in a considerable
>>> speed up. Note that you can also supply a list of TopoDS_* instances as
>>> argument.
>>>
>>> -jelle
>>>
>>> _______________________________________________
>>> Pythonocc-users mailing list
>>> Pythonocc-users@gna.org
>>> https://mail.gna.org/listinfo/pythonocc-users
>>>
>>>
>>
>>
>> --
>> Charles McCreary P.E.
>> CRM Engineering
>> 903.643.3490 - office
>> 903.224.5701 - mobile/GV
>>
>> _______________________________________________
>> Pythonocc-users mailing list
>> Pythonocc-users@gna.org
>> https://mail.gna.org/listinfo/pythonocc-users
>>
>>
>


-- 
Charles McCreary P.E.
CRM Engineering
903.643.3490 - office
903.224.5701 - mobile/GV
_______________________________________________
Pythonocc-users mailing list
Pythonocc-users@gna.org
https://mail.gna.org/listinfo/pythonocc-users

Reply via email to