From 21aee496ef7c48477fc42faed1f8d0cc0c885cf9 Mon Sep 17 00:00:00 2001 From: marioalexis Date: Sat, 11 Mar 2023 20:39:26 -0300 Subject: [PATCH] Fem: Remove property name comparison --- src/Mod/Fem/Gui/ViewProviderFemConstraintBearing.cpp | 6 +++--- src/Mod/Fem/Gui/ViewProviderFemConstraintContact.cpp | 2 +- .../Fem/Gui/ViewProviderFemConstraintDisplacement.cpp | 2 +- src/Mod/Fem/Gui/ViewProviderFemConstraintFixed.cpp | 2 +- .../Fem/Gui/ViewProviderFemConstraintFluidBoundary.cpp | 9 +++++---- src/Mod/Fem/Gui/ViewProviderFemConstraintForce.cpp | 5 +++-- src/Mod/Fem/Gui/ViewProviderFemConstraintGear.cpp | 6 +++--- src/Mod/Fem/Gui/ViewProviderFemConstraintHeatflux.cpp | 2 +- .../Fem/Gui/ViewProviderFemConstraintPlaneRotation.cpp | 2 +- src/Mod/Fem/Gui/ViewProviderFemConstraintPressure.cpp | 2 +- src/Mod/Fem/Gui/ViewProviderFemConstraintPulley.cpp | 10 ++++------ src/Mod/Fem/Gui/ViewProviderFemConstraintSpring.cpp | 2 +- .../Fem/Gui/ViewProviderFemConstraintTemperature.cpp | 2 +- src/Mod/Fem/Gui/ViewProviderFemConstraintTransform.cpp | 2 +- src/Mod/Fem/Gui/ViewProviderFemPostObject.cpp | 3 ++- src/Mod/Fem/Gui/ViewProviderFemPostPipeline.cpp | 4 ++-- 16 files changed, 31 insertions(+), 30 deletions(-) diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintBearing.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintBearing.cpp index bb7bf6b7d0..d8a85a0525 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintBearing.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintBearing.cpp @@ -108,10 +108,10 @@ void ViewProviderFemConstraintBearing::updateData(const App::Property* prop) // Gets called whenever a property of the attached object changes Fem::ConstraintBearing *pcConstraint = static_cast(this->getObject()); - if (strcmp(prop->getName(),"References") == 0) + if (prop == &pcConstraint->References) Base::Console().Error("\n"); // enable a breakpoint here - if (strcmp(prop->getName(),"BasePoint") == 0) { + if (prop == &pcConstraint->BasePoint) { // Remove and recreate the symbol Gui::coinRemoveAllChildren(pShapeSep); @@ -128,7 +128,7 @@ void ViewProviderFemConstraintBearing::updateData(const App::Property* prop) createPlacement(pShapeSep, b, rot); pShapeSep->addChild( createFixed(radius / 2, radius / 2 * 1.5, pcConstraint->AxialFree.getValue())); - } else if (strcmp(prop->getName(),"AxialFree") == 0) { + } else if (prop == &pcConstraint->AxialFree) { if (pShapeSep->getNumChildren() > 0) { // Change the symbol Base::Vector3d normal = pcConstraint->NormalDirection.getValue(); diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintContact.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintContact.cpp index 4f18755a96..fde96d0528 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintContact.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintContact.cpp @@ -104,7 +104,7 @@ void ViewProviderFemConstraintContact::updateData(const App::Property* prop) float scaledheight = HEIGHT * pcConstraint->Scale.getValue(); float scaledwidth = WIDTH * pcConstraint->Scale.getValue(); - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); const std::vector& normals = pcConstraint->Normals.getValues(); if (points.size() != normals.size()) diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintDisplacement.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintDisplacement.cpp index 4ee6713b58..0f7c86622d 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintDisplacement.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintDisplacement.cpp @@ -144,7 +144,7 @@ void ViewProviderFemConstraintDisplacement::updateData(const App::Property* prop } #endif - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); const std::vector& normals = pcConstraint->Normals.getValues(); if (points.size() != normals.size()) diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintFixed.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintFixed.cpp index b6c0b3a959..27dd430773 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintFixed.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintFixed.cpp @@ -124,7 +124,7 @@ void ViewProviderFemConstraintFixed::updateData(const App::Property* prop) } #endif - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); const std::vector& normals = pcConstraint->Normals.getValues(); if (points.size() != normals.size()) diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintFluidBoundary.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintFluidBoundary.cpp index 3eedbb68b1..7006c96ee6 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintFluidBoundary.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintFluidBoundary.cpp @@ -122,7 +122,7 @@ void ViewProviderFemConstraintFluidBoundary::updateData(const App::Property* pro float scaledlength = ARROWLENGTH * pcConstraint->Scale.getValue(); std::string boundaryType = pcConstraint->BoundaryType.getValueAsString(); - if (strcmp(prop->getName(), "BoundaryType") == 0) { + if (prop == &pcConstraint->BoundaryType) { if (boundaryType == "wall") FaceColor.setValue(0.0, 1.0, 1.0); else if (boundaryType == "interface") @@ -147,7 +147,7 @@ void ViewProviderFemConstraintFluidBoundary::updateData(const App::Property* pro } #endif - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); #ifdef USE_MULTIPLE_COPY @@ -191,7 +191,8 @@ void ViewProviderFemConstraintFluidBoundary::updateData(const App::Property* pro cp->matrix.finishEditing(); #endif } - else if (strcmp(prop->getName(),"DirectionVector") == 0) { // Note: "Reversed" also triggers "DirectionVector" + else if (prop == &pcConstraint->DirectionVector) { + // Note: "Reversed" also triggers "DirectionVector" // Re-orient all arrows Base::Vector3d normal = pcConstraint->NormalDirection.getValue(); Base::Vector3d forceDirection = pcConstraint->DirectionVector.getValue(); @@ -247,7 +248,7 @@ void ViewProviderFemConstraintFluidBoundary::updateData(const App::Property* pro } #endif - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); const std::vector& normals = pcConstraint->Normals.getValues(); if (points.size() != normals.size()) diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintForce.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintForce.cpp index 6ba0924809..2772ac94e4 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintForce.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintForce.cpp @@ -126,7 +126,7 @@ void ViewProviderFemConstraintForce::updateData(const App::Property* prop) } #endif - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); #ifdef USE_MULTIPLE_COPY @@ -171,7 +171,8 @@ void ViewProviderFemConstraintForce::updateData(const App::Property* prop) cp->matrix.finishEditing(); #endif } - else if (strcmp(prop->getName(),"DirectionVector") == 0) { // Note: "Reversed" also triggers "DirectionVector" + else if (prop == &pcConstraint->DirectionVector) { + // Note: "Reversed" also triggers "DirectionVector" // Re-orient all arrows Base::Vector3d normal = pcConstraint->NormalDirection.getValue(); Base::Vector3d forceDirection = pcConstraint->DirectionVector.getValue(); diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintGear.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintGear.cpp index 594804cbac..baa3f53062 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintGear.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintGear.cpp @@ -110,7 +110,7 @@ void ViewProviderFemConstraintGear::updateData(const App::Property* prop) Fem::ConstraintGear* pcConstraint = static_cast(this->getObject()); // Gets called whenever a property of the attached object changes - if (strcmp(prop->getName(),"BasePoint") == 0) { + if (prop == &pcConstraint->BasePoint) { if (pcConstraint->Height.getValue() > Precision::Confusion()) { // Remove and recreate the symbol Gui::coinRemoveAllChildren(pShapeSep); @@ -136,7 +136,7 @@ void ViewProviderFemConstraintGear::updateData(const App::Property* prop) createPlacement(pShapeSep, SbVec3f(dia/2 * sin(angle), 0, dia/2 * cos(angle)), SbRotation(ax, dir)); pShapeSep->addChild(createArrow(dia/2, dia/8)); } - } else if (strcmp(prop->getName(),"Diameter") == 0) { + } else if (prop == &pcConstraint->Diameter) { if (pShapeSep->getNumChildren() > 0) { // Change the symbol Base::Vector3d axis = pcConstraint->Axis.getValue(); @@ -158,7 +158,7 @@ void ViewProviderFemConstraintGear::updateData(const App::Property* prop) sep = static_cast(pShapeSep->getChild(5)); updateArrow(sep, 0, dia/2, dia/8); } - } else if ((strcmp(prop->getName(),"DirectionVector") == 0) || (strcmp(prop->getName(),"ForceAngle") == 0)) { + } else if ((prop == &pcConstraint->DirectionVector) || (prop == &pcConstraint->ForceAngle)) { // Note: "Reversed" also triggers "DirectionVector" if (pShapeSep->getNumChildren() > 0) { // Re-orient the symbol diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintHeatflux.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintHeatflux.cpp index e2462035f8..203eb59e55 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintHeatflux.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintHeatflux.cpp @@ -105,7 +105,7 @@ void ViewProviderFemConstraintHeatflux::updateData(const App::Property* prop) // //float facetemp = pcConstraint->FaceTemp.getValue(); //float filmcoef = pcConstraint->FilmCoef.getValue(); - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); const std::vector& normals = pcConstraint->Normals.getValues(); if (points.size() != normals.size()) diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintPlaneRotation.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintPlaneRotation.cpp index 2cd51dc5b8..3417d00cfc 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintPlaneRotation.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintPlaneRotation.cpp @@ -105,7 +105,7 @@ void ViewProviderFemConstraintPlaneRotation::updateData(const App::Property* pro float scaledradius = RADIUS * pcConstraint->Scale.getValue(); //OvG: Calculate scaled values once only float scaledheight = HEIGHT * pcConstraint->Scale.getValue(); - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); const std::vector& normals = pcConstraint->Normals.getValues(); if (points.size() != normals.size()) diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintPressure.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintPressure.cpp index 558ba34b2a..0037bb8c8a 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintPressure.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintPressure.cpp @@ -110,7 +110,7 @@ void ViewProviderFemConstraintPressure::updateData(const App::Property* prop) } #endif - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); const std::vector& normals = pcConstraint->Normals.getValues(); if (points.size() != normals.size()) { diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintPulley.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintPulley.cpp index 8a4ad14b90..100377c6df 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintPulley.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintPulley.cpp @@ -107,7 +107,7 @@ void ViewProviderFemConstraintPulley::updateData(const App::Property* prop) // Gets called whenever a property of the attached object changes Fem::ConstraintPulley* pcConstraint = static_cast(this->getObject()); - if (strcmp(prop->getName(), "BasePoint") == 0) { + if (prop == &pcConstraint->BasePoint) { if (pcConstraint->Height.getValue() > Precision::Confusion()) { // Remove and recreate the symbol Gui::coinRemoveAllChildren(pShapeSep); @@ -157,7 +157,7 @@ void ViewProviderFemConstraintPulley::updateData(const App::Property* prop) pShapeSep->addChild(sep);// child 4 } } - else if (strcmp(prop->getName(), "Diameter") == 0) { + else if (prop == &pcConstraint->Diameter) { if (pShapeSep->getNumChildren() > 0) { // Change the symbol double radius = pcConstraint->Radius.getValue(); @@ -198,8 +198,7 @@ void ViewProviderFemConstraintPulley::updateData(const App::Property* prop) updateArrow(subsep, 0, dia / 8 + dia / 2 * rat2, dia / 8); } } - else if ((strcmp(prop->getName(), "ForceAngle") == 0) - || (strcmp(prop->getName(), "BeltAngle") == 0)) { + else if ((prop == &pcConstraint->ForceAngle) || (prop == &pcConstraint->BeltAngle)) { if (pShapeSep->getNumChildren() > 0) { double radius = pcConstraint->Radius.getValue(); double dia = pcConstraint->Diameter.getValue(); @@ -224,8 +223,7 @@ void ViewProviderFemConstraintPulley::updateData(const App::Property* prop) -cos(forceAngle - beltAngle - M_PI_2)))); } } - else if ((strcmp(prop->getName(), "BeltForce1") == 0) - || (strcmp(prop->getName(), "BeltForce2") == 0)) { + else if ((prop == &pcConstraint->BeltForce1) || (prop == &pcConstraint->BeltForce2)) { if (pShapeSep->getNumChildren() > 0) { double radius = pcConstraint->Radius.getValue(); double dia = pcConstraint->Diameter.getValue(); diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintSpring.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintSpring.cpp index 5700e630f2..549cbf8bc3 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintSpring.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintSpring.cpp @@ -110,7 +110,7 @@ void ViewProviderFemConstraintSpring::updateData(const App::Property* prop) } #endif - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); const std::vector& normals = pcConstraint->Normals.getValues(); if (points.size() != normals.size()) { diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintTemperature.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintTemperature.cpp index 35c08c7d3d..f08e9907cc 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintTemperature.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintTemperature.cpp @@ -104,7 +104,7 @@ void ViewProviderFemConstraintTemperature::updateData(const App::Property* prop) float scaledheight = HEIGHT * pcConstraint->Scale.getValue(); //float temperature = pcConstraint->temperature.getValue(); - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); const std::vector& normals = pcConstraint->Normals.getValues(); if (points.size() != normals.size()) diff --git a/src/Mod/Fem/Gui/ViewProviderFemConstraintTransform.cpp b/src/Mod/Fem/Gui/ViewProviderFemConstraintTransform.cpp index 84c1e1ef82..ee38e81efa 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemConstraintTransform.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemConstraintTransform.cpp @@ -110,7 +110,7 @@ void ViewProviderFemConstraintTransform::updateData(const App::Property* prop) std::string transform_type = pcConstraint->TransformType.getValueAsString(); if (transform_type == "Rectangular") { - if (strcmp(prop->getName(),"Points") == 0) { + if (prop == &pcConstraint->Points) { const std::vector& points = pcConstraint->Points.getValues(); const std::vector& normals = pcConstraint->Normals.getValues(); if (points.size() != normals.size()) diff --git a/src/Mod/Fem/Gui/ViewProviderFemPostObject.cpp b/src/Mod/Fem/Gui/ViewProviderFemPostObject.cpp index 2239cb83f5..ce952cd086 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemPostObject.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemPostObject.cpp @@ -624,7 +624,8 @@ void ViewProviderFemPostObject::WriteTransparency() void ViewProviderFemPostObject::updateData(const App::Property* p) { - if (strcmp(p->getName(), "Data") == 0) { + Fem::FemPostObject* postObject = static_cast(getObject()); + if (p == &postObject->Data) { updateVtk(); } } diff --git a/src/Mod/Fem/Gui/ViewProviderFemPostPipeline.cpp b/src/Mod/Fem/Gui/ViewProviderFemPostPipeline.cpp index a3e3c0d9e6..e3d015967d 100644 --- a/src/Mod/Fem/Gui/ViewProviderFemPostPipeline.cpp +++ b/src/Mod/Fem/Gui/ViewProviderFemPostPipeline.cpp @@ -72,8 +72,8 @@ std::vector< App::DocumentObject* > ViewProviderFemPostPipeline::claimChildren3D void ViewProviderFemPostPipeline::updateData(const App::Property* prop) { FemGui::ViewProviderFemPostObject::updateData(prop); - - if (strcmp(prop->getName(), "Function") == 0) + Fem::FemPostPipeline* pipeline = static_cast(getObject()); + if (prop == &pipeline->Functions) updateFunctionSize(); }