NeuralAmpModelerPlugin

Plugin for Neural Amp Modeler
Log | Files | Refs | Submodules | README | LICENSE

commit 988697aa9ae5867089dc37f1d56e88411f12a630
parent eeff3c5d208b6e078ab6f9d4b2c37b2a7635aa34
Author: Oli Larkin <olilarkin@googlemail.com>
Date:   Wed,  3 May 2023 07:53:15 +0200

Improve rotated knob (#234)


Diffstat:
MNeuralAmpModeler/NeuralAmpModeler.cpp | 11++++++++---
MNeuralAmpModeler/resources/img/SkinEHeritage_Knob.png | 0
MNeuralAmpModeler/resources/img/SkinEHeritage_Knob@2x.png | 0
3 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/NeuralAmpModeler/NeuralAmpModeler.cpp b/NeuralAmpModeler/NeuralAmpModeler.cpp @@ -70,17 +70,22 @@ public: : IVKnobControl(bounds, paramIdx, label, style) , IBitmapBase(bitmap) { + mInnerPointerFrac = 0.6; } void DrawWidget(IGraphics& g) override { float widgetRadius = GetRadius(); const float cx = mWidgetBounds.MW(), cy = mWidgetBounds.MH(); - IRECT knobHandleBounds = mWidgetBounds.GetCentredInside((widgetRadius - mTrackToHandleDistance) * 2.f); + IRECT knobHandleBounds = mWidgetBounds.GetCentredInside((widgetRadius - mTrackToHandleDistance) * 2.5f); const float angle = mAngle1 + (static_cast<float>(GetValue()) * (mAngle2 - mAngle1)); - g.FillEllipse(GetColor(mMouseIsOver ? kX3 : kX1), knobHandleBounds, &mBlend); DrawIndicatorTrack(g, angle, cx, cy, widgetRadius); - g.DrawRotatedBitmap(mBitmap, mRECT.MW(), mRECT.MH(), angle); + g.DrawBitmap(mBitmap, knobHandleBounds.GetTranslated(4, 3), 0, 0); + float data[2][2]; + RadialPoints(angle, cx + 1, cy, mInnerPointerFrac * widgetRadius, mInnerPointerFrac * widgetRadius, 2, data); + g.PathCircle(data[1][0], data[1][1], 3); + g.PathFill(IPattern::CreateRadialGradient(data[1][0], data[1][1], 4.0f, {{GetColor(mMouseIsOver ? kX3 : kX1), 0.f}, {GetColor(mMouseIsOver ? kX3 : kX1), 0.8f}, {COLOR_TRANSPARENT, 1.0f}}), {}, &mBlend); + g.DrawCircle(COLOR_BLACK.WithOpacity(0.5f), data[1][0], data[1][1], 3, &mBlend); } }; diff --git a/NeuralAmpModeler/resources/img/SkinEHeritage_Knob.png b/NeuralAmpModeler/resources/img/SkinEHeritage_Knob.png Binary files differ. diff --git a/NeuralAmpModeler/resources/img/SkinEHeritage_Knob@2x.png b/NeuralAmpModeler/resources/img/SkinEHeritage_Knob@2x.png Binary files differ.