Commit Graph

697 Commits

Author SHA1 Message Date
carlopav
e14d632f02 Draft: split isClosedEdge form Draft.py
.
2020-05-04 10:51:08 +02:00
carlopav
e94be2e542 Draft: split rotate from Draft.py 2020-05-04 10:51:08 +02:00
carlopav
66031c8dbe Draft: split Move from Draft.py 2020-05-04 10:51:08 +02:00
carlopav
3351cde462 Draft: split FilterObjectsForModifiers from Draft.py 2020-05-04 10:51:08 +02:00
carlopav
7bdf54e933 Draft: delete makeWire from Draft.py 2020-05-04 10:51:08 +02:00
carlopav
1f0e6e2855 Draft: split makeCopy from Draft.py
.
2020-05-04 10:51:08 +02:00
wandererfan
a77c4b7b2e [Draft]PathArray TangentVector & gimbal lock
- allows user to specify orientation of copies
- prevents gimbal lock by using Base.Rotation instead of
  YRP transforms
2020-05-01 11:34:33 -04:00
carlopav
c34ef27018 Draft: fix bspline and bezcurve viewproviders
Finished to fix bspline and bezcurve wiewproviders.
2020-04-30 13:48:33 +02:00
vocx-fc
8e9d6f8bae Draft: change the icon depending on the Link array type
Add new icons for `App::Link` versions of polar array and circular
array.
2020-04-29 11:44:22 +02:00
vocx-fc
9432acf44e Draft: change the icon depending on the array type 2020-04-29 11:44:22 +02:00
carlopav
efd384a17b Draft: split Shape2DView from Draft.py 2020-04-29 11:41:02 +02:00
carlopav
d53e53dc4e Draft: split Block from Draft.py 2020-04-29 11:41:02 +02:00
carlopav
0cbdba0245 Draft: split Shapestring from Draft.py 2020-04-29 11:41:02 +02:00
carlopav
511f095f5f Draft: split makeSketch from Draft.py 2020-04-29 11:41:02 +02:00
carlopav
f43e026da1 Draft: split Facebinder from Draft.py 2020-04-29 11:41:02 +02:00
carlopav
1335da71ae Draft: split WorkingPlaneProxy from Draft.py 2020-04-29 11:41:02 +02:00
carlopav
e547bc34fa Draft: split Ellipse from Draft.py
.
2020-04-29 11:41:02 +02:00
carlopav
24d87ccdb3 Draft: split Point from Draft.py
.
2020-04-29 11:41:02 +02:00
carlopav
d711de1b4a Draft: split clone from Draft.py
.


.
2020-04-29 11:41:02 +02:00
carlopav
1a04f97d8f Draft: split wire related tools from Draft.py
Line Polyline BezCurve BSpline
.


.


.
2020-04-29 11:41:02 +02:00
carlopav
76e97c7062 Draft: split Polygon from Draft.py
.


.


.


.
2020-04-29 11:41:02 +02:00
carlopav
7b18ae746f Draft: split rectangle code from Draft.py
.


.
2020-04-29 11:41:02 +02:00
carlopav
52436ecb49 Draft: split circle from Draft.py
.


.
2020-04-29 11:41:02 +02:00
carlopav
0f3e0b0d0d Draft: parent classes of all Draft objects
Add DraftObject and ViewProviderDraft to serve as
the parent classes of all Draft objects
and all Draft view providers.

Inside `Draft.py` we need to import
`_DraftObject` from `draftobjects.base`;
and `_ViewProviderDraft`, `_ViewProviderDraftAlt`,
and `_ViewProviderDraftPart` from `draftviewproviders.view_base`.
.


.


.


.
2020-04-29 11:41:02 +02:00
Marcus Ding
6e18f7ec6e Add AxisReference property to Draft Array 2020-04-27 11:34:16 +02:00
vocx-fc
56f2885cb3 Draft: move Join GuiCommand to gui_join module
Occasionally it fails to join lines even if the lines
visually share a point.

This is a rounding error in the comparison of the shared point;
a small distance will result in the points being considered
different and thus the lines not joining.

The solution is to test properly the two points using
`DraftVecUtils.equals` which considers the value of
the `precision` set in the Draft preferences.
2020-04-24 13:49:13 +02:00
Yorik van Havre
4d90327a97 Draft: Fixed further regressions 2020-04-21 12:46:08 +02:00
carlopav
a4f7bc43f6 [Draft] Cleanup of Annotation style branch
Further cleanup and guarded imports of Gui in modules.

.
2020-04-16 11:37:10 +02:00
carlopav
cb4295fd8a [Draft] Splitted object Text and Label from Draft.py
And based them on Draft Annotation object
2020-04-16 11:37:10 +02:00
carlopav
749f614313 [Draft] Group object for dimension styles 2020-04-16 11:37:10 +02:00
carlopav
9f1405df0e [Draft] Annotation refactor and Cleanup
.


