]> git.r.bdr.sh - rbdr/canvas/blobdiff - src/lib/components/sensor.svelte
Update project, improve sensor/render logic
[rbdr/canvas] / src / lib / components / sensor.svelte
index e98b74086b30b208c3f349fc527f7ca6c3a0d736..b6d38d83cfefeecb176a36741f24fc27ddcca0f9 100644 (file)
@@ -1,11 +1,10 @@
 <script>
 <script>
-  import { browser } from '$app/env';
+  import { browser } from '$app/environment';
   import { maxSize } from '$lib/config';
   import { maxSize } from '$lib/config';
+  import { modulo } from '$lib/math';
+  import { canvas } from '$lib/stores/canvas';
   import { sensor } from '$lib/stores/widgets';
 
   import { sensor } from '$lib/stores/widgets';
 
-  export let x;
-  export let y;
-
   const kSensorSize = 2;
 
   let left;
   const kSensorSize = 2;
 
   let left;
 
   $: {
     if (browser) {
 
   $: {
     if (browser) {
-      left = x - window.screen.width * kSensorSize;
-      top = y - window.screen.height * kSensorSize;
-      right = x + window.screen.width * kSensorSize;
-      bottom = y + window.screen.height * kSensorSize;
+      left = modulo($canvas.x - window.screen.width * kSensorSize, maxSize);
+      top = modulo($canvas.y - window.screen.height * kSensorSize, maxSize);
+      right = left + 2 * window.screen.width * kSensorSize;
+      bottom = top + 2 * window.screen.height * kSensorSize;
 
       fetchItems(left, top, right, bottom);
     }
 
       fetchItems(left, top, right, bottom);
     }