SolveSpace is a wonderfully different take on parametric CAD, but development has really slowed, and it seems fundamentally incapable of some pretty rudimentary features (like chamfers[0]). Dune 3D[1] seems like a pretty effective spiritual successor.
Chamfers and Fillets are my next major undertaking. Don't expect them any time soon, but they've moved to the top of my list. They are extremely difficult to do in the general case - so we will not cover all cases. Several years ago I tried an experiment:
That could only do the top or bottom of a straight extrusion. This time will be a more general than that. Not looking forward to doing corners where 3 fillets meet ;-)
Aren't there licesing issues with porting a proprietary implementation into an open-source one that could open up the project to legal issues with the proprietary vendor?
>> I'm curious why you didn't go with OCCT for Solvespace.
I didn't start Solvespace, but Jonathan was apparently in a DIY mode after developing his take on constraint-based sketching. It's also very easy to go from NURBS curves to NURBS surfaces, the challenge begins at boolean operations which continue to be a source of bugs for us. This is really the only option other than OCCT and the code is small and approachable so I try to make it better.
Yeah. To quantify, OCCT is >1M lines of code, and SolveSpace's NURBS kernel is <10k. This general smallness is what subsequently made stuff like the browser target feasible, though it obviously comes with downsides too.
We'd welcome contributions, and it's much easier to contribute to the smaller codebase. I think there's potential for coding agents to accelerate this work since robust point-in-shell and shell-is-watertight tests are mostly sufficient to judge correctness, allowing the agent to iterate; loosely you could define your geometric operation as a function of whether a point should lie within the output region, then ask the agent to convert that to b-rep. I wouldn't currently expect useful progress without deep human effort and understanding though.
Would it be worthwhile to consider switching to OCCT (or make it optional)? It would make certain things such as fillets/chamfers much easier, I suppose, and it would make those boolean operation bugs go away. And exporting to various formats would be easy.
>> Would it be worthwhile to consider switching to OCCT
It would, and it has been considered. The sketch elements in solvespace are significantly decoupled from the solid model. That means we could substitute (via wrapper maybe) an OCCT object instead of our SShell class. Then you'd have to change a set of solvespace curves to OCCT curves to make extrusions from them and such. But that would be most of the work.
We do tag all triangles in the mesh with a sketch entity handle for flat surfaces so you can constrain points to a face. I'm not sure how that would be handled. We will also be tagging edges of the solid with sketch entity handles in the future so we can do chamfers and fillets - say by selecting a line entity and applying a modifier to it which gets applied to the NURBS shell. I'm not sure how that would go with OCCT.
Perhaps you could create both the shell and the OCCT object. Then when an edge is chamfered, you could look it up in the OCCT object (simply find all segments which are sufficiently close to the chamfered edge). And then call the OCCT chamfer function. Or something along those lines.
Dune3D is more like Solvespace with a few improvements and bug fixes vs being anywhere near FreeCAD in terms of capability. Improvements include using STEP files in assemblies and having some ability to make Fillets or Chamfers. Bugs fixes would be due to using OCCT for NURBS surfaces - solvespace frequently fails with NURBS boolean operations.
As for overall capability, FreeCAD does everything these others do but also supports lofting and other modeling options, BIM for architecture, I think it does pre- and post- processing for FEA, and maybe some other "big tool" things.
I’m looking for a recommendation to get beyond TinkerCAD (for 3d printing). I learned it in 2019 and came back in 2025 when I got my own printer. It is comfortable and fine for my purposes but lacks basic things like chamfer and fillets.
Anytime I try to jump into Fusion or FreeCAD I immediately hit a wall (like trying pirated Maya when I was a kid).
I would recommend pirating SOLIDWORKS and learning with that. It has the easiest UX of the parametric CAD modellers, and once you know the general sketch-extrude methodology you will find the others a lot easier.
Actually I think they have a hobbyist subscription which isn't totally extortionate now if you want to stay legal. Maybe get it for a year.
Some years ago I tried to learn CAD by doing some FreeCAD tutorials, and failed. But I hear 1.0 was a big step forward, and the recently released 1.1 is also a big step, and it should be somewhat decent nowadays. Maybe I need to try again one day.
Yeah it's vastly better in 1.0 than it used to be. I still think you might be a bit lost if you aren't familiar with parametric CAD, but it's no harder than Blender for example.
There are more than dozen different viewport navigation manipulation modes, latest version added two more (Solidworks and Siemens NX). You can pick whichever behaves closest to the program you are most used to.
Indeed. I would love for it to be true, but aside from opencascade^1 all the professional kernels are proprietary and not in the training set, so LLMs can't just regurgitate them.
^1: Which I really appreciate, but let's be real, it is far behind eg. parasolid.
FreeCAD is perfectly good user interface for opencascade. The problem is that as your geometry gets more complicated you start running into the kernel limitations.
I’ve been relying on FreeCAD more frequently, though SolveSpace has remained an excellent lightweight option for designing parts for laser cutting through services like SendCutSend and OSHCut. It is impressive to see that they have now made it work directly in the browser.
FreeCAD is amazing these days. It has completely replaced my use of Autodesk Fusion 360 for woodworking projects. It is capable and the UI is understandable. Its feature depth is incredible.
FreeCAD is becoming like Blender and Inkspace - incredibly robust and capable and equivalent in most cases to the commercial alternatives.
I find the rendering side of things under developed though.
"Amazing" is however not the word I would use though, the UI is still very convoluted and very hard to learn.
The worst part in FreeCAD, and which remains true to this day is the load of minutia you need to know to handle/avoid weird corner cases that you inevitable run into when you start building complex models and where FreeCAD stubbornly refuses to let you carry on with your work.
When you paint yourself into one of these corners, the software is hugely unhelpful when it comes to understanding what you did wrong and how to correct it.
In short, the word "Amazing" only works if you compare it to the absolute abomination the UI was a few years back.
But compare FreeCAD today to, for example, how slick Fusion is, there is still a very, very wide gap.
Finally, the geometry engine, is a somewhat old and creaky thing that sometimes downright fails to compute fillets or surface/surface intersections correctly, so yeah, YMMV.
FreeCAD is however, free software, and not controlled by one of the worst corp. in the world of software: Autodesk. So huge thumbs up there.
This is really accurate to my experience learning FreeCAD earlier this year. I am a former professional CAD user (of a lesser software than AutoCAD) and I don't think I would have gotten far without being able to ask ChatGPT for help understanding some of the quirks of FreeCAD.
For free and open it's truly impressive though. Actually I think my time building iOS UIs in Storyboard was at least as useful as previous CAD experience, since constraints are the foundation of (at least one approach to) designing parts.
Yeah anything involving 2d art I confess I just send to Blender, even technical illustration, with the exception of O&D style sheets.
The fact anyone got a CAD kernel working in the browser is insane. Parsing the vagaries, vendor cruft, and gaping holes in STEP files has occupied a non-trivial amount of my career.
I’ve wondered how feasible it would be to start building browser-based CAD/design products to replace our expensive and poorly supported paid plugins and niche products. Seems promising!
Minor nit: why does the rendered in-window text use a really awful pixelated font? It looks like what happens when a font gets rendered onto a pixel grid without any hinting or snapping.
It uses GNU unifont, which is a bitmap font. There could be a bug causing the text to get stretched a little - we had that on Windows prior to this release.
Intentional indeed. It is GNU Unifont - a 973KiB file that covers practically all of Unicode. In a bitmap font, platform independent, self contained, small. Practically all that SolveSpace strives to be.
Pixelated can sometimes look okay on screens it was designed for. But I think the pixelated look improves with hinting that helps snap it to stroke widths, rather than randomly jumping between 1 and 2 pixels depending on how it happened to line up with the pixel grid.
A good pixel font would be a vast improvement over this, though I'd still prefer something that scales well (and respects the DPI of my screen, and isn't too small compared to the menu font...).
Does this use its own backend/engine? I've been working on LLM to CAD tool[0] and have realised there are so many backends and options to choose from. Since the realisation I'm trying to find the best representation for an LLM. I think OpenSCAD is currently the best and most feature complete choice, but I definitely need to dig a bit deeper. If anyone has any pointers I welcome them!
> I think OpenSCAD is currently the best and most feature complete choice
As much as I love OpenSCAD, I would strongly disagree with your conclusion.
All the OpenSCAD language can do is boolean operations and moreover, the engine can only implement those on polygonal (triangle actually) meshes.
That's a very far cry from what a modern commercial CAD engine can do.
For example, the following things are very, very hard to do, or even specify using OpenScad:
- Smooth surfaces, especially spline-based
- Fillets / Chamfers between two arbitrary surfaces
- Trimming surfaces
- Querying partly built models and using the outcome in the subsequent construction (e.g. find the shortest segment between two smooth surfaces, building a cylinder around it and filleting it with the two surfaces, this is an effing nightmare to do within the confines of OpenSCAD)
- Last but not least: there is no native constraint solver in OpenSCAD, neither in the language nor in the engine (unlike - say - SolveSpace)
I might have misunderstood what you're looking to do, but, yeah, digging deeper feels very much like the right thing to do.
using BOSL2 alleviates most issues I've run into with OpenScad for chamfers and the like, but it is an extra set of functions you need to remember sadly
> BOSL2 ... but it is an extra set of functions you need to remember sadly
It's also extremely slow: it implements chamfers and fillets using morpho, and if you have a large number of fillets, the morpho algorithms (minkowski / hull) are very much non linear in time on polygonal meshes, which leads to compute time explosion if you want a visually smooth result.
If you get lost press `f` to "fit" the current drawing to the screen.
By the way working in SolveSpace is extremely fast if you use keyboard shortcuts - almost everything can be dome with a shortcut key. No need to search for them - you can learn them by looking in the menus.
A very short "crash course" on the navigation is in the "Quick start:" section at the bottom of the download page. https://solvespace.com/download.pl
The "demo video" on the home page is also a great starting point.
After that the "Tutorials" and "Reference" go in as much detail as one may want :-)
The mouse wheel zooms. The bounds of the axis stay fixed on the screen however. It will become more intuitive if you draw a circle to the screen first.
To pan around the space, use the right mouse button. To zoom, use the scroll wheel. To rotate, use Shift+Right mouse button.
Why not play with it a little bit before dismissing it so suddenly? I don't need to mention to a Solidworks/Autodesk user that CAD tools take some patience to understand properly :-)
This is expected behavior. The zoom action is into the cursor center. This is the same behavior of many other 2d/3d editors, such as Autodesk Autocad, Inventor, etc. Even MS Paint does this. If you place your cursor perfectly at the origin, it will not appear to drift.
74 comments:
SolveSpace is a wonderfully different take on parametric CAD, but development has really slowed, and it seems fundamentally incapable of some pretty rudimentary features (like chamfers[0]). Dune 3D[1] seems like a pretty effective spiritual successor.
0: https://github.com/solvespace/solvespace/issues/149
1: https://dune3d.org/
Chamfers and Fillets are my next major undertaking. Don't expect them any time soon, but they've moved to the top of my list. They are extremely difficult to do in the general case - so we will not cover all cases. Several years ago I tried an experiment:
https://github.com/solvespace/solvespace/issues/453#issuecom...
That could only do the top or bottom of a straight extrusion. This time will be a more general than that. Not looking forward to doing corners where 3 fillets meet ;-)
Oh, sorry, I didn't recognize that this had been posted by a SolveSpace maintainer! Rad. I am glad to hear the project is still moving.
I also appreciate the difficulty of generalizing chamfers/fillets. There's a reason that basically all FOSS CAD packages have struggled with it.
> difficulty of generalizing chamfers/fillets. There's a reason that basically all FOSS CAD packages have struggled with it.
Could you decompile CAD, run it through an LLM, and call it a day?
Aren't there licesing issues with porting a proprietary implementation into an open-source one that could open up the project to legal issues with the proprietary vendor?
Dune3D uses SolveSpace behind the scene.
Only for the constraint solver. Dune uses OCCT for the solid model.
I'm curious why you didn't go with OCCT for Solvespace.
>> I'm curious why you didn't go with OCCT for Solvespace.
I didn't start Solvespace, but Jonathan was apparently in a DIY mode after developing his take on constraint-based sketching. It's also very easy to go from NURBS curves to NURBS surfaces, the challenge begins at boolean operations which continue to be a source of bugs for us. This is really the only option other than OCCT and the code is small and approachable so I try to make it better.
Yeah. To quantify, OCCT is >1M lines of code, and SolveSpace's NURBS kernel is <10k. This general smallness is what subsequently made stuff like the browser target feasible, though it obviously comes with downsides too.
We'd welcome contributions, and it's much easier to contribute to the smaller codebase. I think there's potential for coding agents to accelerate this work since robust point-in-shell and shell-is-watertight tests are mostly sufficient to judge correctness, allowing the agent to iterate; loosely you could define your geometric operation as a function of whether a point should lie within the output region, then ask the agent to convert that to b-rep. I wouldn't currently expect useful progress without deep human effort and understanding though.
Would it be worthwhile to consider switching to OCCT (or make it optional)? It would make certain things such as fillets/chamfers much easier, I suppose, and it would make those boolean operation bugs go away. And exporting to various formats would be easy.
>> Would it be worthwhile to consider switching to OCCT
It would, and it has been considered. The sketch elements in solvespace are significantly decoupled from the solid model. That means we could substitute (via wrapper maybe) an OCCT object instead of our SShell class. Then you'd have to change a set of solvespace curves to OCCT curves to make extrusions from them and such. But that would be most of the work.
We do tag all triangles in the mesh with a sketch entity handle for flat surfaces so you can constrain points to a face. I'm not sure how that would be handled. We will also be tagging edges of the solid with sketch entity handles in the future so we can do chamfers and fillets - say by selecting a line entity and applying a modifier to it which gets applied to the NURBS shell. I'm not sure how that would go with OCCT.
But yes I've given a bit of thought to it ;-)
Perhaps you could create both the shell and the OCCT object. Then when an edge is chamfered, you could look it up in the OCCT object (simply find all segments which are sufficiently close to the chamfered edge). And then call the OCCT chamfer function. Or something along those lines.
Oh, and the Blender CAD Sketcher add-on also uses our constraint solver.
How does Dune3D compare to FreeCAD?
>> How does Dune3D compare to FreeCAD?
Dune3D is more like Solvespace with a few improvements and bug fixes vs being anywhere near FreeCAD in terms of capability. Improvements include using STEP files in assemblies and having some ability to make Fillets or Chamfers. Bugs fixes would be due to using OCCT for NURBS surfaces - solvespace frequently fails with NURBS boolean operations.
As for overall capability, FreeCAD does everything these others do but also supports lofting and other modeling options, BIM for architecture, I think it does pre- and post- processing for FEA, and maybe some other "big tool" things.
FreeCAD doesn't have the limitations of SolveSpace, and the UX is actually decent now. I moved to that.
I’m looking for a recommendation to get beyond TinkerCAD (for 3d printing). I learned it in 2019 and came back in 2025 when I got my own printer. It is comfortable and fine for my purposes but lacks basic things like chamfer and fillets.
Anytime I try to jump into Fusion or FreeCAD I immediately hit a wall (like trying pirated Maya when I was a kid).
I would recommend pirating SOLIDWORKS and learning with that. It has the easiest UX of the parametric CAD modellers, and once you know the general sketch-extrude methodology you will find the others a lot easier.
Actually I think they have a hobbyist subscription which isn't totally extortionate now if you want to stay legal. Maybe get it for a year.
Some years ago I tried to learn CAD by doing some FreeCAD tutorials, and failed. But I hear 1.0 was a big step forward, and the recently released 1.1 is also a big step, and it should be somewhat decent nowadays. Maybe I need to try again one day.
Yeah it's vastly better in 1.0 than it used to be. I still think you might be a bit lost if you aren't familiar with parametric CAD, but it's no harder than Blender for example.
I just tested it out of curiosity and found that viewport manipulation behaves in a very similar way to onshape which feels very natural to me.
I've been thinking about trying to implement this in freecad but I'm still exploring the idea.
There are more than dozen different viewport navigation manipulation modes, latest version added two more (Solidworks and Siemens NX). You can pick whichever behaves closest to the program you are most used to.
All we need is a genius, with unlimited claude and codex credit and he will replace Fusion 360 atleast in 3d printing and machining space
It's so sad most guys aren't comming together to build some great CAD engine which open source really needs!
Gimp is shame, photoshop is increasingly being lockdown and people who have smarts to fix that are doing nothing.
That people on this forum convinced themselves that it's a reasonable take to vibe code a useful geometric kernel is profoundly depressing.
Indeed. I would love for it to be true, but aside from opencascade^1 all the professional kernels are proprietary and not in the training set, so LLMs can't just regurgitate them.
^1: Which I really appreciate, but let's be real, it is far behind eg. parasolid.
Just wait for sometime, there will be one.
There are many geniuses on HN for tacking up challenge
So you think AI can do this – why exactly is a genius needed?
Correct me if I'm wrong, kernel is already there, and it's decent enough. What's lacking is a good user interface to it.
FreeCAD is perfectly good user interface for opencascade. The problem is that as your geometry gets more complicated you start running into the kernel limitations.
I’ve been relying on FreeCAD more frequently, though SolveSpace has remained an excellent lightweight option for designing parts for laser cutting through services like SendCutSend and OSHCut. It is impressive to see that they have now made it work directly in the browser.
I've been using FreeCad more and more, but solvespace has been a great, lightweight tool to design parts for laser cutting by SendCutSend/Oshcut.
Neat that they got it working in the browser.
FreeCAD is amazing these days. It has completely replaced my use of Autodesk Fusion 360 for woodworking projects. It is capable and the UI is understandable. Its feature depth is incredible.
FreeCAD is becoming like Blender and Inkspace - incredibly robust and capable and equivalent in most cases to the commercial alternatives.
I find the rendering side of things under developed though.
> FreeCAD is amazing these days.
FreeCAD has become much better, no denying it.
"Amazing" is however not the word I would use though, the UI is still very convoluted and very hard to learn.
The worst part in FreeCAD, and which remains true to this day is the load of minutia you need to know to handle/avoid weird corner cases that you inevitable run into when you start building complex models and where FreeCAD stubbornly refuses to let you carry on with your work.
When you paint yourself into one of these corners, the software is hugely unhelpful when it comes to understanding what you did wrong and how to correct it.
In short, the word "Amazing" only works if you compare it to the absolute abomination the UI was a few years back.
But compare FreeCAD today to, for example, how slick Fusion is, there is still a very, very wide gap.
Finally, the geometry engine, is a somewhat old and creaky thing that sometimes downright fails to compute fillets or surface/surface intersections correctly, so yeah, YMMV.
FreeCAD is however, free software, and not controlled by one of the worst corp. in the world of software: Autodesk. So huge thumbs up there.
This is really accurate to my experience learning FreeCAD earlier this year. I am a former professional CAD user (of a lesser software than AutoCAD) and I don't think I would have gotten far without being able to ask ChatGPT for help understanding some of the quirks of FreeCAD.
For free and open it's truly impressive though. Actually I think my time building iOS UIs in Storyboard was at least as useful as previous CAD experience, since constraints are the foundation of (at least one approach to) designing parts.
I nominate Adobe to the worst corp. in the world of software.
Fusion360 at least works on Linux
Photoshop/Lightroom don't.
The word "amazing" fits perfectly if you compare FreeCAD to viable alternatives, of which there are none.
Yeah anything involving 2d art I confess I just send to Blender, even technical illustration, with the exception of O&D style sheets.
The fact anyone got a CAD kernel working in the browser is insane. Parsing the vagaries, vendor cruft, and gaping holes in STEP files has occupied a non-trivial amount of my career.
You want to talk about poisoned specs . . .
FreeCAD strains on larger assemblies and tighter parametric constraints, and feature depth doesn't hide slow updates or sketch import glitches.
Yep, love FreeCAD.
I did a major project with it in 2019 and it was great back then.
The issues it has are pretty minor. Admittedly I ended up using a fork for Assembly3(IIRC)
Here's my take on CAD in the browser! https://vcad.io
I implemented a full kernel in rust and compile it to wasm https://github.com/ecto/vcad
> Could not locate file: "https://huggingface.co/campedersen/cad0-mini/resolve/main/on..."
So I can ask an LLM to write rust code to generate CAD designs???
Does that handle NURBS? It says STEP import, but not export?
I’ve wondered how feasible it would be to start building browser-based CAD/design products to replace our expensive and poorly supported paid plugins and niche products. Seems promising!
Impressive work!
Minor nit: why does the rendered in-window text use a really awful pixelated font? It looks like what happens when a font gets rendered onto a pixel grid without any hinting or snapping.
It uses GNU unifont, which is a bitmap font. There could be a bug causing the text to get stretched a little - we had that on Windows prior to this release.
It uses exactly the same font in the desktop version, and is probably entirely intentional.
Intentional indeed. It is GNU Unifont - a 973KiB file that covers practically all of Unicode. In a bitmap font, platform independent, self contained, small. Practically all that SolveSpace strives to be.
https://www.unifoundry.com/unifont/index.html
Perhaps I've been using computers for too long but I actually like the non anti-aliased "sharp" and "pixely" look :-)
Pixelated can sometimes look okay on screens it was designed for. But I think the pixelated look improves with hinting that helps snap it to stroke widths, rather than randomly jumping between 1 and 2 pixels depending on how it happened to line up with the pixel grid.
This is what it looks like on my screen: https://imgur.com/a/YeAdiXC
A good pixel font would be a vast improvement over this, though I'd still prefer something that scales well (and respects the DPI of my screen, and isn't too small compared to the menu font...).
I assumed it likely looked like the desktop version, and that was exactly what was motivating my question.
So stoked to see the movement on this project. Once lofts are possible, it'll be so over for FreeCAD
Chambers aren't available so I wouldn't hold you breath waiting for lofts
Just curious, why are you so excited for the demise of FreeCAD ?
Has worked quite okay for me thus far for semi professional & hobby projects
Does this use its own backend/engine? I've been working on LLM to CAD tool[0] and have realised there are so many backends and options to choose from. Since the realisation I'm trying to find the best representation for an LLM. I think OpenSCAD is currently the best and most feature complete choice, but I definitely need to dig a bit deeper. If anyone has any pointers I welcome them!
[0]: https://GrandpaCAD.com
I just ran into this today: https://github.com/gumyr/build123d - seems like an LLM should have no problem writing python code...
> I think OpenSCAD is currently the best and most feature complete choice
As much as I love OpenSCAD, I would strongly disagree with your conclusion.
All the OpenSCAD language can do is boolean operations and moreover, the engine can only implement those on polygonal (triangle actually) meshes.
That's a very far cry from what a modern commercial CAD engine can do.
For example, the following things are very, very hard to do, or even specify using OpenScad:
I might have misunderstood what you're looking to do, but, yeah, digging deeper feels very much like the right thing to do.(my) fncad doesn't have the querying, but it does have smooth csg! https://fncad.github.io/
using BOSL2 alleviates most issues I've run into with OpenScad for chamfers and the like, but it is an extra set of functions you need to remember sadly
https://github.com/BelfrySCAD/BOSL2
> BOSL2 ... but it is an extra set of functions you need to remember sadly
It's also extremely slow: it implements chamfers and fillets using morpho, and if you have a large number of fillets, the morpho algorithms (minkowski / hull) are very much non linear in time on polygonal meshes, which leads to compute time explosion if you want a visually smooth result.
you can get around this somewhat by having less visually smooth previews when editing and higher quality when you want an stl
I have tried OpenSCAD, it seems very slow to compile to display on web. are you using the official wasm or some other ways?
you may find this useful: https://phaestus.app/blog/blog0031
Edit: Forgot I also got doom running in openscad: https://www.mikeayles.com/blog/openscad-doom/
and doom running in openscad in the browser at https://doom.mikeayles.com/
I export it as .3mf file and display it with threejs on the web. Compilation seemed fast enough - few seconds tops.
Yeah it does. In fact I believe it was written to demonstrate improved sketch constraint solving (there's a 2D version too).
Unfortunately aside from the better sketching the engine is not as capable as OpenCascade.
Currently I'm comfortable using FreeCAD but i'll try this one for sure.
I scrolled with the mouse wheel and the origin drifts off screen.
Is there an open-source "cleanroom" re-implementation of the Parasolid kernel? I just like the way Solidworks does things vs. Autodesk.
If you get lost press `f` to "fit" the current drawing to the screen.
By the way working in SolveSpace is extremely fast if you use keyboard shortcuts - almost everything can be dome with a shortcut key. No need to search for them - you can learn them by looking in the menus.
A very short "crash course" on the navigation is in the "Quick start:" section at the bottom of the download page. https://solvespace.com/download.pl The "demo video" on the home page is also a great starting point.
After that the "Tutorials" and "Reference" go in as much detail as one may want :-)
The mouse wheel zooms. The bounds of the axis stay fixed on the screen however. It will become more intuitive if you draw a circle to the screen first.
To pan around the space, use the right mouse button. To zoom, use the scroll wheel. To rotate, use Shift+Right mouse button.
Why not play with it a little bit before dismissing it so suddenly? I don't need to mention to a Solidworks/Autodesk user that CAD tools take some patience to understand properly :-)
>> To rotate, use Shift+Right mouse button.
Or middle mouse button / click the scroll wheel.
This is expected behavior. The zoom action is into the cursor center. This is the same behavior of many other 2d/3d editors, such as Autodesk Autocad, Inventor, etc. Even MS Paint does this. If you place your cursor perfectly at the origin, it will not appear to drift.
Ahh, but can it do a clean self-reversing diamond thread including the reversing portion?
See https://news.ycombinator.com/item?id=47580583
Crazy
onShape does this already