ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Hilfe
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Die Mapping-Plattform für Ihre Organisation

ArcGIS Desktop

Ein vollständiges professionelles GIS

ArcGIS Enterprise

GIS in Ihrem Unternehmen

ArcGIS Developers

Werkzeuge zum Erstellen standortbezogener Apps

ArcGIS Solutions

Kostenlose Karten- und App-Vorlagen für Ihre Branche

ArcGIS Marketplace

Rufen Sie Apps und Daten für Ihre Organisation ab.

  • Dokumentation
  • Support
Esri
  • Anmelden
user
  • Eigenes Profil
  • Abmelden

ArcMap

  • Startseite
  • Erste Schritte
  • Karte
  • Analysieren
  • Daten verwalten
  • Werkzeuge
  • Erweiterungen

ST_Perimeter

  • Definition
  • Syntax
  • Rückgabetyp
  • Beispiele

Definition

"ST_Perimeter" gibt die Länge der kontinuierlichen Linie zurück, die die Grenze eines geschlossenen Polygon- oder Multipolygon-Features bildet.

Diese Funktion ist erstmals in Version 10.8.1 verfügbar.

Syntax

Mit den ersten beiden Optionen in jedem Abschnitt wird den Umfang in den Einheiten des für das Feature definierten Koordinatensystems zurückgegeben. Mit den beiden zweiten Optionen können Sie die lineare Messeinheit angeben. Eine Liste der unterstützten Werte für linear_unit_name finden Sie unter ST_Distance.

Oracle und PostgreSQL

sde.st_perimeter (polygon sde.st_geometry)

sde.st_perimeter (multipolygon sde.st_geometry)

sde.st_perimeter (polygon sde.st_geometry, linear_unit_name text)

sde.st_perimeter (multipolygon sde.st_geometry, linear_unit_name text)

SQLite

st_perimeter (polygon sde.st_geometry)

st_perimeter (multipolygon sde.st_geometry)

st_perimeter (polygon sde.st_geometry, linear_unit_name text)

st_perimeter (multipolygon sde.st_geometry, linear_unit_name text)

Rückgabetyp

Doppelte Genauigkeit

Beispiele

Oracle

Im folgenden Beispiel muss ein Ökologe im Rahmen einer Untersuchung zu Küstenvögeln die Uferlänge für die Seen in einem bestimmten Gebiet ermitteln. Die Seen sind als Polygone in der Tabelle waterbodies gespeichert. Eine SELECT-Anweisung unter Verwendung der Funktion "ST_Perimeter" wird verwendet, um den Umfang der einzelnen Seen (Features) in der Tabelle waterbodies zurückzugeben.

--Create table named waterbodies
CREATE TABLE waterbodies (wbid INTEGER not null, waterbody sde.st_geometry);
--Insert a polygon feature to the waterbodies table
INSERT INTO waterbodies VALUES (
  1,
  sde.ST_Polygon ('polygon ((0 0, 0 4, 5 4, 5 0, 0 0))', 1)
);
--Find the perimeter of the polygon
SELECT sde.ST_Perimeter (waterbody)
  FROM waterbodies;

Die SELECT-Anweisung gibt Folgendes zurück:

ID PERIMETER
1 +1.8000000

Im nächsten Beispiel erstellen Sie eine Tabelle namens "bfp", fügen drei Features ein und berechnen den Umfang jedes Features in linearen Messeinheiten:

--Create table named bfp
CREATE TABLE bfp (
 building_id integer not null,
 footprint sde.st_geometry);
--Insert polygon features to the bfp table
INSERT INTO BFP (building_id, footprint) VALUES (
 1, 
 sde.st_polygon ('polygon ((0 0, 0 10, 10 10, 10 0, 0 0))', 4326)
);
INSERT INTO BFP (building_id, footprint) VALUES (
 2, 
 sde.st_polygon ('polygon ((20 0, 30 20, 40 0, 20 0))', 4326)
);
INSERT INTO BFP (building_id, footprint) VALUES (
 3,
 sde.st_polygon ('polygon ((20 30, 25 35, 30 30, 20 30))', 4326)
);
--Find the perimeter of each polygon
SELECT sde.ST_Perimeter(footprint)
            ,sde.ST_Perimeter(footprint, 'meter') as Meter
            ,sde.ST_Perimeter(footprint, 'km') as KM
            ,sde.ST_Perimeter(footprint, 'yard') As Yard
FROM bfp;

Die SELECT-Anweisung gibt den Umfang jedes Features in drei Einheiten zurück:

st_perimeter    |       meter       |         km         |        yard
-------------------+-------------------+--------------------+--------------------
 40.00000000000001 | 4421256.128972424 |  4421.256128972425 |   4835144.49800134
  64.7213595499958 | 7159231.951087892 | 7159.2319510878915 |  7829431.267593933
 24.14213562373095 | 2417672.365575198 |  2417.672365575198 | 2643998.6500166208

PostgreSQL

Im folgenden Beispiel muss ein Ökologe im Rahmen einer Untersuchung zu Küstenvögeln die Uferlänge für die Seen in einem bestimmten Gebiet ermitteln. Die Seen sind als Polygone in der Tabelle waterbodies gespeichert. Eine SELECT-Anweisung unter Verwendung der Funktion "ST_Perimeter" wird verwendet, um den Umfang der einzelnen Seen (Features) in der Tabelle waterbodies zurückzugeben.

