Partager via


SqlGeography.Reduce méthode (Double)

 

Retourne une approximation de l'instance géographique donnée produite en exécutant l'algorithme de Douglas-Peucker sur l'instance avec la tolérance donnée.

Espace de noms:   Microsoft.SqlServer.Types
Assembly:  Microsoft.SqlServer.Types (dans Microsoft.SqlServer.Types.dll)

Syntaxe

[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

Paramètres

  • tolerance
    Type: System.Double

    Est une valeur double qui représente la tolérance à entrer à l'algorithme de Douglas-Peucker. La tolérance doit être un nombre positif.

Valeur de retour

Type: Microsoft.SqlServer.Types.SqlGeography

Valeur SqlGeography qui représente une valeur approximative de l'instance actuelle.

Notes

Pour les types collection, cet algorithme fonctionne indépendamment sur chaque SqlGeography contenue dans l'instance. Cet algorithme ne modifie pas les instances de Point.

Cette méthode essaiera de conserver les points de terminaison d'instances LineString, mais elle peut échouer dans sa tentative afin de préserver un résultat valide.

Si la réduction est appelée avec une valeur négative, cette méthode génère une ArgumentException. Les tolérances utilisées dans Reduce doivent être des nombres positifs.

L'algorithme de Douglas-Peucker fonctionne sur chaque courbe ou anneau dans l'instance geography en supprimant tous les points à l'exception du point de départ et du point de terminaison. Chaque point supprimé est ensuite rajouté, commençant par le point excentré le plus lointain, jusqu'à ce qu’aucun point n’est supérieure à la tolérance de panne à partir du résultat. Le résultat est ensuite rendu valide si nécessaire, dans la mesure où un résultat valide est garanti.

Cette méthode est déterministe mais pas précise.

Voir aussi

SqlGeography classe
Microsoft.SqlServer.Types espace de noms

Retour au début