[Geojson] Another question: how to represent 3dm positions?

Sean Gillies sean.gillies at gmail.com
Thu Jul 7 12:20:18 PDT 2011


Hi Arlo,

On Tue, Jul 5, 2011 at 2:07 PM, Arlo Belshee <Arlo.Belshee at microsoft.com> wrote:
> I have another question to which I couldn’t find an answer in the archives.
> If it has been previously discussed, please tell me the right search
> keywords.
>

I think it's fair to say that dynamic segmentation and linear
referencing use cases weren't given a lot of weight. I didn't come up
with anything useful in the archive.

>
>
> I need to represent 3dm data in GeoJSON. But GeoJSON positions specify the
> coordinates to be [x, y, z, m1, m2, …]. Any number, but the first 3 are
> defined to be x, y, and z (if all are present). So, how do I represent 3dm
> data (position has x, y, and m, but no z).
>
>
>
> The best option that I see is to supply a null for the z. Would that break
> readers?

Some. Supplying more than x,y to OpenLayers will result in an
exception. I don't know what OGR would do.

>
>
>
> Another option would be to encode the dimensions of the coordinate system in
> the CRS, along with its name. The coordinates for 3dz and 3dm would then be
> indistinguishable; the only difference would be in a non-standard attribute
> in the CRS. This would certainly confuse GeoJSON clients.

If the M values are there to carry linear referencing information –
and x, y were to be distances relative to a "milepost" – they probably
ought to be accompanied by the proper linear referencing system crs,
whatever that would be.

>
>
>
> Is there a better option?

I think null would be best, but I'd like to hear from other users too.

>
>
>
> And I don’t want to encode this in the type. I shouldn’t need to have
> Point3m and Polygon3m, given that I don’t need Point2, Point3z, and Point4.
>

Agreed.

-- 
Sean



More information about the GeoJSON mailing list