Comunidad de diseño web y desarrollo en internet online

Obtener posicion "x" y "y" respecto al timeline pr

Citar            
MensajeEscrito el 17 Mar 2012 11:56 am
Tengo un símbolo dentro de otro símbolo, y cuando creo un trace(); con su propiedad _x o _y, aparece ese valor en salida pero respecto al objeto en el que esta integrado y no respeto el timeline principal...

Por ejemplo, tengo "simbolo1" y dentro de simbolo1 hay otro simbolo; "simbolo2".
Escribo un trace:

Código ActionScript :

trace(_root.simbolo1.simbolo2._x); 

y me da la posición x, RESPECTO EL PUNTO DE REFERENCIA de simbolo y no de su posición original en el escenario...

He asignado correctamente los nombres de instancia, ese no es el problema...
Como lo soluciono?

Gracias!!

Por AdriaFabrega

16 de clabLevel



 

chrome
Citar            
MensajeEscrito el 20 Mar 2012 03:33 pm

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 20 Mar 2012 07:36 pm
He estado mirando en ayuda pero no entiendo nada, como debo usarlo??? :(

Se que he de crear una variable de tipo objeto con la posicion "x" y "y", pero "x" y "y" de que?
Y luego el codigo MyClip.localToGlobal(algo); hay dos referencias, MyClip y algo, que es cada cosa?

He intentado cosas, pero me dan valores raros, no son la posicion referente a el timeline principal...

Ayuda!! :S

Por AdriaFabrega

16 de clabLevel



 

chrome
Citar            
MensajeEscrito el 20 Mar 2012 07:49 pm
Cualqueir MovieClip tiene indicada su posición como propiedades x e y.

y me da la posición x, RESPECTO EL PUNTO DE REFERENCIA de simbolo y no de su posición original en el escenario...


En efecto si trazo la posición den un MC dentro de otro me da su posición respecto a las coordenadas del MC contenedor. ¿Como puedo convertirlas a coordenadas globales?

supongamos que dentro del timeline del clip llamado "contenedor", trazo las coordenadas del clip llamado "cuad" (es decir la ruta es _root.contenedor.cuad), luego las convierto a globales y las vuelvo a trazar

Código ActionScript :

var posicion:Point = new Point(cuad.x, cuad.y);
trace(posicion);
var nuevaPosicion:Point = this.localToGlobal(posicion);
trace(nuevaPosicion)


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 20 Mar 2012 09:10 pm
En el panel de errores de compilador me pone el siguiente error:

No se pudo cargar la clase o interfaz 'Point'.

Tengo que crear esa clase antes? Si es así, como lo hago?
Porcierto, estoy usando AS2.

Muchisimas gracias!!!

Por AdriaFabrega

16 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Mar 2012 08:41 am
Agrega al principio

import flash.geom.Point;

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 21 Mar 2012 06:23 pm
He colocado el codigo para importar la clase Point en el primer fotograma pero sigue saliendo el mismo error.

Ayuda!!

Por AdriaFabrega

16 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Mar 2012 06:26 pm

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 21 Mar 2012 07:00 pm
Hola, el código para importar la clase era correcto, el problema es que en vez de insertarlo en el primer fotograma tenia que insertarlo en el mismo símbolo en el que quería usarlo.
Y la variable myPoint se me creaba correctamente y me daba la posición del objeto contenido dentro del símbolo contenedor (posicion local) y ahora el problema esta en la segunda variable (nuevaPosicion) pues el valor en el panes de salida con un trace es undefiened, y no la posicion global, nisiquiera la local... Undefined.....

import flash.geom.Point;
var myPoint:Point = new Point(_root.hero.puntoa1._x,_root.hero.puntoa1._y);
var nuevaPosicion:Point = _parent.localToGlobal(myPoint);
trace(nuevaPosicion);

Ahora que hago mal?? :cry: Ayuda!!

PD: Muchisimas gracias!!!!

Por AdriaFabrega

16 de clabLevel



 

chrome
Citar            
MensajeEscrito el 21 Mar 2012 07:33 pm
Buff, hace mucho que no uso AS2, era así

Código ActionScript :

import flash.geom.Point
var posicion:Object = {x:cuad._x, y:cuad._y};
trace(posicion.x+" / "+posicion.y);
localToGlobal(posicion)
trace(posicion.x+" / "+posicion.y);


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.