Commit Graph

625 Commits

Author SHA1 Message Date
Chris Hennes
952485dcbb Merge pull request #19907 from benj5378/getAttribute
Base: make getAttribute template
2025-05-12 10:39:55 -05:00
Benjamin Bræstrup Sayoc
2b1aec0041 Base: make getAttribute template 2025-05-09 15:54:57 +02:00
bofdahof
ba2c2ca5ad Console: rename PascalCase named methods to camelCase 2025-05-06 17:50:21 +02:00
Kacper Donat
4bd2cdeb2a Mesh: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Jacob Oursland
5c251e73ac python: apply const method annotations to impls. 2025-04-16 20:32:04 -07:00
Luz Paz
a8183e0b30 Mesh: Fix source typo
Modified so it wouldn't show up in codespell results.
2025-04-06 12:13:10 -05:00
Benjamin Nauck
cd1209e146 Mesh: Add #include <limits> where used 2025-03-31 23:51:52 +02:00
Benjamin Nauck
99bb999deb Mesh: Use std::numeric_limits and std::numbers instead of defines 2025-03-29 13:32:38 +01:00
Chris Hennes
1c3f643420 Mesh: Sanity-check old file format size 2025-03-22 07:15:15 +01:00
Chris Hennes
21c07cabc5 FreeCAD: Compiler warning fixes 2025-03-19 10:13:34 +01:00
tritao
cdab9c7837 CMake: Cleanup targets with transitive dependencies 2025-03-17 12:12:06 +00:00
bofdahof
477f9aa401 Mesh: apply std::ranges 2025-03-16 17:19:03 -05:00
Chris Hennes
1a2070c36f Merge pull request #19636 from kadet1090/color-in-base
Base: Move App::Color to Base
2025-03-02 16:36:40 -06:00
Benjamin Bræstrup Sayoc
ee1c73cd04 Build: suppress warnings from 3rd party libraries
Warnings from 3rd parties are not relevant and are only polluting the warning output. Marking these libraries as SYSTEM suppresses warning.

