Liberar tour após a barra de progresso atingir 100%

Softwares disponíveis para publicar na internet, visualização no computador, formatos e conversão para impressão, papéis, tamanhos e tudo afim.
Avatar do usuário
andrestefano
Mensagens: 9
Registrado em: 15 Mai 2013, 02:38

Re: Liberar tour após a barra de progresso atingir 100%

Mensagem por andrestefano » 21 Mai 2013, 08:30

Valeu Cartola,

Eu alterei os dois que vc falou e tb o index1 e 2, pois são referente aos outros dois ambientes.

Eh, ficou outra coisa, não precisa mesmo da barra.

Mas pra galera que está lendo, acessem também, e mando um alo dizendo se carregou bem, rapido ou se ta zuado ainda.

www.amzphotos.com/newmylove

Valeu, abs,
Andre Stefano

Avatar do usuário
cartola
Site Admin
Mensagens: 1228
Registrado em: 11 Mai 2012, 12:40
Localização: Rio de Janeiro
Contato:

Re: Liberar tour após a barra de progresso atingir 100%

Mensagem por cartola » 21 Mai 2013, 11:54

Oi André,

ok, mas nos dois outros não precisava, pois a rotina que fazia o wait(load) só rodava se fosse a carga do primeiro panorama. Tinha essa condição lá, por isso nem falei dos dois outros, mas tá tranquilo, ficou uniforme a questão da continuação depois do preview e não do xml.

Acessei daqui pelo link da empresa (muito rápido) e pelo celular (android com 3G) que ficou lento (normal), mas funcionando perfeitamente a questão de iniciar logo depois do preview, sem esperar as imagens de melhor resolução pra começar. Em geral gosto de testar nos iCoisas também, mas não tenho um aqui.

Abs, Cartola!

Avatar do usuário
epassarin
Mensagens: 89
Registrado em: 21 Ago 2012, 18:46
Localização: Piracicaba / SP
Contato:

Re: Liberar tour após a barra de progresso atingir 100%

Mensagem por epassarin » 07 Ago 2013, 10:10

Ola Pessoal.
Estou utilizando o Panotour Pro 1.8, a ultima versão. Gostaria de saber onde faço essa seleção de multiresolução.
Eu acho que minha panoramica esta demora do muito pra carregar.
Da uma olha no link http://www.piracicaba360.com.br/tourvir ... ho-central

alguem poderia me dar alguma dica.

Existe um campo, no que diz respeito a cada panoramica que é FACE do CUBO: Aqui coloco que tamanho? quanto maior melhor a qualidade ou nao tem nada a ver com a qualidade?
E embaixo é a base da imagem, que pelo que pude perceber no XML é a menor imagem.

Segue XML de uma das panoramicas, ou melhor, da primeira:

