Hi Jelle and Thomas,
thanks for pointing me to the OCEworkflow document.
My SMESH / GEOM modifications are following along the line of what Fotis
Soutis did (Corba stuff removed), with working NETGEN and Tetgen mesher
Plugins.
I am going to contact Fotis Soutis about my modifications to see if he is
interested in them. I think it would be really great if there would be a
PythonOCC
release based on oce 0.10 and SMESH/GEOM V6.5.0 with Netgen and Tetgen
integration sometimes in the foreseeable future.
Thomas , I cloned into your "tp/oce-0.10-support" branch on github and tried my
software on oce 0.10 wrapped using your interface files (with my SMESH/GEOM
extensions) and it works like a charm ! Gosh, I should have checked the git
repositories before diving into modifying the PythonOCC-0.5 SWIG interfaces.
Well, at least
I learned a lot during that week ;-).
I have a few questions about the SWIG interface files:
- How much time and effort do you think would it take for also updating
the win32 swig interface files ?
- I think the gccxml issue I am having on my Mac really is related to
my gccxml version being 5 years old.
So I don't think a patch about that is necessary. What do you think ?
- I was wondering about the renames in TopoDS_renames.i:
%rename(vertex) TopoDS::Vertex;
%rename(edge) TopoDS::Edge;
...
In the version I used before, I could do TopoDS().Vertex(),
TopoDS().Edge(), etc. What is the rationale behind these changes ?
best,
Mark
Am 17.08.2012 um 12:12 schrieb jelle feringa:
> hi Mark,
>
> thanks for your comments and hints.
>
> Its exciting to have you onboard =)
>
> About the GEOM and SMESH modules: I started all over again creating
> stand-alone versions of SMESH and GEOM from the Salome V6.5.0 sources cause I
> judged that updating these projects file by file would have been too
> cumbersome. Well, probably that's not true for GEOM, but at least in SMESH
> a lot of the code base has changed between 5.1.x and 6.5.0.
>
> That figures.
> So your API resembles SMESH, with the Corba crap yanked out of it?
>
> IMHO GEOM and SMESH are a huge plus for PythonOCC.
>
> hear hear, and considerable easier to work with than delving into Salome, so
> yes, its a forté, also taking into account the "options" are fairly limited
> if your keen on working in OS
>
> In my Project I use non-manifold topology a lot using GEOMs most valuable
> GEOMAlgo_Splitter (for creating multi-material domains ) and use SMESH for
> advanced meshing techniques like creating periodic 3d volume grids or
> hybrid meshing with prisms and tetrahedra mixed.
>
> Thanks Thomas for pointing me to your commit about the HashCode function.
> According to the OCCT 6.5.3 release document that is exactly the way how this
> should be done. BTW: For my modifications I use oce 0.10. Opencascade is a
> pain to compile on Mac OS X, but with oce it's an absolute no-issue. It's
> really
> nice to see what the community has done here.
>
> My modification in swig_generator.py (function write_functions) on my
> computer was necessary because (apparently following the C++ standard) gccxml
> reports implicit copy constructors for the classes it parses (in cases where
> explicit copy ctors are absent). Compilation of the corresponding wrapper
> classes
> fails because of class members that can not be instantiated using copy
> construction. I found that there are versions of gccxml that do not report
> implicit
> copy constructors. With my version (V0.7 based on gcc V3.3.2)
>
> Hmmm... that version is ~ 5 years old...
>
> I had to filter them out using mem_fun.is_artificial (that's the way gccxml
> marks implicit functions).
>
>> * I pushed a branch to the github repos that is sync with the oce master
>> branch (see my comment above). Please push code/comments/issue to
>> https://github.com/tpaviot/pythonocc. If you don't feel comfortable with
>> git, post code to this ml in the meantime ;
>
>
> I am not familiar with git, but wanted to learn using it sooner or later
> anyway, so now is the best time for that ;-).
> But I am not sure I understand you correctly. The branch you mention is
> already using oce 0.10 and has the SWIG files modified ?
> So there's not more to do for me other than contributing SMESH and GEOM
> modifications, right ?
>
> Nope. Its best to have a branch dedicated for your work.
> Once all is nice & peachy, it can be branched back into the master.
> Perhaps its best to read up on the OCE workflow, which reflects some solid
> ideas on developing with git as your cvs
>
> Those modifications I should send to Fotis Soutis ([email protected]) for
> merging them into the sourceforge code trees, right ?
>
> [ CC'd to Fotios ]
> Fotios maintains GEOM and SMESH as a separate project.
> It would be interesting to diff both trees, from there it would be more
> practical to see what is the overlap between the projects.
>
> And after that is done PythonOCC would incorporate them at a later time for a
> new PythonOCC release?
>
> Yep, when your branch works well and doesn't clash with master and it tested,
> than its time to merge things back into the master, and time to release.
>
> PS: In the GUI I developed using PythonOCC and PyQt I define boundary IDs on
> faces of the geometry and keep the surface grids after
> volume meshing such that I have the link OCC face --> surface triangles
> for setting boundary conditions.
>
> Clever! I'm working on a PythonOCC based gui too, which is based on enthought
> traits, which allows for very rapid development of GUI's.
> Curious to hear your take on PyOCC gui development.
> But that's another thread ;D
>
> Cheers!
>
> -jelle
>
> _______________________________________________
> Pythonocc-users mailing list
> [email protected]
> https://mail.gna.org/listinfo/pythonocc-users
_______________________________________________
Pythonocc-users mailing list
[email protected]
https://mail.gna.org/listinfo/pythonocc-users