Fem: Remove FemPostDataAtPointFilter Radius property and add PointSize to their view provider - fixes #5719

This commit is contained in:
marioalexis
2023-10-16 01:53:07 -03:00
committed by wwmayer
parent e1d64e8f30
commit 4036dbd5e8
4 changed files with 28 additions and 6 deletions

View File

@@ -326,11 +326,6 @@ FemPostDataAtPointFilter::FemPostDataAtPointFilter()
"DataAtPoint",
App::Prop_None,
"Center of the point");
ADD_PROPERTY_TYPE(Radius,
(0),
"DataAtPoint",
App::Prop_None,
"Radius around the point (unused)");
ADD_PROPERTY_TYPE(PointData, (0), "DataAtPoint", App::Prop_None, "Point data values");
ADD_PROPERTY_TYPE(FieldName, (""), "DataAtPoint", App::Prop_None, "Field used for plotting");
ADD_PROPERTY_TYPE(Unit, (""), "DataAtPoint", App::Prop_None, "Unit used for the field");

View File

@@ -133,7 +133,6 @@ public:
~FemPostDataAtPointFilter() override;
App::PropertyVectorDistance Center;
App::PropertyDistance Radius;
App::PropertyString FieldName;
App::PropertyFloatList PointData;
App::PropertyString Unit;

View File

@@ -22,6 +22,10 @@
#include "PreCompiled.h"
#ifndef _PreComp_
#include <Inventor/nodes/SoDrawStyle.h>
#endif
#include <Mod/Fem/App/FemPostFilter.h>
#include "TaskPostBoxes.h"
@@ -58,8 +62,16 @@ void ViewProviderFemPostDataAlongLine::setupTaskDialog(TaskDlgPost* dlg)
// data at point filter
PROPERTY_SOURCE(FemGui::ViewProviderFemPostDataAtPoint, FemGui::ViewProviderFemPostObject)
App::PropertyFloatConstraint::Constraints ViewProviderFemPostDataAtPoint::sizeRange = {1.0,
64.0,
1.0};
ViewProviderFemPostDataAtPoint::ViewProviderFemPostDataAtPoint()
{
float pSize = m_drawStyle->pointSize.getValue();
ADD_PROPERTY_TYPE(PointSize, (pSize), "Object Style", App::Prop_None, "Set point size");
PointSize.setConstraints(&sizeRange);
sPixmap = "FEM_PostFilterDataAtPoint";
}
@@ -75,6 +87,15 @@ void ViewProviderFemPostDataAtPoint::onSelectionChanged(const Gui::SelectionChan
// because a single point does not make sense with a color range.
}
void ViewProviderFemPostDataAtPoint::onChanged(const App::Property* prop)
{
if (prop == &PointSize) {
m_drawStyle->pointSize.setValue(PointSize.getValue());
}
ViewProviderFemPostObject::onChanged(prop);
}
ViewProviderFemPostDataAtPoint::~ViewProviderFemPostDataAtPoint() = default;
void ViewProviderFemPostDataAtPoint::setupTaskDialog(TaskDlgPost* dlg)

View File

@@ -59,12 +59,19 @@ class FemGuiExport ViewProviderFemPostDataAtPoint: public ViewProviderFemPostObj
public:
/// constructor.
ViewProviderFemPostDataAtPoint();
App::PropertyFloatConstraint PointSize;
void show() override;
void onChanged(const App::Property* prop) override;
void onSelectionChanged(const Gui::SelectionChanges&) override;
~ViewProviderFemPostDataAtPoint() override;
protected:
void setupTaskDialog(TaskDlgPost* dlg) override;
private:
static App::PropertyFloatConstraint::Constraints sizeRange;
};