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_GeomFromCollection

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

Remarque :

PostgreSQL uniquement

Définition

ST_GeomFromCollection renvoie un jeu de lignes st_geometry. Chaque ligne comprend une géométrie et un entier. L’entier représente la position de la géométrie dans le jeu.

Utilisez la fonction ST_GeomFromCollection pour accéder à chaque géométrie individuelle d’une géométrie multi-parties. Lorsque la géométrie en entrée est une collection ou une géométrie multi-parties (par exemple, ST_MultiLineString, ST_MultiPoint, ST_MultiPolygon), ST_GeomFromCollection renvoie un enregistrement pour chaque composant de la collection, et le chemin exprime la position du composant dans la collection.

Si vous utilisez ST_GeomFromCollection sur une géométrie simple (par exemple, ST_Point, ST_LineString, ST_Polygon), un seul enregistrement est renvoyé avec un chemin vide puisqu’il n’existe qu’une seule géométrie.

Syntaxe

sde.st_geomfromcollection (shape sde.st_geometry)

Pour renvoyer uniquement la géométrie, utilisez (sde.st_geomfromcollection (shape)).st_geo.

Pour renvoyer uniquement la position de la la géométrie, utilisez (sde.st_geomfromcollection (shape)).path[1].

Type de retour

Jeu ST_Geometry

Exemple

Dans cet exemple, créez une classe d’entités multiligne (ghanasharktracks) contenant une seule entité avec une forme à quatre parties.

--Create the feature class.
CREATE TABLE ghanasharktracks (objectid integer, shape sde.st_geometry);
--Insert a multiline with four parts using SRID 4326.
INSERT INTO ghanasharktracks VALUES
 (1,
  sde.st_geometry('MULTILINESTRING Z (( 1 1 0, 1 6 0),(1 3 0, 3 3 0),(3 1 0, 3 3 0), (4 1 0, 4 6 0))',
  4326
  )
 );

Pour avoir la confirmation que le champ contient des données, interrogez la table. Utilisez ST_AsText directement sur le champ de forme pour afficher les coordonnées de la forme en tant que texte. Notez que le texte descriptif de l’objet multilinestring est renvoyé.

--View inserted feature. SELECT gst_orig.objectid, sde.st_astext(gst_orig.shape) shapetext FROM ghanasharktracks gst_orig;
shapetext
-------------------------------
"MULTILINESTRING Z (( 1.00000000 1.00000000 0.00000000, 1.00000000 6.00000000 0.00000000),(1.00000000 3.00000000 0.00000000, 3.00000000 3.00000000 0.00000000),(3.00000000 1.00000000 0.00000000, 3.00000000 3.00000000 0.00000000), (4.00000000 1.00000000 0.00000000, 4.00000000 6.00000000 0.00000000))"

Pour renvoyer chaque géométrie linestring individuellement, utilisez la fonction ST_GeomFromCollection. Pour afficher la géométrie sous forme de texte, cet exemple utilise la fonction ST_AsText avec la fonction ST_GeomFromCollection.

--Return each linestring in the multilinestring
SELECT sde.st_astext((sde.st_geomfromcollection(gst.shape)).st_geo) shapetext, ((sde.st_geomfromcollection(gst.shape)).path[1]) path FROM ghanasharktracks gst;
shapetext                                                                                     path
-----------------------------------------------------------------------------------------------------------
"LINESTRING Z ( 1.00000000 1.00000000 0.00000000, 1.00000000 6.00000000 0.00000000)"          1
"LINESTRING Z ( 1.00000000 3.00000000 0.00000000, 3.00000000 3.00000000 0.00000000)"          2
"LINESTRING Z ( 3.00000000 1.00000000 0.00000000, 3.00000000 3.00000000 0.00000000)"          3
"LINESTRING Z ( 4.00000000 1.00000000 0.00000000, 4.00000000 6.00000000 0.00000000)"          4

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