Developing web applications containing both parametric CAD and product visualization in 3D requires three things to work properly.
Requirements for an online CAD configurator:
- A Client side module with support for CAD that the users interacts with
- A Server side module that hosts the application and provides additional functionality like authentication, save / load, etc.
- A set of rules and formulas for the product configuration
We recommend our cloud service DynaMaker to handle all those three in a single platform. But the principles stated here apply no matter what platform you choose.
Part 1 – Client Side Module
The client side mainly focuses on:
- How the interface should look (placement of buttons, toolbars)
- What the user can interact with (buttons, rotation of model, etc)
- What steps are needed to configure a product
- Visualization in 2D or 3D
- Presentation of relevant data to the user (dimensions, values)
Part 2 – Server Side Module
To make thing available on the web you need some kind of server to host the files and provide protected functionality like user handling, security, saving and loading a configuration, connections with other software, and much more. This is only exposed to the client side through an API and can be composed of pretty much any programming language available.
Developing the server side is hard and requires an experienced developer to ensure that its secure, can handle load and is possible to maintain over time. The server side is handled automatically in the DynaMaker cloud service.
Part 3 – Product Rules & Formulas
Last but not least you need a set of rules for your product configurator to work. Maybe you already have them written down in the product catalog? Or expressed in a excel sheet somewhere. These need to be translated to web compatible formulas and code (Client side or server side).
The rules and formulas can be distributed either to the server side module (secret formulas) or the client side module (compiled but available), or both, depending on how the product configuration is setup.
If you want code examples on how this can be setup on the DynaMaker you can check out the tutorials under docs.dynamaker.com