He estado haciendo mi propia aplicación de mapas usando mis propios mapas de imágenes. Nuestra universidad se mudó a un nuevo campus y estoy mapeando 7 pisos (interiores), con 5 niveles de zoom, a partir de mapas dibujados a mano.
¡Leaflet puede trabajar con mosaicos de mapas personalizados! He seguido esta guía (omarriott.com/aux/leaflet-js-non-geographical-imagery), solo que hice algunas pruebas y errores con los números de nivel de zoom para asegurarme de que el mapa apareciera (siguiendo la guía exactamente no trabaja para mi).
Hay un complemento llamado Leaflet Indoor pero se basa en geoJson, que no tenía. Todo lo que tengo son coordenadas de imagen personalizadas y mi propio Json personalizado. De todos modos, el folleto puede convertir las coordenadas de la imagen a lat lng (y viceversa) con los métodos de proyecto y proyecto.
Lo que hice para crear diferentes pisos fue usar el control de capa en su lugar. Por supuesto, lleva un tiempo descubrir la API y asegurarse de que todo funcione como debería. Por ejemplo, agrupé mis marcadores para cada piso y codifiqué una forma de representarlos bien en diferentes niveles de zoom. Y cargar un piso diferente requiere un controlador para cargar marcadores correctamente también.
Sé que Leaflet tiene un montón de ejemplos que dependen de mapas geográficos y puede dejar a personas como nosotros en la oscuridad, pero quiero asegurarles que es posible hacerlo para mapas personalizados. Necesita la imagen, colocarla en mosaico correctamente (con los nombres correctos), cargarla en un CDN como Amazon y luego usar la API de folleto.