From 7c63905fe3f7aaea75742905df0773c27ee6dac5 Mon Sep 17 00:00:00 2001 From: Soumyadeep Basu <44787782+basusoumyadeep@users.noreply.github.com> Date: Wed, 21 May 2025 19:38:46 +0200 Subject: [PATCH 1/2] add initial code for line selection --- src/ScatterplotWidget.cpp | 2 ++ src/SelectionAction.cpp | 2 ++ 2 files changed, 4 insertions(+) diff --git a/src/ScatterplotWidget.cpp b/src/ScatterplotWidget.cpp index 5ad29d3..1e6f881 100644 --- a/src/ScatterplotWidget.cpp +++ b/src/ScatterplotWidget.cpp @@ -60,6 +60,7 @@ ScatterplotWidget::ScatterplotWidget(mv::plugin::ViewPlugin* parentPlugin) : _pixelSelectionTool.setEnabled(true); _pixelSelectionTool.setMainColor(QColor(Qt::black)); _pixelSelectionTool.setFixedBrushRadiusModifier(Qt::AltModifier); + _pixelSelectionTool.setFixedLineWidthModifier(Qt::AltModifier); connect(&_pixelSelectionTool, &PixelSelectionTool::shapeChanged, [this]() { if (isInitialized()) @@ -126,6 +127,7 @@ ScatterplotWidget::ScatterplotWidget(mv::plugin::ViewPlugin* parentPlugin) : _samplerPixelSelectionTool.setEnabled(true); _samplerPixelSelectionTool.setMainColor(QColor(Qt::black)); _samplerPixelSelectionTool.setFixedBrushRadiusModifier(Qt::AltModifier); + _samplerPixelSelectionTool.setFixedLineWidthModifier(Qt::AltModifier); getPointRendererNavigator().setEnabled(true); diff --git a/src/SelectionAction.cpp b/src/SelectionAction.cpp index 1e71d63..6a47bc9 100644 --- a/src/SelectionAction.cpp +++ b/src/SelectionAction.cpp @@ -24,6 +24,7 @@ SelectionAction::SelectionAction(QObject* parent, const QString& title) : addAction(&_pixelSelectionAction.getTypeAction()); addAction(&_pixelSelectionAction.getBrushRadiusAction()); + addAction(&_pixelSelectionAction.getLineWidthAction()); addAction(&_pixelSelectionAction.getModifierAction(), OptionAction::HorizontalButtons); addAction(&_pixelSelectionAction.getSelectAction()); addAction(&_pixelSelectionAction.getNotifyDuringSelectionAction()); @@ -67,6 +68,7 @@ void SelectionAction::initialize(ScatterplotPlugin* scatterplotPlugin) getPixelSelectionAction().initialize(&scatterplotWidget, &scatterplotWidget.getPixelSelectionTool(), { PixelSelectionType::Rectangle, + PixelSelectionType::Line, PixelSelectionType::Brush, PixelSelectionType::Lasso, PixelSelectionType::Polygon From 9c1b69240a0920d0012c04cd2592cf6c1943f225 Mon Sep 17 00:00:00 2001 From: Soumyadeep Basu <44787782+basusoumyadeep@users.noreply.github.com> Date: Wed, 21 May 2025 20:40:48 +0200 Subject: [PATCH 2/2] add line angle option --- src/ScatterplotWidget.cpp | 2 ++ src/SelectionAction.cpp | 1 + 2 files changed, 3 insertions(+) diff --git a/src/ScatterplotWidget.cpp b/src/ScatterplotWidget.cpp index 1e6f881..8fc0413 100644 --- a/src/ScatterplotWidget.cpp +++ b/src/ScatterplotWidget.cpp @@ -61,6 +61,7 @@ ScatterplotWidget::ScatterplotWidget(mv::plugin::ViewPlugin* parentPlugin) : _pixelSelectionTool.setMainColor(QColor(Qt::black)); _pixelSelectionTool.setFixedBrushRadiusModifier(Qt::AltModifier); _pixelSelectionTool.setFixedLineWidthModifier(Qt::AltModifier); + _pixelSelectionTool.setFixedLineAngleModifier(Qt::AltModifier); connect(&_pixelSelectionTool, &PixelSelectionTool::shapeChanged, [this]() { if (isInitialized()) @@ -128,6 +129,7 @@ ScatterplotWidget::ScatterplotWidget(mv::plugin::ViewPlugin* parentPlugin) : _samplerPixelSelectionTool.setMainColor(QColor(Qt::black)); _samplerPixelSelectionTool.setFixedBrushRadiusModifier(Qt::AltModifier); _samplerPixelSelectionTool.setFixedLineWidthModifier(Qt::AltModifier); + _samplerPixelSelectionTool.setFixedLineAngleModifier(Qt::AltModifier); getPointRendererNavigator().setEnabled(true); diff --git a/src/SelectionAction.cpp b/src/SelectionAction.cpp index 6a47bc9..0135b40 100644 --- a/src/SelectionAction.cpp +++ b/src/SelectionAction.cpp @@ -25,6 +25,7 @@ SelectionAction::SelectionAction(QObject* parent, const QString& title) : addAction(&_pixelSelectionAction.getTypeAction()); addAction(&_pixelSelectionAction.getBrushRadiusAction()); addAction(&_pixelSelectionAction.getLineWidthAction()); + addAction(&_pixelSelectionAction.getLineAngleAction()); addAction(&_pixelSelectionAction.getModifierAction(), OptionAction::HorizontalButtons); addAction(&_pixelSelectionAction.getSelectAction()); addAction(&_pixelSelectionAction.getNotifyDuringSelectionAction());