On Jun 2, 2019, at 3:50 AM, brynn <brynn@...3133...> wrote:
Hello all, We get requests for this CAD-like functionality a LOT, in forums. (For some reason, it seems like a lot of users think of Inkscape as a CAD program.) I'd be curious what developers thoughts about this are. I mean adding this type of feature to all of Inkscape, not just rectangles.
I want to use this opportunity to address an "elephant in the room" type issue, which I personally see as more important than most of the commonly-requested CAD features.
In CAD programs, one sets and reads the width of the object by centerline only. If you set an object to 50 mm wide, it will unambiguously be 50 mm wide. This is, in a sense, the core feature of a CAD program.
However, when using Inkscape for CAD, it is crucially important to know that the width of an object includes the stroke width. That is to say, if you draw an object with a width of 50 mm and stroke of 1 mm, and subsequently change the stroke width, it will no longer be 50 mm wide. This is not obvious or intuitive to new users or users coming from CAD environments.
The difference between these two models for how parts are measured and drawn has profound consequences throughout the use of Inkscape for CAD. It reflects whether or not you can accurately enter or read the width of a part. It reflects how parts end up positioned when you use the align and distribute tools. It reflects how transformations work, and so on.
No matter how many special little CAD-like features are added, I suspect that this difference will continue to be a major stumbling block for the use of Inkscape in CAD-like applications.
A possible solution, potentially more impactful than most of the CAD-like features that are normally discussed (e.g., those at http://wiki.inkscape.org/wiki/index.php/CAD ) would be to have a real "CAD mode" for Inkscape, which would (1) enable Outline display mode and (2) treat all objects, in all respects expect saving/exporting, as though they had "stroke:none".
Some potential GUI methods to add this would be: * To add it as a new Display mode, View > Display Mode > CAD (though it affects behavior, not just viewing). * To add it as a new option type, Edit > Interface Mode > CAD (though it affects behavior, not just viewing). * To add it as an option in the Document preferences. * To add it as option under Behavior in the global preferences.
Having a feature like this would make all of those proposed special-purpose extensions that much more useful.
[Aside 1: You can somewhat emulate CAD-like behavior in Inkscape by turning off strokes completely, and using only fills. I've done mechanical design this way, but it is cumbersome to ensure that strokes are uniformly and consistently disabled when working with multiple files and designs.]
[Aside 2: I am not advocating turning Inkscape into a full CAD tool. However, it would be great to make the tools that we have work better for more applications.]
Windell H. Oskay, Ph.D. Co-Founder and Chief Scientist Evil Mad Scientist Laboratories 1285 Forgewood Ave Sunnyvale CA 94089 http://www.evilmadscientist.com/