Commit Graph

625 Commits

Author SHA1 Message Date
Chris Hennes
f5806841b6 Merge pull request #19907 from benj5378/getAttribute
Base: make getAttribute template
2025-05-12 10:39:55 -05:00
Benjamin Bræstrup Sayoc
492b8312b3 Base: make getAttribute template 2025-05-09 15:54:57 +02:00
bofdahof
998f4e4d45 Console: rename PascalCase named methods to camelCase 2025-05-06 17:50:21 +02:00
Kacper Donat
81c772938e Mesh: Use freecad_cast whenever possible 2025-04-26 14:23:25 +02:00
Jacob Oursland
5b81cd741a python: apply const method annotations to impls. 2025-04-16 20:32:04 -07:00
Luz Paz
79008331b3 Mesh: Fix source typo
Modified so it wouldn't show up in codespell results.
2025-04-06 12:13:10 -05:00
Benjamin Nauck
368f1fc296 Mesh: Add #include <limits> where used 2025-03-31 23:51:52 +02:00
Benjamin Nauck
a9c66476f8 Mesh: Use std::numeric_limits and std::numbers instead of defines 2025-03-29 13:32:38 +01:00
Chris Hennes
eb86151307 Mesh: Sanity-check old file format size 2025-03-22 07:15:15 +01:00
Chris Hennes
64d658e38a FreeCAD: Compiler warning fixes 2025-03-19 10:13:34 +01:00
tritao
6c2c6847eb CMake: Cleanup targets with transitive dependencies 2025-03-17 12:12:06 +00:00
bofdahof
8b31b5c92d Mesh: apply std::ranges 2025-03-16 17:19:03 -05:00
Chris Hennes
7f1c43a335 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
755229df23 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
cc6ffb44de Core: Move PyCXX library to src/3rdParty. 2025-02-24 16:36:06 +00:00
Chris Hennes
99b088e94e Mesh: Remove explicit C++17 requirement 2025-02-22 20:48:44 -06:00
Kacper Donat
a72a63232a 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
27ebc68a11 CMake: Modernize build files using outdated Python variables. 2025-02-16 10:21:26 -06:00
tritao
9636068460 Base: Move zipios library to 3rdParty folder. 2025-02-14 13:08:28 -06:00
Chris Hennes
a4901e2ccb 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
516595fbce 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
a1c5767643 Mod: Use new addObject<T>(...) using regex 2025-02-10 18:35:38 +01:00
mwganson
a85756b1c9 [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
dd6aa9f3c7 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
7a5a3d1ffc 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
f032b44f44 Base: Added helper macro for caching transcode-ed string literal 2024-12-26 17:16:45 +09:00
wmayer
173df9447a Mesh: Fix linter warnings 2024-12-08 16:36:27 +01:00
wmayer
3cb80f9307 Mesh: Reduce time of importing ASCII PLY files by around 85 percent 2024-12-07 13:01:25 +01:00
wmayer
6270d7657d Mesh: Reduce time of importing binary PLY files by around 60 percent 2024-12-07 13:01:18 +01:00
wmayer
2437cd6de0 Mesh: Refactor ReaderPLY 2024-12-07 13:01:11 +01:00
wmayer
439abaf81f Mesh: move PLY reader to own class 2024-12-07 13:01:04 +01:00
Chris Mayo
795c4df1c3 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:
d1431f405c ("[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
c534e655f9 Mesh: Improve 3MF format to support files from 'Make World' 2024-11-28 19:36:58 +01:00
wmayer
d795acc378 Mesh: Add comment explaining the workaround 2024-11-28 17:07:34 +01:00
wmayer
8f18cfaf3a Mesh: Workaround to load 3mf files not supported by zipios library 2024-11-28 17:07:34 +01:00
Jacob Oursland
d7e8cc8a54 Mesh: Add template type to WM4 TRational variables. 2024-11-26 11:10:13 -05:00
Jacob Oursland
ae89309329 Mesh: move counter declaration to loop-local. 2024-11-26 11:10:13 -05:00
wmayer
7a2bfb7370 Mesh: Fix linter warnings 2024-11-21 18:30:22 +01:00
wmayer
ffa3fa5b5a 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
3795904a00 PD: Xerces-C++ - Prepare for the latest version (backward compatible) 2024-09-08 20:31:25 -05:00
pre-commit-ci[bot]
9d949c60aa [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
88fb44900e Mesh: Allow to measure distances with a mesh 2024-07-08 11:22:11 -05: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
wmayer
f6e67a009d Fix several compiler warnings
* -Wmaybe-uninitialized
* -Wunused-parameter
* -Wunused-variable
* -Wnonnull
* -Wstringop-truncation
* -Wstringop-overflow
2024-06-19 21:14:23 -05:00
wmayer
4185605d5e clang/gcc: Add build option FREECAD_WARN_ERROR to force to make warnings into errors 2024-05-29 13:37:07 +02:00
wmayer
0b08ea3368 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
82e1091c19 Mesh: fix linter warnings 2024-03-30 00:21:58 +01:00
wmayer
a79eef0a39 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
af85689cff Mesh: fixes #12798: Macro not recording mesh decimation 2024-03-16 09:41:18 +01:00
wmayer
042d3a63e7 Mesh: add unit tests for mesh export 2024-03-16 09:39:49 +01:00