Delen via


MakeValid (geometriegegevenstype)

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-database in Microsoft Fabric

Converteert een ongeldig geometrie-exemplaar naar een geometrie-exemplaar met een geldig OGC-type (Open Georuimteal Consortium).

Syntax

  
.MakeValid ()  

Retourtypen

Retourtype SQL Server: geometrie

CLR-retourtype: SqlGeometry

Remarks

Deze methode kan een wijziging veroorzaken in het type geometrieexemplaren, en ervoor zorgen dat de punten van een geometrie-exemplaar enigszins verschuiven.

Examples

In het eerste voorbeeld wordt een ongeldig exemplaar LineString gemaakt dat zichzelf overlapt en gebruikt STIsValid() om te bevestigen dat het een ongeldig exemplaar is. STIsValid() retourneert de waarde 0 voor een ongeldig exemplaar.

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

In het tweede voorbeeld wordt het MakeValid() exemplaar geldig gemaakt en wordt getest of het exemplaar inderdaad geldig is. STIsValid() retourneert de waarde 1 voor een geldig exemplaar.

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

In het derde voorbeeld wordt gecontroleerd hoe het exemplaar is gewijzigd om het een geldig exemplaar te maken.

SELECT @g.ToString();  

In dit voorbeeld worden, wanneer het LineString exemplaar is geselecteerd, de waarden geretourneerd als een geldig exemplaar MultiLineString .

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

In het volgende voorbeeld wordt het CircularString-exemplaar geconverteerd naar een puntexemplaren.

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

Zie ook

STIsValid (geometriegegevenstype)
Uitgebreide methoden voor geometrieexemplaren