Commit Graph

214 Commits

Author SHA1 Message Date
vocx-fc
eaea9bed6f Draft: add additional displacement property for PointArray
The displacement is added to the position already defined by
the point, in order to impart an additional shift in the copy.

The rotation is also added to the original shape's rotation
by multiplying the quaternions.

Implement `onDocumentRestore` to add the new property
to older objects.
2020-06-03 14:44:00 +02:00
vocx-fc
62d5df3508 Draft: clean up code, PEP8, and docstrings for PointArray
Test the inputs to the `make_point_array` function
and return `None` if there is a problem.

Now the make function accepts as input a `"String"` which must be
the `Label` of an object in the document, so it is easier to create
arrays quickly from the Python console.

Add a message deprecating the older call `makePointArray`.

Adjust the GuiCommand accordingly. Now it uses the commit
mechanism of the parent `Modifier` class so that the executed
functions are recorded in the Python console.

Clean up the `PointArray` class as well.
2020-06-03 14:44:00 +02:00
wandererfan
c203879b50 [Draft]Path Array tangent rotation direction 2020-06-02 13:55:44 -04:00
Yorik van Havre
d97ee0d4a5 Draft: Added Area and Offset properties to Facebinder 2020-06-02 14:00:25 +02:00
Yorik van Havre
83aaa29bb5 Draft: Fixed translation regression 2020-06-02 13:44:46 +02:00
vocx-fc
8c3705599d Draft: small fix for older PathArray objects
Older PathLinkArray objects had a `useLink` attribute
which was migrated to `use_link`. A recent commit, 0db11da9cf,
made some improvements to the PathArray
object, but broke the migration of the property.

This fixes the migration, so that now all objects should
open correctly.
2020-05-29 13:34:34 +02:00
wandererfan
6a3b2a02f5 [Draft]Post-review changes 2020-05-23 11:22:14 -04:00
wandererfan
a697c838fc [Draft]Additional modes for PathArray 2020-05-23 11:22:14 -04:00
vocx-fc
3172e82dc1 Draft: move circular, ortho, and polar make functions
Previously they were in `draftobjects`, but since they
don't define new objects, just create objects,
they are moved to `draftmake`.

Also ajust the `CMakeLists.txt` and the corresponding Gui Commands
which use these make functions.

These functions internally use the `Draft.makeArray` function.
We will put comments as reminders so that when this function
is moved to its own module, we can update the derived functions.
2020-05-18 12:42:10 +02:00
carlopav
0e9d274bf4 Draft: various cleanup
Mainly added an empty line at the end of each file and changed docstrings.
2020-05-15 14:43:26 +02:00
carlopav
1733b6dc74 Draft: split DrawingView from Draft.py 2020-05-15 14:43:26 +02:00
carlopav
767413997d Draft: cleanup of Array properties after splitting 2020-05-15 14:43:26 +02:00
carlopav
fe29205e60 Draft: split Array from Draft.py 2020-05-15 14:43:26 +02:00
carlopav
a4b5fb2cd4 Draft: split PointArray from Draft.py 2020-05-15 14:43:26 +02:00
carlopav
ebc84af368 Draft: split Path Array and viewprovider Array from Draft.Py
Draft: fix typo in PathArray
2020-05-15 14:43:26 +02:00
carlopav
c53f447f58 Draft: Split DraftLink from Draft.py 2020-05-15 14:43:26 +02:00
vocx-fc
785023d898 Draft: split Fillet code into various modules
The original code was in `DraftFillet.py` which is split
into a different modules like the rest of the workbench.

The object code is in `draftobjects`, the viewprovider
is in `draftviewproviders`, and the function to create it
is in `draftmake`.
2020-05-13 11:37:56 +02:00
vocx-fc
a79664d3e3 Draft: small updates to the Annotation class
This annotation class implements `onDocumentRestored`
in order to add the `ScaleMultiplier` property to older
`Dimension`, `Label`, and `Text` objects.
2020-05-12 10:02:21 +02:00
vocx-fc
d3d52c57b4 Draft: move arc_3points to the make package
Also import it in the `Draft` namespace so that is available
as `Draft.make_arc_3points`.

Use this new function in the unit test `drafttests.test_creation`,
in the GuiCommand `draftguitools.gui_arcs`, and in the
`draft_test_objects` script.
2020-05-12 10:00:41 +02:00
vocx-fc
f1398c3207 Draft: update description of draftobjects package 2020-05-06 12:46:24 +02:00
carlopav
81e5a3487b Draft: fix ScaleMultiplier on annotation objects
Object auto create the property when opening an old Draft annotation
.
2020-05-04 10:53:54 +02:00
luz.paz
244639c2bf [skip-ci] Fix typos in Draft, Mesh, and src/Tools
Found via codespell v1.17.0.dev0  
```
codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,ba,beginn,behaviour,bloaded,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childs,colour,colours,commen,connexion,currenty,dof,doubleclick,dum,eiter,elemente,ende,feld,finde,findf,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,ist,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oder,orgin,orginx,orginy,ot,pard,pres,programm,que,recurrance,rougly,seperator,serie,sinc,strack,substraction,te,thist,thru,tread,uint,unter,vertexes,wallthickness,whitespaces -S ./.git,*.po,*.ts,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml
```
2020-04-30 11:40:38 +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
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
f6cc26e263 Draft: compatible super for AngularDimension object 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
Yorik van Havre
9343223525 Draft: Annotation editor 2020-04-22 13:38:17 +02:00
luz.paz
7eb270017e [skip ci] fix documentation typos
Found via codespell v1.17.0.dev0  
```
codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,ba,beginn,behaviour,bloaded,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childs,colour,colours,commen,connexion,currenty,dof,doubleclick,dum,eiter,elemente,ende,feld,finde,findf,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,ist,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oder,orgin,orginx,orginy,ot,pard,pres,programm,que,recurrance,rougly,seperator,serie,sinc,strack,substraction,te,thist,thru,tread,uint,unter,vertexes,wallthickness,whitespaces -S ./.git,*.po,*.ts,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml
```
2020-04-20 12:59:09 +02:00
carlopav
db9134630a [Draft] Cleanup splitted annotatation objects
- corrected super() methods to be Py2 compatible
- further cleanup of the code.
further cleanup


changed again to avoid super method


updated super() functions


updated to correct the parent classess targeted by super()
2020-04-16 11:37:10 +02:00
carlopav
00c0de6871 [Draft] Removed annotation styles objects
Removed Annotation styles current implementation.
As pointed out by yorik, in https://forum.freecadweb.org/viewtopic.php?f=23&t=44051&p=385710#p385179, this feature will be added using document Meta property.
2020-04-16 11:37:10 +02:00
carlopav
78f740807c [Draft] Dimension styles improvements
Dimension style property is auto-set on dimension creation.
Further improvementes in DimensionStyleContainer.
.
2020-04-16 11:37:10 +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
19928b7347 [Draft] Updated cmake with splitted annotation objects
.


.
2020-04-16 11:37:10 +02:00
carlopav
5b4815f807 [Draft] Dimension Style cleanup 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
9c4c16c7bb [Draft] Split angular dimension
and made it derived from 
DimensionBase <- Draft Annotation
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