Version: [3985] MapBiomas Fogo 1.3

Version 1.3 - Major Update
New Features:
Full integration with the new MapBiomas Fire API for direct access to
fire products in QGIS

Hierarchical territorial clipping system with support for
administrative boundaries

Custom polygon geometry clipping with local processing (no API upload
required)

Dynamic legend system based on API responses with automatic layer
style updates

Interactive statistics panel with area queries and context-based
calculations

Enhanced statistics table with color-coded legends, separate unit
columns, and highlighted totals

Improved statistics export functionality with separate columns for
values, units, and year ranges

Improvements:
Automatic intersection of fire features (FGB) with selected
territories or custom geometries

Optimized territoryId handling to avoid redundant API requests

Enhanced error handling with retry functionality and detailed debug
logs

Better user feedback during data loading operations

Bug Fixes:
Fixed year filter issues in burned area frequency maps

Resolved API endpoint connectivity problems

Corrected metadata links and repository URLs

Fixed Qt6/QGIS 4 compatibility issues:

Implemented compatibility layer (compat.py) for Qt5/Qt6 enum handling
differences

Resolved QHeaderView.ResizeToContents attribute errors in QGIS 4 (Qt6
uses nested enums)

Fixed duplicate import issue that was overriding Qt compatibility
layer

Statistics panel now works correctly in both QGIS 3 (Qt5) and QGIS 4
(Qt6)

Compatibility:
QGIS 3.0 - 4.99

MapBiomas Fire Plugin - Behavior Modifications
Summary of Changes
This document describes the changes implemented in the MapBiomas Fire
plugin regarding the download behavior of fire features (FGB -
FlatGeobuf).

New Download Behavior for Features
1. Brazil (Default)
Action: Loads the FlatGeobuf layer normally, with no additional
processing

Result: Fire features for all of Brazil for the selected years

2. Other Territorial Clipping
Action: Performs an INTERSECT between the fire features (FGB) and the
full boundaries of the territory provided by the API (not just
bounding box)

Result: Only the fire features located inside the selected territory
boundaries are added to the canvas

Example: If you select Cerrado, only the fire inside the Cerrado
boundaries will be displayed

3. Custom Geometry
Action:

Applies configured treatments to the geometry (dissolve, selection,
etc.)

Performs an INTERSECT between the fire features (FGB) and the custom
geometry

Does NOT upload to the API - works locally within QGIS

Result: Only the fire features located inside the custom geometry are
added to the canvas

Usage Workflow
For Downloading with a Specific Territory:
Open the MapBiomas Fire plugin

Go to the Download tab

Select the desired years from the combobox (multiple years can be
selected)

Go to the Territorial Clipping tab

Select the desired territory (e.g., a state, biome, etc.)

Click OK

Result: Fire features will be loaded with an automatic intersect to
the selected territory

For Downloading with Custom Geometry:
Open the MapBiomas Fire plugin

Create a polygon vector layer in QGIS representing your area of
interest

Go to the Download tab

Select the desired years

Go to the Custom Geometry tab

Select your layer from the combobox

(Optional) Check "Selected features only" if you want to use only
selected features

Click OK

Result: Fire features will be loaded with an intersect to the custom
geometry (without sending data to the API)

Behavior of Other Queries
All other plugin functionalities (rasters, heatmaps, statistics, etc.)
continue to work exactly as before:

Use the territoryId passed to the API

Receive data already processed by the server

Behavior remains unchanged

Technical Details
Added Imports
QgsCoordinateReferenceSystem

QgsGeometry

QgsField

QgsFeature

json

New Methods in MapbiomasfogoDialog
_build_qgs_geometry_from_geojson(geometry_payload) (static)

Converts GeoJSON to QgsGeometry

Fallback for older QGIS versions via OGR

_intersect_with_territory_geometry(fgb_layer, territory_ids,
api_client, year)

Retrieves territory geometry via API

Performs intersect with FGB

_intersect_with_user_geometry(fgb_layer, user_geometry_layer, year)

Retrieves geometry from user layer

Performs intersect with FGB

_get_dissolved_geometry(vector_layer, selected_only=False)

Combines multiple features into a single geometry

Respects feature selection

_perform_intersect(fgb_layer, clip_geometry, year, clip_source_name)

Executes the intersect

Creates a temporary memory layer with the result

Adds it to the project

Modifications to Existing Methods
_load_selected_fgb_layers(api_client=None)

Now collects selected territories

Passes api_client to operations

_load_fgb_layer(year, territory_ids=None, user_geometry_layer=None,
api_client=None)

Added parameters for territories and custom geometry

Implemented intersect logic

accept()

Passes api_client to _load_selected_fgb_layers()

Compatibility
✓ QGIS 3.x

✓ QGIS 4.x

✓ OGR/GDAL (for GeoJSON conversion)

Potential Log Messages
When working with intersection, you may see log messages such as:

[MapBiomas Fire] Starting intersect with territories: ['1-2-3']

[MapBiomas Fire] Performing intersect with Territory (2024)

[MapBiomas Fire] Intersect completed: 1234 features for 2024
(Territory)

[MapBiomas Fire] Starting intersect with custom geometry

Important Notes
Performance: The intersect is computed locally within QGIS, so it may
take time for large FGB files

Fallback: If an error occurs during intersection, the layer is loaded
normally (unclipped)

Memory: Resulting layers from the intersection are created as
temporary memory layers

Feature Selection: If using custom geometry with "Selected features
only", only selected features will be used in the intersect
calculation

Version: 1.3

Date: July 2025

Plugin: MapBiomas Fire

yes

newton787

2026-07-23T17:16:37.272105+00:00

3.0.0

4.99.0

None

no

Version management

Plugin details