Sdílet prostřednictvím


MakeValid (datový typ geometrie)

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL databáze v Microsoft Fabric

Převede neplatnou instanci geometrie na instanci geometrie s platným typem Open Geospatial Consortium (OGC).

Syntax

  
.MakeValid ()  

Návratové typy

Návratový typ SQL Serveru: geometrie

Návratový typ CLR: SqlGeometry

Remarks

Tato metoda může způsobit změnu typu instance geometrie a také způsobit, že body instance geometrie se mírně posunou.

Examples

První příklad vytvoří neplatnou LineString instanci, která se překrývá sama sebe a používá STIsValid() k potvrzení, že se jedná o neplatnou instanci. STIsValid() vrátí hodnotu 0 pro neplatnou instanci.

DECLARE @g geometry;  
SET @g = geometry::STGeomFromText('LINESTRING(0 2, 1 1, 1 0, 1 1, 2 2)', 0);  
SELECT @g.STIsValid();  

Druhý příklad používá MakeValid() k ověření platnosti instance a k otestování, že instance je skutečně platná. STIsValid() vrátí hodnotu 1 pro platnou instanci.

SET @g = @g.MakeValid();  
SELECT @g.STIsValid();  

Třetí příklad ověřuje, jak byla instance změněna, aby byla platná instance.

SELECT @g.ToString();  

Pokud je v tomto příkladu LineString vybrána instance, vrátí se hodnoty jako platná MultiLineString instance.

MULTILINESTRING ((0 2, 1 1, 2 2), (1 1, 1 0))  

Následující příklad převede Instance CircularString na point instance.

DECLARE @g geometry = 'CIRCULARSTRING(1 1, 1 1, 1 1)';  
SELECT @g.MakeValid().ToString();  

Viz také

STIsValid (datový typ geometrie)
Rozšířené metody v instancích geometrie