-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Roadmap #2
Comments
I agree; I think it's important for an author to have both an editor, and viewer on the screen at the same time. However, I think the editor should be optional. To illustrate what I mean, this is what I can do now using The I imagine the
I've raised cqparts/cqparts#46 to improve the cqparts web service, but ideally it would be completely replaced by
That is very cool, and would be excellent while people are learning (I would have loved that). Atom?
oh!, hey... look! https://github.com/apla/atom-jscad I just tried it, and it works. |
If we added file watcher code to automatically re-render the 3D view and threw some 3D controls on the page, I guess I'm having a hard time seeing any advantage in doing cadquery-gui over what you have there. Your solution would make more since to distribute with the CadQuery library as well, which would be a big advantage for some users. |
One big 👍 for the
that is appealing The alternative I've proposed
Or if they choose to use the Atom plugin:
|
Do we have to choose? Plugins / PackagesPackages that must be there in some form are denoted with a ⭐ Web Front-endeach released as an npm package
that may be overboard, but you get the idea Web Back-endmaybe as
Implementing into multiple "apps"
|
oh!, and I just thought of another scenario:
Then it's just 1 step to create a gateway python service (that uses the transmitter) to update positions on a miller, or 3d printer (or anything) to show its position realtime. I've actually done this, so I can submit that code. |
I think this list is all rolled into the 3D viewer that I'm working on revamping now. I think that for it to work with Electron properly there would have to be two-way communication (probably via websockets). Would the receiver just be some Javascript that runs client-side that receives data from the back-end? I'm not quite sure what "new content geometry & render data" would look like in that context. It seems like the back-end would take care of running the script and converting the results to JSON for transport to the receiver on the front-end. Am I missing something? |
No; that's exactly what I was thinking. But, rather than exporting to JSON, I strongly recommend glTF, I think it'll make our lives so much easier. |
I read the issue when you posted about it, but I haven't tried to use it. How do we integrate that on the back-end? Will the back-end always need to include cqparts in order to export models to gITF? I'm wondering if we need to create an umbrella project on GitHub to organize all these npm packages. Kind of like PyQode did. I'm not sure what we'd call it. Something like "Open Web CAD Toolkit" or something like that? I'm horrible at picking names for projects, and it could be used for a lot more than just CAD I guess. |
Ultimately the glTF should be a format available for The glTF demo
I think we just need proof of concept first, if this won't work the way I think it will, then we'll just have some well structured code that's all compiled together. |
I'm overhauling parts of this app right now, and will convert it's viewer system to being the proof-of-concept for glTF functionality based on your demo. I'll likely need advice during the process though. |
@fragmuffin Based on conversations on the cqparts and cadquery issue trackers, I think we might be wanting different things out of this GUI. I'd like to start a discussion here to figure out a high level path forward for how this UI will work.
What You Would Like to See
If I understand correctly, you would like for the GUI to be view only, but allow the user to adjust parameters though the GUI. Is that correct?
What I Would Like to See
I'm interested in that mode of operation, but I'm also interested in a couple of others.
A Possible Path Forward
Right now what I'm thinking is this:
Additional Design Goals
There are a few other goals that I think are work pursuing.
There's also been talk in the community of a single installer for a CadQuery GUI as well as the command line. Something similar to what you get with OpenSCAD and FreeCAD. Should we try to do that at some point with this GUI?
Far Future
Something in the back of my mind is other modes of operation for the GUI such as a generative design mode, but I'm a long ways from having time to start that. It's not feasible to cover expanded use cases at this point, but it's worth noting that this GUI lends itself to being expanded for other uses later.
The text was updated successfully, but these errors were encountered: