@expofp/floorplan
Version:
Interactive floor plan library for expos and events
2 lines (1 loc) • 594 B
JavaScript
import{degToRad as f}from"@expofp/geometry";import{cssSizeOf as p}from"../../components/Map/drawing/config/canvases";import{createKioskCanvas as S}from"../adapters";const s="kiosk",m=0;export function createKioskHandler({wayfinding:t,kioskIconMap:u}){const n=new Map,l=e=>{const c=e??100,o=n.get(c);if(o)return o;const r=S(u,e);return n.set(c,r),r};return(e,c,o)=>{if(!e){t.setIcon(s,null),t.flush();return}if(o!==m&&e.z&&c&&e.z!==c){t.setIcon(s,null),t.flush();return}const a=l(e.iconSizePercent);t.setIcon(s,{canvas:a,...p(a),x:e.x,y:e.y,rotation:f(e.heading??0),screenSpace:!1}),t.flush()}}