<?xml version="1.0" encoding="UTF-8"?>
<!-- for xml compliance -->
<krpano version="1.0.8.14">
<!-- ação a desenvolver enquanto carrega -->
<events onxmlcomplete="onxmlcompleteaction();"/>
<action name="onxmlcompleteaction">
panotourmapsunactivespots();
if(autorotate.enabled==false,set(plugin[autorotationOFF].visible,false); set(plugin[autorotationON].visible,true);,set(plugin[autorotationOFF].visible,true); set(plugin[autorotationON].visible,false););
panotourmapsactivespot(panotourmapsspot4);
firstloadcompleteaction();
</action>
<events onloadcomplete="onloadcompleteaction();"/>
<action name="onloadcompleteaction">
if(plugin[data].soundOn==false,stoppanosounds(),playpanosounds());
</action>
<action name="playpanosounds">
playbackgroundsound(%BASEDIR%/engenho centraldata/sounds/sound2.MP3,4,%1);
</action>
<action name="stoppanosounds">
stopbackgroundsound();
</action>
<action name="closepanoobjects">
</action>
<!--************** Panorâmica *****************************************************************-->
<!-- @File="engenho central4.xml" @PanoName="Engenho Central - Ponte Pencil - Piracicaba/SP" @FilePath="/Volumes/HD EXTERNO HP/WORK FOLDER/360 Tour Virtual/Piracicaba 360/Imagens Panoramicas/02 Pontos Turisticos/ENGENHO CENTRAL/JPEG/Engenho Central 5.jpg" -->
<panoview h="0" v="0" fov="90"/>
<!-- visualizar parâmetros -->
<view fisheye="0" limitview="range" hlookatmin="-180" hlookatmax="180" vlookatmin="-90" vlookatmax="90" fovmin="1" fovmax="90" fov="90" hlookat="0" vlookat="0"/>
<action name="tweennormalview">
tween(view.hlookat, 0, 4, easeInOutQuad);
tween(view.vlookat, 0, 4, easeInOutQuad);
tween(view.fov , 90, 4, easeInOutQuad );
tween(view.fisheye, 0.0, 4, easeInOutQuad, WAIT);
set(display.flash10, on);
set(view.limitview , range);
set(view.vlookatmin, -90);
set(view.vlookatmax, 90);
set(view.hlookatmin, -180);
set(view.hlookatmax, 180);
set(view.fovmin , 1);
set(view.fovmax , 90);
</action>
<autorotate horizon="0" tofov="90" waittime="1" speed="5"/>
<!-- pré visualizar imagem -->
<preview url="engenho centraldata/engenho central4/preview.jpg" type="CUBESTRIP" striporder="FRBLUD" details="16"/>
<!-- a própria panorâmica -->
<image type="CUBE" multires="true" tilesize="396" baseindex="0">
<level tiledimagewidth="3168" tiledimageheight="3168">
<left url="engenho centraldata/engenho central4/3/3/%v_%u.jpg"/>
<front url="engenho centraldata/engenho central4/0/3/%v_%u.jpg"/>
<right url="engenho centraldata/engenho central4/1/3/%v_%u.jpg"/>
<back url="engenho centraldata/engenho central4/2/3/%v_%u.jpg"/>
<up url="engenho centraldata/engenho central4/4/3/%v_%u.jpg"/>
<down url="engenho centraldata/engenho central4/5/3/%v_%u.jpg"/>
</level>
<level tiledimagewidth="1584" tiledimageheight="1584">
<left url="engenho centraldata/engenho central4/3/2/%v_%u.jpg"/>
<front url="engenho centraldata/engenho central4/0/2/%v_%u.jpg"/>
<right url="engenho centraldata/engenho central4/1/2/%v_%u.jpg"/>
<back url="engenho centraldata/engenho central4/2/2/%v_%u.jpg"/>
<up url="engenho centraldata/engenho central4/4/2/%v_%u.jpg"/>
<down url="engenho centraldata/engenho central4/5/2/%v_%u.jpg"/>
</level>
<level tiledimagewidth="792" tiledimageheight="792">
<left url="engenho centraldata/engenho central4/3/1/%v_%u.jpg"/>
<front url="engenho centraldata/engenho central4/0/1/%v_%u.jpg"/>
<right url="engenho centraldata/engenho central4/1/1/%v_%u.jpg"/>
<back url="engenho centraldata/engenho central4/2/1/%v_%u.jpg"/>
<up url="engenho centraldata/engenho central4/4/1/%v_%u.jpg"/>
<down url="engenho centraldata/engenho central4/5/1/%v_%u.jpg"/>
</level>
<level tiledimagewidth="396" tiledimageheight="396">
<left url="engenho centraldata/engenho central4/3/0/%v_%u.jpg"/>
<front url="engenho centraldata/engenho central4/0/0/%v_%u.jpg"/>
<right url="engenho centraldata/engenho central4/1/0/%v_%u.jpg"/>
<back url="engenho centraldata/engenho central4/2/0/%v_%u.jpg"/>
<up url="engenho centraldata/engenho central4/4/0/%v_%u.jpg"/>
<down url="engenho centraldata/engenho central4/5/0/%v_%u.jpg"/>
</level>
<!-- mobile phone / iphone images -->
<mobile>
<left url="engenho centraldata/engenho central4/3/mobile_face.jpg"/>
<front url="engenho centraldata/engenho central4/0/mobile_face.jpg"/>
<right url="engenho centraldata/engenho central4/1/mobile_face.jpg"/>
<back url="engenho centraldata/engenho central4/2/mobile_face.jpg"/>
<up url="engenho centraldata/engenho central4/4/mobile_face.jpg"/>
<down url="engenho centraldata/engenho central4/5/mobile_face.jpg"/>
</mobile>
<!-- tablet pc / ipad images -->
<tablet>
<left url="engenho centraldata/engenho central4/3/tablet_face.jpg"/>
<front url="engenho centraldata/engenho central4/0/tablet_face.jpg"/>
<right url="engenho centraldata/engenho central4/1/tablet_face.jpg"/>
<back url="engenho centraldata/engenho central4/2/tablet_face.jpg"/>
<up url="engenho centraldata/engenho central4/4/tablet_face.jpg"/>
<down url="engenho centraldata/engenho central4/5/tablet_face.jpg"/>
</tablet>
</image>
<!--************** Atalhos e Brilhos de Lente *************************************************-->
<hotspot name="spot7" hview="0" vview="0" fovview="90" hcenter="-0.675845" vcenter="-1.57895" onclick="mainloadpano(engenho central3.xml);lookat(get(panoview.h),get(panoview.v),get(panoview.fov));wait(blend);lookto(get(hview),get(vview),get(fovview),smooth(100,20,50));" url="engenho centraldata/graphics/spots/spot5.png" crop="0|0|65|65" frame="0" lastframe="13" frameheight="65" framewidth="65" onloaded="set(stopSequence,false);animate(spot7,0.071);" ath="-0.675845" atv="-1.57895"/>
<action name="hidepanospotsaction">
set(hotspot[spot7].visible, false);
</action>
<action name="showpanospotsaction">
set(hotspot[spot7].visible, true);
</action>
<!-- fechar todas as panorâmicas -->
</krpano>

Eu não entendo nada sobre XML, por isso estrei num curso que se inicia em Outubro. rsrsrs

entrei nas pastas das imagens e tem algumas que estao com cubos de 796 em uma panoramica, outra com cubos de 320, e outra com cubos de 396, mas só que são panoramicas diferentes.
Será que alguem pode me ajudar com isso?
Agradeço desde já.

epassarin
VISO PHOTO by emerson passarin
www.visophoto.com.br
epphotographer@gmail.com

Avatar do usuário
cartola
Site Admin
Mensagens: 1228
Registrado em: 11 Mai 2012, 12:40
Localização: Rio de Janeiro
Contato:

Re: Liberar tour após a barra de progresso atingir 100%

Mensagem por cartola » 07 Ago 2013, 12:14

Oi,

não vai adiantar muito um curso de XML. XML é uma linguagem de marcação e cada um cria os comandos XML que quer. O pessoal do krpano criou seus próprios comandos e você tem que fazer um curso é de krpano e não de XML. Talvez um curso de lógica de programação também fosse bom se você pretende futucar muito o arquivo :)

Pra aprender o XML do krpano tem que ter alguém que conheça ou você mesmo tem que ler os manuais dele:
http://krpano.com/docu/actions/#top
http://krpano.com/docu/xml/#top

O que precisa saber de XML mesmo é muito pouco. Provavelmente basta saber que os comandos estarão entre '<' e '>' e que muitos tem que ser abertos e fechados, como o <action> e </action>, onde o primeiro abre o bloco e o segundo fecha o bloco, mas só vai saber o que é o comando "action" no manual do krpano. Nenhum curso de XML vai te ensinar isso, pois, como tentei dizer, XML é um padrão de marcação e cada um que o utiliza define seus comandos, como o fez o autor do krpano.

Sobre a multi-resolução, pelo XML parece que você já gerou o panorama com ela. Dá uma olhada aqui nas configurações do Panotour pra isso:

http://www.autopano.net/wiki-en/action/ ... -_Pictures

É pelo parâmetro Cutting-Size que vai se definir se vai ser gerado com ou sem multi-resolução.

Uma coisa que eu faria nessa sua panorâmica é limitar o zoom, pois não é preciso deixar o usuário ver os pixels :).

Tem que ver por que tá demorando pra iniciar a entrada e isso deve ser no lugar que chama a ação de entrada, chamada ali de "tweennormalview". Creio que esse XML que você nos passou não é o que é chamado primeiro e que em outro XML é que se chame essa ação após algum evento. Eu gosto de agilizar a entrada, fazendo ela acontecer após a carga da imagem de preview, então gosto de chamar ela na ação "onpreviewcomplete" e não no "onloadcomplete" como já vi por aí.

Abs, Cartola.

Avatar do usuário
epassarin
Mensagens: 89
Registrado em: 21 Ago 2012, 18:46
Localização: Piracicaba / SP
Contato:

Re: Liberar tour após a barra de progresso atingir 100%

Mensagem por epassarin » 07 Ago 2013, 13:39

Valeu Cartola, vou dar um pesquisada nos links que me passou.

Será que o XML é esse? nao to encontrando onde esta aqueles comandos acima.

<?xml version="1.0" encoding="UTF-8"?>
<!-- for xml compliance -->
<!-- Generated By Kolor Panotour 1.8.0 -->
<krpano version="1.0.8.14" logkey="false" onstart="startaction">
<action name="startaction">
hidepanospotsaction();
</action>
<action name="mainloadpano">
closepanoobjects();
closeglobalobjects();
ifnot(stopSequence === undefined,interruptAnimation(););
loadpano(%1,NULL,NULL,BLEND(1));
</action>
<plugin name="gyro" url="engenho centraldata/graphics/gyro.js" devices="ipad|iphone" keep="true" enabled="true"/>
<!--************** Plugins e dados KrPano *****************************************************-->
<plugin name="data" firstPanoHasBeenPlayed="false" soundOn="true" keep="true"/>
<!--************** Abrir a 1ª panorâmica ******************************************************-->
<include url="engenho central4.xml"/>
<autorotate enabled="false"/>
<plugin name="soundinterface" preload="true" url="engenho centraldata/graphics/soundinterface.swf" alturl="engenho centraldata/graphics/soundinterface.js" keep="true"/>
<action name="playsoundaction">
set(plugin[data].soundOn, true);
playpanosounds(forcesounds);
</action>
<action name="stopsoundaction">
set(plugin[data].soundOn, false);
stoppanosounds();
</action>
<!--************** Fontes *********************************************************************-->
<textstyle name="DEFAULT" background="false" bold="false" border="false" effect="dropshadow(0,45,0x000000,4,2);" font="Swis721 BT" fontsize="16" italic="false" textcolor="0xfffdfdfd"/>
<!--************** Introduçao *****************************************************************-->
<action name="fromlittleplanetintrotonormalview">
tweennormalview();
showpanospotsaction();
</action>
<action name="firstloadcompleteaction">
if(plugin[data].firstPanoHasBeenPlayed==false,
setlittleplanet();
wait(load);
set(plugin[data].firstPanoHasBeenPlayed,true);
startLittlePlanetIntroEffect();
);
</action>
<action name="startLittlePlanetIntroEffect">
if(plugin[data].firstPanoHasBeenPlayed == true,
delayedcall(1.0,
fromlittleplanetintrotonormalview();
set(autorotate.enabled,true);
);
);
</action>
<action name="setlittleplanet">
set(view.stereographic, true);
set(view.fisheye , 1.0);
set(view.limitview , lookat);
set(view.vlookatmin , -90);
set(view.vlookatmax , 90);
set(view.fov , 150);
set(view.fovmax , 150);
set(view.hlookat , 0);
set(view.vlookat , 90);
set(display.flash10 , off);
set(display.details , 14);
</action>
<!--************** Logos **********************************************************************-->
<plugin name="logo1" url="engenho centraldata/graphics/logo1.png" keep="true" align="righttop" x="10" y="10" width="279" height="prop" handcursor="false" capture="false"/>
<!--************** Menu ***********************************************************************-->
<plugin name="in" align="bottom" crop="0|0|65|65" height="prop" keep="true" ondown="set(fov_moveforce,-1);" onout="" onover="" onovercrop="0|65|65|65" onup="set(fov_moveforce,0);" url="engenho centraldata/graphics/menu/menu0.png" width="40" x="-180" y="10"/>
<plugin name="out" align="bottom" crop="0|0|65|65" height="prop" keep="true" ondown="set(fov_moveforce,+1);" onout="" onover="" onovercrop="0|65|65|65" onup="set(fov_moveforce,0);" url="engenho centraldata/graphics/menu/menu1.png" width="40" x="-140" y="10"/>
<plugin name="left" align="bottom" crop="0|0|65|65" height="prop" keep="true" ondown="set(hlookat_moveforce,-1);" onout="" onover="" onovercrop="0|65|65|65" onup="set(hlookat_moveforce,0);" url="engenho centraldata/graphics/menu/menu2.png" width="40" x="-100" y="10"/>
<plugin name="right" align="bottom" crop="0|0|65|65" height="prop" keep="true" ondown="set(hlookat_moveforce,+1);" onout="" onover="" onovercrop="0|65|65|65" onup="set(hlookat_moveforce,0);" url="engenho centraldata/graphics/menu/menu3.png" width="40" x="-60" y="10"/>
<plugin name="up" align="bottom" crop="0|0|65|65" height="prop" keep="true" ondown="set(vlookat_moveforce,-1);" onout="" onover="" onovercrop="0|65|65|65" onup="set(vlookat_moveforce,0);" url="engenho centraldata/graphics/menu/menu4.png" width="40" x="-20" y="10"/>
<plugin name="down" align="bottom" crop="0|0|65|65" height="prop" keep="true" ondown="set(vlookat_moveforce,+1);" onout="" onover="" onovercrop="0|65|65|65" onup="set(vlookat_moveforce,0);" url="engenho centraldata/graphics/menu/menu5.png" width="40" x="20" y="10"/>
<plugin name="home" align="bottom" crop="0|0|65|65" height="prop" keep="true" onclick="lookto(get(panoview.h),get(panoview.v),get(panoview.fov),smooth(100,20,50));" onout="" onover="" onovercrop="0|65|65|65" url="engenho centraldata/graphics/menu/menu6.png" width="40" x="60" y="10"/>
<plugin name="openfs" align="bottom" blendmode="normal" crop="0|0|65|65" customColor="true" height="prop" keep="true" onclick="set(fullscreen,true);" onout="" onover="" onovercrop="0|65|65|65" url="engenho centraldata/graphics/menu/menu7.png" width="40" x="100" y="10"/>
<plugin name="closefs" align="bottom" blendmode="normal" crop="0|0|65|65" customColor="true" height="prop" keep="true" onclick="set(fullscreen,false);" onout="" onover="" onovercrop="0|65|65|65" url="engenho centraldata/graphics/menu/menu8.png" visible="false" width="40" x="100" y="10"/>
<plugin name="autorotationON" align="bottom" blendmode="normal" crop="0|0|65|65" customColor="true" height="prop" keep="true" onclick="switch(autorotate.enabled);set(plugin[autorotationON].visible,false); set(plugin[autorotationOFF].visible,true);" onout="" onover="" onovercrop="0|65|65|65" url="engenho centraldata/graphics/menu/menu9.png" visible="" width="40" x="140" y="10"/>
<plugin name="autorotationOFF" align="bottom" blendmode="normal" crop="0|0|65|65" customColor="true" height="prop" keep="true" onclick="switch(autorotate.enabled);set(plugin[autorotationOFF].visible,false); set(plugin[autorotationON].visible,true);" onovercrop="0|65|65|65" url="engenho centraldata/graphics/menu/menu10.png" visible="" width="40" x="140" y="10"/>
<plugin name="info" align="bottom" crop="0|0|65|65" customColor="true" height="prop" keep="true" onclick="displayHelp();" onout="" onover="" onovercrop="0|65|65|65" url="engenho centraldata/graphics/menu/menu11.png" width="40" x="180" y="10"/>
<plugin name="helpScreen" align="center" customColor="true" keep="true" onclick="closeHelp();" url="engenho centraldata/graphics/menu/help.png" visible="false"/>
<action name="displayHelp">
set(plugin[helpScreen].visible,true);
set(plugin[info].onclick,closeHelp();)
</action>
<action name="closeHelp">
set(plugin[helpScreen].visible,false);
set(plugin[info].onclick,displayHelp();)
</action>
<events onenterfullscreen="set(plugin[openfs].visible,false); set(plugin[closefs].visible,true);" onexitfullscreen="set(plugin[openfs].visible,true); set(plugin[closefs].visible,false);"/>
<!--************** Plugin de Miniaturas *******************************************************-->
<events name="thumbnailsResizeEvent" onresize="thumbsResizeEventHandler();"/>
<!-- Ação a tomar quando o cursos passar por cima de uma miniatura -->
<action name="magnify">
tween(plugin[%1].alpha, 1.0, 0.3, easeInQuad);
tween(plugin[%1].scale, 1.05, 0.3, easeInQuad);
</action>
<!-- Ação a tomar quando o cursos sair de cima de uma miniatura -->
<action name="lie">
tween(plugin[%1].alpha, 0.8, 0.3, easeInQuad);
tween(plugin[%1].scale, 1.0, 0.3, easeInQuad);
</action>
<!-- abrir a miniatura -->
<action name="slide_action_in">
set(plugin[slide].onclick,slide_action_out);
set(plugin[strap].onclick,slide_action_out);
set(plugin[strapArrow].rotate,180);
tween(plugin[thumbArray].y, 10%, 1, easeOutQuint);
tween(plugin[thumbMovePrev].y, 5%, 1, easeOutQuint);
tween(plugin[thumbMoveNext].y, 5%,1, easeOutQuint);
thumbsResizeEventHandler();
</action>
<!-- fechar a miniatura -->
<action name="slide_action_out">
set(plugin[slide].onclick,slide_action_in);
set(plugin[strap].onclick,slide_action_in);
set(plugin[strapArrow].rotate,0);
tween(plugin[thumbArray].y, 0, 1, easeOutQuint);
tween(plugin[thumbMovePrev].y, 0, 1, easeOutQuint);
tween(plugin[thumbMoveNext].y, 0, 1, easeOutQuint);
set(plugin[thumbMovePrev].visible,false);
set(plugin[thumbMoveNext].visible,false);
</action>
<action name="moveThumbsPrev">
plugin[thumbArray].updatepos();
copy(truethumbswidth, plugin[thumbArray].pixelwidth);
if (area.pixelwidth GT truethumbswidth,
set(plugin[thumbBgLayout].x, 0);,
set(leftborder, get(area.pixelwidth));
sub(leftborder, truethumbswidth);
div(leftborder, 2);
mul(leftborder, -1);
if (plugin[thumbBgLayout].x LT leftborder, inc(plugin[thumbBgLayout].x, %1););
if (plugin[thumbBgLayout].x GT leftborder, set(plugin[thumbBgLayout].x, get(leftborder)););
);
</action>
<action name="moveThumbsNext">
plugin[thumbArray].updatepos();
copy(truethumbswidth, plugin[thumbArray].pixelwidth);
if (area.pixelwidth GT truethumbswidth,
set(plugin[thumbBgLayout].x, 0);,
set(rightborder, get(area.pixelwidth));
sub(rightborder, truethumbswidth);
div(rightborder, 2);
if (plugin[thumbBgLayout].x GT rightborder, dec(plugin[thumbBgLayout].x, %1););
if (plugin[thumbBgLayout].x LT rightborder, set(plugin[thumbBgLayout].x, get(rightborder)););
);
</action>
<action name="thumbsResizeEventHandler">
plugin[thumbArray].updatepos();
copy(truethumbswidth, plugin[thumbArray].pixelwidth);
if (area.pixelwidth GT truethumbswidth,
set(plugin[thumbBgLayout].x, 0);displayThumbsScrolls(false);,
if (plugin[slide].onclick == slide_action_out, displayThumbsScrolls(true););
);
</action>
<action name="displayThumbsScrolls">
set(plugin[thumbMovePrev].visible, %1);
set(plugin[thumbMovePrev].enabled, %1);
set(plugin[thumbMoveNext].visible, %1);
set(plugin[thumbMoveNext].enabled, %1);
</action>
<action name="adjusthtml5thumbsplugins">
if (ishtml5 == true,
set(plugin[thumbMovePrev].width, 5%);
set(plugin[thumbMoveNext].width, 5%);
);
</action>
<plugin name="thumbArray" keep="true" zorder="1" url="engenho centraldata/graphics/transparent.png" handcursor="false" capture="false" children="true" alpha="0.9" blendmode="normal" smoothing="true" x="0" y="10%" scale="1" align="bottom" edge="top" width="prop" height="10%"/>
<plugin name="thumbBgLayout" keep="true" zorder="1" url="engenho centraldata/graphics/transparent.png" handcursor="false" capture="false" x="0" y="0" align="center" edge="center" width="prop" height="100%" parent="thumbArray"/>
<plugin name="thumbMovePrev" keep="true" zorder="3" capture="true" url="engenho centraldata/graphics/thumb_scroll.png" alpha="0.8" onover="set(alpha, 1);" onout="set(alpha,0.8);set(scrollspeed,10);" scrollspeed="10" onhover="moveThumbsPrev(get(scrollspeed));if(scrollspeed LT 70, inc(scrollspeed););" onclick="moveThumbsPrev(50);" x="10" y="5%" align="bottomleft" edge="left"/>
<plugin name="thumbMoveNext" keep="true" zorder="3" capture="true" url="engenho centraldata/graphics/thumb_scroll.png" alpha="0.8" onover="set(alpha, 1);" onout="set(alpha,0.8);set(scrollspeed,10);" scrollspeed="10" onhover="moveThumbsNext(get(scrollspeed));if(scrollspeed LT 70, inc(scrollspeed););" onclick="moveThumbsNext(50);" x="10" y="5%" align="bottomright" edge="right"/>
<plugin name="thumbMovePrevArrow" parent="thumbMovePrev" keep="true" zorder="3" capture="false" url="engenho centraldata/graphics/arrow.png" x="0" y="0" align="center" edge="center" rotate="180"/>
<plugin name="thumbMoveNextArrow" parent="thumbMoveNext" keep="true" zorder="3" capture="false" url="engenho centraldata/graphics/arrow.png" x="0" y="0" align="center" edge="center"/>
<plugin name="slide" parent="thumbArray" keep="true" zorder="0" url="engenho centraldata/graphics/slide.png" handcursor="false" capture="false" children="true" alpha="0.9" blendmode="normal" smoothing="true" x="0" y="0" align="top" edge="top" width="4000" height="100%" onclick="slide_action_out"/>
<plugin name="strap" keep="true" zorder="0" url="engenho centraldata/graphics/strap.png" parent="thumbArray" alpha="0.9" align="top" edge="left" rotate="-90" handcursor="true" onclick="slide_action_out"/>
<plugin name="strapArrow" keep="true" parent="strap" zorder="0" url="engenho centraldata/graphics/arrow.png" align="center" edge="center" capture="false" enabled="false" rotate="180"/>
<!-- thumbs pictures -->
<plugin name="thumb_engenho central0" keep="true" zorder="2" parent="thumbBgLayout" url="engenho centraldata/graphics/engenho central0_thumbnail.jpg" width="17.8571%" height="prop" align="topleft" edge="center" x="10.7143%" y="50%" alpha="0.8" onclick="mainloadpano(engenho central0.xml);" onover="magnify('thumb_engenho central0'); " onhover="showtext(Engenho Central - Entrada pelo Mirante);" onout="lie('thumb_engenho central0');" visible="false" onloaded="thumbloaded();"/>
<plugin name="thumb_engenho central1" keep="true" zorder="2" parent="thumbBgLayout" url="engenho centraldata/graphics/engenho central1_thumbnail.jpg" width="17.8571%" height="prop" align="topleft" edge="center" x="30.3571%" y="50%" alpha="0.8" onclick="mainloadpano(engenho central1.xml);" onover="magnify('thumb_engenho central1'); " onhover="showtext(Engenho Central - SEMAC e Salão de Humor);" onout="lie('thumb_engenho central1');" visible="false" onloaded="thumbloaded();"/>
<plugin name="thumb_engenho central2" keep="true" zorder="2" parent="thumbBgLayout" url="engenho centraldata/graphics/engenho central2_thumbnail.jpg" width="17.8571%" height="prop" align="topleft" edge="center" x="50%" y="50%" alpha="0.8" onclick="mainloadpano(engenho central2.xml);" onover="magnify('thumb_engenho central2'); " onhover="showtext(Engenho Central - Teatro Municipal Erotídes de Campos);" onout="lie('thumb_engenho central2');" visible="false" onloaded="thumbloaded();"/>
<plugin name="thumb_engenho central3" keep="true" zorder="2" parent="thumbBgLayout" url="engenho centraldata/graphics/engenho central3_thumbnail.jpg" width="17.8571%" height="prop" align="topleft" edge="center" x="69.6429%" y="50%" alpha="0.8" onclick="mainloadpano(engenho central3.xml);" onover="magnify('thumb_engenho central3'); " onhover="showtext(Engenho Central - Entrada pela Ponte Pencil);" onout="lie('thumb_engenho central3');" visible="false" onloaded="thumbloaded();"/>
<plugin name="thumb_engenho central4" keep="true" zorder="2" parent="thumbBgLayout" url="engenho centraldata/graphics/engenho central4_thumbnail.jpg" width="17.8571%" height="prop" align="topleft" edge="center" x="89.2857%" y="50%" alpha="0.8" onclick="mainloadpano(engenho central4.xml);" onover="magnify('thumb_engenho central4'); " onhover="showtext(Engenho Central - Ponte Pencil - Piracicaba/SP);" onout="lie('thumb_engenho central4');" visible="false" onloaded="thumbloaded();"/>
<plugin name="thumbnailsData" keep="true" nbThumbnailsLoaded="0"/>
<action name="thumbloaded">
inc(plugin[thumbnailsData].nbThumbnailsLoaded, 1);
if(plugin[thumbnailsData].nbThumbnailsLoaded GE 5,
setThumbnailsVisible();
thumbsResizeEventHandler();
adjusthtml5thumbsplugins();
);
</action>
<action name="setThumbnailsVisible">
set(plugin[thumb_engenho central0].visible, true);
set(plugin[thumb_engenho central1].visible, true);
set(plugin[thumb_engenho central2].visible, true);
set(plugin[thumb_engenho central3].visible, true);
set(plugin[thumb_engenho central4].visible, true);
</action>
<!--************** Panotour Maps plugin *******************************************************-->
<plugin name="panotourmaps" parent="STAGE" keep="true" devices="flash" url="engenho centraldata/graphics/PanotourMaps.swf" mapready="false" onmapready="set(mapready, true);panotourmapsactivespot(panotourmapsspot4);" align="left" y="0" height="100%" x="-20%" width="20%" mapgis="openstreetmap">
<radar visible="true" size="85" linecolor="0xffffff" linealpha="0.494118" fillcolor="0xffffff" fillalpha="0.494118"/>
<zoomcontrol visible="false"/>
<positioncontrol visible="false"/>
<maptypecontrol visible="false"/>
<spot name="panotourmapsspot0" onclick="mainloadpano(engenho central0.xml);" url="engenho centraldata/graphics/spots/spot0.png" onhover="showtext(Engenho Central - Entrada pelo Mirante);" lat="-22.717918396" lng="-47.6566696167" heading="270"/>
<spot name="panotourmapsspot1" onclick="mainloadpano(engenho central1.xml);" url="engenho centraldata/graphics/spots/spot1.png" crop="0|0|65|65" frame="0" lastframe="13" frameheight="65" framewidth="65" onloaded="set(stopSequence,false);animate(panotourmapsspot1,0.071);" onhover="showtext(Engenho Central - SEMAC e Salão de Humor);" lat="-22.7185173035" lng="-47.65675354" heading="270"/>
<spot name="panotourmapsspot2" onclick="mainloadpano(engenho central2.xml);" url="engenho centraldata/graphics/spots/spot1.png" crop="0|0|65|65" frame="0" lastframe="13" frameheight="65" framewidth="65" onloaded="set(stopSequence,false);animate(panotourmapsspot2,0.071);" onhover="showtext(Engenho Central - Teatro Municipal Erotídes de Campos);" lat="-22.7189922333" lng="-47.6563339233" heading="270"/>
<spot name="panotourmapsspot3" onclick="mainloadpano(engenho central3.xml);" url="engenho centraldata/graphics/spots/spot1.png" crop="0|0|65|65" frame="0" lastframe="13" frameheight="65" framewidth="65" onloaded="set(stopSequence,false);animate(panotourmapsspot3,0.071);" onhover="showtext(Engenho Central - Entrada pela Ponte Pencil);" lat="-22.7182674408" lng="-47.6552734375" heading="270"/>
<spot name="panotourmapsspot4" onclick="mainloadpano(engenho central4.xml);" url="engenho centraldata/graphics/spots/spot1.png" crop="0|0|65|65" frame="0" lastframe="13" frameheight="65" framewidth="65" onloaded="set(stopSequence,false);animate(panotourmapsspot4,0.071);" onhover="showtext(Engenho Central - Ponte Pencil - Piracicaba/SP);" lat="-22.7182846069" lng="-47.6548576355" heading="270"/>
</plugin>
<plugin name="panotourmapsthumb" keep="true" devices="flash" url="engenho centraldata/graphics/strap.png" align="left" edge="left" handcursor="true" onclick="if (mapsopened == 'true', closepanotourmaps(), openpanotourmaps() );"/>
<action name="openpanotourmaps">
if (isflash,
set(plugin[panotourmapsthumb].mapsopened,'true');
tween(plugin[panotourmaps].x,0%);
tween(area.x,20%);
tween(area.width,80%);
if (mapready,
plugin[panotourmaps].showControls();
,);
,);
</action>
<action name="closepanotourmaps">
if (isflash,
set(plugin[panotourmapsthumb].mapsopened,'false');
tween(plugin[panotourmaps].x,-20%);
tween(area.x,0%);
tween(area.width,100%);
if (mapready,
plugin[panotourmaps].hideControls();
,);
,);
</action>
<plugin name="panotourmapsthumbicon" devices="flash" keep="true" parent="panotourmapsthumb" zorder="0" url="engenho centraldata/graphics/ptmaps_open.png" align="center" edge="center" capture="false" enabled="false"/>
<action name="panotourmapsactivespot">
if (isflash,
if (mapready,
plugin[panotourmaps].activatespot(%1);
plugin[panotourmaps].ensurespotvisible(%1);
,);
,);
</action>
<action name="panotourmapsunactivespots">
if (isflash,
if (mapready,
plugin[panotourmaps].activatespot(none);
,);
,);
</action>
<!--************** Som Ambiente ***************************************************************-->
<action name="playbackgroundsound">
if(%1 == none,
stopallsounds();
set(plugin[soundinterface].background,%1);
,
if(plugin[soundinterface].background == %1,
if (%3 == forcesounds,
stopallsounds();playsound(backgroundsound,%1,%2);
)
,
stopallsounds();playsound(backgroundsound,%1,%2);
set(plugin[soundinterface].background,%1);
)
);
</action>
<action name="stopbackgroundsound">
stopsound(backgroundsound);
</action>
<!--************** Animação sequêncial ********************************************************-->
<action name="animate">
if (stopSequence == false,
inc(hotspot[%1].frame,1,get(hotspot[%1].lastframe),0);
mul(hotspot[%1].ypos,hotspot[%1].frame,hotspot[%1].frameheight);
txtadd(hotspot[%1].crop,'0|',get(hotspot[%1].ypos),'|',get(hotspot[%1].framewidth),'|',get(hotspot[%1].frameheight));
delayedcall(%2, animate(%1,%2) );
);
</action>
<action name="closeglobalobjects">
slide_action_out();
</action>
<!-- Raise sequence stopper and wait sequence time to break the delayed calls -->
<action name="interruptAnimation">
ifnot (stopSequence === undefined,
set(stopSequence, true);
wait(0.071);
);
</action>
</krpano>

