Commit Graph

23876 Commits

Author SHA1 Message Date
wmayer
708cafca92 Qt6 port: port WebGui module 2022-11-03 12:54:34 +01:00
Roy-043
158142d641 TechDraw: "Alternate Decimals" label in prefs should be italic 2022-11-02 16:26:50 -04:00
mlampert
ebc1190d8b PATH: Feature/dogbone ii (#7660)
* Start of new dogbone dressup

* Added Instruction and tangents support for G2/3 moves

* Added Maneuver class to represent a set of moves and process them coherently

* Created kinks and verify their creation.

* Added dogbone detection and verification

* Simplified gcode strings

* Added horizontal t-bones generation

* Added support for vertical t-bone

* Consolidated t-bone creation

* Added support for pathLength

* Added support for tbone on short edge

* Added support for long edges

* Added support for dogbones

* Fixed dogbone for non-horizontal lead-in

* Horizontal bone adaptive length tests

* Fixed dogbone angle and adaptive length

* Some code cleanup

* Added adaptive length tests for dogbones

* Split base data classes into their own PathLanguage module.

* Splitting dogboneII implementation into its constituents

* Moved adaptive length into DogbonII module

* Separate dogboneII generator test cases and changed interface to allow for dynamic length calculations

* Unit tests for length calculation

* Initial DogboneII unit test

* Unit tests and fixes for plunge move handling

* Unit tests for the remaining styles and incision strategies

* Basic DogboneII gui

* Added support for markers

* Better color and selection scheme for markers

* Cleaned up import statements

* Added DogboneII to Path WB init

* Support for dogbone on dogbone and fixed t-bone generation

* Fixed t-bone on short leg bones

* Fixed tbone on short edge when short edge is m1

* Fixed t-bone on long edge for m0/m1 and CW/CCW

* Removed redundant code

* Removed redundant 'Dress-up' from menu entries

* black code formatting

* added generator to cmake

* Fixed typos
2022-11-02 15:25:09 -05:00
wmayer
78a823141a Sketcher: [skip ci] fix constraint dialogs to use QDialog instead of QWidget
With Qt6 this fixes a compilation error because uic uses the modern style of connect()
2022-11-02 13:49:14 +01:00
wmayer
4b08850edb Qt6 port:
* QApplication::setFallbackSessionManagementEnabled has been removed
* QString::medRef() has been removed. Use QString::mid() again.
* QTextStream::setCodec has been removed
* Use operator QVariant of the QFont class to make code Qt5 and Qt6 compatible
* Signature of QTreeWidget::mimeData() has changed in Qt6. Remove TreeWidget::mimeData() because it doesn't change the implementation
* QLayout::setMargin() is deprecated in Qt5 and has been removed in Qt6. Use QLayout::setContentsMargins()
* QDateTime::toTime_t() is deprecated in Qt5 and has been removed in Qt6. Use QDateTime::toSecsSinceEpoch()
* QDesktopWidget is deprecated in Qt5 and has been removed in Qt6. Use QScreen
2022-11-01 16:55:40 +01:00
Flachy Joe
c2c23169e6 [PartDesign] Improve Helix calculation for straight shape (#7674) 2022-10-31 23:26:10 +01:00
Chris Hennes
1fac3fead0 cMake: Add support for compiling against Qt6 (#7647)
Removes the BUILD_QT5 flag and adds a new FREECAD_QT_VERSION option,
which can be set to either "Auto" (default), 5, or 6. Auto detects which
version of Qt is installed on the system and chooses it. If both version
are installed, Qt5 is used.

Note that this DOES NOT implement compiling against Qt6, it only adds
the necessary cMake infrastructure to begin work on the source code
changes that will be required.
2022-10-31 09:24:09 -05:00
marioalexis
b64d987ac1 TechDraw: Improve code in Python CenterLinePy class 2022-10-31 09:08:52 -04:00
wandererfan
f6fc9554ec [TD]remove export macros from PreCompiled.h 2022-10-29 19:19:54 -04:00
wandererfan
ee2a4656a1 [TD]fix windows compile warnings 2022-10-29 19:19:54 -04:00
Paddle
5328c5f726 Optional : Point icon color fix. From green to red. This way internal points are yellow. Construction points are blue. The issue is that all normal points are construction. So they appear blue and not red. Not sure if that's a problem. 2022-10-29 20:25:34 +02:00
Paddle
cd3b7e26c6 Fix issues raised by OpenBrain. 2022-10-29 20:25:34 +02:00
Paddle
3f87aa90b1 ElementWidget: Fix extended naming settings not initializing. Adds 'Collapse filter' option. 2022-10-29 20:25:34 +02:00
Abdullah Tahiri
d8b89b2253 Sketcher: ElementWidget - Rename ElementType to SubElementType - make SubElementType nested to ElementItem 2022-10-29 20:25:34 +02:00
Abdullah Tahiri
098a154ad3 Sketcher: ElementItem - do not select/preselect invalid 2022-10-29 20:25:34 +02:00
Paddle
fef871320b SKETCHER: Element widget rework see https://forum.freecadweb.org/viewtopic.php?f=8&t=72239&sid=b7787fadb4c2a7e9682d28f31ede5eb8 2022-10-29 20:25:34 +02:00
Abdullah Tahiri
bcc1b621b9 Sketcher: GeometryFacade - new static function to check for internal alignment 2022-10-29 20:25:34 +02:00
marioalexis
c8aef3b75b TechDraw: Improve code in Python DrawViewPartPy class 2022-10-29 09:01:52 -04:00
Chris Hennes
8ecb72ff74 TechDraw: Windows compilation fix 2022-10-29 08:49:16 -04:00
wandererfan
86e7f36791 [TD]fix missing include for CI 2022-10-28 08:47:45 -04:00
wandererfan
87cc3fe864 [TD]SectionView/ComplexSection - preview, direction selection
- add preview/live update to TaskSectionView & TaskComplexSection
- add view direction selector to uis
- use SectionNormal as Direction.  Make Direction read-only
- simplify section line end point calculation
- section group command in toolbar
- make section and complex section icons consistent
- fix compsolid cutting tool
- terminology: single/piecewise to offset/aligned
2022-10-28 08:47:45 -04:00
wandererfan
0ff473a9b6 [TD]Complex Section - initial implementation 2022-10-28 08:47:45 -04:00
sliptonic
168d5043cf Merge pull request #7653 from sliptonic/bug/tagdressup
Fixes #7652  Tag creation bug
2022-10-27 09:55:46 -05:00
Uwe
6d889db9d7 [PD] remove deprecated holes
- as discussed in https://github.com/FreeCAD/FreeCAD/pull/7642 the backwards compatibility for deprecated holes was already lost since FC 0.19
- this PR removes the deprecated types and transform holes created with FC 0.19 or 0.20 to the corresponding countersinks/counterbores.

- also add Counterdrill for translations
2022-10-27 14:24:32 +02:00
wmayer
ebdd4c9af3 Gui: refactor and modernize code of Placement dialog 2022-10-27 00:28:55 +02:00
sliptonic
bc334a81c9 Fixes #7652 2022-10-26 17:04:54 -05:00
Yorik van Havre
e1ef5ef69d Merge pull request #7635 from Jolbas/master
Draft: Accept 1 in NumberPolar parameter
2022-10-26 09:23:25 +02:00
Yorik van Havre
90d0f0efc6 Merge pull request #7616 from Roy-043/Draft-Make-Std_TransformManip-work-for-Draft_Point
Draft: Make Std_TransformManip work for Draft_Point
2022-10-26 09:21:53 +02:00
luz paz
a5841ce1ed Spreadsheet: [skip ci] fix doxygen typo 2022-10-25 23:54:35 +02:00
Uwe
c31dc73e62 [PD] FeatureHole.cpp: sort counterdrill
- will be necessary to push deprecated entries to the end of the combobox in the dialog (in a coming PR)
- also fix too long code line
2022-10-25 01:09:37 +02:00
Roy-043
7ae40aebd2 Sketcher: Correct icon for Sketcher_CreatePointFillet 2022-10-25 00:33:28 +02:00
wmayer
316ce9f13b PD: [skip ci] disable undo/redo for the tmp. document created by the SubShapeBinder 2022-10-24 16:50:50 +02:00
Uwe
f5339093b3 [skip CI] [FEM] equation.py: fix a tooltip
- the highest priority is computed first, the Wiki page is already correct
2022-10-24 15:21:54 +02:00
Stefan Klug
673be545fd PartDesign: Add HoleCuteType "Counterdrill" 2022-10-24 15:19:24 +02:00
Stefan Klug
c077f75159 PartDesign: Refactor geometry creation of counersink/counterbore
The counterbore is basically a special case of the countersink
with a countersink angle of 180 degrees and applied depth.
Handling it that way elimintaes some duplicate code and adds the ability to
combine countersinks and counterbore to form a counterdrill.

The sanity check on countersinkAngle can be safely dropped as it is ensured
by a constraint on the property itself.
2022-10-24 03:42:02 +02:00
wmayer
f3440f403f Mesh: use PropertyMaterial in view provider 2022-10-23 23:31:04 +02:00
Chris Hennes
48de48ea4b Addon Manager: Clean up tests for pip 2022-10-23 15:24:42 -05:00
Jolbas
028c256300 Accept 1 in NumberPolar parameter
Setting the NumberPolar parameter to 1 resulted in a ZeroDivisionError.
2022-10-23 21:44:57 +02:00
Bernd Hahnebach
e77bf30a8e FEM: get LGTM silent 2022-10-23 21:43:04 +02:00
wmayer
86bf176b1f Mesh: implement PropertyMaterial 2022-10-23 19:49:46 +02:00
wmayer
6d2d3731e7 Mesh: [skip ci] add Python module with enum types 2022-10-23 18:52:33 +02:00
Stefan Klug
477726806f PartDesign: Remove duplicate comment 2022-10-23 09:15:17 -05:00
Stefan Klug
264d0bb890 [Bugfix] PartDesign: Fix HoleCutDepth not being recalculated correctly
HoleCutDepth is reset to 0 to force a recalculation of te depth when
HoleCutType is set to a new value.
But the line
	pcHole->HoleCutCustomValues.setValue(false)
also forces a recalculation. So the depth was recalculated with the old
value in HoleCutType which was not expected behaviour.
2022-10-23 04:10:18 +02:00
wmayer
2973da9203 Mesh: support to add transparencies to a mesh 2022-10-22 23:31:12 +02:00
Bernd Hahnebach
f46ed721c6 FEM: Python pep8 code formatting 2022-10-22 23:05:51 +02:00
Abdullah Tahiri
4d1e1733e3 Sketcher: Solver - Improvement of popularity contest and bug fix
================================================================

Master has a problem in that internal alignment constraints are suggested to the user for removal.

This is fundamentally wrong, as an internal alignment constraint are an inherent part of the geometry. They cannot be the ones suggested for removal.

The popularity contest algorithm is an heuristic algorithm that determines which redundant/conflicting constraints should be proposed for removal.

Basically, the algorithm works on groups of redundant/conflicting constraints detected via the QR decomposition. A constraint may belong to more than one group.

The algorithm runs some heuristics, each constraint scoring a value, the one constraint from each group scoring the highest is proposed (is more popular and wins the contest).

This PR documents the algorithm, and adds a further condition, that internal alignment constraints are never proposed.

As the solver works with solver constraints as opposed to the sketcher, which works with sketcher constraints, information about whether a solver constraint originated from a
sketcher constraint that is internal alignment is necessary. So the solver constraint is extended to accomodate this piece of information.

As a bonus, it fixes a bug. Solver constraints carry information of the ID of the corresponding sketcher constraint in their tag. Knots are not currently implemented as constraints.
However, the tag index was not being update. This caused the popularity contest to provide wrong suggestions despite good detection.
2022-10-21 19:54:51 +02:00
Paddle
56e067a521 Sketcher: remove select DOF. 2022-10-21 09:47:07 -05:00
0penBrain
4e6625ac12 Sketcher: remove unneeded flag 2022-10-21 15:15:43 +02:00
wmayer
2863ee0832 Part: [skip ci] fix German translation 2022-10-21 13:31:36 +02:00
wmayer
5f0f51bedc Sketcher: fix possible crash when closing the sketcher
For more details see the forum thread: https://forum.freecadweb.org/viewtopic.php?f=13&t=72774
2022-10-21 10:23:53 +02:00