Skip to the content

Suido水道

Turn pipes to connect the pumps and drains, through fixed levels or seeded puzzles.

Suido means water supply in Japanese. About the name

Contents

Reference · SVG board

zoomAboutfunction

A view zoomed by factor about the point (ax, ay) of the board, which stays under the same place in the box.

Import it

import { zoomAbout } from "@johnmorrisdotca/suido/draw";

Definition

function zoomAbout(view: SuidoView, factor: number, ax: number, ay: number, box: SuidoBox, most?: number): SuidoView

Parameters

NameTypeDescription
viewSuidoView

Current zoom and translation in board drawing units.

factornumber

The positive zoom multiplier.

axnumber

The horizontal zoom anchor in board drawing units.

aynumber

The vertical zoom anchor in board drawing units.

boxSuidoBox

The board drawing dimensions or DOM viewport specified by this signature.

most (optional)number

The maximum zoom factor.

Returns

SuidoView

A view zoomed by factor about the point (ax, ay) of the board, which stays under the same place in the box.

Examples

import { SUIDO_5X5 } from "@johnmorrisdotca/suido/levels-5x5";
import { decodeLayout } from "@johnmorrisdotca/suido";
import { boxOf, zoomAbout } from "@johnmorrisdotca/suido/draw";

const row = SUIDO_5X5[0];
const code = row[0];
const layout = decodeLayout(code)!;
const view = {zoom:1,x:0,y:0};
const box = boxOf(layout);
console.log(zoomAbout(view,1.5,100,100,box));
{ zoom: 1.5, x: 33.33333333333334, y: 33.33333333333334 }

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/suido 1.7.0.