Abraços
VISO PHOTO by emerson passarin
www.visophoto.com.br
epphotographer@gmail.com

Avatar do usuário
cartola
Site Admin
Mensagens: 1228
Registrado em: 11 Mai 2012, 12:40
Localização: Rio de Janeiro
Contato:

Re: Liberar tour após a barra de progresso atingir 100%

Mensagem por cartola » 08 Ago 2013, 10:35

Oi Emerson,

é realmente meio difícil entender esses XMLs do Panotour, pois já são XMLs mais elaborados, bem complexos. Pra aprender, se quer aprender, talvez seja melhor você escrever os seus começando com uns bem simples, que basicamente vão ter só a declaração da imagem, preview e a visualização inicial e tal. Uma maneira de gerar um bem simples é pegar uma equirretangular e jogar num dos scripts do krpano (krpano tools) como o Make Pano, por exemplo.

Sobre os comandos que não encontrou, eu mencionei alguns possíveis, mas não necessariamente eles foram usados pelo Panotour. Você tem que rastrear, seja de trás pra frente, seja do início pro fim. O bloco que chama os comandos que vão chamar as ações é o bloco <events> e os eventos possíveis você pode ver na seção correspondente do manual do krpano. Cada evento aponta para a ação que vai ser executada quando aquele evento acontecer. Por exemplo: onxmlcomplete vai dizer o que é pra ser feito quando o arquivo XML acabar de ser carregado pelo navegador do usuário e onmousedown diz o que fazer quando o mouse for pressionado.

