MultiLineString
Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di Azure
Un'istanza MultiLineString è una raccolta di zero o più istanze di tipo geometry o geographyLineString .
Istanze MultiLineString
La figura seguente illustra esempi di istanze MultiLineString .
Come indicato nell'illustrazione:
La figura 1 è un'istanza MultiLineString di tipo semplice il cui limite sono i quattro endpoint dei due elementi LineString .
La figura 2 è un'istanza di tipo semplice MultiLineString perché si intersecano solo gli endpoint degli elementi LineString . Il limite è rappresentato dai due endpoint non sovrapposti.
La figura 3 è un'istanza di tipo non semplice MultiLineString perché l'interno di uno dei suoi elementi LineString è intersecato. Il limite di questa istanza MultiLineString è rappresentato dai quattro endpoint.
La figura 4 rappresenta un'istanza MultiLineString non semplice e non chiusa.
La figura 5 rappresenta un'istanza MultiLineStringsemplice non chiusa. Non è chiusa perché gli elementi LineString non sono chiusi. È semplice perché nessuna delle parti interne di alcuna istanza LineString si interseca.
La figura 6 rappresenta un'istanza MultiLineString semplice e chiusa. È chiusa perché tutti i suoi elementi sono chiusi. È semplice perché nessuno dei suoi elementi si interseca con le parti interne.
Istanze accettate
Per poter essere accettata, un'istanza MultiLineString deve essere vuota oppure comprendere esclusivamente istanze LineString accettate. Per altre informazioni sulle istanze LineString accettate, vedere LineString. Gli esempi seguenti illustrano alcune istanze MultiLineString accettate.
DECLARE @g1 geometry = 'MULTILINESTRING EMPTY';
DECLARE @g2 geometry = 'MULTILINESTRING((1 1, 3 5), (-5 3, -8 -2))';
DECLARE @g3 geometry = 'MULTILINESTRING((1 1, 5 5), (1 3, 3 1))';
DECLARE @g4 geometry = 'MULTILINESTRING((1 1, 3 3, 5 5),(3 3, 5 5, 7 7))';
L'esempio seguente genera un'eccezione System.FormatException
, perché la seconda istanza LineString non è valida.
DECLARE @g geometry = 'MULTILINESTRING((1 1, 3 5),(-5 3))';
Istanze valide
Per poter essere valida, un'istanza MultiLineString deve soddisfare i criteri seguenti:
Tutte le istanze che comprendono l'istanza MultiLineString devono essere istanze LineString valide.
Due istanze LineString che comprendono l'istanza MultiLineString possono sovrapporsi a un intervallo. Le istanze LineString possono solo intersecarsi oppure toccarsi reciprocamente o con altre istanze LineString in un numero finito di punti.
L'esempio seguente indica tre istanze MultiLineString valide e un'istanza MultiLineString non valida.
DECLARE @g1 geometry = 'MULTILINESTRING EMPTY';
DECLARE @g2 geometry = 'MULTILINESTRING((1 1, 3 5), (-5 3, -8 -2))';
DECLARE @g3 geometry = 'MULTILINESTRING((1 1, 5 5), (1 3, 3 1))';
DECLARE @g4 geometry = 'MULTILINESTRING((1 1, 3 3, 5 5),(3 3, 5 5, 7 7))';
SELECT @g1.STIsValid(), @g2.STIsValid(), @g3.STIsValid(), @g4.STIsValid();
@g4
non è valida, perché la seconda istanza LineString si sovrappone alla prima istanza LineString in un intervallo. Si toccano in un numero infinito di punti.
Esempi
L'esempio seguente crea un'istanza geometry``MultiLineString
che contiene due elementi LineString
con SRID 0.
DECLARE @g geometry;
SET @g = geometry::Parse('MULTILINESTRING((0 2, 1 1), (1 0, 1 1))');
Per creare un'istanza di questa istanza con un diverso SRID, utilizzare STGeomFromText()
o STMLineStringFromText()
. È anche possibile utilizzare Parse()
e quindi modificare l'identificatore SRID, come mostrato dall'esempio seguente.
DECLARE @g geometry;
SET @g = geometry::Parse('MULTILINESTRING((0 2, 1 1), (1 0, 1 1))');
SET @g.STSrid = 13;
Vedere anche
STLength (tipo di dati geometry)
STIsClosed (tipo di dati geometry)
LineString
Dati spaziali (SQL Server)
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per