Skip to content
Snippets Groups Projects
Commit 18e64635 authored by Andreas Schenk's avatar Andreas Schenk
Browse files

added getters and setters for DataViewer min,max,gamma,invert,zoomscale and offset

parent 9cc7c4af
No related branches found
No related tags found
No related merge requests found
......@@ -67,8 +67,7 @@ void export_data_viewer()
.def("SetData",&DataViewer::SetData)
.def("SetName",&DataViewer::SetName)
.def("GetOverlayManager",&DataViewer::GetOverlayManager)
.def("GetNormalizer",&DataViewer::GetNormalizer,
return_value_policy<return_by_value>())
.def("GetNormalizer",&DataViewer::GetNormalizer,return_value_policy<return_by_value>())
.def("Renormalize",&DataViewer::Renormalize)
.def("AddOverlay",&DataViewer::AddOverlay,o_AddOverlay())
.def("ClearOverlays",&DataViewer::ClearOverlays)
......@@ -81,6 +80,24 @@ void export_data_viewer()
.def("SetSlab", &DataViewer::SetSlab)
.def("GetSlab", &DataViewer::GetSlab)
.add_property("slab", &DataViewer::GetSlab, &DataViewer::SetSlab)
.def("SetZoomScale", &DataViewer::SetZoomScale)
.def("GetZoomScale", &DataViewer::GetZoomScale)
.add_property("zoomscale", &DataViewer::GetZoomScale, &DataViewer::SetZoomScale)
.def("SetViewerMin", &DataViewer::SetViewerMin)
.def("GetViewerMin", &DataViewer::GetViewerMin)
.add_property("viewer_min", &DataViewer::GetViewerMin, &DataViewer::SetViewerMin)
.def("SetViewerMax", &DataViewer::SetViewerMax)
.def("GetViewerMax", &DataViewer::GetViewerMax)
.add_property("viewer_max", &DataViewer::GetViewerMax, &DataViewer::SetViewerMax)
.def("SetGamma", &DataViewer::SetGamma)
.def("GetGamma", &DataViewer::GetGamma)
.add_property("gamma", &DataViewer::GetGamma, &DataViewer::SetGamma)
.def("SetInvert", &DataViewer::SetInvert)
.def("GetInvert", &DataViewer::GetInvert)
.add_property("invert", &DataViewer::GetInvert, &DataViewer::SetInvert)
.def("SetOffset", &DataViewer::SetOffset)
.def("GetOffset", &DataViewer::GetOffset)
.add_property("offset", &DataViewer::GetOffset, &DataViewer::SetOffset)
.def("AddDockWidget",add_dock3)
.def("AddDockWidget",add_dock4)
.def("RemoveDockWidget",&DataViewer::RemoveDockWidget)
......
......@@ -134,6 +134,66 @@ int DataViewer::GetSlab() const
return panel_->GetSlab();
}
void DataViewer::SetZoomScale(Real zoomscale)
{
panel_->SetZoomScale(zoomscale);
}
Real DataViewer::GetZoomScale() const
{
return panel_->GetZoomScale();
}
void DataViewer::SetViewerMin(Real min)
{
panel_->SetViewerMin(min);
}
Real DataViewer::GetViewerMin() const
{
return panel_->GetViewerMin();
}
void DataViewer::SetViewerMax(Real max)
{
panel_->SetViewerMax(max);
}
Real DataViewer::GetViewerMax() const
{
return panel_->GetViewerMax();
}
void DataViewer::SetGamma(Real gamma)
{
panel_->SetGamma(gamma);
}
Real DataViewer::GetGamma() const
{
return panel_->GetGamma();
}
void DataViewer::SetInvert(bool invert)
{
panel_->SetInvert(invert);
}
bool DataViewer::GetInvert() const
{
return panel_->GetInvert();
}
void DataViewer::SetOffset(const geom::Vec2& offset)
{
panel_->SetOffset(offset);
}
geom::Vec2 DataViewer::GetOffset() const
{
return panel_->GetOffset();
}
int DataViewer::AddOverlay(const OverlayPtr& ov, bool make_active)
{
int retval= ov_manager_->AddOverlay(ov,make_active);
......
......@@ -104,9 +104,41 @@ public:
//! event filter for DataViewerPanel
virtual bool eventFilter(QObject * object, QEvent *event);
void SetSlab(int slab);
//! set z slab
void SetSlab(int slab);
//! get z slab
int GetSlab() const;
//! set zoom scale (range: 1e-8 to 1e8)
void SetZoomScale(Real zoomscale);
//! get zoom scale (range: 1e-8 to 1e8)
Real GetZoomScale() const;
//! set minimum level of the viewer (e.g. the value that will be displayed as black)
void SetViewerMin(Real min);
//! get minimum level of the viewer (e.g. the value that will be displayed as black)
Real GetViewerMin() const;
//! set maximum level of the viewer (e.g. the value that will be displayed as white)
void SetViewerMax(Real max);
//! get maximum level of the viewer (e.g. the value that will be displayed as white)
Real GetViewerMax() const;
//! set viewer gamma
void SetGamma(Real gamma);
//! get viewer gamma
Real GetGamma() const;
//! set invert flag
void SetInvert(bool invert);
//! get invert flag
bool GetInvert() const;
//! set image offset
void SetOffset(const geom::Vec2& offset);
//! get image offset
geom::Vec2 GetOffset() const;
signals:
void released();
......
......@@ -939,6 +939,53 @@ void DataViewerPanelBase::SetInvert(bool invert)
UpdateView(true);
}
Real DataViewerPanelBase::GetGamma() const
{
return normalizer_->GetGamma();
}
void DataViewerPanelBase::SetGamma(Real gamma)
{
UpdateNormalizer(normalizer_->GetMinimum(),
normalizer_->GetMaximum(),
gamma,normalizer_->GetInvert());
UpdateView(true);
}
Real DataViewerPanelBase::GetViewerMin() const
{
return normalizer_->GetMinimum();
}
void DataViewerPanelBase::SetViewerMin(Real min)
{
UpdateNormalizer(min,normalizer_->GetMaximum(),normalizer_->GetGamma(),normalizer_->GetInvert());
UpdateView(true);
}
Real DataViewerPanelBase::GetViewerMax() const
{
return normalizer_->GetMaximum();
}
void DataViewerPanelBase::SetViewerMax(Real max)
{
UpdateNormalizer(normalizer_->GetMinimum(),max,normalizer_->GetGamma(),normalizer_->GetInvert());
UpdateView(true);
}
geom::Vec2 DataViewerPanelBase::GetOffset() const
{
return geom::Vec2(offset_x_,offset_y_);
}
void DataViewerPanelBase::SetOffset(const geom::Vec2& offset)
{
offset_x_=offset[0];
offset_y_=offset[1];
UpdateView(true);
}
void DataViewerPanelBase::SetAntialiasing(bool f)
{
antialiasing_=f;
......
......@@ -177,6 +177,12 @@ public:
Real GetDataMax() const;
bool GetInvert() const;
void SetInvert(bool invert);
Real GetGamma() const;
void SetGamma(Real gamma);
void SetViewerMin(Real min);
Real GetViewerMin() const;
void SetViewerMax(Real max);
Real GetViewerMax() const;
void UpdateNormalizer(Real min, Real max, Real gamma, bool invert);
int GetSlab();
void SetSlab(int slab);
......@@ -184,6 +190,10 @@ public:
int GetSelectionMode();
void SetAntialiasing(bool f);
bool GetAntialiasing() const;
geom::Vec2 GetOffset() const;
void SetOffset(const geom::Vec2& offset);
signals:
void clicked(const geom::Vec3& mousepos);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment