python-oce

199 views
Skip to first unread message

Paul

unread,
May 22, 2011, 8:36:11 AM5/22/11
to oce-dev
Hello,

Now that oce .2 is out, what are the plans for the python wrapper?

Paul

Thomas Paviot

unread,
May 22, 2011, 10:10:14 AM5/22/11
to oce...@googlegroups.com
2011/5/22 Paul <spook...@gmail.com>

Hello,

Now that oce .2 is out, what are the plans for the python wrapper?

Paul

Hi Paul,

As OCC doesn't distributed any python wrapper, I mean you're talking about pythonocc [1]. As it's a subject I'm aware of, let me explain in a few words my position about the OCE/pythonOCC relationship. Sorry if the answer is a bit long, it's the opportunity for me to express my point of view about the origins of the OpenCascade Community Edition project.

The initial plan for the pythonocc project was to rely on a more reliable library than OCC. The OCC library is perfectly reliable from a technical viewpoint, but absolutely not reliable from a project viewpoint. Let me take an example to illustrate this argument: the release of pythonocc0.5.

Pythonocc0.5 was released in January 2011. It's a python wrapper for OCC6.3.0. Three months later, OCC6.5.0 is out: all around the OCC community, everybody's happy, everybody dances, everybody shouts 'hurray' [2]. Despite my official support, I don't: as soon as the 6.5.0 release is out, the 6.3.0 is not available anymore for download. It's dead, rejected into the twilight zone, it has never existed. Nothing. People who wants to try pythonocc under windows are disapointed: I received a few emails with the following question: "hey, where can I download OCC6.3.0 so that I can run pythonocc?". Fortunately, I packaged a pythonocc 'all-in-one' including OCC6.3.0 dlls. But it's not serious. My conclusion was then: we, developers using OpenCascade without any customer account, for free and opensource software, are too dependent upon the bad project management (if any) from the OpenCascade company. And then OCE came.

Projects/products built upon the OpenCascade Technology can IMO be considered as 'parasites'. The term 'parasite' has here to be understood according to its biological meaning: "Parasitism is a type of symbiotic relationship between organisms of different species where one organism, the parasite, benefits at the expense of the other, the host [...] Unlike predators, parasites are generally much smaller than their host, although both are special cases of consumer-resource interactions." [3] The condition of the parasite's life is the host's life: healthy host, healthy parasites.  Dying host, dying parasite. And, at some point, dying OCC, dying pythonOCC, dying FreeCAD, dying Fotis'GEOM and SMESH etc. So the first intent of the OCE call [4], the github repos setup, this oce-dev ml creation etc. was to create the conditions for a healthy OCC. Some kind of OCC that cannot die (unlike the OCC6.3.0 release), may be improved by contributors, some kind of OCC we could really trust to build our products (for instance pythonocc) on strong foundations. I was convinced that doing something just after the 6.5.0 version was released was the good timing. I didn't think the OCE project would evolve so quickly, thanks to a few motivated and talented C++ developers (what I'm unfortunately not ;-) )!

Now let's come to the answer to your question: the plan is still the same as a couple of months ago, that is to say making pythonocc rely on OCE and not OCC anymore. I succesfully updated the wrapper to the 0.2 release, but I still need to be sure that users can 1. easily compile OCE or either 2. download precompiled OCE libraries. The point 1. is about to be achieved (the CMake builder) and 2. precompiled binarires for win32 are ready, thanks to Fotis (BCC), and QbProg (MSVC) who also bundled third part libraries. I think the 0.3 release of OCE will be ready for a wide spread over a lot more machine/compiler than OCC. I will commit changes to the pythonocc repository as soon as OCE 0.3 is released. As a consequence,  the next pythonocc release will depend on OCE0.3.

Best Regards,

Thomas


[1] http://www.opencascade.org/org/forum/thread_20111/
[2] http://www.opencascade.org/org/forum/thread_20025/
[3] http://en.wikipedia.org/wiki/Parasite
[4] http://www.opencascade.org/org/forum/thread_20111/

Denis Barbier

unread,
May 22, 2011, 11:06:14 AM5/22/11
to oce...@googlegroups.com
On 2011/5/22 Thomas Paviot wrote:
[...]

> Pythonocc0.5 was released in January 2011. It's a python wrapper for
> OCC6.3.0. Three months later, OCC6.5.0 is out: all around the OCC community,
> everybody's happy, everybody dances, everybody shouts 'hurray' [2]. Despite
> my official support, I don't: as soon as the 6.5.0 release is out, the 6.3.0
> is not available anymore for download.
[...]

Hello,

A minor correction, OCC 6.3.0 has not been removed, but redirections
have been modified to point to the new release. So even if there is
no link on their website to the old release, one can still download
6.3.0 sources at
http://files.opencascade.com/OCC_6.3_release/OpenCASCADE_src.tgz
I guess that binaries are also there, but I do not know their location.
Of course, your points are still valid, they may decide to remove this
file without warning their users first.

Denis

Denis Barbier

unread,
May 22, 2011, 11:11:37 AM5/22/11
to oce...@googlegroups.com

Bryan Bishop

unread,
May 22, 2011, 12:29:14 PM5/22/11
to oce...@googlegroups.com, Bryan Bishop, Denis Barbier, Open Manufacturing
Here are some other files:



I might have others elsewhere if anyone wants.

- Bryan
http://heybryan.org/
1 512 203 0507

jelle feringa

unread,
May 22, 2011, 12:59:07 PM5/22/11
to oce...@googlegroups.com
thanks! that's most useful...
Reply all
Reply to author
Forward
Message has been deleted
0 new messages