Settings window #20
@@ -37,54 +37,54 @@ Item {
|
||||
onTriggered: Players.active?.positionChanged()
|
||||
}
|
||||
|
||||
Shape {
|
||||
id: visualizer
|
||||
|
||||
readonly property real centerX: width / 2
|
||||
readonly property real centerY: height / 2
|
||||
property color colour: DynamicColors.palette.m3primary
|
||||
readonly property real innerX: cover.implicitWidth / 2 + Appearance.spacing.small
|
||||
readonly property real innerY: cover.implicitHeight / 2 + Appearance.spacing.small
|
||||
|
||||
anchors.fill: cover
|
||||
anchors.margins: -Config.dashboard.sizes.mediaVisualiserSize
|
||||
asynchronous: true
|
||||
data: visualizerBars.instances
|
||||
preferredRendererType: Shape.CurveRenderer
|
||||
}
|
||||
|
||||
Variants {
|
||||
id: visualizerBars
|
||||
|
||||
model: Array.from({
|
||||
length: Config.services.visualizerBars
|
||||
}, (_, i) => i)
|
||||
|
||||
ShapePath {
|
||||
id: visualizerBar
|
||||
|
||||
readonly property real angle: modelData * 2 * Math.PI / Config.services.visualizerBars
|
||||
readonly property real cos: Math.cos(angle)
|
||||
readonly property real magnitude: value * Config.dashboard.sizes.mediaVisualiserSize
|
||||
required property int modelData
|
||||
readonly property real sin: Math.sin(angle)
|
||||
readonly property real value: Math.max(1e-3, Math.min(1, Audio.cava.values[modelData]))
|
||||
|
||||
capStyle: Appearance.rounding.scale === 0 ? ShapePath.SquareCap : ShapePath.RoundCap
|
||||
startX: visualizer.centerX + (visualizer.innerX + strokeWidth / 2) * cos
|
||||
strokeColor: DynamicColors.palette.m3primary
|
||||
strokeWidth: 360 / Config.services.visualizerBars - Appearance.spacing.small / 4
|
||||
|
||||
startY: PathLine {
|
||||
x: visualizer.centerX + (visualizer.innerX + visualizerBar.strokeWidth / 2 + visualizerBar.magnitude) * visualizerBar.cos
|
||||
y: visualizer.centerY + (visualizer.innerY + visualizerBar.strokeWidth / 2 + visualizerBar.magnitude) * visualizerBar.sin
|
||||
}
|
||||
Behavior on strokeColor {
|
||||
CAnim {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// Shape {
|
||||
// id: visualizer
|
||||
//
|
||||
// readonly property real centerX: width / 2
|
||||
// readonly property real centerY: height / 2
|
||||
// property color colour: DynamicColors.palette.m3primary
|
||||
// readonly property real innerX: cover.implicitWidth / 2 + Appearance.spacing.small
|
||||
// readonly property real innerY: cover.implicitHeight / 2 + Appearance.spacing.small
|
||||
//
|
||||
// anchors.fill: cover
|
||||
// anchors.margins: -Config.dashboard.sizes.mediaVisualiserSize
|
||||
// asynchronous: true
|
||||
// data: visualizerBars.instances
|
||||
// preferredRendererType: Shape.CurveRenderer
|
||||
// }
|
||||
//
|
||||
// Variants {
|
||||
// id: visualizerBars
|
||||
//
|
||||
// model: Array.from({
|
||||
// length: Config.services.visualizerBars
|
||||
// }, (_, i) => i)
|
||||
//
|
||||
// ShapePath {
|
||||
// id: visualizerBar
|
||||
//
|
||||
// readonly property real angle: modelData * 2 * Math.PI / Config.services.visualizerBars
|
||||
// readonly property real cos: Math.cos(angle)
|
||||
// readonly property real magnitude: value * Config.dashboard.sizes.mediaVisualiserSize
|
||||
// required property int modelData
|
||||
// readonly property real sin: Math.sin(angle)
|
||||
// readonly property real value: Math.max(1e-3, Math.min(1, Audio.cava.values[modelData]))
|
||||
//
|
||||
// capStyle: Appearance.rounding.scale === 0 ? ShapePath.SquareCap : ShapePath.RoundCap
|
||||
// startX: visualizer.centerX + (visualizer.innerX + strokeWidth / 2) * cos
|
||||
// strokeColor: DynamicColors.palette.m3primary
|
||||
// strokeWidth: 360 / Config.services.visualizerBars - Appearance.spacing.small / 4
|
||||
//
|
||||
// startY: PathLine {
|
||||
// x: visualizer.centerX + (visualizer.innerX + visualizerBar.strokeWidth / 2 + visualizerBar.magnitude) * visualizerBar.cos
|
||||
// y: visualizer.centerY + (visualizer.innerY + visualizerBar.strokeWidth / 2 + visualizerBar.magnitude) * visualizerBar.sin
|
||||
// }
|
||||
// Behavior on strokeColor {
|
||||
// CAnim {
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
Shape {
|
||||
preferredRendererType: Shape.CurveRenderer
|
||||
|
||||
Reference in New Issue
Block a user