mercredi 21 janvier 2015

Web based CAD engine

I'm on the way of developing a web based CAD app and I've started to make an analysis of the possible technologies to use.


So the possible scenaries I've thought are these ones:



  1. The best option ever would be to use some kind of library which supports both 2D and 3D graphics. It's something I haven't found and I don't even think it exists.

  2. Being more realistic, the second option is to handle the use of two libraries, one for 2D and another for 3D, both with the capacity of editing.

  3. I'm just running out of ambition here. The last web based scenary would consist on using a 2D library for editing and a 3D library just for rendering.

  4. If everything before fails, I would consider the possibility of desktop environment.


First view


So I've been googleing for a couple of days and I've found many "engines" to make graphics in web, and I've been filtering them until having not many:


2D



  1. DojoToolkit: SVG graphics handling. Better performance than SNAPSVG, JQUERYSVG...

  2. Pixi.js: Quite good references on the web, but game oriented.


3D



  1. Three.js: Probably the one that I've liked most. Seems serious and with many possibilities. The problem is that is not CAD oriented, so many work is necessary to use it.

  2. OpenJSCAD: It's a CAD oriented WebGL library, but it's still Alpha and seems quite poor.


Desktop



  1. Unity3D: It has a non-game library and there is a lot of people working on it.


Results


So after knowing the theory, I've been making a couple of tests:



  1. WebGL technology seems to be too much young for the moment, I'm feared of taking a bad decision with it.

  2. I've found few tools of CAD desing or CAD viewer on the internet, such as Tinkercad, TraceParts, Lagoa, 3DTin(deprecated), Sunglass... So this means some people have been making things. The fear I've got is that probably all these tools are made in native WebGL, which has an incredible amount of work.

  3. To finish, in general, all these tools I've tested have an awful performance with complex objetcs and specially when loaded with big amounts of objects.


Question


So, does anybody know something about this world? Am I betting correctly on the web based environment? Do you know any other possible libraries to be used in the kind of apps? Have you got any information or any source about the libraries or it's features?


Thanks in advance.


Aucun commentaire:

Enregistrer un commentaire