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

Mora nos Clássicos

REPORTAGEM

Texto que relata acontecimentos, baseado em fatos e dados observados ou verificados diretamente pelo jornalista ou obtidos pelo o a fontes jornalísticas reconhecidas e confiáveis.

Carro futurista de portas transparentes, Lamborghini Marzal faz 55 anos

Colunista do UOL

28/05/2022 04h00

(SÃO PAULO) - Salão de Genebra de 1967. Mais de 500 mil pessoas visitam o evento suíço e se surpreendem com a ousadia de uma fabricante ainda novata. Fundada quatro anos antes, a Lamborghini apresentava um modelo de quatro lugares, portas do tipo "asa de gaivota" transparentes, motor inédito e elementos de design que resistem até hoje em seus carros.

Marzal era o nome do protótipo que, no fim das contas, serviria de norte estético e mecânico para o Espada, este o best seller da empresa entre 1968 to 1978. Se Ferruccio Lamborghini desejava oferecer um verdadeiro Grand Turismo (em resumo: alta performance combinada a muito conforto para os ocupantes), o Espada era a resposta, e o Marzal sua base conceitual.

Lamborghini Marzal  - Divulgação  - Divulgação
Imagem: Divulgação

Para economizar espaço e peso, o motor emprestado do Miura foi cortado ao meio, ando de um 4.0 V12 para um 2.0 seis-cilindros em linha, uma solução jamais usada pela empresa. Não era mais instalado no centro do automóvel, mas sim depois do eixo traseiro. O chassi, também vindo do Miura, ganhara 120 mm em comprimento.

Lamborghini Marzal  - Divulgação  - Divulgação
Imagem: Divulgação

O desenho futurista - com direito a bancos em couro num prata ao melhor estilo roupa de astronauta e uma área envidraçada que chegava a 4,5 metros quadrados - era assinado por Marcello Gandini, autor de obras-primas como Lamborghini Miura, BMW Série 5, Citroën BX, Lancia Stratos e Renault 5, entre muitos outros.

Lamborghini Marzal  - Divulgação  - Divulgação
Imagem: Divulgação

Como o comprimento total ainda era relativamente compacto, Gandini optou por usar um par de avantajadas portas "asa de gaivota" em vez de um layout de quatro portas. Isso permitiu que ele instalasse grandes janelas que, combinadas com um teto de vidro levemente fumê, ajudaram a criar uma sensação muito arejada dentro da cabine.

Lamborghini Marzal  - Divulgação  - Divulgação
Imagem: Divulgação

Quem não gostou muito da solução foi Ferruccio Lamborghini, alegando que as tais portas não ofereciam privacidade, já que "as pernas de uma dama estariam lá para todos verem".

Lamborghini Marzal  - Divulgação  - Divulgação
Imagem: Divulgação

No GP de Mônaco de 1967, o Príncipe Rainier III e a Princesa Grace deram uma volta no circuito com o Marzal antes da corrida, feito repetido pelo Príncipe Albert em 2018.

Lamborghini Marzal  - Divulgação  - Divulgação
Imagem: Divulgação

Em um leilão da RM Sotheby´s realizado em 2011, o Marzal - que após anos de abandono fora restaurado rigorosamente - foi arrematado por um colecionador por ? 1.512.000.