Udostępnij przez


MakeValid (geometrię typu danych)

Konwertuje nieprawidłową geometry wystąpienie do geometry wystąpienie z nieprawidłowego typu Open konsorcjum geograficzne (OGC).

Składnia

.MakeValid ()

Zwracane typy

SQL Serverzwracany typ: geometry

Zwracany typ CLR: SqlGeometry

Uwagi

Ta metoda może spowodować zmianę typu geometry wystąpienie, jak również przyczyną punkty geometry wystąpienie przesunięcie nieco.

Przykłady

Pierwszy przykład tworzy nieprawidłową LineString wystąpienie , nakłada się na siebie i używa STIsValid() potwierdzić, że jest nieprawidłowe wystąpienie.STIsValid()Zwraca wartość 0 nieprawidłowe wystąpienie.

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

W drugim przykładzie użyto MakeValid() Aby wystąpienie prawidłowe i sprawdzić, czy wystąpienie jest w rzeczywistości prawidłowe.STIsValid()Zwraca wartość 1 prawidłowe wystąpienie.

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

Trzecim przykładzie sprawdza, jak zmieniono wystąpienie dokonanie prawidłowe wystąpienie.

SELECT @g.ToString();

W tym przykładzie gdy LineStringzaznaczonewystąpienie wartości są zwracane jako prawidłowy MultiLineStringwystąpienie.

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