Load settings move to AppPointsPy

This commit is contained in:
Benjamin Alterauge
2021-12-11 12:08:48 +01:00
committed by wmayer
parent 8da1799956
commit 698a876ba1
3 changed files with 20 additions and 12 deletions

View File

@@ -88,7 +88,12 @@ private:
reader.reset(new AscReader);
}
else if (file.hasExtension("e57")) {
reader.reset(new E57Reader);
Base::Reference<ParameterGrp> hGrp = App::GetApplication().GetUserParameter()
.GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("Mod/Points/E57");
bool useColor = hGrp->GetBool("UseColor", true);
bool checkState = hGrp->GetBool("CheckInvalidState", true);
float minDistance = hGrp->GetFloat("MinDistance", -1.);
reader.reset(new E57Reader(useColor, checkState, minDistance));
}
else if (file.hasExtension("ply")) {
reader.reset(new PlyReader);
@@ -203,7 +208,12 @@ private:
reader.reset(new AscReader);
}
else if (file.hasExtension("e57")) {
reader.reset(new E57Reader);
Base::Reference<ParameterGrp> hGrp = App::GetApplication().GetUserParameter()
.GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("Mod/Points/E57");
bool useColor = hGrp->GetBool("UseColor", true);
bool checkState = hGrp->GetBool("CheckInvalidState", true);
float minDistance = hGrp->GetFloat("MinDistance", -1.);
reader.reset(new E57Reader(useColor, checkState, minDistance));
}
else if (file.hasExtension("ply")) {
reader.reset(new PlyReader);

View File

@@ -47,7 +47,6 @@
#include <boost/math/special_functions/fpclassify.hpp>
#include <E57Format.h>
#include <App/Application.h>
using namespace Points;
@@ -1306,8 +1305,11 @@ void PcdReader::readBinary(bool transpose,
// ----------------------------------------------------------------------------
E57Reader::E57Reader()
E57Reader::E57Reader(const bool& Color, const bool& State, const float& Distance)
{
useColor = Color;
checkState = State;
minDistance = Distance;
}
E57Reader::~E57Reader()
@@ -1317,13 +1319,6 @@ E57Reader::~E57Reader()
void E57Reader::read(const std::string& filename)
{
try {
// get settings
Base::Reference<ParameterGrp> hGrp = App::GetApplication().GetUserParameter()
.GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("Mod/Points/E57");
bool useColor = hGrp->GetBool("UseColor", true);
bool checkState = hGrp->GetBool("CheckInvalidState", true);
float minDistance = hGrp->GetFloat("MinDistance", -1.);
// read file
e57::ImageFile imfi(filename, "r");
e57::StructureNode root = imfi.root();

View File

@@ -118,9 +118,12 @@ private:
class E57Reader : public Reader
{
public:
E57Reader();
E57Reader(const bool& Color, const bool& State, const float& Distance);
~E57Reader();
void read(const std::string& filename);
protected:
bool useColor, checkState;
float minDistance;
};
class Writer