Click to See Complete Forum and Search --> : CAD in Java


ravishankar5000
10-19-2004, 05:26 AM
Hi

Does anyone have an idea on the performance issues in using Java based applications (web and standalone) for viewing and manipulating the CAD drawings? I need to know the effects of using Java on the speed of reading the CAD file, processing, rendering and display of the contents

Thanks
Ravi

ray326
10-19-2004, 05:45 PM
That will depend much more on the application design than the fact it's developed in a specific language.

ravishankar5000
10-19-2004, 11:56 PM
Yes, much depends on the application design. But does not the fact that Java is an interpreted language impact the processing of the huge CAD files and associated rededering, geometric calculations, etc? Certain operations like rotate, involve many calculations (math intensive)and an interpreted language could be slower as compared to a non interpreted language

ray326
10-20-2004, 12:25 AM
By default in all the JVMs I've seen lately Java is not interpreted. The bytecoded class files are compiled to native code by the JIT compiler in the JVM. This has an impact at startup and probably as classes are loaded but, in a long running application processing fairly repetitve data structures like CAD models, it doesn't take long for everything that's happening to be happening in native code.

ravishankar5000
10-20-2004, 02:46 AM
Thanks for that info. So only the application start up would take time and performance would be comparable to application in C/C++. This is a good piece of info

ray326
10-21-2004, 01:57 AM
It's also dependent on the JVM vendor, as the C++ is dependent on the C++ compiler vendor.

ravishankar5000
10-21-2004, 02:51 AM
Thanks again for the info. I do not think we have a history of CAD or Graphics intensive applications implemented in Java. Do you? Probably it may change over a period of time

ray326
10-21-2004, 02:14 PM
There are lots of graphics and UML drawing packages written in Java but the former have generally been pretty simple and the latter do a lot of extra model-related work so they're hard to compare to a mechanical design application, which I assume is what you mean by CAD. Things like CATIA, e.g.

ravishankar5000
10-25-2004, 01:21 AM
Yes I'm refering to the Mechanical related CAD drawings, which involve lot of data and associated math processing. The files and data are huge and processing required is intensive. The processing needed here may not be comparable to the processing needed to generate UML drawings or any simple graphics packages. I understand certain packages, written in C++ are wrapped with Java (JNI) but am not too sure of the performance or inter platform operability of such packages

ray326
10-25-2004, 03:45 PM
A thorny problem indeed and one that probably has no decent way to resolve. One thing that *might* shed some light on the situation would be C++/Java comparisons for certain "CAD-like" CPU benchmarks run on the same hosts but even there you're at the mercy of the compiler and JVM vendors.

ravishankar5000
10-25-2004, 11:50 PM
The decent alternative, one that would ensure performance and store no surprises, is to have the core code, code that does the processing and the access of the CAD files, in C++ and have JNI wrappers around and then web enable the application