Commit Graph

1393 Commits

Author SHA1 Message Date
wmayer
5234d9bc67 App: add pure virtual methods to PropertyGeometry to delegate it to the geometry of sub-classes
Following the law of Demeter add some wrapper methods to PropertyGeometry and implement them in sub-classes. As a side-effect this makes some const_cast obsolete
2022-06-24 16:15:02 +02:00
wmayer
f87d9bd626 Part: [skip ci] remove superfluous const_cast 2022-06-24 16:10:09 +02:00
wmayer
c955372ecf cppcoreguidelines-pro-type-union-access
According to https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md using union for type-punning is undefined behaviour.
 Replace it with std::memcpy
2022-06-24 14:29:50 +02:00
Benjamin Alterauge
ad8bb4dc69 GeomBSplineCurve: Add interpolate without tangents
Now with description

Periodic selectable
2022-06-24 02:25:55 +02:00
mosfet80
620c273c4e Boost version <=1.60 is never used in freecad 0.20 (#7038)
* Boost version 1.60 is never used in freecad 0.20
2022-06-24 02:20:26 +02:00
marioalexis
ad0f1147f7 Part: Use PyObject_IsTrue in combination with conditional ternary operator 2022-06-22 19:50:03 -04:00
wmayer
a527daa4b3 Part: add Const attribute to several methods in TopoShapePy 2022-06-22 16:58:56 +02:00
Chris Hennes
cd32457b60 Part: Add ShapeFix.hxx to precompiled header 2022-06-21 12:59:56 -05:00
wmayer
b70d8d3781 Part: expose ShapeFix_FixSmallSolid to Python 2022-06-21 15:47:27 +02:00
wmayer
4c2946c8a4 Part: expose ShapeFix_FixSmallFace to Python 2022-06-21 15:47:10 +02:00
wmayer
6843a461e6 Part: expose ShapeFix_Wireframe to Python 2022-06-21 15:46:51 +02:00
wmayer
bbecc3f296 Part: expose ShapeFix_SplitTool to Python 2022-06-21 15:46:27 +02:00
wmayer
8c6ffc99e3 Part: expose ShapeFix_WireVertex to Python 2022-06-21 15:46:11 +02:00
wmayer
1ee1aee10e Part: expose ShapeFix_FreeBounds to Python 2022-06-21 15:45:55 +02:00
wmayer
125d5b6360 Part: expose ShapeFix_ShapeTolerance to Python 2022-06-21 15:45:36 +02:00
wmayer
a0eb2e9de7 Part: expose ShapeFix_FaceConnect to Python 2022-06-21 15:45:10 +02:00
wmayer
4b44c54cfa Part: expose ShapeFix_SplitCommonVertex to Python 2022-06-21 15:44:50 +02:00
wmayer
4d4adb932b Part: expose ShapeFix_EdgeConnect to Python 2022-06-21 15:44:30 +02:00
wmayer
74c75b86a0 Part: workaround for missing include in OCC >= 7.5 2022-06-21 15:44:12 +02:00
wmayer
6cfd7d21e8 Part: fix typos 2022-06-21 15:43:47 +02:00
wmayer
8d56879305 Part: expose ShapeFix_Solid to Python 2022-06-21 15:43:31 +02:00
wmayer
4089cbfbf2 Part: expose ShapeFix_Edge to Python 2022-06-21 15:43:13 +02:00
wmayer
ac421ffd0e Part: add convenience function to convert Placement into TopLoc_Location 2022-06-21 15:42:52 +02:00
wmayer
87db9dccb5 Part: expose ShapeFix_Shape to Python 2022-06-21 15:42:31 +02:00
wmayer
94f6279a67 Part: expose ShapeFix_Wire to Python 2022-06-21 15:41:44 +02:00
wmayer
da4b05fdcc Part: expose ShapeFix_Shell to Python 2022-06-21 15:39:41 +02:00
wmayer
b6cd635cc1 Part: expose ShapeFix and ShapeFix_Face to Python 2022-06-21 15:39:09 +02:00
wmayer
f3e941a382 Part: start to expose ShapeFix framework to Python 2022-06-21 15:34:55 +02:00
Uwe
9fcb98d9c6 Revert "remove unused python<3.6 code"
This reverts commit 0a6d271121.
2022-06-19 16:23:13 +02:00
andrea
0a6d271121 remove unused python<3.6 code 2022-06-19 15:33:44 +02:00
Uwe
bbcc8b2c5c [Part] remove unnecessary Boolean comparisons 2022-06-19 15:19:13 +02:00
wmayer
fbb5555f27 Part: do not expect a face to be infinite if meshing it has failed
See https://forum.freecadweb.org/viewtopic.php?p=601240#p601240
2022-06-11 13:01:15 +02:00
wmayer
f401cbe832 Part: in BRepOffsetAPI_MakeOffsetFix::MakeWire also consider the generated edges of the vertexes of the input shape 2022-06-08 13:02:07 +02:00
wmayer
30f8015e71 Part: expose ChFi2d_ChamferAPI to Python 2022-05-29 12:24:32 +02:00
wmayer
f94ab3ec84 Part: expose ChFi2d_AnaFilletAlgo to Python 2022-05-29 11:31:43 +02:00
wmayer
b47f8d2605 Part: move ChFi2d wrappers to own sub-directory 2022-05-29 11:05:55 +02:00
wmayer
b07be87677 Part: expose ChFi2d_FilletAPI to Python and move to ChFi2d module 2022-05-28 11:10:45 +02:00
wmayer
bd853e5ef2 Part: expose ChFi2d_FilletAlgo to Python 2022-05-28 10:37:04 +02:00
wmayer
b02705d79f Part: apply OCC's fix for ElSLib::ConeDN and write a unit test 2022-05-27 14:44:35 +02:00
Zheng, Lei
ee6f0d0ba9 Part: fix ruled surface transformation problem 2022-05-27 03:52:17 +02:00
mwganson
26e4a3345b Part: Link support -- replace TopoShape.getSubShape() with Part::Feature::getTopoShape(obj, elementname, true).getShape() in order to support use of App::Link sublinks. 2022-05-27 03:52:17 +02:00
wmayer
469c36e3cc Mod: handle removed headers in PCH files for OCC 7.6 2022-05-21 06:28:07 +02:00
wmayer
4fea37b3bc Part: std::unique_ptr is provided by the memory header 2022-05-12 17:52:52 +02:00
wmayer
5f0ad3864d Part: reorder headers in PreCompiled.h 2022-05-12 17:50:33 +02:00
wmayer
8c984359dd Part: LGTM: Multiplication result may overflow 'int' before it is converted to 'unsigned int'. 2022-05-11 10:03:53 +02:00
wmayer
d2253c7be4 Part: in TopoShape::transformGeometry convert OCC exception into Base exception
The conversion is needed because TopoShape::transformGeometry reimplements ComplexGeoData::transformGeometry and is called in the core system
2022-04-29 15:37:44 +02:00
wmayer
b22424ee9b Part: handle exception of makeGTransform in _makeTransform 2022-04-29 15:15:51 +02:00
wmayer
cb7d7d27a2 Part: adjust TopoShape::transformGShape() to reduce code duplication of TopoShape::makeGTransform
Revert changes of a96d356afb as otherwise there is no way to handle a failure in client code
2022-04-29 14:57:05 +02:00
wmayer
a96d356afb Part: handle OCC exception inside TopoShape::makeGTransform
For more details about the problems an unhandled exception will cause see: https://forum.freecadweb.org/viewtopic.php?f=3&t=61000
2022-04-27 18:39:55 +02:00
Zheng, Lei
3ef438eaf0 Fix mixed line endings 2022-04-26 12:52:55 -05:00