Commit Graph

111 Commits

Author SHA1 Message Date
Sebastian Kuzminsky
ff157cf94d export SVG as either 'Translated' or 'Raw'
There are two things a user might want when exporting to SVG:

    1. A pretty picture, to put on paper or on the screen and show
       to humans.

    2. An accurate representation of their part, for feeding to CAM
       software.

This commit adds a mechanism that lets the user select which of those
two options they want.

A new choice is added to the Draft Preferences.  The two options are:

    * "Translated (for print and display)", which acts just like before.
      The sketch is translated so it fits neatly in the display area.
      of the cartesian plane.  This is usually what you want if you're
      going to display the SVG to humans.

    * "Raw (for CAM)", which does not translate the sketch at all.
      All sketch coordinates are preserved exactly.  This is useful for
      feeding the SVG to a CAM program (like PyCAM).

The SVG export function is modified to check this new Preference setting,
and write either "Translated" or "Raw" SVGs as appropriate.
2012-02-10 00:38:04 -07:00
Sebastian Kuzminsky
5ac5814369 when exporting SVG, map user units to mm so the coordinates make sense
This commit changes SVG export so that the user unit (what SVG calls
'px') is defined to be 1 mm.

This lets us write out the native sketch coordinates in the SVG file,
and the SVG will contain a drawing of the correct size (same size as
what's in FreeCAD).
2012-02-10 00:24:21 -07:00
Yorik van Havre
c79e5d50e5 Added RFE #588 - Curved corners to Draft objects
Draft Rectangle, Wire and Polygon now have a "Fillet Radius"
property, which can be used to round their corners. Code
donated by Jacques-Antoine Gaudin
2012-02-07 20:58:44 -02:00
Yorik van Havre
e31d6e0539 Added Draft.heal() method
This function recreates damaged Draft objects saved
with earlier versions of FreeCAD
2012-02-06 17:18:57 -02:00
Yorik van Havre
bce32cc2ef Added additional TaskBox to Arch Wall tool
Additional parameters such as height and width
can now be set during wall drawing
2012-02-04 20:35:35 -02:00
Yorik van Havre
1af6a3c2b1 Bugfixes in Draft Snap 2012-02-04 20:35:35 -02:00
Yorik van Havre
26602b2aa3 Fixed numeric input in Arch Walls coordinates 2012-02-04 20:35:35 -02:00
Yorik van Havre
8d01d70038 More improvements to the Arch module
+ Draft snap can now pass the object being snapped to
+ Handle when wall is based on a closed wire
+ Handle when wall is based on a self-intersecting wire
2012-02-04 20:35:35 -02:00
Yorik van Havre
c10c130f76 Improvement to Arch Walls
+ Arch Walls are now sketch-based by default
+ Arch Walls now auto-connect when snapping to an existing wall
2012-01-27 18:55:28 -02:00
Yorik van Havre
0aaab4c8da Added special behaviour to Draft snap for working with walls 2012-01-26 10:03:09 -02:00
Yorik van Havre
cb30344b6e Small fixes in Draft tools to work with Arch objects 2012-01-25 15:35:43 -02:00
Yorik van Havre
985b7da5b3 Bugfix in Draft custom hatch patterns 2012-01-24 20:30:04 -02:00
Yorik van Havre
05dd30861f Fixes before merging Ship 2012-01-24 15:59:00 -02:00
Yorik van Havre
9f9dd45d4d Misc improvements to the Arch module
+ Added Draft box tracker
+ Fixed bug in Arch cell
+ Fixed bugs in Draft Snap
+ Better Arch Wall tool
2012-01-24 08:41:13 -02:00
Yorik van Havre
813424e90d Added polar snap locations to Draft snap system 2012-01-21 14:42:39 -02:00
Yorik van Havre
d02c928b4b Fixed bug #574 - Draft hatches
svg pattern definitions are now embedded inside the View objects,
since they don't need to be in the defs section.
2012-01-19 20:59:09 -02:00
Yorik van Havre
edb1da8a3f Further work on Arch windows 2012-01-17 18:02:10 -02:00
Yorik van Havre
78b3113b35 fixed bug #544 - allow to make Draft ortho dimensions with shift 2012-01-16 19:19:51 -02:00
Yorik van Havre
632af98102 Draft offset now works on BSplines 2012-01-16 19:00:34 -02:00
Yorik van Havre
7fc7ad36e2 Draft now able to snap perpendicularly to BSplines 2012-01-16 18:59:14 -02:00
Sebastian Hoogen
48c9e2fbe8 Draft importSVG reimplentation of path and transformation parsing
All basic elements besides elliptic arcs and rounded rects are now
supported
2012-01-16 18:51:04 +01:00
Yorik van Havre
dac51d6e9a fixes to Draft SVG importer (shoogen) 2012-01-14 16:14:29 -02:00
Yorik van Havre
d26ba5f11b Arch structures can now be based on axes systems 2012-01-12 12:31:11 -02:00
Yorik van Havre
0de52ff73f fixes in Draft
+ fix in Draft grid snap, point is now always projected on WP
+ fix in Draft2Sketch when dealing with arcs
2012-01-12 11:54:48 -02:00
Yorik van Havre
bb854f65b7 fixed display of Draft offset ghost in OCC mode 2012-01-11 12:54:40 -02:00
Yorik van Havre
279c6b82aa fixed bug #568 in sketch2draft when converting circles 2012-01-11 11:59:09 -02:00
Yorik van Havre
8c18fcaec4 fixed bug in draft dimensions editmode 2012-01-10 20:24:31 -02:00
Yorik van Havre
f584f47323 small bugfix in Draft constraints 2012-01-10 18:53:47 -02:00
Yorik van Havre
4b3d345ffa fixed bug #566 - undo in draft causes crash 2012-01-10 18:50:15 -02:00
Yorik van Havre
1c5f92bebe small fix in Draft importSVG
+ removed unused blocks
+ added description strings
2012-01-09 10:43:20 -02:00
Sebastian Hoogen
43e186186a Small fixes in importSVG 2012-01-09 09:54:02 +01:00
Sebastian Hoogen
432c22d9d7 New Parser for path element in importSVG 2012-01-09 07:21:42 +01:00
Sebastian Hoogen
453e85b55c fixed syntax error in importSVG 2012-01-07 22:45:09 +01:00
Sebastian Hoogen
f527a11403 Added support for ellipse, polygon and polyline in importSVG 2012-01-07 22:06:21 +01:00
Yorik van Havre
649abff877 small fixes to draft SVG import (shoogen) 2012-01-07 13:39:50 -02:00
Yorik van Havre
30f97b3124 fixed bug 564 - bug in Draft to Sketch 2012-01-06 13:40:58 -02:00
Yorik van Havre
169abb6f34 Draft SVG importer now supports quadratic and cubic curves (shoogen) 2012-01-06 13:11:19 -02:00
Yorik van Havre
3afbab3c47 small fix to the Draft module 2012-01-05 18:33:33 -02:00
Yorik van Havre
cb4e6b7d30 used precision value from preferences in Draft SVG import 2012-01-05 10:22:06 -02:00
Yorik van Havre
e2f53df835 small bugfix in Draft SVG import 2012-01-05 10:12:25 -02:00
Yorik van Havre
b84a59f977 fixed bug 562 - Draft module - problem in SVG import 2012-01-04 18:41:13 -02:00
Yorik van Havre
24ff289b65 misc updates to the Draft module
+ added an Axis property to Array objects, for polar arrays
+ added Draft.clone() API function
+ changed icon of Draft clone,array and block objects
2012-01-04 18:02:00 -02:00
Yorik van Havre
ccf878ec16 Various fixes to Draft and Arch
+ Renamed Draft Scale object to Clone
+ Removed BasePoint property from Draft Clone
+ Reenabled Draft SelectPlane tool
+ Added Draft context tools to Arch module
+ Made the Arch module load pycollada later
2012-01-04 12:06:02 -02:00
Yorik van Havre
c17ed6b3cd + small fix in Draft perpendicular snap 2012-01-03 23:29:13 -02:00
Yorik van Havre
579ab53153 + set license blocks of the Draft module to LGPL 2012-01-03 19:41:51 -02:00
Yorik van Havre
e39c328ef6 + small fixes to Draft Scale tool 2012-01-03 13:25:37 -02:00
Yorik van Havre
ef44c3e63b + added Draft Scale feature
the Draft scale tool works identically as before,
but now produces a parametric Scale feature instead of
modifying the base objects. The old behaviour is still
available to python scripting.
2012-01-02 19:24:48 -02:00
Yorik van Havre
f78d481fe4 + fixed default angle for Draft Array objects 2012-01-02 18:35:58 -02:00
Yorik van Havre
b8bcb43b66 fixed bug #556 - Premature loading of modules
The Draft and Arch modules now load heavy modules such
as Part or Sketch only when they use them, not anymore
at Init time.
2011-12-31 17:16:51 -02:00
Yorik van Havre
3e48193ada fixed bug #549 - Undo of offset objects causes Draft tools to stop functioning 2011-12-25 17:49:30 -02:00