MCPcopy Create free account
hub / github.com/TodePond/ScreenPond / updateZoom

Function updateZoom

source/zoom.js:29–55  ·  view source on GitHub ↗
(context, queue, zoomer, world, colours)

Source from the content-addressed store, hash-verified

27};
28
29export const updateZoom = (context, queue, zoomer, world, colours) => {
30 const missingSpeed = zoomer.desiredSpeed - zoomer.speed;
31
32 zoomer.speed += Math.sign(missingSpeed) * 0.15;
33 if (!zoomer.smoothMode) zoomer.speed = zoomer.desiredSpeed;
34
35 if (Math.abs(zoomer.speed) < 0.001) {
36 zoomer.speed = 0.0;
37 }
38 if (zoomer.speed === 0.0) return;
39
40 if (!zoomer.smoothMode) {
41 zoomer.desiredSpeed *= 0.8;
42 if (Math.abs(zoomer.desiredSpeed) < 0.001) {
43 zoomer.desiredSpeed = 0.0;
44 }
45 }
46
47 const mousePosition = getMousePosition(context, VIEW_CORNERS);
48 const zoomedCorners = getZoomedPositions(
49 world.corners,
50 1.0 + zoomer.speed * -0.002,
51 mousePosition
52 );
53 setWorldCorners(world, zoomedCorners, colours);
54 clearQueue(context, queue, world);
55};

Callers 1

main.jsFile · 0.90

Calls 4

getMousePositionFunction · 0.90
getZoomedPositionsFunction · 0.90
setWorldCornersFunction · 0.90
clearQueueFunction · 0.90

Tested by

no test coverage detected