Rechercher dans une table les fonctions les plus proches d'une géométrie définie

Description

Recherche dans une table nommée du référentiel les fonctions les plus proches d'une géométrie définie, à une certaine distance. Vous pouvez renvoyer l'ensemble des données d'attribut ou certaines données d'attribut spécifiques et trier les données renvoyées en fonction d'un attribut. Voici quelques règles de base pour la méthode searchNearest :

  • Renvoie une collection de fonctions ainsi que les attributs.
  • Renvoie la valeur de distance dans la réponse, via le paramètre distanceAttributeName précisé dans la requête.
  • Renvoie la distance dans l'unité précisée dans le paramètre withinDistance.
  • Renvoie les résultats, par défaut, du plus proche au plus éloigné.
  • L'attribut q doit être le type de requête searchNearest.
  • Le nombre maximal de fonctions renvoyées est défini via le paramètre maxFeatures de la requête ou le paramètre maxCandidates de la configuration de Feature Service. Par défaut, cette valeur est de 1 000 fonctions.
  • Si vous précisez les paramètres de matrice attribute et orderBy, vous pouvez en répertorier plusieurs dans une liste, séparés par des virgules.
  • Si vous utilisez le paramètre de matrice orderBy, vous devez préciser le sens de tri D (descendant) ou A (Ascendant).

Cette opération renvoie une collection de fonctions JSON qui peut être transmise à une demande d'affichage de carte ou de légende dans Mapping Service.

Flux d'autorisation ACL

Pour rechercher dans une table nommée du référentiel les fonctions les plus proches d'une géométrie spécifiée, à une certaine distance, l'utilisateur (ou les rôles auxquels il appartient) aura besoin de l'autorisation Execute sur la table nommée de la manière suivante :

  • « EXECUTE » pour le type d'entité « Location Intelligence.Named Resources »

Format d'URL GET HTTP

Les requêtes GET HTTP se présentent au format suivant :


HTTP GET /tables/tablename/features.rep;[attributes=attname];[orderBy=attname dir]
?q=searchNearest&geometry=geom,srs&[withinDistance=distance unit]
&[distanceAttributeName=distanceAttributeName]&[geometryAttributeName=geomname]
&destinationSrs&[page=pagenumber]&[pageLength=pagelength]
&[maxFeatures=maxfeatures]
			

Paramètres

Pour plus d'informations sur les types de paramètres répertoriés ci-dessous, reportez-vous à la section Types de données d'URL de requête.

Paramètre Type Obligatoire Description
tablename Chaîne oui Nom de la table dont renvoyer les métadonnées. La table est définie par une balise RegEx pour la table nommée à afficher basée sur l'emplacement de la table nommée dans le référentiel. Le nom de la table nommée est défini entre la portion /tables de l'URL et la portion /metadata.rep de l'URL. Par exemple, pour renvoyer les métadonnée d'une table nommée se trouvant le répertoire /Samples/NamedTables/WorldTable du référentiel, l'URL suivante est utilisée :
.../FeatureService/tables/Samples/NamedTables
/WorldTable/metadata.json;...
rep Chaîne oui Représentation à renvoyer. La représentation prise en charge est json.
attributes=attname Chaîne non Noms d'attribut de la table à renvoyer dans la réponse. Par défaut, tous les attributs sont renvoyés. Il est possible de définir plusieurs attributs dans une liste, séparés par des virgules. Il s'agit d'une méthode simple pour limiter la quantité d'informations renvoyées dans la réponse pour n'y inclure que les informations requises. Chaque fonction de la collection de fonctions obtenue ne contient que les attributs précisés. Par exemple, si la table contient quatre attributs, mais que seulement deux d'entre eux sont requis dans la réponse, il est possible de préciser ici le nom de ces deux attributs (séparés par une virgule) et les valeurs des deux autres ne seront pas renvoyées.
orderBy=attname dir Chaîne non Nom d'attribut et sens de tri des résultats renvoyés. Par défaut, les résultats sont triés du plus proche au plus éloigné, en fonction de la distance par rapport au point défini. Si vous précisez un attribut pour trier les résultats, vous devez inclure le nom d'attribut et le sens de tri (A pour ascendant (éloigné vers proche) ou D pour descendant (proche vers éloigné)).
q=searchNearest Chaîne oui Méthode de requête à exécuter. Il doit s'agir de searchNearest.
geometry=geom,srs Chaîne oui Géométrie utilisée comme point de départ de la recherche. La géométrie doit inclure le type de géométrie, les coordonnées et le système de référence spatiale de la géométrie. Par exemple :
 geometry={"type":"Polygon", "coordinates":[[[-96.8,30.5],[-97.7,30.5], [-97.7,29.9],[-96.8,29.9],[-96.8,30.5]]], "crs":{"type":"name", "properties":{"name":"epsg:4231"}}}
