* 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>
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.
This allows it to write more elegant code like:
auto ext = obj->getExtension<>(GroupExtension);
instead of
auto ext = dynamic_cast<GroupExtension*>(obj->getExtension(GroupExtension::getExtensionClassTypeId(), true, true));
* Part/Toponaming: tests for flushElementMap and resetElementMap
* Added test for resetElementMap()
* Added test for flushElementMap()
* restored ComplexGeoData::resetElementMap to RT fork
* modified TopoShape::resetElementMap to match the restored signature of ComplexGeoData::resetElementMap
* added checks in TopoShape::makeShapeWithElementMap to avoid segfaults
* added check in TopoShape::setElementComboName to avoid segfaults
* restored testFindSubShapesForSourceWithTypeAndIndex
* modified test saveDocFileWithNoElementMap to match the restored signature of ComplexGeoData::resetElementMap
* Part/Toponaming: tests for flushElementMap and resetElementMap
* Removed comments in ComplexGeoData::resetElementMap()
* Changed TopoShape::resetElementMap():: from virtual to override
* Removed comment in TopoShape::resetElementMap()
* Added comments about differences between main and RT fork
* Removed comment in test saveDocFileWithNoElementMap
* Updated expected test result in makeElementCompoundTwoShapesGeneratesMap
* Updated expected test result in resetElementMapTest
* Fixed typo in test flushElementMapTest
* Part/Toponaming: tests for flushElementMap and resetElementMap
* updated expected tests results after previous methods modifications
---------
Signed-off-by: CalligaroV <vincenzo.calligaro@gmail.com>
Addresses clang-tidy complaint: declaration 'Feature' is never referenced, but a declaration with the same name found in another namespace 'Part' [bugprone-forward-declaration-namespace]
* Update translations
* [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>