The console language for OC (Open CASCADE) must be Python.

Its very important migrate from TCL/TK to Python.

There are very technical reason for OC is based in C++ and so Python.

The major reason is:

Python is a simple language.
Python is OO.
Python is extensible.
Pytohn have NumPy (Numerical Python).
Python is C++.
VTK have interfase in Python.

The console language for OC must be python: if AutoCAD is to Lisp/C then OC is to Python/C++.

Stephane Routelous's picture

Hi Roberto,

The only components using tcl are the Draw Test Harness and WOK.

For the Draw test harness, it is just a test environment
So I think the guys in Matra will not take the time to change the console features to something else than Tcl.
I think also that it is not worth.
This test harness is not done to release or make applications, it is just for tests.

About WOK.
With Tcl it's working fine.
WOK as quite nothing to do with OpenCASCADE itself. It is just another compilation tool ( or wrapper to compiler ) . Theoritically, you can use WOK to compile non-OpenCASCADE programms / libraries.
I think they are working on WOK since ages, so it will take a very long time and a lot of work to "port" it to Python.

Just my 2 cents

Roberto A. Ruiz Vial's picture

Hi Stephane

the problem is not Draw Test or WOK.

the problem is scalability in complex problem in CAD base and mechanical desktop.

Porting to Python is a necessary project in this time. In my experience, OCC it's no simply for programming little problems, for example .brep files robust visualization.

Develop a new surface 3D modeling application development platform in python, is important no only for elimination the compile process for same solutions, its the opportunity for develop in RAD context, and elimination the Draw Test and WOK.

For example: If you know completly the source code, the components and the modules, you will see that no exist module for workbench mechanical desktop. Why?.

Do you know blender (www.blender.3d)? (blender is python based).

In this time, OCC is not a plataform or framework, is only a set of CAD intermediate libraries, and is true: " ... it will take a very long time and a lot of work to "port" it to Python", but is the actual state the this project.


P.D. Why you not using Tk (Tcl) in exotk?.