Remarque : Si aucune propriété CRS n'est spécifiée, EPSG:4326 est considéré comme la valeur CRS par défaut.
withinDistance=

distanceunit

Chaîne non Distance faisant l'objet de la recherche autour de la géométrie. Lorsqu'elle est précisée, la distance doit inclure la valeur de distance et l'unité de distance. Les valeurs de distance renvoyées dans la réponse sont exprimées dans les unités précisées dans la requête (par défaut, il s'agit de mètres).
distanceAttributeName=

geomname

Chaîne non Nom de l'attribut de distance à renvoyer dans la réponse. Cet attribut est utilisé pour renvoyer la valeur de distance de la géométrie par rapport aux fonctions trouvées les plus proches. Si le paramètre distanceAttributeName n'est pas précisé, la valeur de distance par rapport à chaque fonction n'est pas renvoyée dans la réponse.
geometryAttributeName=

geomname

Chaîne non Attribut de définition géométrique de la table à utiliser pour le traitement de la requête spatiale. Cet attribut n'est nécessaire que pour les tables contenant plus d'une définition d'attribut géométrique.
destinationSrs Chaîne non Système de coordonnées dans lequel renvoyer les géométries obtenues. Le système de coordonnées par défaut est celui des données utilisées (par exemple, epsg:4326).
page=pagenumber Chaîne non Numéro de page à renvoyer.
pageLength=pagelength Chaîne non Nombre de fonctions renvoyées sur chaque page. Si le paramètre page est précisé dans la requête, vous devez définir pageLength.
maxFeatures=

maxfeatures

Chaîne non Nombre total de fonctions renvoyées dans la réponse. Si le paramètre maxFeatures n'est pas précisé dans la requête, le paramètre maxCandidates de la configuration de Feature Service est utilisé. Par défaut, cette valeur est de 1 000 fonctions.
tablePointAttributeName=tblPointName Chaîne non Renvoie le point le plus proche de la géométrie de table recherchée. Indique le nom d'un attribut supplémentaire à ajouter à la réponse contenant le point le plus proche de la géométrie de la table, de la distance minimale à la géométrie demandée spécifiée. Aucun attribut ne sera ajouté si cela n'est pas spécifié.
geomPointAttributeName=geomPointAttributeName Chaîne non Renvoie le point le plus proche de la géométrie demandée. Indique le nom d'un attribut supplémentaire à ajouter à la réponse contenant un point de la géométrie demandée spécifiée, de la distance minimale à la géométrie de la table recherchée. Aucun attribut ne sera ajouté si cela n'est pas spécifié.

Résultat

Renvoie les métadonnées d'une table nommée du référentiel.

Exemples

Renvoie les capitales du monde les plus proches qui se trouvent à une distance de 5 000 de la géométrie de point définie.



http://www.pbbi.com/rest/Spatial/FeatureService/tables/Samples/NamedTables/WorldcapTable/features.json?
q=SearchNearest&geometry={"type":"Point","coordinates":[-97.672598,30.252092],"crs":
{"type":"name","properties":{"name":"epsg:4231"}}}&withinDistance=5000%20mi

			

Renvoie les trois capitales d'État des États-Unis les plus proches et qui se trouvent à une distance de 5 000 miles de la géométrie définie.



http://www.pbbi.com/rest/Spatial/FeatureService/tables/Samples/NamedTables/USA_CAPS/features.json?
q=SearchNearest&geometry={"type":"Polygon","coordinates":[[[-96.8,30.5],[-97.7,30.5],
[-97.7,29.9],[-96.8,29.9],[-96.8,30.5]]],"crs":{"type":"name","properties":{"name":"epsg:4231"}}}
&withinDistance=5000%20mi&maxFeatures=3

			

Renvoie les trois capitales d'État des États-Unis les plus proches et qui se trouvent à une distance de 1 000 miles de la géométrie de point définie. La distance par rapport à chaque fonction est renvoyée dans l'attribut withinDistanceFromGeometry dans la réponse et le calcul est basé sur les géométries de la colonne GEOLOC de la table nommée USA_CAPS.

"http://localhost:8080/rest/Spatial/FeatureService/tables/Samples/
NamedTables/USA_CAPS/features.json?q=SearchNearest&geometry={%22type%22:%22Point%22,%22coordinates%22:
[-97.672598,30.252092],%22crs%22:{%22type%22:%22name%22,%22properties%22:{%22name%22:%22epsg:4231%22}}}
&withinDistance=1000%20mi&maxFeatures=3&
distanceAttributeName=withinDistanceFromGeometry&geometryAttributeName=Obj"
format="json" scope="external">