Commit Graph

195 Commits

Author SHA1 Message Date
wmayer
ed04d40e2b Sketcher: modify PR 3201 a bit
+ remove unneeded class members from EditData class
+ do not include ui-header from within header files
+ fix possible memory leak in EditDatumDialog
+ when canceling dialog make sure sketch will be updated
2020-03-19 13:45:52 +01:00
0penBrain
d520de1aba [Sketcher] Constraint driving/driven status integration in dimension edition dialog
This integrates the ability to manage dimensional constraint driving/driven status
 in the constraint edition dialog box.
 It adds a checkbox in the dialog to show/select whether a constraint is driving or
 driven. When the constraint value is modified, it is automatically set as driving.
 Main focus is to allow to edit name (alias) of reference (driven) constraints
 directly in the constraint edition box.

 Resolves #3793, #3978
2020-03-19 13:45:52 +01:00
dulouie
134c841e08 Sketcher: fix contraints cmd crosshair color 2020-03-16 09:34:21 +01:00
luz.paz
7008cf92de Sketcher: [skip ci] fix header uniformity
This PR fixes header uniformity across all Sketcher WB files
2019-12-22 01:00:29 +01:00
wmayer
d488218701 [skip ci] fix more -Wgnu-zero-variadic-macro-arguments 2019-11-17 19:11:08 +01:00
luz.paz
044213d6ad Source typo fix (includes file rename) 2019-10-05 13:19:32 -04:00
luz.paz
fb32601746 Fix various (doxy) typos and whitespace issues
Found via `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,currenty,dof,doubleclick,dum,eiter,elemente,feld,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`
2019-10-03 07:57:13 +02:00
wmayer
b1dd1e61a7 force strict ISO C++ (-Wpedantic)
for Fem, Import, PartDesign, Robot, Sketcher, TechDraw
2019-09-18 14:18:07 +02:00
wmayer
190d351a20 fix crash in polyline tool 2019-09-15 11:03:21 +02:00
Zheng, Lei
0f66755843 Sketcher: fix external editing 2019-08-17 15:32:50 +02:00
Zheng, Lei
d4ac072306 Gui: support in-place editing
The link support means that an object can now appear in more than one
places, and even inside a document different from its own. This patch
adds support for in-place editing, meaning that the object can be edited
at correct place regardless where it is.

