OGS
RasterDataToMeshDialog Class Reference

Detailed Description

A dialog window for transferring raster data onto a mesh.

Definition at line 15 of file RasterDataToMeshDialog.h.

#include <RasterDataToMeshDialog.h>

Inheritance diagram for RasterDataToMeshDialog:
[legend]
Collaboration diagram for RasterDataToMeshDialog:
[legend]

Public Member Functions

 RasterDataToMeshDialog (std::string const &mesh_name, QDialog *parent=nullptr)
bool createNodeArray () const
bool createElemArray () const
std::string getArrayName () const
std::string getMeshName () const
std::string getRasterPath () const
double getNoDataReplacement () const

Private Slots

void on_rasterSelectButton_pressed ()
void accept () override
void reject () override

Constructor & Destructor Documentation

◆ RasterDataToMeshDialog()

RasterDataToMeshDialog::RasterDataToMeshDialog ( std::string const & mesh_name,
QDialog * parent = nullptr )
explicit

Definition at line 12 of file RasterDataToMeshDialog.cpp.

14 : QDialog(parent)
15{
16 setupUi(this);
17
18 this->meshNameEdit->setText(QString::fromStdString(mesh_name) + "_Raster");
19 auto* no_data_validator = new StrictDoubleValidator(this);
20 this->noDataValueEdit->setValidator(no_data_validator);
21}

Member Function Documentation

◆ accept

void RasterDataToMeshDialog::accept ( )
overrideprivateslot

Definition at line 35 of file RasterDataToMeshDialog.cpp.

36{
37 if (this->rasterPathEdit->text().isEmpty())
38 {
39 OGSError::box("Please specify path to raster file.");
40 return;
41 }
42 else if (this->arrayNameEdit->text().isEmpty())
43 {
44 OGSError::box("Please specify a name for the new array.");
45 return;
46 }
47 else if (this->noDataValueEdit->text().isEmpty())
48 {
49 OGSError::box("Please specify No Data value.");
50 return;
51 }
52 else if (this->meshNameEdit->text().isEmpty())
53 {
54 OGSError::box("Please specify name of new mesh.");
55 return;
56 }
57
58 this->done(QDialog::Accepted);
59}
static void box(const QString &e)
Definition OGSError.cpp:13

References OGSError::box().

◆ createElemArray()

bool RasterDataToMeshDialog::createElemArray ( ) const
inline

Definition at line 24 of file RasterDataToMeshDialog.h.

24{ return this->elemButton->isChecked(); }

◆ createNodeArray()

bool RasterDataToMeshDialog::createNodeArray ( ) const
inline

Definition at line 23 of file RasterDataToMeshDialog.h.

23{ return this->nodeButton->isChecked(); }

Referenced by MeshView::openRasterDataToMeshDialog().

◆ getArrayName()

std::string RasterDataToMeshDialog::getArrayName ( ) const
inline

Definition at line 25 of file RasterDataToMeshDialog.h.

25{ return this->arrayNameEdit->text().toStdString(); }

Referenced by MeshView::openRasterDataToMeshDialog().

◆ getMeshName()

std::string RasterDataToMeshDialog::getMeshName ( ) const
inline

Definition at line 26 of file RasterDataToMeshDialog.h.

26{ return this->meshNameEdit->text().toStdString(); }

Referenced by MeshView::openRasterDataToMeshDialog().

◆ getNoDataReplacement()

double RasterDataToMeshDialog::getNoDataReplacement ( ) const
inline

Definition at line 28 of file RasterDataToMeshDialog.h.

28{ return this->noDataValueEdit->text().toDouble(); }

Referenced by MeshView::openRasterDataToMeshDialog().

◆ getRasterPath()

std::string RasterDataToMeshDialog::getRasterPath ( ) const
inline

Definition at line 27 of file RasterDataToMeshDialog.h.

27{ return this->rasterPathEdit->text().toStdString(); }

Referenced by MeshView::openRasterDataToMeshDialog().

◆ on_rasterSelectButton_pressed

void RasterDataToMeshDialog::on_rasterSelectButton_pressed ( )
privateslot

Definition at line 23 of file RasterDataToMeshDialog.cpp.

24{
25 QSettings settings;
26 QString filename = QFileDialog::getOpenFileName(
27 this, "Select raster file to open",
28 settings.value("lastOpenedRasterFileDirectory").toString(),
29 "ASCII raster files (*.asc);;All files (* *.*)");
30 this->rasterPathEdit->setText(filename);
31 QFileInfo fi(filename);
32 settings.setValue("lastOpenedRasterFileDirectory", fi.absolutePath());
33}

◆ reject

void RasterDataToMeshDialog::reject ( )
inlineoverrideprivateslot

Definition at line 34 of file RasterDataToMeshDialog.h.

34{ this->done(QDialog::Rejected); }

The documentation for this class was generated from the following files: