<\/P>
Recentemente, falei um pouco sobre algumas das ferramentas de visualização na ArcGIS API for JavaScript. Lançamentos recentes introduziram Smart Mapping<\/A>, que elimina algumas das suposições ao gerar renderizadores baseados nos seus dados. Eles também introduziram alguns recursos muito legais que lidam com mistura de cores<\/A> baseada nos dados do seu mapa. Está chegando a um ponto em que os devs não terão muitas desculpas para mapas feios<\/EM>.<\/P><\/P>Uma coisa que vi mencionada no EsriUC na semana passada<\/A> foi a ideia de usar Smart Mapping para gerar seu renderizador, experimentar um pouco e usá-lo para gerar o JSON do renderizador que você pode usar depois sem precisar invocar as ferramentas Smart Mapping. Isso é totalmente possível, mas um pouco incerto sobre como você poderia fazer isso. Então vamos dar uma olhada em algumas técnicas que você pode querer usar.<\/P><\/P>
function saveLocal(data, field) { var key = location.pathname + '-' + field; localStorage.setItem(key, JSON.stringify(data));}function getLocal(field) { var key = location.pathname + '-' + field; var data = localStorage.getItem(key); if (data) { return JSON.parse(data); } else { return null; }}<\/PRE><\/P>Então, quando você configurar o Smart Mapping, poderia verificar o localStorage para um renderizador existente e simplesmente usar esse renderizador salvo, ignorando completamente o Smart Mapping.<\/P><\/P>function createRenderer(field) { \/\/_smart mapping functionality begins var data = getLocal(field); if (data) { console.log('carregar renderizador do localStorage'); layer.setRenderer(jsonUtils.fromJson(data)); layer.redraw(); createLegend(map, layer, field); } else { smartMapping.createClassedColorRenderer({ layer: layer, field: field, basemap: map.getBasemap(), classificationMethod: "quantile" }).then(function (response) { console.log('salvar renderizador no localStorage'); saveLocal(response.renderer.toJson(), field); layer.setRenderer(response.renderer); layer.redraw(); createLegend(map, layer, field); }); }}<\/PRE><\/P>Agora, isso é bem legal.<\/EM> Os dados neste exemplo não são muito complicados, mas você pode imaginar se tivesse um conjunto de dados grande, poderia levar um segundo ou mais para o Smart Mapping gerar o renderizador e este método poderia ser uma dose de otimização para seu app. Aqui está uma
Membros conectados podem postar, seguir atualizações e mais. Novo aqui? Registre uma conta gratuita.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.