;(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

Ensino Fundamental

Matemática - A fotografia e a geometria

Antonio Rodrigues Neto

A fotografia e a geometria

Objetivo

A imagem é muito usada na sociedade moderna e várias aplicações são feitas a partir do jogo entre a imagem e o objeto. Quais são as regras matemáticas que são envolvidas nesse jogo? O objetivo é explorar, a partir de uma questão do ENEM, algumas noções e princípios para a aplicação dessas regras.

Séries: Primeiro ano do Ensino Médio

Estratégias

1) Desenhar na lousa figuras geométricas já conhecidas, como retângulo, triângulo e trapézio, e a partir delas mostrar o processo de ampliação e redução.

2) Discutir o conceito de razão e proporção utilizando os processos de ampliação e redução.

3) Apresentar a questão do ENEM/2009 cujo conteúdo propõe relações matemáticas obtidas por meio da fotografia.

4) Propor para a sala a experiência de verificar a proporção entre a imagem e o objeto utilizando uma foto 3x4. Pedir para um aluno, que queira participar da experiência, algum documento que contenha esse tipo de foto.

5) Medir com uma régua o comprimento e a largura do rosto do aluno que cedeu o documento, registrando essas medidas na lousa. Logo a seguir, medir e registrar o comprimento e a largura, só que dessa vez, da imagem do rosto impressa na foto.

6) Investigar a relação de proporcionalidade entre essas quatro medidas. Definir uma letra para representar cada uma delas.

7) Retomar os procedimentos que mostram a proporcionalidade entre figuras semelhantes. Explorar os triângulos retângulo como recurso para esse tipo de estudo.

8) Retomar o teorema de Tales e mostrar a aplicação desse teorema no cálculo da altura de um poste ou prédio por meio das respectivas sombras.

9) Perguntar para os alunos se as condições propostas pela questão do ENEM permitem explorar a proporcionalidade. Por quê? Justificar as relações de proporcionalidade, indicando caminhos de resolução.

10) Interpretar novamente os dados, construindo as relações necessárias para a resolução da questão.

11) Discutir com a sala a sombra como o exemplo mais primitivo de projeção da imagem. Como investigar a proporção entre um objeto e sua respectiva sombra?

12) Discutir com os alunos o princípio do funcionamento de uma máquina fotográfica utilizando como ilustração a estrutura básica de uma câmera escura que pode ser confeccionada com caixa de sapato.

13) Mostrar como a imagem é projetada no fundo de uma câmera escura. Quais são as regras de proporcionalidade entre o objeto e a imagem formada na câmera escura?

Atividades

1) Pedir para que os alunos pesquisem os princípios de funcionamento de uma máquina fotográfica com o objetivo de aperfeiçoar as informações apresentadas na sala de aula. Confeccionar uma câmera escura apresentando o roteiro de construção.

2) Um canudo de refresco de 10 cm de comprimento é colocada a uma distância de 40 cm de uma fonte luz. O objetivo é projetar a sua sombra em uma pequena tela branca.

a) Qual é condição necessária para que exista proporcionalidade entre o comprimento do canudo e da sua respectiva sombra?

b) A partir dessa condição, se a tela estiver a 1 metro da fonte luz, qual deverá ser o comprimento da sombra do canudo de refresco?

Ensino Fundamental