<div dir="ltr"><div><div><div>Hey,<br></div>I would sugger to read a <a href="https://en.wikipedia.org/wiki/Spatial_reference_system">little bit about geographical information</a> before using PostGIS.<br></div>The unit depend on the way you measure, which depends on the Spatial Reference System.<br></div><div><br>If you want it is a bit like measuring the temperature in Celsius degrees and Kelvin.<br></div><div>You measure the same things but you represent the measure differently.<br></div><div><br>Cheers,<br></div><div>Rémi-C<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-03-22 15:42 GMT+01:00 Aaron Lewis <span dir="ltr"><<a href="mailto:the.warl0ck.1989@gmail.com" target="_blank">the.warl0ck.1989@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Thanks Nicolas,<br>
<br>
I take a few tries, but it looks like ST_DWithin & ST_Distance all<br>
deals in degrees, not meters ..:<br>
<br>
gis=# select nick, ST_AsText(location), ST_Distance(location,<br>
st_setsrid(st_makepoint (46.3, 36.10), 2600)) from users where<br>
ST_DWithin(users.location, st_setsrid(st_makepoint (46.3, 36.10),<br>
2600), 10);<br>
 nick  |    st_astext     |   st_distance<br>
-------+------------------+------------------<br>
 user1 | POINT(45.2 35.1) | 1.48660687473185<br>
 user2 | POINT(45.2 35.2) | 1.42126704035518<br>
 user3 | POINT(45.5 35.3) | 1.13137084989848<br>
<br>
I tried to cast it to geography type but:<br>
<br>
ST_Distance(location::geography, st_setsrid(st_makepoint (46.3,<br>
36.10), 2600)::geography)<br>
<br>
Resulted in an error:<br>
ERROR:  Only lon/lat coordinate systems are supported in geography.<br>
<br>
So how should I get this distance in meters?<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
On Sun, Mar 22, 2015 at 8:44 PM, Nicolas Ribot <<a href="mailto:nicolas.ribot@gmail.com">nicolas.ribot@gmail.com</a>> wrote:<br>
> Hi Aaron,<br>
><br>
> SRID is used to set a consistent coordinate system to the data. It refers to<br>
> an EPSG Coordinate Reference System (CRS). For instance, EPSG:2600:<br>
> (<a href="http://spatialreference.org/ref/epsg/2600/" target="_blank">http://spatialreference.org/ref/epsg/2600/</a>) is a metric CRS.<br>
><br>
> Coordinates (146.0, 138.19) are not valid in SRID 2600 (nor in lat/long<br>
> coordinates).<br>
><br>
> You would use st_setSRID when the coordinates are already in the correct<br>
> CRS, and st_transform() to reproject coordinates from one CRS to another:<br>
><br>
> -- Search inside a 100m circle for a point already in SRID=2600:<br>
> SELECT * FROM users<br>
> WHERE ST_DWithin (users.location, st_setsrid(st_makepoint (508560, 6155116),<br>
> 2600), 100);<br>
><br>
> -- Search inside a 100m circle for a point in longitude/latitude, projected<br>
> into SRID=2600:<br>
> SELECT * FROM users<br>
> WHERE ST_DWithin (users.location, st_transform(st_setsrid(st_makepoint (24.1<br>
> 55.5), 4326), 2600), 100);<br>
><br>
> (users.location SRID should be 2600 in these examples)<br>
><br>
> Nicolas<br>
><br>
><br>
><br>
> On 22 March 2015 at 12:09, Aaron Lewis <<a href="mailto:the.warl0ck.1989@gmail.com">the.warl0ck.1989@gmail.com</a>> wrote:<br>
>><br>
>> Hi,<br>
>><br>
>> I've been searching online for days. Trying to understand why SRID is<br>
>> required. So I picked some random value.<br>
>><br>
>> Now I'm need to retrieve POINTs within a circle range, e.g a circle at<br>
>> (146.0, 138.19) with radius of 100 meters:<br>
>><br>
>> SELECT * FROM users<br>
>> WHERE ST_DWithin (users.location, st_setsrid(st_makepoint (146.0,<br>
>> 138.19), 2600), 100);<br>
>><br>
>> It's very simple, but the result seems wrong. I have a record contains<br>
>> a POINT(55 43) that matches this query.<br>
>><br>
>> Anyone know what's wrong with it?<br>
>><br>
>> --<br>
>> Best Regards,<br>
>> Aaron Lewis - PGP: 0x13714D33 - <a href="http://pgp.mit.edu/" target="_blank">http://pgp.mit.edu/</a><br>
>> Finger Print:   9F67 391B B770 8FF6 99DC  D92D 87F6 2602 1371 4D33<br>
>> _______________________________________________<br>
>> postgis-users mailing list<br>
>> <a href="mailto:postgis-users@lists.osgeo.org">postgis-users@lists.osgeo.org</a><br>
>> <a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users</a><br>
><br>
><br>
><br>
> _______________________________________________<br>
> postgis-users mailing list<br>
> <a href="mailto:postgis-users@lists.osgeo.org">postgis-users@lists.osgeo.org</a><br>
> <a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users</a><br>
<br>
<br>
<br>
--<br>
Best Regards,<br>
Aaron Lewis - PGP: 0x13714D33 - <a href="http://pgp.mit.edu/" target="_blank">http://pgp.mit.edu/</a><br>
Finger Print:   9F67 391B B770 8FF6 99DC  D92D 87F6 2602 1371 4D33<br>
_______________________________________________<br>
postgis-users mailing list<br>
<a href="mailto:postgis-users@lists.osgeo.org">postgis-users@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users</a><br>
</div></div></blockquote></div><br></div>