First of all, thank you for taking the time to put this forum up.
Here's what I use JSCAD for,
Coder since 1978, cardboard crafter since 2007, digital cardboard crafter and JSCAD user since 2014.
@jamesnewton Indeed it is not that critical, it won't be bad to have already answered questions on the previous forum asked again here, so up to date answers could be provided. By the way those who have jscad knowledge/experience to share can make a post to show what they do, put some code.
Hello, I'm deploying crafting resources on design section of my github account, and to do so I share several furniture designs, I have about 10 now, but I have lots more to add. For each of them I share the 3d model and links to open jscad scripts with them. I currently have almost the same using v1 and I wrote an html/js page to create jscad code with the good script and the good 3d model. I don't know how to do that with v2, so I'm trying something else.
( can be seen here : https://github.com/gilboonet/designs/blob/master/MEUBLES/readme.md )
For each design there's :
I would like to replace the link to online 3d viewer by a link to a jscad script where it would be possible to rescale it, and show its dimensions, but the only solution that I have in mind is to write a script for that, and duplicate it for each 3d model. It's already what I am doing for the skeleton script.
Do you think that for such case, I mean choose a model then a script to apply on it, there could be a mechanism. Locally I already use dynamic require from a text parameter and it works well, but on remote script I didn't manage to make it work. Maybe is there a way to run a script from a remote folder ? or a way to require an url ?
Hello, I'm using JSCAD for years now to help me build cardboard objects, statues and furniture. I decided at the beginning of this year to build a website offering users to do the same. My crafts need essentially 2d patterns to cut, fold and glue. I used last V1 version that I embedded in my website, and replace viewer-minimal.html with some custom html allowing the user to first choose a 3d model (from a .jscad script, a .stl file, or a .obj file), then one of my crafting scripts that runs on the chosen 3d model. User configures the craft as needed, then run its 2d mode that renders 2d data. Last, user click on "Créer PDF" (create PDF) that uses the 2d data and make a .PDF file. It works fine and not only on pc (I use Ubuntu/Firefox) but also on tablet (Android).
You can use it here : https://gilboonet.github.io/OpenJSCAD.org/packages/web/scripts.html
There are some example models on "(Charger volume)".
"Depliage" script takes lot of time to render and it can take advantage of colored zones (materials) from a .obj file.
code is here (but beware I'm not an IT pro) https://github.com/gilboonet/gilboonet.github.io/tree/master/OpenJSCAD.org/packages/web see scripts.html and dist/scripts.js )
Hello, I cannot help with react as I don't use it. Did you take a look at viewer-minimal.html (https://github.com/jscad/OpenJSCAD.org/blob/master/packages/web/viewer-minimal.html) ? It was my starting point to integrate jscad into web pages.
Hello, it can be done like that, put a "#" after openJSCAD.org then the url of your script.
@BarbourSmith I saw your post but didn't reply as I wasn't sure it was about. I already tried on V2 the function that splits a solid into pieces as it is something that i use a lot : https://jscad.xyz/#https://raw.githubusercontent.com/gilboonet/gilboonet.github.io/master/demos/gig2i.js The function is scission3d() and the source is here : https://github.com/gilboonet/gilboonet.github.io/blob/master/demos/gig2i.js
I've been asked to make a pattern to build a Butaï. I tried to make it with jscad 2, and it went fine, I managed to do a parametric version with a 3d mode that is useful while prototyping, and a 2d mode to render the final pattern to svg.
@z3dev Here is what I have with my 4K screen :
It might be useful to be able to reduce editor width, here it could easily be three times narrower, but at the same time it would be nice to be able to have a bigger font size (using navigator zoom would do that but also for parameters and render). Code folding would be a great addition, and the pinnacle that I'm looking for for a long time would be multi-column, but there's very little chance for that. There's no need for search/replace as navigator already provide them.
I made a very simple 7 segments display script that uses union and if it still has holes when exported to wings 3d, it is the first time that those holes are easy to repair using only wings3d option for that (body mode, select the model, face mode, right click, select hole option, right click)
I rewrote it with v1 and the star rendered has no holes. I avoided rectangular_extrude because I wasn't able to use it without roundends. And I need to find a way to compute star width using a % from the outerpath (I form the star polygon with the outerpath minus itself scaled (0.8) for the moment.
Hello, I made a little jscad script to make a star using the dedicated primitive, it went well, but unfortunately the model has holes and they appear on all combinations that my script can do :
It might is due to T junction problem.
Hello, here 2 things that I noticed :
I use a text parameter and i have troubles when typing something on it, it seems to reload default/initial value after each keystroke or something like that, so I cannot type my value and needed to type it somewhere else and copy/paste it.
I usually color faces of a volume for one of my processes, and I used to export it to .obj with those colors as materials. And when I want to use that .obj with a script regardless of those materials, I union the array that the required("./volume.obj") returns, but then the volume I have seems to have errors. Last one I tested returned 0 for Y measurementBox. I tried ti check this opening the .obj on a script but then it return good value for Y. So for now I'm using two versions of the same .obj, one with separated materials, and another without.
Here is the volume I tested, it is very simple. It's maybe the flat nature of my separated parts that causes union() to fail.