.
2020-04-16 11:37:10 +02:00
carlopav
637c45733e [Draft] Split Dimension object and reorganize of annotation objects
part 1
2020-04-16 11:37:10 +02:00
carlopav
5bbf3ad6cf [Draft] Dimension style object
still have to split viewprovider from object.
[Draft] Dimension Style code cleanup

thx @vocx-fc for reviewing
further cleanup


[Draft] Dimension Style improvements

Added a property to the dimension object to link the dimension style.
Improved the update of dimensions when style changes. This can be done in 2 different ways: by setting AutoUpdate property to True or by activating Update function from the viewprovider context menu.
2020-04-16 11:37:10 +02:00
carlopav
9e7fb35761 [Draft] Rearrange annotation properties groups
ref. https://forum.freecadweb.org/viewtopic.php?f=23&t=43795&p=373731#p373731
bugfix
2020-04-16 11:37:10 +02:00
carlopav
7d8847a2a2 [Draft] Annotation Scale bugfix
Now property ScaleMultiplier is checked for existence before the use.
2020-04-16 11:37:10 +02:00
carlopav
ba71f3de75 [Draft] First implementation of annotation scale
The changes are minimal, mainly is just cleanup of existing code and documentation.
[Draft] Annotation scale for ViewProviderDraftText

Adding support for scale factor according to changes in dimensions.
[Draft] Annotation scale for ViewProviderDraftLabel

completed annotations scale
[Draft] Annotation scale for ViewProviderAngularDimension
2020-04-16 11:37:10 +02:00
carlopav
9fcb4f94a0 [Draft] Annotation scale support and statusbar widget
Initial commit
Preliminary support for Draft Dimensions


[Draft] Statusbar Widget code cleanup
2020-04-16 11:37:10 +02:00
vocx-fc
587781221c Draft: new ShapeString icon for the tree view 2020-04-13 11:36:47 +02:00
vocx-fc
65acf43391 Draft: circulararray, clean up imports, docstrings, and checks 2020-04-08 11:08:29 +02:00
vocx-fc
1fcd4ac556 Draft: Draft.py improve imports of utility functions 2020-04-07 18:12:06 +02:00
vocx-fc
2ef52b3909 Draft: Draft.py clean up header and imports 2020-04-07 18:12:06 +02:00
carlopav
d9dd618230 [Draft] Fix to mirror tool
the normal is not computed with the view, but with the working plane if active.
ref. https://forum.freecadweb.org/viewtopic.php?f=23&t=44301&p=380632#p380370
2020-03-31 12:03:02 +02:00
vocx-fc
81d7267e72 Draft: add new viewprovider icon for radius dimension
If it is a linear dimension show the older icon;
if it is a radius or diameter dimension show a new icon.

These three modes use the same Proxy class
and the same viewprovider class. Depending on the linked geometry
one icon or the other will be shown.
2020-03-12 09:12:11 -03:00
vocx-fc
dce7f63c02 Draft: add new viewprovider icons for specific objects
When there are many Draft objects in the tree view
the icon can be used to tell different objects apart quickly.
One icon is used for objects that are "straight lines",
whose Proxy is of type `Line`, `Wire` or `Polyline`; another icon
for "regular geometrical" shapes of type `Rectangle` or `Polygon`;
and another icon for "curved" objects of type `Circle`,
`Ellipse`, `BSpline`, `BezCurve`, or `Fillet`.

Other objects use the older default icon.
2020-03-12 09:12:11 -03:00
vocx-fc
b25ca7194c Draft: lowercase use_link option for arrays
Inside the class `_DraftLink` the `onDocumentRestored` function
tests for the existence of the old attribute `useLink`. If it is
present, it uses it to define the new variable name `use_link`.
This is done use Python naming conventions.
The old `useLink` is deleted so it is not longer saved
together with the object when the document is saved.
2020-03-04 09:58:56 -03:00
Syres916
3ae13a012a [Draft] Change boolean If statement 2020-03-02 12:08:53 -03:00
Syres916
e26f306895 [Draft] WireToBSpline Fix makeWire Placement
See discussion https://forum.freecadweb.org/viewtopic.php?f=23&t=43184
2020-03-02 12:08:53 -03:00
vocx-fc
4c8bef7c91 Draft: new view provider icon for the angle dimension
The linear and radial dimensions use the same Proxy class,
but the angular dimension uses a different Proxy class.
To recognize quickly in the tree view the different
types of dimensions, we provide a new icon.

The icon is inspired on the `Draft_Dimension.svg` and
`TechDraw_AngleDimensions.svg` icons.
2020-02-15 13:07:38 +01:00
carlopav
b44031df60 [Draft] Move and rotate bugfix to handle App::DocumentGroup
Bugfix, ref https://forum.freecadweb.org/viewtopic.php?f=23&t=43061
2020-02-10 11:16:34 +01:00
vocx-fc
6a66044c21 Draft: override text in dimension only when GUI is up 2020-02-10 11:14:01 +01:00