wmayer
89e4455057
Part: [skip ci] print warning only if eof bit is not set, i.e. ignore it for empty files
2022-03-17 20:24:06 +01:00
wmayer
9160f06e1c
Base: rename BaseExceptionFreeCADError to PyExc_FC_GeneralError
2022-03-17 14:45:48 +01:00
wmayer
d69defaa3c
Py: replace BaseExceptionFreeCADError with more suitable exception types
2022-03-17 13:54:23 +01:00
wmayer
0054cbddaa
Fix coverity issue:
...
* CID 332682: Resource leak
* CID 350607: Resource leak
* CID 332677: Resource leak
2022-03-14 11:35:04 +01:00
wmayer
edd346cc3d
Part: Fix several coverity issues:
...
* CID 350581: Structurally dead code
* CID 350620: Structurally dead code
* CID 350563: Big parameter passed by value
* CID 350552: Uncaught exception
* CID 305193: Uncaught exception
* CID 350556: Uninitialized scalar field
* CID 350579: Uninitialized pointer read
2022-03-13 16:06:40 +01:00
Uwe
1e852e6d6b
[Part] remove unused variable
...
MSVC complained about it
2022-03-12 15:44:27 +01:00
mwganson
72e06ae529
Part: 2doffset fix crash by chacking for null shape before adding with builder.Add()
2022-03-12 02:48:22 +01:00
wmayer
c3828d6225
Part: refactor PropertyPartShape::SaveDocFile and PropertyPartShape::RestoreDocFile
...
Set exception mask of std::istream::failbit | std::istream::badbit to istream to make sure it raises an exception for corrupted input files.
See: https://forum.freecadweb.org/viewtopic.php?p=536747
2022-03-11 22:06:38 +01:00
wmayer
8d3c66cf18
Core/Mod: modernize C++11
...
* use nullptr
2022-03-09 21:55:31 +01:00
wmayer
4977e55e51
App: Optimize includes to reduce compile time
2022-03-07 15:53:58 +01:00
wmayer
58a719e207
Base: move ILogger sub-classes to their own source files in order to reduce including stream classes in client code
2022-03-06 10:13:47 +01:00
wmayer
ca3c8185e0
App/Gui: move template classes (ViewProvider)ExtensionPythonT to their own header files
2022-03-04 18:54:42 +01:00
wmayer
9252f5f9ec
Part: issue #6488 : Cone surface returns wrong dv derivative
...
This is a workaround to fix a bug in ElSLib::ConeDN
2022-03-01 14:59:26 +01:00
Uwe
62496d7277
Revert "App: fix property ordering problem when undo/redo ( #3255 )"
...
This reverts commit c3178343db .
2022-02-22 01:21:49 +01:00
Uwe
bc55cf4007
[Part] compile fix for precompiled header
...
For an unknown reason BRepFill_Generator.hxx must be load explicitly for precompiled headers.
2022-02-21 16:52:41 +01:00
Uwe
0ead5a793b
fix more typos to silence the spellchecker CI
2022-02-21 13:20:06 +01:00
Zheng Lei
c3178343db
App: fix property ordering problem when undo/redo ( #3255 )
...
* Part: fix Placement/Shape onChanged() handling
* App: fix property ordering problem when undo/redo
See https://tracker.freecadweb.org/view.php?id=4265#c14271
* Gui: fix undo/redo signaling
Make sure to signal after all properties has been restored
2022-02-21 12:29:01 +01:00
Uwe
67a0966398
[Part] remove some unused includes and sorting
2022-02-21 04:29:28 +01:00
Uwe
f16a0da841
[Part] FaceMaker, Command and Extrusion: remove unused includes
2022-02-21 03:33:01 +01:00
wmayer
95f583a677
Part: fix typos in make* functions
2022-02-16 12:48:02 +01:00
Uwe
df3569b799
[Part] Bullseye whitespace fixes
2022-02-16 03:40:07 +01:00
wmayer
a5e561b31d
Base: fix Matrix4D::hasScale
...
* If all column vectors of the 3x3 sub-matrix are equal the function incorrectly claims that it's uniform scaling.
* Detect also non-uniform scaling and if was applied from the left or right side
* Replace the int with an enum and expose it to Python
* Add several new unit tests
2022-02-15 21:05:11 +01:00
wmayer
09a05a9cd0
Part: Circle variable name change to create consistency
...
Change variable names of the Circle from Angle0 to Angle1 to create consistency with all other named angle variables
2022-02-11 18:28:58 +01:00
wmayer
ce40cbe2aa
Part: handle to load old project files with Part::Ellipse
2022-02-11 17:25:28 +01:00
Sebastian
2158eebc88
Ellipse variable name change to create consistency
...
Change variable names of the Ellipse from Angle0 to Angle1 to create consistency with all other named angle variables
2022-02-11 17:22:45 +01:00
Sebastian
2a5bc84410
Update PrimitiveFeature.cpp
...
Correct upper case words equal to other tool tip hints.
2022-02-08 21:54:20 +01:00
wmayer
18579134b5
Part: fix possible creation of NaN in Geom2dCircle::getCircleCenter
2022-02-05 16:16:59 +01:00
wmayer
3dc91fa2b8
Part: expose Geom2dCircle::getCircleCenter to Python and fix a regression
2022-02-05 16:07:00 +01:00
edi271
df7d235fc6
Update Geometry2d.cpp
...
I tested. It works using Precision::Confusion(). Thank you.
2022-02-02 08:35:34 -05:00
edi271
049889b72f
add accuracy to getCircleCenter method
2022-02-02 08:35:34 -05:00
Uwe
cfdf334b7f
[PD] add option to create tapered Pad / Pocket
...
This PR adds the same functionality as provided by Part Extrude.
The used code parts are sorted out to a new helper function that is used by Part and PartDesign.
2022-02-02 01:04:06 +01:00
Uwe
065e87f313
[Part] Extrusion: stop if intermediate shape is Null
...
besides the error message, we need to raise an error
- also fine-tune the wording
2022-01-31 01:07:33 +01:00
Uwe
d455783ebe
[Part] Extrusion: fix logic issue
...
has actually no influence on the output but is important to understand the logic of the code
2022-01-31 00:23:33 +01:00
Uwe
647b54302f
[Part] Extrusion: fix CI compiler warning
...
fixes "warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int'"
2022-01-30 22:46:07 +01:00
Uwe
754fc5f9ae
[Part] Extrusion: code simplification and documentation
...
- in order for the pending PR to add tapered padding/pocketing
2022-01-30 19:37:41 +01:00
Uwe
7c55db58d1
[Part] Extrusion: handle also complex nested structures
...
- there can be strange cases with structures all intersecting each other. Their extrusion has no practical use case but we must avoid that such structures results either in an infinite loop or in an invalid geometric result.
2022-01-30 18:43:11 +01:00
Uwe
55f71f4015
[Part] Extrude: fix a thinko introduced by previous commit
...
- the handling of all inner wires must be done within the recursion
2022-01-30 17:41:40 +01:00
Uwe
29997d5e71
[Part] Extrusion: simplify code by using full recursion
...
- the recursion can be done completely by one void
- also add a brief description of this void
2022-01-30 16:53:44 +01:00
Uwe
8eab4a397e
[Part] Extrusion: code optimizations
...
kudos to @marioalexis84
2022-01-30 06:02:37 +01:00
Uwe
63c864c5b6
[Part] Extrusion: taper nested wires properly
...
addendum to commit cce730c79
Now also wires nested by more than one level are supported.
The possible nesting is infinite.
2022-01-30 05:52:43 +01:00
mwganson
c63c3e6538
Part.show() python return the new document object instead of None
2022-01-29 23:50:43 +01:00
Uwe
99d9e781fc
[Part] Extrude: remove unused variable
2022-01-29 23:18:11 +01:00
Uwe
cce730c79d
[Part] handle inner wires for Extrude ( #5367 )
...
* [Part] handle inner wires for Extrude
this is a PR to make Extrude handle inner wires of sketches.
2022-01-29 21:50:55 +01:00
luz paz
da6f34723b
Part: fix source comment typo
2022-01-22 16:28:41 +01:00
Uwe
39ed257eb4
[Part] add missing include
...
needed since PR #5382
- also transfer another include
2022-01-21 01:07:38 +01:00
marioalexis
7b23f6793c
Part: Use Tools::getNormal to compute normal to surface
2022-01-20 13:01:27 +01:00
marioalexis
a888a0ac0a
Part: Implement Tools::getNormal function
2022-01-20 13:01:27 +01:00
Uwe
fcaa698be8
[Part] Extrusion: just style fixes
...
to keep following PR diffs small
all changes were automatically done by MSVC
2022-01-20 01:08:35 +01:00
wmayer
113a587ae5
Part: in function to create a part handle meshes with defects
2022-01-18 15:20:55 +01:00
Uwe
af45d932c4
[Part] Extrude: avoid code duplication
...
more code that is used twice into a subroutine
2022-01-17 16:58:03 +01:00