Entendido o comportamento do <events> você pode rastrear do início pro fim procurando todos os blocos <events> e vendo as ações que ele chama, analisando cada uma pra ver o que faz e ver se descobre quando começa a ação que te interessa.

Pra fazer de trás pra frente temos que saber o que queremos investigar. No caso você quer saber, pelo que entendi, quando o panorama começa a sua entrada passando do little planet pra visão normal e isso já tínhamos identificado que é na ação "tweennormalview". Podemos então procurar por essa palavra e ir vendo se ela é diretamente chamada por um evento (events) ou se está sendo chamada dentro de outra ação. Se estiver em outra ação então passamos a procurar pelo nome dessa outra ação, até achar o evento inicial que dispara isso. Com isso deve dar pra identificar o que dispara a entrada e por que está demorando um pouco. Isso feito, tem que se pensar em como mudar pra atingir seu objetivo.

Bom, saindo da didática e partindo pra prática, a nossa ação é chamada por outra ação, chamada "fromlittleplanetintrotonormalview". Essa por sua vez é chamada dentro de outra ação, chamada "startLittlePlanetIntroEffect". Além disso ela é chamada pelo comando delayedcall (pode ver o que ele faz no manual) que chama ela após um atraso (uma espera) de 1 segundo. Essa última ação é chamada por outra, a "firstloadcompleteaction" (veja como o Panotour faz um ninho de mafagafos...). Essa já nos dá mais algumas informações sobre atrasos usados:
  • Se o primeiro panorama não tiver sido apresentado ainda ele vai apresentá-lo
  • vai esperar sua carga completar com "wait(load)"
  • vai chamar a próxima ação que vai desembocar na entrada (startLittlePlanetIntroEffect)
