I'm planning something similar for indoor navigation :)
I ended up using OpenLayers (http://openlayers.org/)
Actually OpenLayers was invented for GIS Stuff (Maps etc.) but you can easily define a X-Y-Z metric coordinate system and simply feed it with vector data.
The big benefit is that it comes with many features like drawing, different vector overlays, collision detection, distance measuring, tooltips, marks etc:
For OpenLayers 2.x (originally) see:
http://dev.openlayers.org/releases/OpenLayers-2.13.1/examples/
http://dev.openlayers.org/releases/OpenLayers-2.13.1/examples/draw-feature.html
http://dev.openlayers.org/releases/OpenLayers-2.13.1/examples/transform-feature.html
For OpenLayers 3.x see:
http://openlayers.org/en/v3.4.0/examples/
http://openlayers.org/en/v3.4.0/examples/draw-features.html
You can communicate over GeoJSON, GML etc. with the backend. We used PostGIS as backend to store the vector data. There's also a spatial extension for mysql (http://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html).
Just define a simple X-Y-Z coordinate system with a well chosen reference point :)