sql >> Base de Datos >  >> RDS >> Sqlserver

DbGeography hacer círculo con centro y radio

Cree un DbGeography Haga un círculo creando un PuntoDeTexto y luego Buffer ese punto por el radio. Para el sistema de coordenadas WGS84, las unidades de radio de DbGeography parecen estar en kilómetros.

string textPoint = String.Format("POINT ({0} {1})", longitude, latitude);
DbGeography point = DbGeography.PointFromText(textPoint, DbGeography.DefaultCoordinateSystemId); //4326 = [WGS84]
DbGeography targetCircle = point.Buffer(radiusKilometers);

Editado con información de adrian sobre DbGeography.DefaultCoordinateSystemId.