A última ação que analisei (firstloadcompleteaction) é chamada pela ação onxmlcompleteaction, que, finalmente, foi chamada por um evento na linha:

<events onxmlcomplete="onxmlcompleteaction();"/>

Bom, temos então uns atrasos aí. Na ordem cronológica o primeiro é o do comando "wait" que vai esperar o panorama terminar de ser carregado pra continuar. Em conexões mais lentas isso pode ser muito. É uma decisão a ser tomada, pois sem isso o usuário vai ver o efeito de entrada apenas com a imagem de preview. Eu prefiro não esperar o panorama carregar e usar o preview, mas muita gente não faz assim. Talvez não façam por que não é o padrão do Panotour e a maioria não mexa no XML, mas enfim, é uma decisão sua. Pra optar por isso eu trocaria a chamada do evento de onxmlcomplete por onpreviewcomplete, de modo a garantir que a imagem de preview esteja carregada e não apenas o XML, que é menor. Além disso, pra ir por esse caminho, pode tirar a linha do "wait" e tirar o delayedcall, deixando a chamada direta à ação. Resumindo, se optar por isso pode:
  • trocar onxmlcomplete por onpreviewcomplete na linha

    Código: Selecionar todos

    <events onxmlcomplete="onxmlcompleteaction();"/>
    que ficaria assim

    Código: Selecionar todos

    <events onpreviewcomplete="onxmlcompleteaction();"/>
  • remover a linha: wait(load);
  • tirar a chamada via delayedcall, passando o trecho de:

    Código: Selecionar todos

    delayedcall(1.0,
    fromlittleplanetintrotonormalview();
    set(autorotate.enabled,true);
    );
    Para

    Código: Selecionar todos

    fromlittleplanetintrotonormalview();
    set(autorotate.enabled,true);
