Commit Graph

1192 Commits

Author SHA1 Message Date
PaddleStroke
5da8aae43c External geos : Enable face selection 2024-11-29 11:36:55 -05:00
PaddleStroke
223877873b Sketcher: Offset & tranforms: enable external geos input. (#17615)
* Sketcher: Offset & tranforms: enable external geos input.
* Sketcher: enable delGeometries to handle external geos.
2024-11-25 10:57:16 -06:00
wmayer
ac14e2c960 MSVC: Fix compiler warnings 2024-11-22 16:53:00 +01:00
Jiří Pinkava
00acfd5b2a Sketcher: refactor, drop return in void returning functions 2024-11-18 12:21:25 -05:00
Syres916
6a6699ac86 [Sketcher] Assist user in finding the sketch with the error 2024-11-15 12:15:59 -05:00
Yorik van Havre
0591b1373f Merge pull request #17448 from Ondsel-Development/sk_rotate_arc_issue
Sketcher: Rotate : Fix exploding sketches when rotating.
2024-10-28 17:05:46 +01:00
wmayer
de647c5324 Fix compiler warnings 2024-10-26 00:48:04 +02:00
PaddleStroke
bfdd4806f3 Sketcher: Symmetric: Do not copy names of constraints (#17433)
* Sketcher: Symmetric: Do not copy names of constraints

* Sketcher: Symmetric : Fix https://github.com/FreeCAD/FreeCAD/issues/17442
2024-10-24 22:58:51 -05:00
PaddleStroke
1f7f6ce44b Formating PythonConverter.cpp 2024-10-24 11:32:20 +02:00
PaddleStroke
4390eb4dab Sketcher: PythonConverter: use getRange to handle bad arcs. 2024-10-24 11:00:46 +02:00
Eric Price
aba60775f6 Fix boolean operations (#17119)
* add BRepAlgoAPI wrapper files to CMakeList

* introduce wrapper for BRepAlgoAPI_BooleanOperation and derivatives, set sensible default Fuzzyness for boolean operations

* allow default fuzzyness to be set in settings - including off

* backwards compatibility with OCCT 7.3.3 - removed newer paramateres from wrapper

* added missing header

* reverted src/Mod/Part/App/OpenCascadeAll.h to original state

* implement some changes suggested by @wwmayer

* removed unneeded destructor definitions

* moved getDefaultFuzzyValue into its own helper class

* removed unneeded references to base class default constructor

* default to SetRunParallel(Standard_True) as suggested by @FlachyJoe

* fixed license header as requested

* Added new method to autocalculate fuzzyness to BooleanOperation base class and use it for those parts that do not call the obsolete constructor but also do not set precision

* implemented static variable solution as suggested by @wwmayer

* added helix for test case

* Refactoring FCRepAlgoAPI to FCBRepAlgoAPI

* Added Test Case (fuse cylinder with helix with different working and non-working Fuzzy values)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* increased default value of FuzzyBoolean and made tests more robust for compatibility with OCCT 7.3

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fixes for FREECAD_USE_PCH - allow testing of FREECAD_USE_PCH on linux with cmake switch (default OFF)

* removed surplus line - wasn't needed after all

* included precompiled as instructed

* set anti-corruption flag in boolean operations, ensures source shape is not damaged in OCCT 7.1 and higher

* fix #17085

* disable subtests that were too specific for now

* fixed all CLI tests - see comments in Pull Request https://github.com/FreeCAD/FreeCAD/pull/17119#issuecomment-2420772452

* Update src/Mod/PartDesign/PartDesignTests/TestTopologicalNamingProblem.py

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

suggested updated test by CalligaroV

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* Update tests/src/Mod/Part/App/TopoShapeExpansion.cpp

Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>

* remove surplus tests from github suggestion interface bug

* hide the BooleanFuzzy variable - can now be only set by manually editing the config file
i
in FCParamGroup "Boolean"
<FCFloat Name="BooleanFuzzy" Value="10.000000000000"/>

* Suggestion by @FlachyJoe - add validity checks to the base and tool shape in any direct boolean op

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Vincenzo Calligaro <vincenzo.calligaro@gmail.com>
2024-10-21 18:38:51 +02:00
Jiří Pinkava
fc5d6be6cb Sketch: refactor GeoHistory 2024-10-21 17:41:54 +02:00
wmayer
d9fc0ea6d1 Sketch: Fix creating the shape of a sketch
SketchObject::buildShape() used the geometries as they were created by the user. However, they are not accurate enough in order
to create a closed wire. Instead the geometries after running the solver must be used because they are guaranteed to be accurate.
2024-10-15 23:21:21 -05:00
bgbsww
df41704c01 Match LS3 opcodes for sketch shape 2024-09-23 17:45:32 +02:00
bgbsww
888391414d Sketcher: Do not consider missing external geometry to be an error (#16590)
* Do not consider missing external geometry to be an error; highlight in conflict color.
2024-09-18 15:18:11 -05:00
Jiří Pinkava
a87701916f Sketcher: initialize geometry history limit variable (#16337)
* Sketcher: initialize geometry history limit variable

The variable seems to be uninitialized, valgrind complais about it.

The `git grep geoHistoryLevel` and the code ispection suggest it is never set.
If initialized to zero, most of the related code is never used, which
can point to the fact there is either another bug or the code is unused.

The variable was introduced in 58a0bb40ed.

* Sketcher: Default geoHistoryLevel to 1

---------

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2024-09-16 17:41:12 +02:00
Chris Hennes
7831bf06d1 Merge pull request #16355 from CalligaroV/Sketcher-checkSubName-from-LS3
Sketcher/Toponaming: import SketchObject::checkSubName() from LS3
2024-09-12 21:11:39 -05:00
Morimiue
83c846e411 Sketcher: transfer constraints on conic's mid point to the newly created conic arc (e.g. ellipse arc)" -m "Fixes #15860" -m "When spliting a sketch curve, constraints on the original curve are transferred to the newly created curve. The original code did not consider the constraints on the center point of an ellipse arc. 2024-09-09 18:31:13 +02:00
CalligaroV
62f9d10321 Sketcher/Toponaming: import code for SketchObject::checkSubName() from LS3
* applied review hints

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-09-08 10:39:54 +02:00
Zheng, Lei
819ae560f1 Sketcher/Toponaming: import code for SketchObject::checkSubName() from LS3
* import code
 * add modified_item assignment in TaskSketcherElements::onSelectionChanged() like for non ExternalEdge
2024-09-07 14:08:23 +02:00
PaddleStroke
c79bde4db5 Sketcher: ConstraintPyImp: replace 'cstr' name by 'constraint' 2024-09-02 18:22:51 +02:00
PaddleStroke
e7ff71c20c Sketcher: addGeometry : Remove point construction limitation. 2024-09-02 18:22:51 +02:00
PaddleStroke
f763fe5bf3 Sketcher: Fillet preserving point : Make point construction. 2024-09-02 18:22:51 +02:00
PaddleStroke
0ed0d6518c Sketcher: Make it possible to specify if the constraint is active or driving during python creation. 2024-09-02 18:22:51 +02:00
bgbsww
608c80b5a3 Toponaming: Remove remaining FC_USE_TNP_FIX defines 2024-08-31 13:21:10 -05:00
Ajinkya Dahale
b485965d97 [planegcs] Fix error gradient check in ConstraintTangentCircumf 2024-08-31 13:19:13 -05:00
bgbsww
e4a509cc77 Toponaming: Remove all FC_USE_TNP_FIX protected old code 2024-08-26 11:12:48 -05:00
Ajinkya Dahale
2c6817d796 [planegcs] Support circle-to-circle tangent when centers coincide
This simply implies avoiding some NaN's when computing error or gradient.
2024-08-25 23:20:41 +05:30
wmayer
7d492c9f64 Building: Boost dependency errors
Fixes #15999
2024-08-22 18:50:24 -05:00
bgbsww
4fd5b0b562 Toponaming: Additional element map changes to transform 2024-08-08 09:09:46 -05:00
Chris Hennes
3b33d73b7e Sketcher: Modernize license text 2024-08-05 10:49:14 -05:00
bgbsww
6269196acf Toponaming: use correct face maker 2024-08-02 21:55:51 -04:00
bgbsww
5f657bc1ce Toponaming: bring in code to fix delExternal breakage. 2024-08-02 14:13:38 -05:00
bgbsww
d0abd4e5ad Toponaming: Final piece nine of fixing Save/Restore sketch external geometry 2024-07-29 09:38:21 -05:00
wmayer
5c9d780a17 Sketch: Fix compiler warnings
Fix warning: -Wunused-but-set-variable
2024-07-28 11:59:51 +02:00
Chris Hennes
e290cd48e1 Sketcher/Toponaming: Further linter cleanup 2024-07-26 22:10:44 -05:00
Chris Hennes
48a37e4d1e Sketcher/Toponaming: Minor code cleanup during review 2024-07-26 21:48:33 -05:00
bgbsww
8b25341a7f Toponaming: Touchup cleanup
Includes some header re-ordering from chennes.
2024-07-26 21:39:39 -05:00
bgbsww
9f2210313d Toponaming: Tests, cleanup, and fix axis drawing 2024-07-26 11:49:56 -04:00
Zheng, Lei
77f181a307 Toponaming: Transfer in ExportGeo and associated 2024-07-26 11:49:56 -04:00
Chris Hennes
1b4afb2caa Apply suggestions from code review 2024-07-24 21:48:59 -05:00
bgbsww
1eda66dfd8 Cleanup, format 2024-07-24 16:41:15 -04:00
Zheng, Lei
38269241e6 Toponaming: Transfer in getHigherElement 2024-07-24 15:10:42 -04:00
Zheng, Lei
a600952665 Toponaming: Transfer in SketchObject::InternalShape 2024-07-22 17:26:52 -04:00
bgbsww
19e450a667 Refactor all element name pairs into clearer struct names - renames 2024-07-20 16:32:12 -04:00
bgbsww
16b8d99d62 Toponaming: refactor getExportElementName to separate method 2024-07-19 10:19:57 -04:00
bgbsww
52294ce8c1 Toponaming: Clean Code adding RefIndex to ExternalGeometry and supporting new migration types. 2024-07-19 09:39:19 -04:00
Zheng, Lei
31e2b3104c Transfer in code from linkstage3 2024-07-19 09:22:17 -04:00
Chris Hennes
df8315d747 Sketcher: Fix crash on recompute with points
Fixes #15154.
2024-07-17 10:25:22 -04:00
Pesc0
02b2092f55 Rename variables and clean method 2024-07-15 12:50:30 -04:00