Go to the documentation of this file.
114 #ifndef __TERRALIB_QT_WIDGETS_RP_INTERNAL_MIXTUREMODELWIZARDPAGE_H
115 #define __TERRALIB_QT_WIDGETS_RP_INTERNAL_MIXTUREMODELWIZARDPAGE_H
118 #include "../../../classification/ROISet.h"
119 #include "../../../color/RGBAColor.h"
120 #include "../../../geometry/Geometry.h"
122 #include "../../../maptools/AbstractLayer.h"
123 #include "../../../qt/widgets/canvas/MapDisplay.h"
124 #include "../../../qt/widgets/charts/ChartDisplay.h"
125 #include "../../../qt/widgets/charts/ChartDisplayWidget.h"
126 #include "../../../qt/widgets/charts/ChartStyle.h"
127 #include "../../../raster/Raster.h"
128 #include "../../../rp/Functions.h"
129 #include "../../../rp/MixtureModel.h"
131 #include "../Config.h"
138 #include <QWizardPage>
139 #include <QTableWidget>
140 #include <QActionGroup>
141 #include <qgridlayout.h>
142 #include <QSignalMapper>
143 #include <QTreeWidget>
144 #include <QTreeWidgetItem>
147 #include <qwt_plot_curve.h>
150 namespace Ui {
class MixtureModelWizardPageForm; }
154 namespace se {
class Mark; }
161 class SensorManagerDialog;
162 class ROIManagerDialog;
207 void set(std::list<te::map::AbstractLayerPtr> layers);
213 std::list<te::map::AbstractLayerPtr>
get();
232 return m_transfMatrix;
287 std::unique_ptr<Ui::MixtureModelWizardPageForm>
m_ui;
326 #endif // __TERRALIB_QT_WIDGETS_RP_INTERNAL_MIXTUREMODELWIZARDPAGE_H
An Envelope defines a 2D rectangular region.
std::list< te::map::AbstractLayerPtr > m_layers
list of input layers
std::map< std::string, MixModelComponent > m_components
The map of selected components.
double GetMediumWavelength(std::string sensor)
void onSaveToolButtonClicked()
void oncolorToolButtonClicked()
void onEnvelopeAcquired(te::gm::Envelope env)
std::string m_json_out
Json filename to save components.
te::qt::widgets::ChartDisplayWidget * m_displayWidget
MixtureModelWizardPage(QWidget *parent=0)
A ROISet is a set of ROI's.
void loadMixtureModelComponents(const std::string &fileName)
void onPointPicked(double x, double y)
std::unique_ptr< Ui::MixtureModelWizardPageForm > m_ui
void onROIManagerClosed(te::cl::ROISet *rs)
std::unique_ptr< te::qt::widgets::ROIManagerDialog > m_roiMngDlg
MixtureModel output parameters.
std::unique_ptr< te::qt::widgets::RpToolsWidget > m_navigator
Polygon is a subclass of CurvePolygon whose rings are defined by linear rings.
void onRemoveToolButtonClicked()
void onMapDisplayExtentChanged()
MixModelTypes
Available Algorithms for Mixture Model.
void onselectedEnabled(bool)
This class is GUI used to define the mixture model parameters for the RP constast operation.
te::se::Mark * m_mark
component point mark type
te::color::RGBAColor ** m_rgbaMark
component color
void fillMixtureModelTypes()
void showROIManager(bool show)
void oncomponentChanged()
void setActionGroup(QActionGroup *actionGroup)
void setMapDisplay(te::qt::widgets::MapDisplay *mapDisplay)
void onSensorToolButtonClicked(int)
void onMixturetabChanged(int)
std::map< std::string, te::rp::SpectralSensorParams > m_SensorParams
map with sensor parameters
te::gm::Geometry * m_geomGrid
component coordinades in raster lineXcolumn
boost::numeric::ublas::matrix< double > getTransfMatrix()
te::qt::widgets::MapDisplay * m_mapDisplay
te::rp::MixtureModel::InputParameters getInputParams()
int m_type
algorithm mixture model type (MIXMODEL_LINEAR or MIXMODEL_PCA)
void onComponentItemClicked(QTreeWidgetItem *item, int column)
A Mark specifies a geometric shape and applies coloring to it.
void PlotSpectralSignature()
@ MIXMODEL_LINEAR
Linear Mixture Model.
Defines component attributes.
void addGeometryComponent()
te::color::RGBAColor m_color
color
te::gm::Geometry * m_geom
Current geometry/envelope component.
te::qt::widgets::SensorManagerDialog * m_sensorManagerDialog
Dialog to select/edit spectral sensors.
boost::numeric::ublas::matrix< double > m_transfMatrix
Transformation matrix;.
void onGeomAquired(te::gm::Polygon *poly)
A helper class for 32-bit RGBA (Red-Green-Blue-Alpha channel) color.
te::rp::MixtureModel::OutputParameters getOutputParams()
void set(std::list< te::map::AbstractLayerPtr > layers)
This method is used to set the selected layer for mixture model operation.
QSignalMapper m_ButtonSignalMapper
std::list< te::map::AbstractLayerPtr > get()
void onMixturetypeChanged()
unsigned int m_countComponents
The maximum number of components inserted.
std::vector< double > m_values
raster values
void onLoadToolButtonClicked()
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
te::gm::Geometry * m_geomGeo
component coordinates in geografic coordinates
std::string m_comp
Current component.
te::cl::ROISet * getROISet()
std::vector< double > m_maxValue
vector to store maximum value of each band
~MixtureModelWizardPage()
QColor m_color
Current component color.
void saveMixtureModelComponents()