ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Aide
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS Desktop

Un SIG professionnel complet

ArcGIS Enterprise

SIG dans votre entreprise

ArcGIS Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

ArcMap

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Extensions

ST_DWithin

  • Définition
  • Syntaxe
  • Type de retour
  • Exemple

Remarque :

Oracle et PostgreSQL uniquement

Définition

ST_DWithin accepte deux géométries en entrée et renvoie la valeur true si les géométries sont éloignées de la distance spécifiée. Sinon, la valeur false est renvoyée. Le système de référence spatiale des géométries détermine l’unité de mesure appliquée à la distance spécifiée. Ainsi, les géométries fournies à ST_DWithin doivent toutes deux utiliser les mêmes projection de coordonnées et SRID.

Syntaxe

sde.st_dwithin (st_geometry geometry1, st_geometry geometry2, double_precision distance);

Type de retour

Booléen

Exemple

Dans l’exemple suivant, deux tables sont créées et des entités y sont insérées. Puis la fonction ST_DWithin est utilisée pour déterminer si un point de la première table se situe à 100 mètres maximum d’un polygone dans le second tableau.

--Create table to store points.
CREATE TABLE dwithin_test_pt (id INT, geom sde.st_geometry);
--Create table to store polygons.
CREATE TABLE dwithin_test_poly (id INT, geom sde.st_geometry);
--Insert features into each table.
INSERT INTO dwithin_test_pt 
 VALUES
 (
  1,
  sde.st_geometry('point (1 2)', 4326)
 )
;
INSERT INTO dwithin_test_pt
 VALUES
 (
  2,
  sde.st_geometry('point (10.02 20.01)', 4326)
 )
;
INSERT INTO dwithin_test_poly
 VALUES
 (
  1,
  sde.st_geometry('polygon ((10.02 20.01, 11.92 35.64, 25.02 34.15, 19.15 33.94, 10.02 20.01))', 4326)
 )
;
INSERT INTO dwithin_test_poly
 VALUES
 (
  2,
  sde.st_geometry('polygon ((101.02 200.01, 111.92 350.64, 250.02 340.15, 190.15 330.94, 101.02 200.01))', 4326)
 )
;
Ensuite, utilisez ST_DWithin pour identifier les entités de chaque table qui sont à 100 mètres maximum les unes des autres et celles qui ne le sont pas. La fonction ST_Distance est incluse dans cette instruction pour indiquer la distance réelle entre les entités.

--Determine which features in the point table are within 100 meters of the features in the polygon table. SELECT pt.id, poly.id, sde.st_distance(pt.geom, poly.geom) distance_meters, sde.st_dwithin(pt.geom, poly.geom, 100) DWithin
 FROM dwithin_test_pt pt, dwithin_test_poly poly;

L’instruction Select renvoie les données suivantes lorsqu’elle est exécutée sur des données dans PostgreSQL :

id     id     distance_meters        dwithin
1      1      20.1425048094819       t
1      2      221.837689538996       f
2      1      0                      t
2      2      201.69531476958        f

L’instruction renvoie les données suivantes lorsqu’elle est exécutée sur des données dans Oracle :

ID     ID   DISTANCE_METERS   DWITHIN 1      1         20.1425048         1 1      2          221.83769         0 2      1                  0         1
2      2         201.695315         0

Dans l’exemple suivant, ST_DWithin est utilisée pour identifier les entités qui se trouvent à 300 mètres maximum les unes des autres :

--Determine which features in the point table are within 300 meters of the features in the polygon table.
SELECT pt.id, poly.id, sde.st_distance(pt.geom, poly.geom) distance_meters, sde.st_dwithin(pt.geom, poly.geom, 300) DWithin
 FROM dwithin_test_pt pt, dwithin_test_poly poly;

Cette seconde instruction Select renvoie les données suivantes lorsqu’elle est exécutée sur des données dans PostgreSQL :

id     id     distance_meters        dwithin
1      1      20.1425048094819       t
1      2      221.837689538996       t
2      1      0                      t
2      2      201.69531476958        t

Cette seconde instruction Select renvoie les données suivantes lorsqu’elle est exécutée sur des données dans Oracle :

ID     ID   DISTANCE_METERS    DWITHIN 1      1         20.1425048          1 1      2          221.83769          1 2      1                  0          1
2      2         201.695315          1

ArcGIS Desktop

  • Accueil
  • Documentation
  • Support

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog d’Esri
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
Donnez-nous votre avis.
Copyright © 2021 Esri. | Confidentialité | Légal