Abs, Cartola.

Avatar do usuário
epassarin
Mensagens: 89
Registrado em: 21 Ago 2012, 18:46
Localização: Piracicaba / SP
Contato:

Re: Liberar tour após a barra de progresso atingir 100%

Mensagem por epassarin » 08 Ago 2013, 11:08

Valeu Cartola.

Eu ate estou lendo o manual do KRPano devagar, pois preciso traduzir para entender melhor em alguns trecho. Meu ingles nao é nada bbom. rs rsrs
Até estou entendendo um pouco dos comandos mas nao estou sabendo onde podem ser usados. Na verdade pelo que andei vendo dos panoramicas, o que mais gostei foi do KRPano, mas como nao sabia nada desses XML optei pelo panotour pro que la diz que vem junto o KRPano, mas sinceramente nao encontrei ele por aqui.
Eu quero é mesmo aprender o KRPano para pode personalizar melhor as paginas, principalmente aquele lance de colocar informaçoes sobre certos lugares.

Bom, eu fucei, refucei, acertei e errei em alguns pontos...entrei no XML das panoramicas e fui mundando o que achava que podia ser mudado, algumas davam certo e outra nao mas as que davam certo nao percebia alguma melhora.

A linha Wait...acabei tirando de todas, detesto abrir a pano e ficar olhando aquele mini mundo...sou um tanto ansioso para essas coisas.

