Funções de Análise das Propriedades de Geometry
em Geral
As funções listadas nesta seção não restrigem seus argumentos e acitam um valor geometria de qualquer tipo.
GeometryType(g)
Retorna como string o nome do tipo da geometria da qual esta instância
g
de geometry é um membro. O nome corresponderá a uma das subclasses instanciáveis deGeometry
.mysql>
SELECT GeometryType(GeomFromText('POINT(1 1)'));
+-------------------------------------------------+ | GeometryType(GeomFromText('POINT(1 1)')) | +-------------------------------------------------+ | POINT | +-------------------------------------------------+Dimension(g)
Retorna a dimensão herdada deste objeto
g
de geometria. O resultado pode ser −1, 0, 1 or 2. (o significado destes valores é dado em "ClasseGeometry
".)mysql>
SELECT Dimension(GeomFromText('LineString(1 1,2 2)'));
+------------------------------------------------+ | Dimension(GeomFromText('LineString(1 1,2 2)')) | +------------------------------------------------+ | 1 | +------------------------------------------------+SRID(g)
Retorna um inteiro indicando ID do Sistema de Referência Espacial do valor de geometria
g
.mysql>
SELECT SRID(GeomFromText('LineString(1 1,2 2)'));
+-----------------------------------------------+ | SRID(GeomFromText('LineString(1 1,2 2)',101)) | +-----------------------------------------------+ | 101 | +-----------------------------------------------+Envelope(geometry g):geometry
Retorna o Retângulo de Limite Mínimo (Minimum Bounding Rectangle (MBR)) para o valor de geometria
g
. O resultado é retornado como um polygon (polígono).mysql>
SELECT AsText(Envelope(GeomFromText('LineString(1 1,2 2)',101)));
+------------------------------------------------------+ | AsText(Envelope(GeomFromText('LineString(1 1,2 2)')) | +------------------------------------------------------+ | POLYGON((1 1,2 1,2 2,1 2,1 1)) | +------------------------------------------------------+O polygon é definido pelos pontos nos cantos da caixa que o limita:
POLYGON((MINX MINY, MAXX MINY, MAXX MAXY, MINX MAXY, MINX MINY))
A especificação OpenGIS também define as seguintes funções, que o MariaDB ainda não implementou:
Boundary(g)
Retorna uma geometria que é o fechamento do limite combinacional do valor da geometria
g
.IsEmpty(g)
Retorna 1 se o valor da geometria
g
e a geometria vazia, 0 se ela não está vazia e −1 se o argumento éNULL
. Se a geometria está vazia, ela representa um conjunto de pontos vazios.IsSimple(g)
Atualmewnte esta função não deve ser usada. Quando implementada, seu comportamento será como descrito no próximo parágrafo.
Retorna 1 se o valor da geometria
g
não tem nenhum ponto geométrico anormal, como a interseção própria ou tangente própria.IsSimple
retorna 0 se o argumento não é simples, e −1 se éNULL
.A descrição de cada geométrica instanciável dada anteriormente neste inclui a condição específica que faz com que uma instância desta classe seja classificada como não simples.