SOLVESPACE -- parametric 2d/3d CAD
Examples
Tutorials
Features
Download
Reference
Technology
Library
Forum
Contact
USER FORUM

(you are viewing a thread; or go back to list of threads)

Command Line Interface (by Grégoire P)
I've started to read and understand the code for a week or two. And I think it would be interesting to add a Command Line Interface. What do you think to be the easyiest way? Do you know tools to do that?

By the way, with a friend we start to make translations of Solvespace (at the moment, french, portuguese, german, spanish and italian) that we will commit as soon as possible.

We've got a bunch of short and long term ideas but is there a roadmap or sort of that we can follow?
For example, things we want to bring:
- .jt import/export
- meshing tool facilities (with tetgen or gmsh)
- drawing enhancements
- a git menu (with libgit2) to handle better file management and multi-user works

For me, the CLI is the most critical part at the moment because it can ease the process of prototyping new design functions (involute gears, ...) before they are hardcoded.
Fri Sep 26 2014, 04:52:03
(no subject) (by Jonathan Westhues)
I have no set roadmap. Early in my development of the program, I'd intended to provide a command line interface; that was the original intended purpose of what became the browser window.

I still like the concept, but it would be (a) a lot of work to implement, and (b) unfamiliar to most younger mechanical designers. Also note that adding support for some arbitrary curve (like that involute) isn't just a matter of entering the equation; you'd also need to represent it in a way that srf/... handles, for example by approximating it as a cubic spline.

In any case, let me know what you end up with, and I'd be interested to review; or let me know if you have any questions.
Sun Sep 28 2014, 15:03:56
(no subject) (by Grégoire P)
Thanks for your answer!

I've got a question about the best way to implement the gear tools.
Is it better to create a new group or a new entity?
By creating a new group, we can change parameters like number of teeth, module and angle in the text window.
But I don't know if it would be best or more clean to make a new entity... I think it will be harder to code too, no?

About approximating gear profile as cubic spline, I will use the method describe here: http://www.arc.id.au/GearDrawing.html
The error they obtain is quite inconsiderable, in my opinion.

In a second time, it will be fun to be able to create helical gears. We need to extrude in a "non perpendicular way". Do you have clues to make extrusion along an arbritary curve and not just along the norm of the active workplane?
Like if nothing is selected, we use the norm of the sketch and if a curve is selected when we extrude, we use it as the extrusion path.
It could be useful to make an chamfer tool with that enhancement too!
Fri Oct 3 2014, 15:56:22
(no subject) (by Jonathan Westhues)
It's probably easiest to create the involute as a new entity, that generates either just one tooth (that you can step and repeat to make the outline of the gear) or the complete outline of the gear. That outline can then be extruded or otherwise manipulated as usual. The manner in which the involute is approximated at that link seems reasonable.

Have you worked with non-trivial NURBS surface operations before? Swept surfaces are a difficult problem in general, with some useful results in the academic literature but mostly just a lot of messy approximation. The Booleans would also need to be enhanced to work usefully on those surfaces.
Sun Oct 5 2014, 03:54:01
Post a reply to this comment:
Your Name:
Your Email:
Subject:
(no HTML tags; use plain text, and hit Enter for a line break)
Attached file (if you want, 5 MB max):
© 2008-2018 SolveSpace contributors. Most recent update Nov 22 2018.