;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Esse conteúdo é antigo

Monomotor que transportava vacina quase colide com avião da Gol

Monomotor e avião da GOL quase se colidiram - Reprodução/TV Record
Monomotor e avião da GOL quase se colidiram Imagem: Reprodução/TV Record

Do UOL, em São Paulo

20/01/2021 23h24Atualizada em 21/01/2021 12h25

Um avião de pequeno porte que transportava vacinas contra a covid-19 fez uma manobra errada e entrou em rota de colisão com uma aeronave da Gol, no Paraná, na terça-feira (19).

O monomotor do Governo do Estado decolava do Aeroporto de Bacacheri, em Curitiba, para levar doses de imunizantes ao interior do estado, quando se dirigiu em sentido ao avião da Gol, voo 1212, que vinha de Guarulhos (SP) e se preparava para pousar em São José dos Pinhais (PR). Foi aí que a controladora de tráfego percebeu o erro e agiu imediatamente.

"Uno dois, uno dois, abandone a aproximação devido ao resgate 03 em curva para o lado errado", disse ela, em áudio obtido pela emissora. Minutos depois, ela voltou a entrar em contato com o piloto da GOL e questionou se havia se distanciado. "Uno dois, uno dois, curvou à direita na 270?", disse ela. "Cumpri o 'TCAS' e agora vai curvar à direita 270, uno dois, uno dois", respondeu.

O TCAS (Traffic Collision Avoidance System, na sigla em inglês — sistema de alerta anticolisão) é um conjunto de equipamentos eletrônicos, incorporados às aeronaves com o objetivo de evitar colisões aéreas com outras aeronaves.

Em nota, a GOL informou que o voo G3-1212 fez um procedimento adicional de pouso durante a aproximação ao aeroporto Afosono Pena, localizado no Paraná.

"A mudança foi necessária por solicitação do controle de tráfego aéreo do destino para procedimento de segurança, sem qualquer anormalidade no voo. Reforçamos que a Companhia está sempre atenta à Segurança, nosso valor número 1", diz um trecho da nota.

O UOL entrou em contato com o governo do Paraná e aguarda um posicionamento.