Commit Graph

154 Commits

Author SHA1 Message Date
wmayer
14cd061809 Part: Use Base::toRadians to convert degree to radian 2024-10-22 22:37:01 -05:00
bgbsww
ecf7e51ab3 Toponaming: Remove all FC_USE_TNP_FIX protected old code 2024-08-26 11:12:48 -05:00
Zheng, Lei
f6494bdf05 Toponaming: Bring in composite shapes for findSubshapesWithSharedVertex ( searchSubShape ) 2024-07-22 12:51:25 -04:00
shai
b08714116c Fix python shape setElement function. Partially fixes #15095 2024-07-04 11:48:44 +03:00
Chris Hennes
d01ce32a1f Update for LibPack3 (#10337)
* cMake: Add base support for LibPack3

Minor changes to FreeCAD source code to support compiling with Qt 6.5 on MSVC,
and changes to cMake setup to support the new Libpack.

* NETGENPlugin: Fix compilation with MSVC and OCCT 7.8

* Material: Switch to Wrapped_ParseTupleAndKeywords for /fpermissive- on MSVC

* Base: Prevent accidental definition of MIN and MAX by MSVC

* cMake: Prevent accidentally finding an old LibPack

* Material: Wrap another ParseTuple call

* OCCT: Modify includes for 7.8.x

* Part: Change TNP code to use Wrapped_ParseTupleAndArgs

* Spreadsheet: Workaround for MSVC macro pollution

* Mesh: Workaround for MSVC macro pollution

* Base: Remove extra MSVC flag (moved to CMake)

* Tests: Fix compiling with /permissive-

* FEM: Fix Qt warnings about duplicate element names

* cMake: Ensure major version numbers are set

* Address review comments.

* cMake: Further tweaks for LibPack3

* cMake: Modify specification of compiler flags for MSVC

* Main: Remove QtQuick testing code

* cmake: Find Boost before SMESH (which uses it)

* Fixes for LibPack2

* cMake: Another try at importinhg VTK cleanly
2024-06-24 18:25:05 +02:00
bgbsww
45c4aefaae Rework makeElementChamfer to match current parms, and add PartDesign code for Chamfers 2024-05-12 13:28:20 -05:00
tomate44
1a2e922dce Part: fix shape projection of complex BSpline curves 2024-04-19 20:47:51 +02:00
bgbsww
a88e7baff5 TopoShape/Part: Bug fixes; pass Hasher parms, OCCT 7.8 compatibility, ElementMaps correct item count 2024-04-14 13:56:07 -04:00
Chris Hennes
8a6bb8884b Merge pull request #13196 from bgbsww/bgbsww-toponamingCompSolidPyImp
Toponaming/Part move in PyImps
2024-04-01 11:30:44 -05:00
bgbsww
c8d54181d4 Add Tests 2024-03-31 09:32:06 -04:00
Zheng, Lei
75c78369c7 Toponaming/Part: move in remaining ifdef methods and the new TopoShapePy methods 2024-03-28 13:09:14 -04:00
Zheng, Lei
401b03bdff Toponaming/Part: move TopoShapePyImp ifdef methods in 2024-03-28 13:09:14 -04:00
bgbsww
b241c0d4e6 Toponaming/Part: Rework and clean python interface and add tests 2024-03-28 12:47:33 -04:00
Chris Hennes
a84255dde8 Merge pull request #13156 from bgbsww/bgbsww-toponamingTopoShapePyImp2
Toponaming/Part: move ToposhapePyImp get methods into place
2024-03-28 09:18:56 -05:00
Zheng, Lei
8f5394f2f2 Toponaming/Part: move Toposhapepy get methods in 2024-03-28 09:01:31 -04:00
tomate44
d2f43e0d2c TopoShapePy: enable multithreading in function distToShape 2024-03-28 11:00:27 +01:00
tomate44
5603c697d0 TopoShapePy: add optional tolerance to function distToShape 2024-03-28 11:00:27 +01:00
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