You are not logged in.

Dear visitor, welcome to krpano.com Forum. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

1

Wednesday, July 22nd 2009, 10:38pm

Variablen übergabe ...

HI Klaus!
Inspiriert von "NEW FLY-OUT HOTSPOTS EXAMPLE" versuche grade eine art accordion-navi direkt in der XML-Steuerung (nicht als Flash plugin) zu basteln ... dabei fällt mir auf dass ich es noch nicht gechckt habe wie die Variablen gesezt bzw. übergeben werden ...

<plugin name="level1"
...
targ_oy="set(get(plugin[level1child].height));" //geht nicht
...
onclick="exmpl_1(get(name), get(targ_oy));"/>
<action name="exmpl_1">
set(name_of_plugin_to_change,%1child); //geht nicht
tween(plugin[%1].y, %2);
tween(plugin[name_of_plugin_to_change].y, %2); //geht nicht
showtext(%1child, textstyle1); //geht, es wird als zusammengeseztes string angezeig
</action>

es gibt in der "Radme" zum lezten release:

Quoted

- txtadd(dest, txt1, txt2, txt3, ...)
- this actions adds strings togethers
- dest = txt1 + txt2 + txt3 + ...


Kannst du mal ein beispiel geben wie es funktioniert ... kann mann es nutzen um strings dynamisch zu bauen die dann als argumente übergeben werden können??
Grüße
Mil

p.s.:der woltlab wyswig-editor funzt nicht richtig in Opera!

This post has been edited 4 times, last edit by "milemann" (Jul 22nd 2009, 11:03pm)


2

Thursday, July 23rd 2009, 12:03pm

Hi,
targ_oy="set(get(plugin[level1child].height));" //geht nicht
direkt in den Attributdefinition sind keine "Actions" möglich, nur statische Werte,
eine Möglichkeit wäre z.B. im "onloaded" Event es Plugins dynamisch Werte zu setzen,



set(name_of_plugin_to_change,hild); //geht nicht
das sollte eigentlich funktionieren,
"name_of_plugin_to_change" sollte laut deinem Beispiel "level1child" enhalten,
mit :

Source code

1
trace(name_of_plugin_to_change);

könntest du das z.B. überprüfen (im Log nachsehen, 'O' drücken um es zu öffnen)

tween(plugin[name_of_plugin_to_change].y, %2); //geht nicht
die Verwendung von Variablen als Index ist momemtan nicht möglich,
es wäre aber mittels einer weiteren "Action" möglich:
z.B.

Source code

1
2
3
4
5
<action name="tween_item">
  tween(%1[%2].%3, %4);
</action>
...
tween_item(plugin, get(name_of_plugin_to_change), y, %2);

%1 = plugin
%2 = get(name_of_plugin_to_change)
%3 = y
%4 = %2 der vorherigen Action,


showtext(%1hild, textstyle1); //geht, es wird als zusammengeseztes string angezeig

Source code

1
showtext(get(%1hild), textstyle1);
sollte den "Inhalt" anzeigen

Quoted

Kannst du mal ein beispiel geben wie es funktioniert ... kann mann es nutzen um strings dynamisch zu bauen die dann als argumente übergeben werden können??
z.B.
txtadd(text, 'Der Name des Plugins ist - ', get(name));
trace(text);

um diesen Text einer Action als parameter zu übergeben:

Source code

1
any_action( get(text) );



Schöne Grüße,
Klaus

3

Thursday, July 23rd 2009, 4:44pm


targ_oy="set(get(plugin[level1child].height));" //geht nicht
direkt in den Attributdefinition sind keine "Actions" möglich, nur statische Werte,
eine Möglichkeit wäre z.B. im "onloaded" Event es Plugins dynamisch Werte zu setzen,


Ich habe so etwas mit set(plugin[home].onclick,lookto(85,0,90,smooth(100,100,100))); versucht. Das klappt auch. Ich wollte nur verstehen, ob dann wirklich quasi "lookto(85,0,90,smooth(100,100,100))" im onclick event steht, d.h. es wird immer als String und nie als Wert (bei entsprechender Funktion) übergeben/reingeschrieben?

Und wenn ich mir sparen möchte die 85,0,90 immer manuell nochmal einzutragen, kann ich das evtl. mit einem Auslesen aus dem dann geladenen Panorama verbinden, a la lookto(view.hlookat,0,90,smooth(100,100,100))?