FAQ
Welcome to the DynaMaker Frequently Asked Questions (FAQ) page!
How do I find which library to use?
You can find all the libraries available in DynaMaker with a short description here.
How can I limit access to my application?
You can read more about limiting access to your applications here.
I deployed the wrong version of the project. How can I revert it?
Sometimes things do not work out quite as expected and there is a need to undo a deployment. There is not yet any built-in function for rolling back, but if you should need to revert to a previous deployment of your application, send an email to support@dynamaker.com and we will help you.
How can I save and load my designs in a project?
You can check what is needed in your project in our how-to example.
My model isn't changing when I change parameters (slider/input field, dropdown)
Make sure you run the needed function that modifies your component in the callback of your configurator. For example, if your table changes in size with a parameter and consequently more legs must be added, you should run some kind of component.update()
in configurator.addCompletionCallback()
, where update()
contains the logic of adding more legs as subcomponents of the table.
How can I update the model instantly when using a slider parameter?
Doing the following should make your models update faster with a slider:
- Go to your component:
- go to COMP/Parameters.
- make sure you use
configurator.addUpdateCallback()
instead ofconfigurator.addCompletionCallback()
, since the latter has a very short time delay.
- If you want to see the result in your component right away:
- go to SPEC/Presets component.
- in your new component presets set the optional argument
useUpdateCallback
totrue
. - you should have the following as an example:
const mainComponentPreset = new PRESET.ComponentPreset(COMPONENT.Component, { useUpdateCallback: true })
- Go to your application:
- go to CODE/UI.
- go to the tab (
STUDIO.Tab
) where your configurator is located. - set the optional argument
instantUpdate
totrue
. - you should have the following as an example:
Updating a model instantly when moving a slider means thatconst productTab = new STUDIO.Tab('Product', generateProductToolbarItems, { instantUpdate: true })
generateGeometry()
function is called more frequently, so this is usually suitable for simple models and this could affect your app's performance, especially in larger products, but you can easily turn this off by writinginstantUpdate: false
instead.
Something is wrong with my model. How can I fix it?
Sometimes we think that the problem is in the model, but it usually comes from the sketches that generates them. Some tips:
- when cut/extruding, try to have a closed sketch. Make sure you end the sketch with
sketch.lineToId(0)
orsketch.curveToId(0)
to return to the first node0
.
My app is slow! What can I do to improve performance?
Everyone wants to have a dynamic product that updates very fast with certain parameters. This is one of the strengths of using DynaMaker and here are some tips you can try to improve the performance of your app:
- Avoid calling the same function several times when maybe just once is enough.
- 2D sketches are much faster to update than 3D models.
- Think if you need to have 3D models in all the steps of your application
- Try to have the 3D steps only when you don't update your model and you just need it for visualization (eg.exports).
- Usually curves require more calculations than straight lines, especially in 3D models. Try to only use them when they are strictly needed, such as drawings or final 3D models (STL files).
addExtrude()
andaddExtrudeCut()
can be performed with a sketch that consists of multiple closed sketches at the same time. For example:- a hollowed cylinder can be done with 2 concentric circle sketches and one single extrude (no extrude cuts).
- multiple holes (circle sketches) can be cut extruded at the same time if they are merged into a single sketch.
addExtrudeCut()
usually requires heavy calculations. In the tutorial My First Drawing we show an example, which says try these in the following order if possible:- Option 1: Merged sketch + extrude.
- Option 2: Boolean subtraction.
- Option 3: Extrude cut.
I want to learn more about JavaScript & TypeScript. Can you recommend any good resources?
You can read more about JavaScript & TypeScript here.
Why do the examples in docs differ in style from the templates in DynaMaker?
We are constantly developing and improving the DynaMaker functionalities and sometimes docs lag behind. When you find out differences, please reach out to support@dynamaker.com and we will remedy promptly!
I'm stuck and none of the above solved my problem. Could you help me please?
We are happy to help you to solve any other problem! Contact us at support@dynamaker.com.