Hi Sean, The OpenCascade API is huge, it took me almost two years to get familiar with it. 'Familiar' does not mean that I know all method/classes and how to use them, but I know how to dive into new concepts that I never used to work with.
pythonOCC aims at making the first steps with OCC quicker and easier. You got a box and a cylinder displayed on your machine? Perfect! I worked dozens (hundreds?) of hours only to have this small demo working, that mean we are on the good way! pythonOCC suffers from a lack of documentation for beginners, a kind of 'get started' or 'tutorial' but here is how you could proceed to get done with your projects: 1. The basics of OCC data model is the concept of shapes, wire, edge, vertex, shell etc. If you understand what they are, you can do anything with the API: the rest is just algorithms that take/return such objects. I suggest you read the Roman Lygin's blog dedicated to this topic (a serie of five articles). It is perfectly written, and you'll learn a lot from it: http://opencascade.blogspot.com/2009/02/topology-and-geometry-in-open-cascade.html 2. Traverse the /samples directory of pythonOCC. The samples are classified into folders with a functional structure. The pythonOCC is splitted into 2 levels : - the wrapper level (Level1), which is just a set of bindings of OCC to python. The way to deal with the Level1 API is really close to the C++ one. It will ensure your app is easily portable to C++ but, on the other hand, you will not really benefit from the power of python, - the Level2 API, which is a set of python classes/functions built upon Level1 objects, in order to make development with pythonOCC much easier, quicker and, most important, *pythonic*. 3. To have details about the pythonOCC API, check the API reference documentation (generated with epydoc) at http://api.pythonocc.org. A few methods had actually to be transformed in order to be used from python, 4. Whenever you have a problem, send an email to this ml. You'll get a quick answer. You can also try to search/post/browse the OCC official forum : http://www.opencascade.org/org/forum/, 5. When you're familiar enough with OCC data model and algorithms, you can try to read the official OCC documentation. It's not for beginners, At last, the material removal simulation is something we discussed on this ml a few weeks ago (see https://mail.gna.org/public/pythonocc-users/2010-03/msg00041.html). It appears that boolean ops over BRep shapes are too slow to perform a simulation. The idea would rather be to use the Voxel package, although there still are implementation issues. BTW Sébastien, did you go further with it? Welcome to you Sean, and have fun! Best Regards, Thomas 2010/4/14 Dave Cowden <dave.cow...@gmail.com> > Hi sean, welcome! > > The first tip is to poke around the opencasade forums. Many elementary > topics are addressed there in c++ language, and can be translated to > python easily. > > Another great resource is to read romans' series of occ blogs: > opencascade.blogspot.com. He has a great set or intro articles that > help with the basics. > > > Lastly, make sure to check out the occ samples: there is a lot of code > in there that demonstrates the basics. > > > Material removal simulations are a great occ application, you have > chosen well. > > On 4/13/10, Sean McAllister <smcal...@gmail.com> wrote: > > I'm trying to come up with a little application to help me with my wood > > working. Basically I want to use a router to cut patterns into panels, > and > > I'd like to be able to visualize them on the computer before hand. This > > would basically consist of just having a mesh for the work piece (usually > a > > rectangle), and then having a profile of the bit I'm going to use, and > > extruding it along a path (determined by user parameters), "removing" > > material from the mesh as I go. I'm solid with Python, but don't have > any > > experience with OpenCascade or pythonOCC, so I was helping someone could > > give me a few pointers on where to get started. I've got a basic app > > starting up with a Qt backend displaying a cylinder and a rectangle, but > > that's it right now. > > > > Sean > > > > _______________________________________________ > Pythonocc-users mailing list > Pythonocc-users@gna.org > https://mail.gna.org/listinfo/pythonocc-users >
_______________________________________________ Pythonocc-users mailing list Pythonocc-users@gna.org https://mail.gna.org/listinfo/pythonocc-users