Seu Primeiro Filtro
Este tutorial orienta você na criação de seu primeiro filtro com FilterMate, do início ao fim.
Cenário
Objetivo: Encontrar todos os edifícios dentro de 200 metros de uma estrada principal.
Dados Necessários:
- Uma camada de edifícios (polígonos)
- Uma camada de estradas (linhas)
Tutorial Passo a Passo
1. Carregue Seus Dados
Primeiro, carregue ambas as camadas no QGIS:
- Abra o QGIS
- Carregue a camada de edifícios (a camada que vamos filtrar)
- Carregue a camada de estradas (a camada de referência)
Se você não tem dados de exemplo, pode usar dados do OpenStreetMap:
- Baixe do Geofabrik
- Ou use o plugin QuickOSM do QGIS para buscar dados
2. Abra o FilterMate
- Clique no ícone FilterMate na barra de ferramentas
- Ou vá em Complementos → FilterMate
- O painel encaixável aparece no lado direito
Painel FilterMate pronto para seu primeiro filtro geométrico
3. Selecione a Camada Alvo
- No menu suspenso Seleção de Camada no topo
- Selecione edifícios (a camada que queremos filtrar)
O FilterMate analisará a camada e exibirá:
- Backend sendo usado (PostgreSQL, Spatialite ou OGR)
- Contagem de feições
- Campos disponíveis
4. Configure o Filtro Geométrico
Agora vamos criar um filtro espacial para encontrar edifícios perto de estradas:
-
Vá para a aba Filtro Geométrico
- Clique na aba Filtro Geométrico no painel
-
Selecione a Camada de Referência
- Escolha estradas no menu suspenso da camada de referência
-
Escolha o Predicado Espacial
- Selecione "dentro da distância" ou "intersecta" (se usar buffer)
-
Defina a Distância do Buffer
- Digite 200 no campo de distância do buffer
- Unidades: metros (ou unidades do SRC da sua camada)
O FilterMate reprojeta automaticamente as camadas se elas tiverem SRC diferentes. Não é necessária reprojeção manual!
5. Aplique o Filtro
- Clique no botão Aplicar Filtro
- O FilterMate irá:
- Criar uma visualização filtrada temporária
- Destacar feições correspondentes no mapa
- Atualizar a contagem de feições no painel
O que acontece nos bastidores:
- Backend PostgreSQL
- Backend Spatialite
- Backend OGR
-- Cria uma visão materializada com índice espacial
CREATE MATERIALIZED VIEW temp_filter AS
SELECT b.*
FROM buildings b
JOIN roads r ON ST_DWithin(b.geom, r.geom, 200);
CREATE INDEX idx_temp_geom ON temp_filter USING GIST(geom);
⚡ Ultra-rápido (menos de um segundo em 100k+ feições)
-- Cria tabela temporária com índice R-tree
CREATE TEMP TABLE filtered_buildings AS
SELECT b.*
FROM buildings b
JOIN roads r ON ST_Distance(b.geom, r.geom) <= 200;
-- Usa índice espacial R-tree
SELECT CreateSpatialIndex('filtered_buildings', 'geom');
✅ Rápido (~2-10s em 50k feições)
# Usa framework de processamento do QGIS
processing.run("native:buffer", {
'INPUT': roads,
'DISTANCE': 200,
'OUTPUT': 'memory:'
})
processing.run("native:selectbylocation", {
'INPUT': buildings,
'INTERSECT': buffered_roads,
'METHOD': 0
})
⚠️ Mais lento (~10-30s em 50k feições)
6. Revise os Resultados
Após a filtragem:
- Tela do Mapa: Edifícios filtrados são destacados
- Painel: Mostra contagem de feições filtradas
- Tabela de Atributos: Abra para ver as feições filtradas
Clique com botão direito na camada → Zoom para Camada para ver todas as feições filtradas
7. Refine o Filtro (Opcional)
Quer adicionar critérios de atributo? Combine com um filtro de atributo:
- Vá para a aba Filtro de Atributo
- Adicione uma expressão como:
"building_type" = 'residential' - Clique em Aplicar Filtro
Agora você tem edifícios que são:
- ✅ Dentro de 200m de estradas
- ✅ E são edifícios residenciais
8. Exporte os Resultados (Opcional)
Para salvar os edifícios filtrados:
- Vá para a aba Exportar
- Escolha o formato de saída:
- GeoPackage (recomendado para fluxos modernos)
- Shapefile (para compatibilidade)
- PostGIS (para salvar no banco de dados)
- Configure as opções:
- SRC de saída (padrão: mesmo da fonte)
- Local de saída
- Clique em Exportar
O Que Você Aprendeu
✅ Como abrir o FilterMate e selecionar uma camada
✅ Como criar um filtro geométrico com buffer
✅ Entender a seleção de backend (automática)
✅ Como combinar filtros de atributo e geométricos
✅ Como exportar resultados filtrados
Próximos Passos
Agora que você criou seu primeiro filtro, explore mais:
- Fundamentos de Filtragem - Aprenda expressões QGIS
- Filtragem Geométrica - Predicados espaciais avançados
- Operações de Buffer - Diferentes tipos de buffer
- Exportar Feições - Opções avançadas de exportação
Problemas Comuns
Nenhuma feição retornada?
Verifique:
- ✅ A distância do buffer é apropriada para seu SRC (metros vs. graus)
- ✅ As camadas têm extensões sobrepostas
- ✅ A camada de referência tem feições
O filtro está lento?
Para grandes conjuntos de dados:
- Instale o backend PostgreSQL para aceleração de 10-50×
- Veja Ajuste de Desempenho
SRC errado?
O FilterMate reprojeta automaticamente, mas você pode verificar:
- Propriedades da camada → aba SRC
- Certifique-se de que ambas as camadas têm SRC válido definido
- O FilterMate cuida do resto!