指定した SqlGeometry インスタンスを簡略化したものを返します。これは、指定された許容範囲で、特定のインスタンスに対して Douglas-Peucker アルゴリズムを実行することにより生成されます。
名前空間: Microsoft.SqlServer.Types
アセンブリ: Microsoft.SqlServer.Types (Microsoft.SqlServer.Types.dll)
構文
'宣言
<SqlMethodAttribute(IsDeterministic := True, IsPrecise := False)> _
Public Function Reduce ( _
tolerance As Double _
) As SqlGeometry
'使用
Dim instance As SqlGeometry
Dim tolerance As Double
Dim returnValue As SqlGeometry
returnValue = instance.Reduce(tolerance)
[SqlMethodAttribute(IsDeterministic = true, IsPrecise = false)]
public SqlGeometry Reduce(
double tolerance
)
[SqlMethodAttribute(IsDeterministic = true, IsPrecise = false)]
public:
SqlGeometry^ Reduce(
double tolerance
)
[<SqlMethodAttribute(IsDeterministic = true, IsPrecise = false)>]
member Reduce :
tolerance:float -> SqlGeometry
public function Reduce(
tolerance : double
) : SqlGeometry
パラメーター
- tolerance
型: System.Double
Douglas-Peucker アルゴリズムへの入力の許容範囲を表す double です。
戻り値
型: Microsoft.SqlServer.Types.SqlGeometry
指定された許容範囲内で、呼び出し元の SqlGeometry を簡略化したものを表す SqlGeometry オブジェクトです。
説明
コレクションの場合、このアルゴリズムはインスタンスに含まれるそれぞれの SqlGeometry で個別に実行されます。
このアルゴリズムによって Point インスタンスが変更されることはありません。
LineString インスタンスでは、Douglas-Peucker アルゴリズムはインスタンスの元の始点と終点を保持し、指定された許容範囲を超えない範囲で、結果から最も離れた元のインスタンスの地点を追加する処理を繰り返します。
Polygon インスタンスでは、Douglas-Peucker アルゴリズムが各リングに個別に適用されます。 返された Polygon インスタンスが無効な場合、メソッドは FormatException を生成します。たとえば、インスタンス内の各リングを簡略化するために Reduce が適用され、その結果としてリングが重なる場合、無効な MultiPolygon インスタンスが作成されます。