Cutting Simulation

Hi,
I have made an application that reads G Code and simulates the tool motion. I tried to make it simulate the cutting of solid block by performing boolean oper with tool swept volume and a box.
Works, but very slow and unpredicted results in complex tool path shapes.
Boolean operation fails to create perfect solid sometimes, thus leaving dangling faces. Is there any other way to simulate the cutting of solid block for 3 axis milling.
Please Help!

N. Sharjith

SteveH's picture

Hi Nair,
I am not sure that you will get good fast results using OCC boolean opps for NC simulation. OCC carries too much bagage and creates too much data to be effective for this type of app.
I have been working for many year at developing various algos for "true solid" NC verification. In fact, I discovered OCC while surfing the net for inspiration.
The best results I have had so far have been with straight openGL code and polygon based solids. The key to writing effective NC verification code seems to be in designing the app to create as little "new" data as possible. Areas that I have investigated include spatial decomposition techniques such as quadtrees and octrees.
In openGL you will have to write your own boolean algos.
I think Matra may have NC simulation code. I seem to recall early releases of Catia V5 using a Matra machining package which includes an NC simulation app called WYSIWUG. If I am right, maybe we should campaign to get the code into the public domain.
Sorry this all sounds so negative, but I have been banging my head against this particular brick wall for many years now.

Kind regards

Steve Howgill

Sharjith Naramparambath's picture

Hi Steve,
I am happy I got someone to tell me this. Thanks a lot. I have also gone thru the net and come to know that almost all are using the OpenGL Z-buffer algo. The earlier application I made for NC simulation was using pure ogl code but couldn't achieve the solid cutting simulation. So I tried OCC. But now it seems that raw Ogl is only required. Thanks again and let me know if you get any more info or source code. I will let you know if I do!

N. Sharjith

SteveH's picture

Nair,
Check out US patent number US5710709.

Good luck and best regards

Steve Howgill

Julian Todd's picture

Well, that's just crazy. He's patented the use of a ray tracing algorithm, calling them dexels instead of rays. Honsetly. I've written a couple of versions of this program with the rays perpendicular to the screen, and rays perpendicular to the cutting axis. The latter works best because the polynomials are soluble.

SteveH's picture

Yes I agree it is crazy. But then again, many patents have been granted for using existing technology in new ways. The Dyson cylone vacuum cleaner based on grain hop technology for instance.
It sounds like my software development is pritty much mirroring your own. I too have found that rays perpendicular to the cutting axis works best. The problems I am having are processing speed and how to deal with 4 and 5 axis simulation.

Regards

Steve Howgill

Sharjith Naramparambath's picture

Hi,
I have seen an example opengl application for csg using stencilbuffer. How good can it be for this implementation? And can you please give some more idea about how you did it?

N Sharjith

Sharjith Naramparambath's picture

Hi,
I dont know, I tried searching didnot get anything says invalid patent number Please help