BufferWithTolerance (type de données geography)BufferWithTolerance (geography Data Type)

S’APPLIQUE À : ouiSQL Server (à partir de 2008) ouiAzure SQL Database nonAzure SQL Data Warehouse nonParallel Data Warehouse APPLIES TO: yesSQL Server (starting with 2008) yesAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Retourne un objet géométrique qui représente l’union de toutes les valeurs de points dont la distance par rapport à une instance geography est inférieure ou égale à une valeur spécifique, en tenant compte d’une tolérance spécifique.Returns a geometric object representing the union of all point values whose distance from a geography instance is less than or equal to a specified value, allowing for a specified tolerance.

Cette méthode de type de données geography prend en charge les instances FullGlobe ou les instances spatiales qui sont plus grandes qu’un hémisphère.This geography data type method supports FullGlobe instances or spatial instances that are larger than a hemisphere.

SyntaxeSyntax

  
.BufferWithTolerance ( distance, tolerance, relative )  

ArgumentsArguments

distancedistance
Expression float spécifiant la distance de l’instance geography autour de laquelle calculer la mémoire tampon.Is a float expression specifying the distance from the geography instance around which to calculate the buffer.

La distance maximale du tampon ne peut pas dépasser 0,999 * π * minorAxis * minorAxis / majorAxis (~0,999 * 1/2 de la circonférence de la Terre) ou le globe complet.The maximum distance of the buffer can't exceed 0.999 * π * minorAxis * minorAxis / majorAxis (~0.999 * 1/2 Earth's circumference) or the full globe.

tolerancetolerance
Expression float spécifiant la tolérance de la distance de mémoire tampon.Is a float expression specifying the tolerance of the buffer distance.

La variation maximale dans la distance de mémoire tampon idéale pour l’approximation linéaire retournée est la valeur de tolérance.The maximum variation in the ideal buffer distance for the returned linear approximation is the tolerance value.

Par exemple, la distance de mémoire tampon idéale d'un point est un cercle, mais elle doit être exprimée de façon à se rapprocher d'un polygone.For example, the ideal buffer distance of a point is a circle, but this distance must be approximated by a polygon. Plus la tolérance est faible, plus le polygone a de points.The smaller the tolerance, the more points the polygon will have. Ceci augmente la complexité du résultat, mais réduit l’erreur au minimum.This result increases the complexity of the result, but minimizes the error.

La limite minimum est de 0,1 pour cent de la distance, plus toute tolérance inférieure à la valeur qui sera arrondie à la limite minimale.The minimum limit is 0.1 percent of the distance, and any tolerance less than that will be rounded up to the minimum limit.

relativerelative
bit spécifiant si la valeur de tolerance est relative ou absolue.Is a bit specifying whether the tolerance value is relative or absolute. Si la valeur est « TRUE » ou 1, la tolérance est relative.If the value is 'TRUE' or 1, tolerance is relative. Cette valeur est le produit du paramètre tolérance et du rayon équatorial de l'ellipsoïde de l'étendue angulaire *.This value is the product of the tolerance parameter and the angular extent * equatorial radius of the ellipsoid. La tolérance est absolue si la valeur est « FALSE » ou 0.The tolerance is absolute if the value is 'FALSE' or 0. Cette valeur tolerance est la variation maximale dans la distance de mémoire tampon idéale pour l’approximation linéaire retournée.This tolerance value is the absolute maximum variation in the ideal buffer distance for the returned linear approximation.

Types de retourReturn Types

Type de retour SQL ServerSQL Server : geographySQL ServerSQL Server return type: geography

Type de retour CLR : SqlGeographyCLR return type: SqlGeography

Notes Remarks

Cette méthode lève ArgumentException si distance est une valeur NAN (n’est pas un nombre), ou si distance est un infini positif ou négatif.This method throws an ArgumentException if the distance isn't a number (NAN), or if distance is positive or negative infinity. Cette méthode lève également ArgumentException si tolerance est égal à zéro (0), est une valeur NAN (n’est pas un nombre), est une valeur négative, ou est un infini positif ou négatif.This method also throws an ArgumentException if tolerance is zero (0), not a number (NaN), negative, or positive or negative infinity.

STBuffer() retourne une instance FullGlobe dans certains cas ; par exemple STBuffer() retourne une instance FullGlobe sur deux pôles quand la distance de mémoire tampon est supérieure à la distance entre l’équateur et les pôles.STBuffer() will return a FullGlobe instance in certain cases; for example, STBuffer() returns a FullGlobe instance on two poles when the buffer distance is greater than the distance from the equator to the poles.

Cette méthode lève ArgumentException dans les instances FullGlobe où la distance de mémoire tampon dépasse la limite suivante :This method will throw an ArgumentException in FullGlobe instances where the distance of the buffer exceeds the following limitation:

0,999 * π * minorAxis * minorAxis / majorAxis (~0,999 * 1/2 de la circonférence de la Terre)0.999 * π * minorAxis * minorAxis / majorAxis (~0.999 * 1/2 Earth's circumference)

L’erreur entre la mémoire tampon théorique et la mémoire tampon calculée correspond à max(tolérance, étendues * 1E-7), où tolérance représente la valeur du paramètre tolerance.The error between the theoretical and computed buffer is max(tolerance, extents * 1.E-7) where tolerance is the value of the tolerance parameter. Pour plus d’informations sur les étendues, consultez Référence de méthodes de type de données geography.For more information on extents, see geography Data Type Method Reference.

Cette méthode n'est pas précise.This method isn't precise.

ExemplesExamples

L'exemple suivant crée une instance Point et utilise BufferWithTolerance() pour obtenir une estimation grossière de la mémoire tampon autour d'elle.The following example creates a Point instance and uses BufferWithTolerance() to obtain a rough buffer around it.

DECLARE @g geography;  
SET @g = geography::STGeomFromText('POINT(-122.34900 47.65100)', 4326);  
SELECT @g.BufferWithTolerance(1, .5, 0).ToString();  

 Voir aussiSee Also

STBuffer (type de données geography) STBuffer (geography Data Type)
Méthodes étendues sur des instances geographyExtended Methods on Geography Instances