--Create table named waterbodies
CREATE TABLE waterbodies (wbid INTEGER not null, waterbody sde.st_geometry);
--Insert a polygon feature to the waterbodies table
INSERT INTO waterbodies VALUES (
  1,
  sde.ST_Polygon ('polygon ((0 0, 0 4, 5 4, 5 0, 0 0))', 1)
);
--Find the perimeter of the polygon
SELECT sde.ST_Perimeter (waterbody)
  FROM waterbodies;

Die SELECT-Anweisung gibt Folgendes zurück:

ID PERIMETER
1 +1.8000000

Im nächsten Beispiel erstellen Sie eine Tabelle namens "bfp", fügen drei Features ein und berechnen den Umfang jedes Features in linearen Messeinheiten:

--Create table named bfp
CREATE TABLE bfp (
 building_id serial,
 footprint sde.st_geometry);
--Insert polygon features to the bfp table
INSERT INTO bfp (footprint) VALUES (
 sde.st_polygon ('polygon ((0 0, 0 10, 10 10, 10 0, 0 0))', 4326)
);
INSERT INTO bfp (footprint) VALUES (
 sde.st_polygon ('polygon ((20 0, 30 20, 40 0, 20 0))', 4326)
);
INSERT INTO bfp (footprint) VALUES (
 sde.st_polygon ('polygon ((20 30, 25 35, 30 30, 20 30))', 4326)
);
--Find the perimeter of each polygon
SELECT sde.st_perimeter(footprint)
            ,sde.st_perimeter(footprint, 'meter') as Meter
            ,sde.st_perimeter(footprint, 'km') as KM
            ,sde.st_perimeter(footprint, 'yard') As Yard
FROM bfp;

Die SELECT-Anweisung gibt den Umfang jedes Features in drei Einheiten zurück:

 st_perimeter    |       meter       |         km         |        yard
-------------------+-------------------+--------------------+--------------------
 40.00000000000001 | 4421256.128972424 |  4421.256128972425 |   4835144.49800134
  64.7213595499958 | 7159231.951087892 | 7159.2319510878915 |  7829431.267593933
 24.14213562373095 | 2417672.365575198 |  2417.672365575198 | 2643998.6500166208

SQLite

Im folgenden Beispiel muss ein Ökologe im Rahmen einer Untersuchung zu Küstenvögeln die Uferlänge für die Seen in einem bestimmten Gebiet ermitteln. Die Seen sind als Polygone in der Tabelle waterbodies gespeichert. Eine SELECT-Anweisung unter Verwendung der Funktion "ST_Perimeter" wird verwendet, um den Umfang der einzelnen Seen (Features) in der Tabelle waterbodies zurückzugeben.

--Create table named waterbodies and add a spatial column (waterbody) to it
CREATE TABLE waterbodies (wbid integer primary key autoincrement not null
);
SELECT AddGeometryColumn(
 NULL,
 'waterbodies',
 'waterbody',
 4326,
 'polygon',
 'xy',
 'null'
);
--Insert a polygon feature to the waterbodies table
INSERT INTO waterbodies VALUES (
  1,
  ST_Polygon ('polygon ((0 0, 0 4, 5 4, 5 0, 0 0))', 1)
);
--Find the perimeter of the polygon
SELECT ST_Perimeter (waterbody)
  FROM waterbodies;

Die SELECT-Anweisung gibt Folgendes zurück:

ID PERIMETER
1 +1.8000000

Im nächsten Beispiel erstellen Sie eine Tabelle namens "bfp", fügen drei Features ein und berechnen den Umfang jedes Features in linearen Messeinheiten:

--Create table named bfp and add a spatial column (footprints) to it
CREATE TABLE bfp (
 building_id integer primary key autoincrement not null
);
SELECT AddGeometryColumn(
 NULL,
 'bfp',
 'footprint',
 4326,
 'polygon',
 'xy',
 'null'
);
--Insert polygon features to the bfp table
INSERT INTO bfp (footprint) VALUES (
 st_polygon ('polygon ((0 0, 0 10, 10 10, 10 0, 0 0))', 4326)
);
INSERT INTO bfp (footprint) VALUES (
 st_polygon ('polygon ((20 0, 30 20, 40 0, 20 0))', 4326)
);
INSERT INTO bfp (footprint) VALUES (
 st_polygon ('polygon ((20 30, 25 35, 30 30, 20 30))', 4326)
);
--Find the perimeter of each polygon
SELECT ST_Perimeter(footprint)
            ,ST_Perimeter(footprint, 'meter') as Meter
            ,ST_Perimeter(footprint, 'km') as KM
            ,ST_Perimeter(footprint, 'yard') As Yard
FROM bfp;

Die SELECT-Anweisung gibt den Umfang jedes Features in drei Einheiten zurück:

 st_perimeter    |       meter       |         km         |        yard
-------------------+-------------------+--------------------+--------------------
 40.00000000000001 | 4421256.128972424 |  4421.256128972425 |   4835144.49800134
  64.7213595499958 | 7159231.951087892 | 7159.2319510878915 |  7829431.267593933
 24.14213562373095 | 2417672.365575198 |  2417.672365575198 | 2643998.6500166208

Verwandte Themen

  • Laden der SQLite-Bibliothek "ST_Geometry"

ArcGIS Desktop

  • Startseite
  • Dokumentation
  • Support

ArcGIS

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

Über Esri

  • Über uns
  • Karriere
  • Esri Blog
  • User Conference
  • Developer Summit
Esri
Wir sind an Ihrer Meinung interessiert.
Copyright © 2021 Esri. | Datenschutz | Rechtliches