console : l'animation monte l'axe en avant à son cran
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/push/woodpecker Pipeline was successful
Avant tout geste, l'axe mis en avant par la rotation monte à sa graduation (numérique 0,75, économique 0,50, citoyenne 0,667) au lieu de 0,87-0,93 ; les deux autres gardent leur dérive basse. L'animation et la main donnent les mêmes niveaux, et un curseur figé au premier geste ne reste plus au-dessus de son cran. Décision d'orch (03/11, 05h51), consignée dans docs/consignes-yvv.md. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -134,8 +134,9 @@ const current = computed(() => props.axes.find(a => a.key === active.value) ?? p
|
|||||||
// ── Motion ──────────────────────────────────────────────────────────────
|
// ── Motion ──────────────────────────────────────────────────────────────
|
||||||
// Yvv's instructions, word for word: docs/consignes-yvv.md (29/09 and 03/11).
|
// Yvv's instructions, word for word: docs/consignes-yvv.md (29/09 and 03/11).
|
||||||
//
|
//
|
||||||
// Before any gesture (29/09): the cursors move on their own, slowly; each one
|
// Before any gesture (29/09): the cursors move on their own, slowly; the low
|
||||||
// drifts, and every few beats another axis is pushed up towards émancipation.
|
// ones drift, and every few beats another axis is pushed up to its own
|
||||||
|
// graduation (03/11), the level the hand gives it.
|
||||||
// SSR renders every cursor at the bottom, so the first move is the rise.
|
// SSR renders every cursor at the bottom, so the first move is the rise.
|
||||||
//
|
//
|
||||||
// The visitor's hand takes over for good (03/11): from the first hover,
|
// The visitor's hand takes over for good (03/11): from the first hover,
|
||||||
@@ -166,13 +167,12 @@ let timer: ReturnType<typeof setInterval> | undefined
|
|||||||
|
|
||||||
function place() {
|
function place() {
|
||||||
props.axes.forEach((axis, i) => {
|
props.axes.forEach((axis, i) => {
|
||||||
const isActive = axis.key === active.value
|
// The axis put forward goes up to its own graduation, as under the hand
|
||||||
if (reduced.value) {
|
if (axis.key === active.value) {
|
||||||
levels[axis.key] = isActive ? 0.94 : 0.3
|
levels[axis.key] = GRADUATION[axis.key] ?? 0.75
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
const wave = Math.sin(beat * 0.9 + i * 2.1)
|
levels[axis.key] = reduced.value ? 0.3 : 0.3 + 0.14 * Math.sin(beat * 0.9 + i * 2.1)
|
||||||
levels[axis.key] = isActive ? 0.87 + 0.06 * wave : 0.3 + 0.14 * wave
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -43,6 +43,8 @@ Ce que fait le code :
|
|||||||
- Le panneau de l'axe s'affiche au même geste.
|
- Le panneau de l'axe s'affiche au même geste.
|
||||||
- Les autres curseurs ne bougent pas. Un curseur jamais touché reste là où il était.
|
- Les autres curseurs ne bougent pas. Un curseur jamais touché reste là où il était.
|
||||||
- Un nouveau survol rejoue la montée.
|
- Un nouveau survol rejoue la montée.
|
||||||
- Avant tout geste, l'animation du 29/09 est inchangée.
|
- Avant tout geste, l'animation du 29/09 continue : la rotation et la dérive des curseurs bas. L'axe
|
||||||
|
mis en avant monte à son cran, et non plus vers 0,9. C'est une décision d'orch du 03/11 à 05h51, qui
|
||||||
|
découle de la graduation : l'animation et la main donnent les mêmes niveaux.
|
||||||
- Sous `prefers-reduced-motion`, il n'y a aucune transition, mais les crans sont les mêmes.
|
- Sous `prefers-reduced-motion`, il n'y a aucune transition, mais les crans sont les mêmes.
|
||||||
- Un défilement au doigt qui part d'un curseur ne compte pas comme un survol.
|
- Un défilement au doigt qui part d'un curseur ne compte pas comme un survol.
|
||||||
|
|||||||
Reference in New Issue
Block a user