Hello,
First of all, thank you for taking the time to put this forum up.
Here's what I use JSCAD for,
Hello,
First of all, thank you for taking the time to put this forum up.
Here's what I use JSCAD for,
Thanks to V2 examples, I was able to make a script to create a curved and sheated furniture foot generator. I only need to make it parametrable and it will be done.
@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 )
Finally I made it fit into one file using obj2jscad.js. It can be seen here.
@hrgdavor Thank you, that's very nice. It's not that I like folding things but it's a process I use to build them with cardboard
Here's a first test :
The output is the same as it was with my function.
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.
@gilboonet I finally take advantage of geometries id and class preservation, and created a small js node script that creates a group for all paths having the same class, and at the same time I solve another annoyance that was the impossibility to search by numbers by creating id. That's very nice.
@hrgdavor Thank you for your reply. I'm giving it a try.
On top left the svg that my unfolder generated
On bottom left the svg generated by JSCAD, I needed to edit it by hand to add colors. I think the parametric part won't be hard, I just need to translate the second path (poly2). I'm still need to know what unit is used (I suspect it is inches) because the final scale is not the same as the original one.
Hello, it can be done like that, put a "#" after openJSCAD.org then the url of your script.
https://openjscad.org/#https://raw.githubusercontent.com/gilboonet/designs/master/make_pattern.jscad
Hello, my V2 Unfolder is now complete. (the project is here)
Here's what it does. (If your browser is not in french you will have english version)
You can enter the name of a 3d file that you have into the project's directory, then render to see it and it's dimensions. Then you can change scale and when it's ok you can check "unfold" and render (uncheck show volume and show dimensions to be able to export to .dxf).
To make a multipage PDF of the output, I'm importing it into Inkscape, change colors and styles when needed, then change document dimensions in order to have it containing all pages (on my example it's A4 x 12). Then I save a copy of PDF format. And I use a console command to make a multipage PDF of it :
pdfposter -p 12x1a4 myOnePage.pdf multipage.pdf
I only tested on linux, but the same can be done on windows or mac provided pdfposter is installed. Maybe this pdf creation process could be useful to other users.
@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
Hello, it took me a long time, but my Unfolding application is now up and I'm starting to create JSCAD script that could produce OBJ files that could easily be unfolded.
Here is what a working session look like :
You choose the script, here the simple box, and you can change parameters. Then you can add code if you want to color faces.
And then render and export to .OBJ.
Create a New unfolding project (File/New, choose the .OBJ)
I'm hoping to add others simple designs, then more and more complex ones, and also to improve the script (show design dimensions, show faces numbers to ease coloring).
Hello, this week I crafted a cardboard furniture, a little one.
It is made from a 3d model created with Wings 3d that I export to .obj and import (dynamic require) into a jscad (v2) script that then render 2d surfaces that I export to .svg to cut. It works fine. Years ago, I made a jscad (v1) script to do that, but many times I needed to slightly rotate the model to avoid errors and sometimes it was not possible. Now all models work fine.
I would like to put that new v2 script into my website to replace v1 version, but the script uses parameters and exemples using vue don't allow parameters. Is there another way to embed a jscad script into a website ? I have a workaround that is to have the users create a folder locally, put the script into it, to also put the target .obj into this folder, run https://jscad.xyz, clic on load jscad project and select the folder. The local folder must be used because I didn't find a way to use a local .obj file if the jscad project is hosted remotely. It is not easy for non developers users, but it works.
Here's a snapshot of the script, using sliders it is very easy to use, the only drawback is that it is hard to see exactly what values are used, it could be useful to be able to save/load parameters from the UI.
(I also use an unfolded clothe to build my crafts, but for months now I'm no more using jscad for that, only vanilla javasript)
@samuelwang48 Your work is really great. About shaders, maybe this project could help you https://shadered.org/
@samuelwang48 About regular polyhedrons, long ago I made functions using them, but didn't translate them for V2, they can be seen here :
https://3d.hrg.hr/jscad/V1/#https://raw.githubusercontent.com/gilboonet/designs/master/polyhedrons.jscad
https://github.com/gilboonet/designs/blob/master/polyhedrons_archimede.jscad
https://github.com/gilboonet/designs/blob/master/polyhedrons_catalan.jscad
https://github.com/gilboonet/designs/blob/master/polyhedrons_platon.jscad