See [here](https://git.io/fjPIk) for more info about the relavent APIs.

This patch includes two example of modifications to support in-place
editing. One is the ViewProviderDragger, which simply adds the dragger
node to editing root node by calling
View3DInventorViewer::setupEditingRoot(dragger). The other much more
complex one is ViewProviderSketch which calls setupEditingRoot(0) to
transfer all its children node into editing root. ViewProviderSketch
also includes various modifications to command invocation, because we
can no longer assume the active document is the owner of the editing
object.

This patch also includes necessary modification of the 'Show' module to
support in-place editing.
2019-08-17 15:08:32 +02:00
Abdullah Tahiri
34402cbe90 Sketcher: fixes no horizontal/vertical on segment after horizontal/vertical alignment
=====================================================================================

Selecting first the horizontal/vertical constraint and applying to a line segment with
a previous horizontal/vertical alignment constraint caused FreeCAD to refuse applying it.

fixes #4013
2019-06-22 09:58:42 +02:00
Abdullah Tahiri
a571376584 Sketcher: GUI command to activate/deactivate constraints 2019-06-22 08:26:31 +02:00
Abdullah Tahiri
22f34a53a9 Complete parameter comments 2019-03-14 23:46:46 +01:00
Abdullah Tahiri
434ad220cf Correct paramter comments 2019-03-14 23:46:45 +01:00
Abdullah Tahiri
1b64c1458b PVS Fix 2019-03-14 23:46:45 +01:00
triplus
92efd5fbe9 Improved icon themes support 2019-02-13 10:42:46 -02:00
luz.paz
4154f5dce5 Crowdin: cont... 2019-02-11 16:22:13 +01:00
luz.paz
334cd86e89 Crwodin: Sketcher/Gui/CommandConstraints.cpp s/root/origin/ 2019-01-30 11:08:03 -02:00
luz.paz
566a17985e Crowdin: Sketcher/Gui/CommandConstraints.cpp grammar fix 2019-01-30 11:08:03 -02:00
luz.paz
fc061528e3 Crowdin: Sketcher/Gui/CommandConstraints.cpp 2019-01-30 11:08:03 -02:00
Yorik van Havre
47f98403f3 Fixed wording as notifed on crowdin 2018-12-31 16:21:49 -02:00
Abdullah Tahiri
b784285d20 Sketcher: Tangency between arcofellipse and other curves
========================================================

Surprisingly there was no code to handle arcofellipse tangencies using AngleViaPoint constraint.

fixes #3659
2018-12-20 11:59:26 -02:00
wmayer
21d01fe6fc Replace Base::Exception with appropriate subclass 2018-11-14 19:27:52 +01:00
Abdullah Tahiri
da890f2863 Sketcher: Allow driven constraints when autoredundancy removal and autorecomputes active
==========================================================================================

https://forum.freecadweb.org/viewtopic.php?f=3&t=31998#p266626
2018-11-04 14:46:37 -03:00
Abdullah Tahiri
21f2e79021 Sketcher: Refactor code relating to dimensional constraint checks 2018-11-04 14:41:20 -03:00
wmayer
7d681a2979 0003544: Crash on creation of vertical dimension with Shift + V 2018-10-04 18:37:33 +02:00
Abdullah Tahiri
bb7e038a5a Sketcher: Correct checking of compatible equality geometry
=========================================================

Before this commit equality line to circle is allowed although the solver can not process it.

Similar happens for several combinations of incompatible edges.
2018-09-29 18:18:42 +02:00
Abdullah Tahiri
54a20d5ff9 Sketcher: No equality to be applied to external axes
fixes #3532
2018-09-29 18:18:02 +02:00
Abdullah Tahiri
779b4f641d Sketcher: Automatic redundant removal mechanism
===============================================

It is a long felt need that redundant constraints are not generated while autoconstraining.

The solver sketcher in v0.17 is überpicky with redundants due to the new popularity contest algorithm. The former behaviour is exhacerbated.

This new mode enables automatic redundant constraint removal.

In UI operations IN EDIT MODE, upon detection of redundancy by the solver, the Sketcher will remove all redundant constraints detected by that solve.

This makes the sketcher much less annoying.

How to test this?

The easiest example is to create a vertical line. Then make the endpoints symmetric with respect to the horizontal axis. Without this mode,
the vertical constraint and the symmetry constraint are redundant. With this mode, the vertical constraint gets automatically removed by the Sketcher.
2018-08-26 20:54:01 +02:00
luz.paz
9c2e9884e2 More typos 2018-08-18 21:48:43 +02:00
luz.paz
fab9cad50f Misc. typos
Found via `codespell`
Trivial typos

Found via `codespell`
2018-08-18 21:48:42 +02:00
Abdullah Tahiri
182811ae47 Sketcher: Fix typos 2018-07-30 00:47:26 +02:00
Abdullah Tahiri
6a5d26ca76 Sketcher: Fix Radius/Diameter shortcut 2018-07-30 00:47:26 +02:00
Abdullah Tahiri
f6a9c353cb Sketcher: New command to add a Diameter Constraint 2018-07-30 00:47:24 +02:00
luz.paz
9f6f027686 Crowdin: Corrected B-spline term in translation
ref: https://crowdin.com/translate/freecad/569/en-fr#6503804
[skip ci]
2018-02-07 09:43:55 +01:00
luz.paz
69216f3604 sWhatsThis fixes
ref: https://forum.freecadweb.org/viewtopic.php?f=10&t=26687
2018-01-31 19:07:07 +01:00
wmayer
4730e5b608 save values before invalidating iterator, whitespace improvements 2018-01-27 13:09:44 +01:00
Abdullah Tahiri
e9732b4b0a Sketcher: Setting in Preferences to switch on/off notification of constraint substitution
=========================================================================================

By default notification is on, so that Newbies do not complain why FC is deleting that other constraint they have added before.

Power users generally will set it off, as they do not want to be bothered by pop ups and know what they are doing.
2018-01-27 12:33:11 +01:00
Abdullah Tahiri
8d3c20f06e Sketcher: Avoid single tangency plus coincident when preexisting single tangency
================================================================================

fixes #3299 (remaining)

Draw a line. Draw an arc. Make edge to edge tangency. Select endpoints. Try to create a coincident constraint. You now get an Endpoint-to-Endpoint tangency.
2018-01-27 12:33:11 +01:00
Abdullah Tahiri
32737cd425 Sketcher: Avoid single tangency when preexisting coincident
==========================================================

partly fixes 3299

Draw a line. Draw an arc. Make one endpoint of each coincident. Select the line. Select the Arc. Hit tangency. You now get an Endpoint-to-Endpoint tangency.
2018-01-27 12:33:11 +01:00
wmayer
c65585ccaf improve whitespace, fix const correctness 2018-01-23 00:40:41 +01:00
Abdullah Tahiri
46aa2c6356 Sketcher: Change nomenclature relating to Block constraint 2018-01-22 22:52:56 +01:00
Abdullah Tahiri
73d817281a Sketcher: UI Block constraint creation sanity checks
====================================================

Avoid creation of constraints if they would lead to undesirable conflicting situations.
2018-01-22 22:52:56 +01:00
Abdullah Tahiri
74043d5063 Sketcher: Block constraint - Prevent from adding constraint if the solver has redundant/conflicting constraints 2018-01-22 22:52:56 +01:00
Abdullah Tahiri
08d23cf951 Sketcher: Blocked Constraint toolbar commands 2018-01-22 22:52:56 +01:00
luzpaz
4eb5a431fa Sketcher: comment typos 2017-12-25 10:59:48 +01:00
Abdullah Tahiri
5e6e289d69 Sketcher: Fixes no horizontal/vertical on edge if previous horizontal/vert aligment on vertex
=============================================================================================

fixes #3257
2017-12-07 11:11:40 +01:00
Abdullah Tahiri
58210251ca Refactoring solve+recompute and reinstating initial solve+recompute behaviour 2017-08-19 17:14:27 +02:00
wmayer
5661d91371 fixes #0002710: Freecad doesn't show sketch elements added when overconstrained
issue #0002836: Crash in sketcher
2017-08-19 17:14:27 +02:00