0.0.21 • Published 1 year ago

svelte-zooming-ui v0.0.21

Weekly downloads
-
License
-
Repository
-
Last release
1 year ago

svelte-zooming-ui

WARNING :: Work In Progress :: use at your own risk, breaking changes will occur

Specification: A zooming user interface that just works. Like you imagined it would. With regular vanilla components.

Example Usage

Here's a simple example of how to create a 2D zoomable scene using the ZUI, Positionable, and Clickable components:

<script>
    import ZUI from '$lib/ZoomingUIComponent.svelte';
    import Positionable from '$lib/Positionable.svelte';
    import Clickable from '$lib/Clickable.svelte';
    import Decimal from 'decimal.js';

    let lookAt;

    function handleZuiNotification(event) {
        console.log("ZUI notification: " + event.detail);
    }
</script>

<ZUI on:zui-notification={handleZuiNotification} debug={true} bind:lookAt={lookAt}>
    <Positionable x={Decimal(0)} y={Decimal(0)} width={Decimal(50)} height={Decimal(50)} depth={Decimal(1)} debug={false}>
        <Clickable bgcolor="yellow">Positionable Element</Clickable>
    </Positionable>
    <Positionable x={Decimal(60)} y={Decimal(60)} width={Decimal(50)} height={Decimal(50)} depth={Decimal(1)} debug={false}>
        <Clickable bgcolor="blue">Another Positionable Element</Clickable>
    </Positionable>
</ZUI>

To-Do List

  • create two basic components for the zui.
  • Give Each zui component has zooming capability.
    • create a lookAt function that takes a point and a zoom level.
    • Handle drag events.
    • Handle zoom events. ( finger and mouse wheel )
0.0.20

1 year ago

0.0.21

1 year ago

0.0.17

2 years ago

0.0.18

2 years ago

0.0.19

2 years ago

0.0.10

2 years ago

0.0.11

2 years ago

0.0.12

2 years ago

0.0.13

2 years ago

0.0.14

2 years ago

0.0.15

2 years ago

0.0.9

2 years ago

0.0.16

2 years ago

0.0.8

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.3

2 years ago

0.0.1

2 years ago