Difference between revisions of "BlueprintGeometricAndTechDrawing"
Line 45: | Line 45: | ||
* On every dimension there should be the possibility of adding a text box and overriding the default dimension value,... | * On every dimension there should be the possibility of adding a text box and overriding the default dimension value,... | ||
Here | Here is an example of part dimensioning: | ||
[[Image:Cotation_geometrique.png|left]] | [[Image:Cotation_geometrique.png|left]] | ||
== Details & Internals == | == Details & Internals == |
Revision as of 10:06, 6 August 2008
Summary
This blueprint accompanies the GSoC'08 project "Geometric & Tech Drawing Abilities for Inkscape" by Maximilian Albert. It collects ideas from the community regarding desired features and their implementation (with no warranty that any of them will be included in the project :)). Feel free to add your thoughts here.
The aim of the project is to create a new tool consisting of a number of "subtools"/"modules" which facilitate geometric constructions and technical drawings.
Typical Workflow
To perform a geometric construction (e.g., create a circle through 3 points), the corresponding "module" is activated in the toolbar, either by clicking on its icon or via a shortcut. Then the items on which this construction relies (i.e., the three points) are clicked. This creates the desired geometric object (in this case a circle passing through the points).
Desired Constructions/Other Features
Basic
Some constructions that should be possible with the new tool:
More advanced or less important
- "Preserve angles" mode for node editing of polygons (mockup courtesy of Johan Engelen)
- Marker improvements:
- Apply the color of the current stroke to markers, too (long-standing bug: LP #165865)
- The left image shows how a marker currently looks like when applied to a curve with a sharp turn. Of course, it should look like the one on the right (also note the above-mentioned bug that the marker doesn't take the curve's stroke color).
- Automatic path shortening when a marker is applied
- Smarter way of guessing a suitable marker size (not only based on stroke width but maybe also on the length of the path)
- Optional "bendy" markers that follow the curvature of the corresponding curve (see bug/wish #244279 for an example)
- Tangent snapping:
Geometric dimensioning and tolerancing abilities
The tool will need all the dimensioning abilities a normal CAD software has in respect of the ISO Geometric dimensioning and tolerancing.
- Linear dimensions (with arrows pointing outwards <-----> for big dimensions and inwards ->--<----- for small dimensions
- Radius/Diameter dimensions
- On every dimension there should be the possibility of adding a text box and overriding the default dimension value,...
Here is an example of part dimensioning:
Details & Internals
User Interface
All constructions should be accomplishable by mouse input only. E.g., points can be specified by mouse clicks, their position can be adapted by dragging, as can angles of lines, radii of circles, etc. But since for technical drawings the ability to use exact values is indispensable, each of these values can also be set by using numeric input fields (e.g., in the secondary toolbar).
Code
The tool will be implemented as a collection of "Live Path Effects" (LPEs). See here for a technical description. The algorithms will be provided by the 2geom library which is intended to become Inkscape's core library in the near future. There are separate GSoC proposals for 2geom integration into Inkscape.
As part of the project, it is intended to integrate LPEs much more tightly into Inkscape's UI, e.g., by providing handles for parameter adaption or making their controls available in toolbars (not only in the LPE dialog).