550 Commits

Author SHA1 Message Date
David Carter
db3701193b Material: Material API fixes
Corrects an issue in the API where a new material may not have a UUID.
Corrected the test case to reflect the changes and better document the
process.

Added a test case for material filters.
2024-05-20 10:43:02 -05:00
bgbsww
2657bbee4d Minor test tweaks, and small fixes to pass tests 2024-05-17 19:14:01 -05:00
bgbsww
7f4d7a20f1 Simplify offset tests 2024-05-17 08:10:43 -04:00
ppphp
4cd8b2ad15 fix some warnings: cmake string quotes and float mark (#13909)
Co-authored-by: liukaiwen <kaiwen.liu@zixel.cn>
2024-05-13 11:55:59 -04:00
bgbsww
84ae6b9b7b Toponaming: bring in missing code fragments in Part 2024-05-12 23:08:06 -04:00
bgbsww
45c4aefaae Rework makeElementChamfer to match current parms, and add PartDesign code for Chamfers 2024-05-12 13:28:20 -05:00
bgbsww
71d96bccac Fix tests, slip in TNP defense 2024-05-07 13:42:21 -04:00
Chris Hennes
0af3ee4851 Merge pull request #13727 from wwmayer/fix_warnings
Fix compiler warnings
2024-05-01 10:29:21 -05:00
Chris Hennes
d0a4cb9a33 Tests: Disable DocumentObserverTest pending refactor
The 'normalized' test fails on Windows Conda, and the overall test class needs work.
2024-05-01 10:28:08 -05:00
wmayer
56f84c8042 Fix various compiler warnings:
* fix -Wunused-parameter
* fix -Wunused-function
* fix -Wunused-private-field
* fix -Wunused-variable
* fix -Winconsistent-missing-override
2024-04-30 16:59:31 +02:00
sliptonic
680792030f Merge pull request #13650 from chennes/firstStartWidget
Start: First start widget
2024-04-29 11:42:50 -05:00
CalligaroV
c3b0fcdccf App/Toponaming: import SubObjectT dependencies for SubShapeBinder
* Fixed a mistake made in getSubObjectListFlatten()
 * Applied modifications according to review comments

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-04-29 11:42:18 -05:00
CalligaroV
243e20248d App/Toponaming: import SubObjectT dependencies for SubShapeBinder
* Formatted and refactored code imported for the DocumentObject class
 * Formatted and refactored code imported for the SubObjectT class

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-04-29 11:42:18 -05:00
CalligaroV
ceb5478a37 App/Toponaming: import SubObjectT dependencies for SubShapeBinder
* Added test for SubObjectT::hasSubObject()
 * Added test for SubObjectT::hasSubElement()
 * Added test for SubObjectT::normalize()
 * Added test for SubObjectT::normalized()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-04-29 11:42:18 -05:00
CalligaroV
16bdedda2f App/Toponaming: import SubObjectT dependencies for SubShapeBinder
* Added test for DocumentObject::getSubObjectList()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-04-29 11:42:18 -05:00
Chris Hennes
3a9547c235 Start: Create 'First Start' screen 2024-04-28 12:57:00 -05:00
Chris Hennes
2aad8ab334 Tests: Ensure MSVC has M_PI
Somewhere in the test suite GTest is including cmath (or something related) and not declaring this, so later includes of it by the tests are being ignored.
2024-04-28 12:56:21 -05:00
Chris Hennes
2326d3ce4c Merge pull request #13495 from wwmayer/material_colors
Support to customize all material colors
2024-04-22 11:09:05 -05:00
farley
1f9f39fa28 Core: Fix searching model tree does not work for numbers #12723 (#13377)
* Fix problem #12723: Searching model tree does not work for numbers
- Modify ExpressionTokenizer::perform
- Add tests tokenizeCompletion
2024-04-22 10:55:42 -05:00
wmayer
d075a5106f Tests: add unit tests for Color class 2024-04-19 13:07:54 +02:00
wmayer
6e55cd1c3a Base: Fix possible race condition when restarting the application
When restarting the application (e.g. after installing an addon) the application will be closed and a new instance will be launched. Now it can happen that the old instance is still busy writing the config files to disk while the new instance wants to read them in. At this time it's possible that a config file is in an invalid state so that the new instance will ignore it but then starts with a default configuration.
Later when closing the new instance the config files will be overwritten and destroy the user's original settings.

By using a lock file this race condition will be avoided. It uses a timeout of 1 second that should be enough for the old instance to write the files to disk.
2024-04-18 23:07:58 -05:00
wmayer
757d564a7c Tests: add more unit tests for ParameterGrp 2024-04-17 21:45:26 +02:00
bgbsww
a4dd600ec6 Toponaming/Part: Fix hashing, hasher mismatches, and adjust test results to match 2024-04-15 23:00:27 -05:00
Chris Hennes
0056038ff4 Toponaming/Base: Add ASCII stream output class (#13209)
* Toponaming/Base: Add ASCII stream output class

* Remove the ref from std::string

* Update based on review comments
2024-04-15 17:58:11 +02:00
bgbsww
6291078939 Toponaming/Part: Initialize the hasher so that it operates 2024-04-13 22:41:57 -05:00
wmayer
f1c7d388dd Tests: add Parameter tests 2024-04-12 23:37:56 +02:00
bgbsww
c9d8bdf13d Toponaming/Part: Add deprecation comments, clean up code 2024-04-09 21:17:08 -04:00
CalligaroV
6779c912bf App/Toponaming: GeoFeature - fixes #13009 - fixes #13248
* Restored previous logic of GeoFeature::getElementName()
 * Added precompiler directive to use the old logic if FC_USE_TNP_FIX isn't defined, otherwise use the new logic
 * Reworked SketchObjectTest::getElementName() as a consequence of the previous points

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-04-04 22:09:12 -05:00
David Carter
495a96a0f5 Material: Material appearance
Uses new material system for appearance

Each feature object now has a property called ShapeMaterial that
describes its physical properties. If it has a shape, it has a
material.

The ShapeColor attribute is replaced by a ShapeAppearance attribute.
This is a material list that describes all appearance properties, not
just diffuse color. As a list in can be used for all elements of a
shape, such as edges and faces.

A new widget is provided to allow the user to select materials in a
consistent fashion. It can also launch the material editor with its
more advanced capabilities.
2024-04-04 07:39:58 -05:00
wmayer
d92267c6a7 Fix several compiler warnings
* fix -Winconsistent-missing-override
* fix -Wunused-but-set-variable
* fix -Wunused-parameter
* fix -Wunused-lambda-capture
* fix -Wunused-private-field
* fix -Wpessimizing-move
2024-04-03 10:04:56 +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
David Carter
57c66a96a6 Material: Add thermal reference temperature (#13026)
* Material: Add thermal reference temperature

Fixes #13019

Adds the property 'Thermal Expansion Reference Temperature' to
the Thermal properties

* Fix delegates
2024-04-01 11:00:45 -05:00
wmayer
67ba197d9c Test: add unit tests for mesh grid creation 2024-03-30 00:21:58 +01:00
Chris Hennes
ada6c62e14 Merge pull request #12535 from CalligaroV/toponaming-WireJoiner
Part/Toponaming: Transfer WireJoiner
2024-03-28 09:17:49 -05:00
bgbsww
9ddc4f1372 Toponaming/Part: Fix elementMatch to use full clause and be deterministic 2024-03-26 23:01:54 -05:00
CalligaroV
3a53e89921 Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::IsDeleted()
 * Fixed a typo in test for WireJoiner::Modified()
 * Fixed a typo in test for WireJoiner::Generated()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:47 +01:00
CalligaroV
1984846af4 Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::Generated()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:47 +01:00
CalligaroV
522b5836f9 Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::Modified()
 * Fixed typo in test for WireJoiner::getResultWires()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:47 +01:00
CalligaroV
ca0f58c389 Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::Build()
 * Fixed typo in test for WireJoiner::getResultWires()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:47 +01:00
CalligaroV
8c757a9fd1 Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::getResultWires()
 * Replaced references in test for WireJoiner::getOpenWires() with more correct references
 * Added a comment in WireJoiner::WireJoinerP::getResultWires() to better explain how it works

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:47 +01:00
CalligaroV
fa674df945 Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::getOpenWires()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:47 +01:00
CalligaroV
2b2f69f60f Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::setTolerance()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:47 +01:00
CalligaroV
12fee40c6a Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::setMergeEdges()
 * Changed position of some comments

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:47 +01:00
CalligaroV
86ccf2a4ed Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::setSplitEdges()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:47 +01:00
CalligaroV
374ed64c1f Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::setTightBound()
 * Minor modifications and typo

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:46 +01:00
CalligaroV
fb0e7dad14 Part/Toponaming: Transfer WireJoiner
* Added test for WireJoiner::setOutline()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:46 +01:00
CalligaroV
ca90a5bd9b Part/Toponaming: Transfer WireJoiner
* Created dedicated tests file for WireJoiner
 * Added test for WireJoiner::addShape()

Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
2024-03-26 09:57:46 +01:00
Chris Hennes
148fd37c5a Merge pull request #13096 from bgbsww/bgbsww-toponamingComplexGeoData
Toponaming/Part Bring in Python layer for ComplexGeoData
2024-03-25 23:20:52 -05:00
bgbsww
df381e0a21 Clean and test ComplexGeoData python interface 2024-03-25 21:52:37 -04:00
bgbsww
55acedb83d Clean, enable disabled element map code in sketcher, add tests 2024-03-25 21:51:41 -04:00