Vou usar essas modificações e ver o que vai dar, mas quanto ao primeiro ecrã achei que ficou legal, ta carregando mais rapido depois de tirar o "Wait..", mas quando vamos pro segundo ecrã ele fica lento e fico sem controle do mouse ate carregar a imagem, isso é o que mais esta me tirando o sono pois em nsso projeto vou ter que fazer a maioria das panoramicas com varias panoramicas inteiras, entao minha duvida é a seguinte.

Em qual XML eu devo fuçar para melhorar cada panoramica.

veja esse link.. http://www.piracicaba360.com.br/pano/po ... o_central/

Tem varias panos dentro, mas a primeira carrega legal, as demais demoram um bocado.

Percebi que no iPad, mesmo com conexão 3G ele parece mais rápido do que na conexão normal no MAC e nao sei explicar porque isso. Esta com a opçao de giroscopio ligado mas sinceramente nao curti muito isso, vou tirar isso qualquer hora.

De um modo geral é isso, a minha duvida é qual das XML devo fuçar pra melhorar as demais panoramicas.
Na XML principal ou na de cada imagem?

Grato
VISO PHOTO by emerson passarin
www.visophoto.com.br
epphotographer@gmail.com

Avatar do usuário
epassarin
Mensagens: 89
Registrado em: 21 Ago 2012, 18:46
Localização: Piracicaba / SP
Contato:

Re: Liberar tour após a barra de progresso atingir 100%

Mensagem por epassarin » 08 Ago 2013, 11:15

Outra coisa que estou na duvida, é se o tamanhos dos cubos influencia na velocidade de abertura e na qualidade da panoramica. Eu fiz com dois tamanhos e nao consegui perceber muito caisa.
Mas qual o melhor tamanho dos cubo para eu padronizar. Na ultima montagem que fiz eu deixei padrao, ou seja , cliquei e reduzir distorção e ficou com 3100to e alguma coisa por 796.
Qual o melhor tamanho para FACE do CUBO , Tamanho do Corte, Tamanho máximo de visualização e qualidade JPEG uso geralmente no 10.
E quanto a imagem que arrasto para o panotour, na epoca que gerei acabei gerando ela em TIFF e esta com 10000 X 5000 e 150 dpi. Converti ela no PS para 10000 x 5000 c/ 72 Dpi. Isso influencia na panoramica de que maneira.
VISO PHOTO by emerson passarin
www.visophoto.com.br
epphotographer@gmail.com

Avatar do usuário
cartola
Site Admin
Mensagens: 1228
Registrado em: 11 Mai 2012, 12:40
Localização: Rio de Janeiro
Contato:

Re: Liberar tour após a barra de progresso atingir 100%

Mensagem por cartola » 08 Ago 2013, 11:54

Respondendo rápido, pois estou meio enrolado agora:

Não dá pra dizer, sem analisar, se tem que mexer no xml principal ou no de cada imagem. Tem que fazer os rastreamentos que sugeri, inclusive procurando em outros XMLs se não encontrar no que está, até achar o que quer. Certamente a passagem de uma pano pra outra tá demorando por conta de algum WAIT, provavelmente um WAIT num comando tween, mas não analisei.

Também não tenho números melhores, eu deixo o krpano decidir quantos níveis vai criar e o padrão funciona bem. No krpano não vejo os mesmos parâmetros que mencionou. Eu deixaria no padrão. O que pode mudar é o tamanho da imagem que vai passar para o Panotour. Se passar uma com 10k x 5k vai possibilitar mais zoom do que com uma menor. Se passar uma maior vai possibilitar mais zoom ainda e ele talvez crie mais camadas a serem carregadas a medida que é dado zoom pelo usuário.

Na minha visão da coisa o tamanho da imagem não vai influenciar o tempo de carga se você está usando multi-resolução, pois dessa forma ele vai carregar a mesma resolução inicial, independente do tamanho da imagem final. O que vai mudar é que ele vai criar, se for o caso, mais camadas pra mais zoom. Essas camadas só são carregadas à medida que o usuário dá zoom. Dito isso reafirmo que pode deixar as configurações padrão e criar a maior imagem possível, se seu desejo é dar mais zoom pro usuário final.

A mudança de 150 para 72 dpi não faz a menor diferença. DPI é uma medida que faz diferença para impressão, pra papel. Pra tela isso não vai fazer diferença. O programa vai pegar sua imagem e mostrar X pixels na tela e esse valor de X vai depender do campo visual (zoom) que estiver vendo na hora e não do DPI da imagem. Na hora que vai pro papel isso é usado (Dots Per Inch - pontos por polegada) pra definir que tamanho a imagem vai ter no papel.

Abs, Cartola.

Avatar do usuário
epassarin
Mensagens: 89
Registrado em: 21 Ago 2012, 18:46
Localização: Piracicaba / SP
Contato:

Re: Liberar tour após a barra de progresso atingir 100%

Mensagem por epassarin » 08 Ago 2013, 12:18

VALEU ,
vou analisar as panoramicas.
abraços e muito obrigado pelas dicas
VISO PHOTO by emerson passarin
www.visophoto.com.br
epphotographer@gmail.com

Responder