I'm trying to create an indoor map(from floor plan) in GeoServer and display in via OpenLayers.

The only way that I found is to create a Store in GeoServer(in my case, using ImagePyramid) from georeferenced .tiff, which one has a local bounding box([0, 0, 11, 9] in EPSG:3857, in my case).

It works fine, but is there another way?

I'm looking to custom CRS, but I don't know whether it's worth the effort.

  • GeoServer is using local/engineering CRS is such cases. If you do not use any tailored local CRS for other purposes like having a common origin for many indoor maps I do not see any advantage in creating a custom CRS for GeoServer. However, without custom CRS you can't reproject to other coordinate systems like EPSG:4326 but I guess you do not want to do that. – user30184 Jul 15 '15 at 17:50
  • Does this map need to be survey accurate or just for general reference? Also, do you want users to just turn on or off the building plan image or have more interaction with the building info (e.g. having various layers to turn on or off, run queries, perform editing)? – artwork21 Jul 16 '15 at 16:40
  • @artwork21, map must be as precise as it possible(to mm). All user interaction will be with floor plan. – ar4ers Jul 16 '15 at 17:58

A new projection was introduced in GeoServer 2.2 to handle exactly this kind of situation:

Better support for un-referenced data with the new EPSG:40400 code that identifies a coordinate system made up of a generic 2D Cartesian plane.

Your data will be representated correctly, but it will not be possible to reference it relative to data in another projection.

Here is a link to more information in the GeoTools user guide (used by GeoServer)

formally intended for working with things like CAD drawings where the results are measured in meters.

An easy way to remember the code is the "404" which is reminiscent of the http status code for page not found.

| improve this answer | |
  • Looks like the right way. I'll try it in my project. Thanks! – ar4ers Jul 23 '15 at 17:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.