SqlGeography.Reduce 方法 (Double)
返回给定地域实例的近似值,该值通过对实例运行具有给定公差的 Douglas-Peucker 算法来生成。
命名空间: Microsoft.SqlServer.Types
程序集: Microsoft.SqlServer.Types(位于 Microsoft.SqlServer.Types.dll)
语法
[SqlMethodAttribute(IsDeterministic = true, IsPrecise = false)]
public SqlGeography Reduce(
double tolerance
)
public:
[SqlMethodAttribute(IsDeterministic = true, IsPrecise = false)]
SqlGeography^ Reduce(
double tolerance
)
[<SqlMethodAttribute(IsDeterministic = true, IsPrecise = false)>]
member Reduce :
tolerance:float -> SqlGeography
<SqlMethodAttribute(IsDeterministic := True, IsPrecise := False)>
Public Function Reduce (
tolerance As Double
) As SqlGeography
参数
tolerance
Type: System.Double是 double 表示输入到 Douglas-peucker 算法的公差。 公差必须为正数。
返回值
Type: Microsoft.SqlServer.Types.SqlGeography
一个 SqlGeography 值,该值表示对当前实例的近似。
备注
对于集合类型,此算法单独作用于包含在该实例中的每个 SqlGeography。 此算法不修改 Point 实例。
此方法将尝试保留 LineString 实例的端点,但是可能为了保留有效结果而无法实现此目的。
如果使用负值调用减少,则此方法将生成 ArgumentException。 在 Reduce 中使用的公差必须为正数。
通过删除除起点和终点之外的所有点,Douglas-Peucker 算法可用于 geography 实例中的每个曲线或圆环。 删除每个点是然后重新添加,开头最远的美属外点,直到所有点比从结果的容差的详细信息。 然后,如果必要,使结果变得有效,因为必须保证有一个有效的结果。
此方法是确定性的方法,但是不精确。
另请参阅
SqlGeography 类
Microsoft.SqlServer.Types 命名空间
返回页首