Поделиться через


STBuffer (тип данных geography)

Возвращает географический объект, представленный объединением всех точек, расстояние которых от экземпляра geography меньше указанного значения или равно ему.

Синтаксис

                .STBuffer ( distance )

Аргумент

  • distance
    Значение типа float (double в .NET Framework), указывающее расстояние от объекта geography, вокруг которого вычисляется буфер.

Тип возвращаемых данных

Возвращаемый тип SQL Server: geography

Возвращаемый тип CLR: SqlGeography

Замечания

Метод STBuffer() вычисляет буфер аналогично методам BufferWithTolerance, задавая аргументы tolerance = distance * 0,001 и relative = false.

Отрицательный буфер удаляет все точки в пределах заданного расстояния от границы экземпляра geography.

Погрешность между теоретическим и вычисленным значением буфера составляет max(допуск, экстенты * 1.E-7), где допуск равен расстоянию * 0,001. Дополнительные сведения об экстентах см. в разделе Справочник по методам типа данных geography.

Примеры

В следующем примере создается экземпляр LineStringgeography. Затем используется метод STBuffer(), чтобы возвратить область в пределах 1 метра от экземпляра.

DECLARE @g geography;
SET @g = geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326);
SELECT @g.STBuffer(1).ToString();