https://gcc.gnu.org/onlinedocs/cpp/Invocation.html#index-I
https://gcc.gnu.org/onlinedocs/cpp/System-Headers.html
2025-02-25 14:39:05 +00:00
Joao Matos
15076cb504 Core: Move PyCXX library to src/3rdParty. 2025-02-24 16:36:06 +00:00
Chris Hennes
22f267cc23 Mesh: Remove explicit C++17 requirement 2025-02-22 20:48:44 -06:00
Kacper Donat
13fbab9e42 Base: Move App::Color to Base
Every basic data type is stored in Base module, color is standing out as
one that does not. Moving it to Base opens possibilities to integrate it
better with the rest of FreeCAD.
2025-02-17 21:10:26 +01:00
Joao Matos
aace8f7bee CMake: Modernize build files using outdated Python variables. 2025-02-16 10:21:26 -06:00
tritao
80b299bb88 Base: Move zipios library to 3rdParty folder. 2025-02-14 13:08:28 -06:00
Chris Hennes
a3004c2c0a Merge pull request #19142 from hyarion/refactor/add-template-addobject
Add new addObject<T>() function
2025-02-11 09:42:47 -06:00
Chris Hennes
6ea90ba9af Merge pull request #18594 from Flast/performance/base/find_element
Base: Improved FindElement performance by reducing call of transcode
2025-02-10 14:33:49 -06:00
Benjamin Nauck
265b58c034 Mod: Use new addObject<T>(...) using regex 2025-02-10 18:35:38 +01:00
mwganson
2225e7c32f [Mesh Python] Mesh.show() returns python object, update documentation for Mesh.show(), Part.show(), and Points.show() 2025-02-03 18:27:21 +01:00
Benjamin Nauck
6f535f19fb Prefer to use BaseClass's isDerivedFrom<T> over non template or Base::Type's
Regex based changes, manually verified
2025-01-27 16:08:18 +01:00
Tobias Frost
460da406f8 spelling fixes (#18688)
* Fixes spelling of "Allow to" to "Allow one to"

and those variants:
Allows to -> Allows one to
allow to -> allow one to
allows to -> allows one to

* Fix "Let's -> Lets"

(and lower case variant.)

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

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

* Update src/3rdParty/salomesmesh/inc/MED_Wrapper.hxx

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Update src/Base/PyObjectBase.cpp
Update src/App/ExtensionContainer.h
Update src/App/PropertyContainer.h

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Use gerund in user-facing texts.

* Use gerund for two more user-facing strings.

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Update src/Mod/Fem/App/FemMeshShapeNetgenObject.cpp

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Update src/Mod/Fem/App/FemMeshShapeNetgenObject.cpp

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

* Update src/Mod/Fem/App/FemMeshShapeNetgenObject.cpp

Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>

---------

Co-authored-by: Tobias Frost <tobi@debian.org>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
2025-01-13 11:22:20 -06:00
Kohei Takahashi
7ae463f245 Base: Added helper macro for caching transcode-ed string literal 2024-12-26 17:16:45 +09:00
wmayer
9e021b7f6a Mesh: Fix linter warnings 2024-12-08 16:36:27 +01:00
wmayer
4440dd7aaf Mesh: Reduce time of importing ASCII PLY files by around 85 percent 2024-12-07 13:01:25 +01:00
wmayer
10dc08acb4 Mesh: Reduce time of importing binary PLY files by around 60 percent 2024-12-07 13:01:18 +01:00
wmayer
94fbf2d28c Mesh: Refactor ReaderPLY 2024-12-07 13:01:11 +01:00
wmayer
04ac24f41c Mesh: move PLY reader to own class 2024-12-07 13:01:04 +01:00
Chris Mayo
7aedf91a1c Remove MeshPy::coarsen() and code using GTS
FC_USE_GTS not used since before:
1162aaea88 ("Remove references to gts and ode", 2012-07-05)

GTSAlgos.h and GTSAlgos.cpp removed in:
db5c8f7db8 ("[Mesh] remove GTSAlgos", 2022-11-11)

MeshPy::coarsen() added not later than 2011 and never implemented.
2024-11-29 23:42:28 +01:00
wmayer
d6ae5d2d25 Mesh: Improve 3MF format to support files from 'Make World' 2024-11-28 19:36:58 +01:00
wmayer
8d418fe80a Mesh: Add comment explaining the workaround 2024-11-28 17:07:34 +01:00
wmayer
eac63c5c4d Mesh: Workaround to load 3mf files not supported by zipios library 2024-11-28 17:07:34 +01:00
Jacob Oursland
1ac989e8e3 Mesh: Add template type to WM4 TRational variables. 2024-11-26 11:10:13 -05:00
Jacob Oursland
03eb6bdac3 Mesh: move counter declaration to loop-local. 2024-11-26 11:10:13 -05:00
wmayer
fbd9eac848 Mesh: Fix linter warnings 2024-11-21 18:30:22 +01:00
wmayer
3c1bf8e864 Core: Extend Color API
* Fix issues with alpha value <> transparency
* Use type traits to convert between different color classes (fixes #14515)
2024-11-15 12:25:25 -05:00
huguesdpdn-aerospace
611bab3d6d PD: Xerces-C++ - Prepare for the latest version (backward compatible) 2024-09-08 20:31:25 -05:00
pre-commit-ci[bot]
09386be6a9 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2024-08-25 07:29:42 +00:00
wmayer
deea57fcb7 Mesh: Allow to measure distances with a mesh 2024-07-08 11:22:11 -05:00
Chris Hennes
5e47f6804f 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
wmayer
127f935711 Fix several compiler warnings
* -Wmaybe-uninitialized
* -Wunused-parameter
* -Wunused-variable
* -Wnonnull
* -Wstringop-truncation
* -Wstringop-overflow
2024-06-19 21:14:23 -05:00
wmayer
560cab6f31 clang/gcc: Add build option FREECAD_WARN_ERROR to force to make warnings into errors 2024-05-29 13:37:07 +02:00
wmayer
4263ab1937 C++: replace deprecated vsprintf and sprintf
With future C++ compilers the methods vsprintf and sprintf are declared as deprecated due to security issues.
They are replaced with the secure counterpart of the fmt library

Fixes the compiler warnings -Wdeprecated-declarations
2024-04-03 10:04:56 +02:00
wmayer
df4a517e32 Mesh: fix linter warnings 2024-03-30 00:21:58 +01:00
wmayer
c98d05b51d Mesh: remove problematic method MeshGrid::Rebuild(unsigned long, unsigned long)
and MeshGrid::CalculateGridLength(unsigned long, unsigned long)

For almost flat meshes CalculateGridLength may compute a grid with a huge amount of cells that allocates the whole RAM of the system while for an exactly flat mesh a grid with a sensible number of cells is computed.

Use the overloaded methods of MeshGrid::Rebuild(unsigned long) and MeshGrid::CalculateGridLength(unsigned long) instead
2024-03-30 00:21:58 +01:00
wmayer
971a698a38 Mesh: fixes #12798: Macro not recording mesh decimation 2024-03-16 09:41:18 +01:00
wmayer
479ad3487d Mesh: add unit tests for mesh export 2024-03-16 09:39:49 +01:00