Hotspots ein und ausblenden.

  • Hallo Ihr lieben und natürlich Hallo lieber Klaus :0)


    Ich weiß das diese Frage schon ein paar mal hier im Forum gestellt wurde, weil ich selber das Forum danach durchsucht habe. Aber ich weiß auch das diese Frage nie beantwortet wurde. Zumindest habe ich Einträge passend zu meiner Frage gefunden die nicht mal ein JA geht oder ein NEIN geht nicht bekommen haben.
    Das macht mich ja ein bisschen stutzig.

    Ist es also tatsächlich nicht möglich ??????

    Nun das Problem !
    Auf einem Flat Pano (Gigapixel) sollen Hotspots eingebaut werden.
    Das is ja für mich mittlerweile (stolz) alles kein Problem mehr.
    ABER:

    Ich möchte das manche Hotspots erst nach einer gewissen *Zoomtiefe* (nenn ich es mal) erscheinen.
    Also wenn ich mich im Bild reingezoomt habe z.B. 30% erst dann sollen die Hotspots zu sehen (und auch erst dann anwählbar) sein.
    Wie gesagt ich habe noch keine Beispiele oder sonstiges gefunden.
    Ist das über Java Skript vielleicht lösbar oder ist die Lösung viel simpler ?

    Einem Hotspot drehen lassen, oder in Kategorien einteilen alles das geht und das kann ich auch aber diese eine lästige Angelegenheit hällt mich nun seit Tagen auf.

    Wäre toll wenn diese Frage nun endlich mal geklärt werden könnte.
    Ich bin anscheinend nicht der einzige Unwissende hier :0)

    Liebe Grüße aus Hamburg *smile*

  • moin moin!

    ist zwar nicht genau das, was du suchst, aber so blende ich hotspots aus und ein.

    vg

    sascha


    <!-- Hotspots einblenden / ausblenden -->

    <action name="toggle_polygonal_hotspots">
    foreach(hotspot,i,
    toggle_alpha(get(i));
    );
    set(update,view);
    </action>

    <action name="toggle_alpha">
    if (hotspot[%1].point.count != 0,
    switch(hotspot[%1].fillalpha,0,0.4);
    set(hotspot[%1].fillcolor,0xFFCC00);,
    );
    </action>

    <action name="_foreach_action">
    trace("Error in foreach loop: push/pop stack corrupted");
    </action>

    <action name="foreach">
    set(%2,0);
    push(action[_foreach_action].content);
    set(action[_foreach_action].content,"if(%2 LT %1.count,%3;inc(%2);_foreach_action(););");
    _foreach_action();
    pop(action[_foreach_action].content);
    </action>


    <plugin name="hotspot_button"
    url="hotspots.png"
    keep="true" preload="false"
    visible="true" enabled="true" handcursor="true" capture="true" children="true"
    zorder="0"
    alpha="1.00" blendmode="normal"
    smoothing="true"
    align="leftbottom" edge=""
    x="460" y="10" ox="" oy=""
    width="" height=""
    crop="" ondowncrop="" onovercrop=""
    scale="1" scale9grid="" scalechildren="false"
    rotate="0"
    parent=""
    mask=""
    onloaded=""
    onover=""
    onhover="showtext(Hotspots anzeigen/verbergen);"
    onout=""
    ondown=""
    onup=""
    onclick="toggle_polygonal_hotspots();"
    effect=""
    />

  • Danke für die schnelle Antwort.
    Aber das ist tatsächlich nicht das was ich suche.
    Das habe ich auch schon mal eingebaut und die einzelnen Hotspots dabei auch in Kategorien eingeteilt.
    Also meinetwegen *Zeige mir nur die Hotspots für Kunst oder nur für Sehenswürdigkeiten usw. usw..

    Ich brauche aber eine automatische Anzeige der Hotspots ab einer bestimmten Zoomtiefe.
    Trotzdem DANKE für die schnelle Antwort von dir.

    KLAUS ????????????

    Ist es denn wirklich nicht machbar ????? *cry*

  • Mit "events onviewchange" kannst Du den fov auslesen. Ich hab mal ein Beispiel zum einblenden des -Bottom getestet.


    Code
    <events onviewchange= "action(zoom);"/>
    
    
    <action name="zoom">
    	if(view.fov LE 0.8, set(plugin[out].visible,true),set(plugin[out].visible,fase));
    </action>

    Ich hoffe, es hilft Dir etwas weiter

    Edited once, last by KlausR (December 4, 2010 at 11:37 PM).

  • Ich raff dein Schnipsel nicht so ganz.

    if(view.fov LE 0.8,(Wofür steht das LE ?) set(plugin[out].visible,true),set(plugin[out].visible,false));
    Und funktionieren tut es leider auch nicht.

    Ist der Schnipsel so eigentlich vollständig ? Ich glaub da fehlt noch was. Kann das sein ?

    LG
    Hamburger

  • Hallo,

    da habe ich wohl zu wenig Informationen gegeben. Mich hatte es immer gestört, das in meiner Bildergallery beim öffnen schon alle Bottom zu sehen waren. Die out, left, right, up und down Buttom hatten jedoch keine Funktion, da ja das Bild in voller größe angezeigt wird (Fov=1).
    Das Beispiel der action zoom bezieht sich auf mein out-Buttom (plugin[out]) das ich beim Start auf fase setze. Beim zoomen wird dieser Wert nun kleiner und wenn er <= 0.8 wird, wird das plugin[out] auf true gesetzt und die Button werden sichtbar.
    Du mußt die If-Funktionen für Deine Seite entsprechend anpassen. Der Fov bei einen Panorama ist größer als bei meinen Bildern. Auch das, was beim erreichen des Wertes geschehen soll, muß Du entprechend anpassen (zB mit Set. Tween, Action usw … Hotspot-ein).

    So sieht die Steuerung der Butttons auf meiner Seite aus: http://www.herosso.de/Start/Moor/Moor.htm

    ach ja, LE ist <=

    Available operators:
    "==" - equal
    "!=" - not equal
    "<" or "LT" - lower than *
    ">" or "GT" - greater than *
    "<=" or "LE" - lower or equal than *
    ">=" or "GE" - greater or equal than *
    "===" - strict equal (compare only existent variables)
    "!==" - strict not equal (compare only existent variables)


    Hoffendlich hilft's Dir jetzt weiter.

    Schöne Grüße
    m „anderen“ *smile* Klaus

  • Ich vergas zu erwähnen das ich nur einen Mü von einem Anfänger entfernt bin :0)

    Alles was ich kann ist abschreiben :0)

    Naja nicht ganz so schlimm, aber fast.

    Ich habe mich mal ran gesetzt und angefangen ein bisschen was zu probieren. Ist der Ansatz hier richtig ?



    Das ist aber alles zusammengesucht aus anderen Beiträgen hier im Forum.


    Boahhh... Wer schreibt endlich mal ein KRPano Buch :0) ?

    Aber in die richtige Richtung geht es oder ???????

    Brauch Hilfestellung BÜDDE !

  • Ich habe jetzt mal ein Beispiel auf meine Homepage geladen.
    Hier der Link :http://www.herosso.de/Start/kugel_moor/Start.html
    Wenn Du nun vom Turm schaust,( zweite Vorschaubild von oben) und in das Bild hinein zoomst, erscheint ein Pfeil neben der Seelandschaft. Beim zurück zoomen verschwindet er wieder.

    Beim öffnen des Panoramas ist das hotspot hs2 auf visible="fase" gesetzt
    Das Panorama öffnet mit den Wert fov=96.
    Beim zoomen wird durch das "events onviewchange" die "action(zoom) aufgeführt
    Mit If wird der Wert ausgelesen. Ist dieser <= 70 (LE) wird der hotspot hs2 auf visible,true gesetzt. (Hotspot erscheint)
    Ist der Wert > 70, wird der Wert auf visible,fase gesetzt (Hotspot verschwindet)


    Schöne Grüße
    Klaus

  • Ich gloob das ja nicht.
    Ich kopier den Code, füge ihn bei mir ein, mach ein paar Änderungen der Links und Namen und ALLES läuft.
    DANKE KLAUSR !!!


    Das Leben kann manchmal so schön sein :0)
    Ich schließ dich mit in meine Gebete ein ;0)

    Doch einen Wermutstropfen habe ich noch gefunden wobei der wahrscheinlich am Flashplayer liegen wird.
    Wenn man den allseits beliebten KRPano Ani....swf Hotspot benutzt, wird er zwar aus und ein geblendet aber er bewegt sich nicht mehr.

    Da ich aber eh kein Fan von bewegten Hotspots bin ist das sowas von egal :0)

    DANKE DANKE DANKE

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!