Commit Graph

137 Commits

Author SHA1 Message Date
bgbsww e75b5db8c7 Toponaming/Part: remove senseless voids 2024-03-27 08:49:51 -04:00
Zheng, Lei 4f7cc3d5d7 Toponaming/Part: move Toposhapepy get methods in 2024-03-25 21:23:41 -04:00
bgbsww 3df25821e5 Toposhape/Part:: Fix, relocate and test element methods in ComplexGeoData and TopoShape 2024-03-07 23:00:48 -05:00
Zheng, Lei ae5c0a6d9c Toposhape/Part: Bring in element methods in FeaturePart, TopoShapePy::Init and TopoShape::GetPyObject 2024-03-07 13:15:40 -05:00
wmayer cc8452a545 Part: use of ShapeMapHasher for code simplification 2024-02-12 12:02:17 -06:00
bgbsww 8abd09398a Add support for OCCT 7.8.0 (#11909) 2024-01-09 19:47:25 -06:00
Chris Hennes fa65438556 Core: Enable compiling with MSVC /permissive- (#11014)
* Base: Fixes for MSVC permissive-

* App: Fixes for MSVC permissive-

* Gui: Fixes for MSVC permissive-

* Main: Fixes for MSVC permissive-

* Fem: Fixes for MSVC permissive-

* Material: Fixes for MSVC permissive-

* Part: Fixes for MSVC permissive-

* Mesh: Fixes for MSVC permissive-

* Points: Fixes for MSVC permissive-

* Robot: Fixes for MSVC permissive-

* TechDraw: Fixes for MSVC permissive-

* Path: Fixes for MSVC permissive-

* Core; Changes per review comments

* TD: Revision from wandererfan

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

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

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2023-11-27 17:37:29 +01:00
wmayer c18ecb1a9b Part: fix TopoShapePy::optimalBoundingBox 2023-11-24 15:06:00 +01:00
wmayer 83d4080fe8 App: fixes #10460: App::PropertyPythonObject is not saving data
Since Py3.11 the methods names __setstate__ and __getstate__ conflict with the method names added to the object class.
Thus rename them to 'loads' and 'dumps'
2023-09-24 10:56:35 -05:00
Chris Hennes 0e8be10b90 Part: Wrap PyArg_ParseTupleAndKeywords 2023-08-25 15:34:26 -05:00
wmayer 312975edba Part: modernize C++: use range-based for loop 2023-08-16 21:56:32 -05:00
Andrew b916c387fb Clean Mod/Part. remove old OCC <7.3 and #if 0 code. 2023-03-26 21:17:18 +02:00
Abdullah Tahiri c604d1741d Console/ILogger: Refactor and extension
=======================================

Refactor:
 - Substitute the use of variadic templates with parameter packs.
 - Use recently incorporated external library "fmt" to handle printf like formating.
 - Extensive cleaning of pragmas and unnecessary forward declarations.
 - Parameter packs and libfmt provide a much stronger type checking now, so
   conversions that are by standard implicit as bool to int need an explicit static_cast
   to avoid compilation warnings.

Extension:
 - Include a notifier field, so that the originator of the message can be provided. E.g. Document#DocumentObject
 - Include a new type of message called CriticalMessage, this message is intended to have
   special behaviour in the future. Namely, it will be used to notify forward compatilibity issues.
   It will be used to substitute the current signal/slot mechanism.
 - Include two new types of messages for user notifications (Notification and TranslatedNotification). This messages
   will be use to convey UI notifications intended for the user (such as non-intrusive message about the usage of a tool). There
   are two versions to mark whether the string provided as a message is already translated or not. When using the console system for
   notifications, these notifications may originate from the App or the Gui. In the former, it is generally the case that the strings
   of messages are not (yet) translated (but they can be marked with QT_TRANSLATE_NOOP). In the latter, often the messages to be provided
   are already translated.

Python support for CriticalMessage, Notification and TranslatedNofification, including shortcuts:

    Crt = FreeCAD.Console.PrintCritical
    Ntf = FreeCAD.Console.PrintNotification
    Tnf = FreeCAD.Console.PrintTranslatedNotification
2023-03-07 16:13:23 +01:00
Uwe 43463077f1 [skip ci] [Part] TopoShapePyImp.cpp: clang formatting fixes 2022-11-22 03:09:43 +01:00
wmayer 09dccb70c7 Part: [skip ci] fix some warnings reported by GH actions 2022-11-19 15:57:54 +01:00
marioalexis f0deeaed00 Part: Fix endless-loop in TopoShapePy::proximity function 2022-11-19 15:31:13 +01:00
wmayer 2462f4c7a0 App: move from float to double for accuracy parameter, add a virtual method to determine a default accuracy 2022-09-15 09:52:14 +02:00
wmayer c6a208bb18 Part: modernize C++: replace 'typedef' with 'using' 2022-08-29 19:31:50 +02:00
wmayer 5014bab534 Mod: replace std::ifstream/std::ofstream with Base::ifstream/Base::ofstream 2022-08-21 12:46:53 +02:00
berniev da9ebc572f Mod: redundant void 2 2022-08-08 10:27:50 +02:00
wmayer 639ff927de Part: fix TopoShape.isInside() for faces 2022-07-22 15:32:30 +02:00
wmayer 8ae3185e3b Part: replace PyObject_IsTrue with Base::asBoolean 2022-07-16 13:31:10 +02:00
Uwe a54c2ed21b [Part] Arc*: remove unneeded includes
- also sort includes
2022-07-09 14:38:13 +02:00
Uwe 8e9b359928 [Part] Topo*: remove unneeded includes
- also sort includes
2022-07-03 17:41:42 +02:00
andrea 93525ff7eb removed references to OCC<7 2022-06-25 14:29:24 +02:00
marioalexis ad0f1147f7 Part: Use PyObject_IsTrue in combination with conditional ternary operator 2022-06-22 19:50:03 -04: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
Zheng, Lei 3ef438eaf0 Fix mixed line endings 2022-04-26 12:52:55 -05:00
marioalexis 22fe0d62fd Part: Add functions to replace indentical code structure in TopoShapePyImp.cpp 2022-04-23 16:40:48 +02:00
marioalexis 817063290a Part: Clean up code in TopoShapePyImp.cpp 2022-04-23 16:40:48 +02:00
marioalexis c01dfad130 Part: Fix getElement method in Python TopoShape class 2022-04-15 17:38:17 +02:00
Chris Hennes 0a65575c2c Part: PR6497 move return statement to new line 2022-03-29 12:37:00 -05:00
wmayer 068c0e5a98 Part: modernize C++11
* use nullptr
2022-03-23 19:26:14 +01:00
wmayer 9160f06e1c Base: rename BaseExceptionFreeCADError to PyExc_FC_GeneralError 2022-03-17 14:45:48 +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 95f583a677 Part: fix typos in make* functions 2022-02-16 12:48:02 +01:00
wmayer 398381c16e Part: for vertex, edge, wire use BRepExtrema_DistShapeShape to check whether point is inside 2021-10-23 16:39:28 +02:00
wmayer 745f8e044d Part: for faster execution make sewing optional when creating shape from mesh 2021-10-01 19:29:49 +02:00
luz paz c69f245d6f Part: remove py2 code 2021-04-25 11:29:35 +02:00
tomate44 8b0c58d1b4 Part: Shape.ReflectLines: add 2D/3D, visibility and EdgeType options 2021-04-18 08:26:26 +02:00
marioalexis 4c323a6325 Part: Crash when calling SubShapes of empty shape from Python 2021-01-18 19:47:35 +01:00
wmayer c276139f19 Part: [skip ci] add TopoShape::isInfinite 2020-12-19 16:07:00 +01:00
wmayer aec9d5f07a Py: fix memory leaks by incorrect use of PyList_Append 2020-12-13 16:30:04 +01:00
wmayer 13963592f4 Part: [skip ci] fix crash when trying to scale null shape 2020-10-09 08:31:48 +02:00
wmayer da6cdb94a1 Part: add method to return a reversed shape 2020-09-25 15:59:08 +02:00
luz.paz 53bb216b57 Part: [skip ci] fix header uniformity
This PR fixes header uniformity across all Part WB files
2019-12-22 00:59:47 +01:00
wmayer 6af98e080f Part: [skip ci] fix two little copy&paste errors 2019-12-17 11:04:13 +01:00
DeepSOIC cbe19e396b Part: fixup (to make gcc happy) 2019-12-17 10:52:28 +01:00
DeepSOIC 693130d860 Part: fix memory leak in distToShape
https://forum.freecadweb.org/viewtopic.php?f=10&t=41620
2019-12-17 10:52:20 +01:00
wmayer 83ecb8a5ec set default deflection of 0.01 when exporting shape as STL 2019-11-29 13:46:30 +01:00