Créditos, Metodología, Misión y Recomendaciones
P7CO® EcoResupply busca democratizar el acceso a la información ambiental crítica, con rigor y transparencia. El Mapa de Incendios presenta, en casi tiempo real, las ocurrencias activas en Portugal (continente e islas), a partir de datos públicos.
- Fuente primaria: Fogos.pt (plataforma ciudadana) que agrega los datos oficiales de la ANEPC.
- Actualización automática: ciclos periódicos; el reloj de desfase refleja la latencia ANEPC → Fogos.pt → P7CO.
- Geolocalización aproximada: las coordenadas pueden ser generalizadas/anonimizadas en el origen por seguridad.
Incendio severo: orientaciones esenciales
- Peligro inmediato: Aléjese rápidamente de los frentes de fuego. Siga siempre las instrucciones de las autoridades locales y no intente regresar a viviendas o terrenos en riesgo. Información oficial.
- Alerta/denuncia: Si observa un foco de incendio, llame de inmediato al 112. También puede contactar a la GNR o a los bomberos locales.
- Evacuación: Respete todos los avisos de evacuación emitidos por la ANEPC / Protección Civil. Abandone el área de forma calmada y ordenada, ayudando a vecinos mayores o con movilidad reducida.
- Si queda cercado por el fuego: Busque zonas ya quemadas o espacios abiertos sin vegetación. Protéjase con ropa de algodón, mantenga el cuerpo bajo para evitar inhalar humo y cubra nariz y boca con un paño húmedo.
- Humo y salud: Evite esfuerzos físicos en ambientes con humo denso. Cierre puertas y ventanas en casa para reducir la entrada de partículas. En caso de síntomas respiratorios llame al SNS 24 (808 24 24 24). Dirección General de Salud.
- Grupos vulnerables: Niños, ancianos, embarazadas y personas con enfermedades respiratorias o cardíacas deben ser protegidos prioritariamente y evacuados de las zonas afectadas por el humo.
- Información fiable: Consulte solo fuentes oficiales: ANEPC, IPMA, radios locales o comunicados de las autoridades. Desconfíe de rumores en redes sociales.
Estas orientaciones se reproducen a partir de fuentes oficiales (ANEPC, DGS, GNR, IPMA, ePortugal). Verifique siempre la información más reciente con las entidades competentes.
VOST vs. Copernicus — reglas, estilos y semántica
VOST es siempre Área de Interés (AOI) — nunca “Delineation”. Los polígonos muestran solo popups de área (insignia por origen), y los pines permanecen oficiales ANEPC/Fogos.pt (sin información VOST en el pin).
- Popup (solo áreas): insignia azul para Copernicus, roja para VOST, métricas (área, perímetro, radio), fecha (si el KML la contiene), y aviso “valores aproximados”.
- Pines: “En Curso” usa icono de llama; otros estados usan punto suave (solo datos oficiales).
- Heatmap:
cop-delineation = 1.0
,cop-aoi = 0.25
,vost-aoi = 0.20
, vida media 24–36 h.
Documentación técnica del mapa (EN)
0) Dependencias (Leaflet y Heatmap)
<script src="https://unpkg.com/leaflet/dist/leaflet.js"></script>
<script src="https://unpkg.com/leaflet.heat/dist/leaflet-heat.js"></script>
1) Encapsulación y configuración base
(function(){ "use strict";
const API_URL = 'https://api.fogos.pt/new/fires';
const PT_CENTER = [39.7,-8.0], PT_ZOOM = 6.4;
})();
2) Pesos de estado y decaimiento temporal
3) Intensidad bruta del incidente
4) Normalización por percentil P95
5) Puntuación de contribución de polígonos
6) Muestreo radial para distribución de calor
7) Mapeo de tipos KML (enum + fecha)
// 'cop-delineation' | 'cop-aoi' | 'vost-aoi' | 'generic'
function parseKmlKindAndDate(kmlText){
const t = String(kmlText||''); const tl = t.toLowerCase();
const isVost = /vost/i.test(t);
const isCopDel = /(burnt|affected|delineation|monit)/.test(tl);
const isAOI = /(área de interesse|area of interest|aoi)/.test(tl);
const kind = isVost ? 'vost-aoi' : isCopDel ? 'cop-delineation' : isAOI ? 'cop-aoi' : 'generic';
const m = tl.match(/(\d{1,2})[\/\.-](\d{1,2})[\/\.-](\d{2,4}).{0,6}(\d{1,2})[:h](\d{2})/);
let date = null;
if(m){
const dd=+m[1], mm=+m[2]-1, yy=+m[3] < 100 ? 2000+ +m[3] : +m[3];
const hh=+m[4], mi=+m[5]; date = new Date(yy,mm,dd,hh,mi,0);
}
return { kind, date };
}
8) Tokens de estilo (alineados con el mapa en producción)
/* Copernicus Delineation: solid blue; pulse handled by JS */
.areas-poly--cop-del{ stroke:#2563eb; fill: color-mix(in oklab, #2563eb 22%, white); }
/* Copernicus AOI: solid blue (no dash) */
.areas-poly--cop-aoi{ stroke:#2563eb; /* no dash */ fill: color-mix(in oklab, #2563eb 12%, white); }
/* VOST AOI: solid red (no dash) */
.areas-poly--vost-aoi{ stroke:#dc2626; /* no dash */ fill: rgba(220,38,38,.10); }
Participantes (autoridades, fuerzas y sociedad civil)
Reconocemos el trabajo de todas las entidades y ciudadanos que contribuyen a la prevención, monitorización, combate y recuperación.
- Autoridad Nacional: ANEPC — Autoridad Nacional de Emergencia y Protección Civil
- Agencia de Incendios Rurales: AGIF — Agencia para la Gestión Integrada de Incendios Rurales
- Información Meteorológica: IPMA — Instituto Portugués del Mar y la Atmósfera
- Conservación/Recursos: ICNF — Instituto de Conservación de la Naturaleza y los Bosques
- Fuerzas de Seguridad: GNR (incl. SEPNA) y PSP
- Fuerzas Armadas: Fuerza Aérea, Ejército, Marina
- Autoridad Marítima: AMN / Policía Marítima
- Salud y Socorro: INEM y Cruz Roja Portuguesa
- Estructuras de Bomberos: Liga de los Bomberos Portugueses y Asociación Nacional de Bomberos Portugueses
- Municipios y protecciones civiles municipales (oficinas técnicas forestales y equipos locales)
- Comunidad y Ciudadanía: VOST Portugal, plataformas de voluntariado y ciudadanos que informan, validan y comparten información responsable
Fuentes, licencias y derechos
-
Datos de incendios: Fogos.pt / ANEPC — Creative Commons BY 4.0 (atribución obligatoria).
Re-presentamos la información tal como se recibe, con créditos visibles.
- Mapas base: OpenStreetMap / CARTO / OpenTopoMap (OSM, CC BY-SA 3.0).
- Código cliente (JS/UX): MIT (reutilización permitida con aviso de copyright P7CO®).
- Marcas y logotipos son propiedad de sus respectivos titulares.
Metodología (resumen)
- Mostramos solo ocurrencias activas publicadas por ANEPC/Fogos.pt.
- Intensidad (heatmap): \( I_\text{raw}= (1 + 1\cdot\text{personnel} + 0.5\cdot\text{vehicles} + 6\cdot\text{aircraft}) \cdot w(\text{status}) \cdot 0.5^{\Delta t/h} \). Ejemplo: 80, 20, 2; “En Curso”; \(\Delta t=6h, h=12h\) ⇒ \(I_\text{raw}\approx 72.9\).
- Normalización: \( I_{\mathrm{norm}} = \min(1.35, I_{\mathrm{raw}}/P95) \). Ejemplo: \(P95=60\), \(I_\text{raw}=72.9\) ⇒ \(1.215\).
- Distribución visual: \( R_{\mathrm{km}} = 2 + 1.1\sqrt{r} \). Ejemplo: \(r=112\) ⇒ \(R_{\mathrm{km}}\approx 13.6\ \text{km}\).