Comunidad de diseño web y desarrollo en internet online

Cambiar Posicion Imagen Manualmente en un SWF

Citar            
MensajeEscrito el 01 Jul 2009 09:44 am
Buenas!!

Uso Flash CS3, y me gustaría hacer una cosilla pero no se exactamente como meterle mano.

Me gustaría hacer lo siguiente, crear un documento flash en el cual cargue una imagen con xml, hasta aquí bien, pero lo que no se es como hacer que esa imagen pueda ser cambiada de posición manualmente una vez ejecutado el .swf

¿Alguna idea?



Un Saludo y Gracias.

Por despotars

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 01 Jul 2009 12:31 pm
Parece que se está popularizando el use de CS4 ...
Mirate las propiedades x e y de un MovieClip, entonces cargas tu peli en un MovieClip y l;uego modificas las propiedades x e y ... para arrancar puedes buscar el tuto de preload en AS3 en este mismo sitio

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 02 Jul 2009 07:45 am
Muchas Gracias Jorge, voy a buscarlo, si tengo alguna duda te pregunto por este post ok??


Un Saludo y Muchas Gracias.

Por despotars

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Jul 2009 07:54 am
Por lo que he podido ver, creo que no es esactamente lo que necesito, creo que no me he explicado correctamente.

Lo que necesito es lo siguiente, tengo que hacer una plantilla flash en la cual al incluirse una imagen (por ejemplo) yo pueda cambiarla de sitio a mi antojo, haciendo click en la imagen y sin soltar desplazarla por todo el espacio creado con el flash, y un avez suelte el clik se kede fija en el mismo lugar donde lo he soltado. Pero esto debe hacerlo en tiempo de ejecucion, no al cargar el flash.

¿Me entiendes? De todas formas seguire mirandome las propiedades que me as comentado.


Un Saludo y Gracias.

Por despotars

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Jul 2009 10:54 am
Entonces la pregunta sería "¿como puedo arrastrar una imagen?"
La respuesta sería que uses MovieClip.startDrag() y MovieClip.stopDrag()

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 02 Jul 2009 11:40 am
Con estas propiedades puedo arrastrar la imagen una vez estoy ejecutando el swf???

Y si tengo varias imagenes por ejemplo, no hay ningun problema no???cada una lleva sus propiedades y listo no??



Un saludo y Muchas Gracias!!

Por despotars

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Jul 2009 11:44 am
Just do it

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 07 Jul 2009 07:55 am
Funciona perfectamente!! Muchas Gracias!! he realizado una prueba y va perfecto!!

Tengo una pequeña duda, las imagenes las cargo desde XML con una posicion exacta, ¿como las cargo desde el XML con estas propiedades para poderlas mover? La cosa es que tengo que cargar las imagenes desde el XML, luego las quiero mover y una vez las deje donde quiero, desearía que el XML se modifique con los nuevos parametros de las imagenes (posiciones donde las he dejado) no se si m explico...?


Un Saludo y Muchas Gracias!!

Por despotars

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Jul 2009 09:45 am
Cuando se trata de guardar en un fichero del servidor algo debemos usar un lenguaje "back-end" (vamos, php y ASP principalmente). Si sólo necesitamos que se guarden en el cliente podemos hacer uso de SharedObject (las cookies de Flash)(*)
Así que, por partes. Yo lo que haría sería
1.-Preguntamos si existe el Objeto SharedObject
2.-Si existe reubicamos las imágenes
3.-Si no existe las podemos poner aleatoriamente
4.-Cada vez que movamos una imagen, cambiamos el valor del SharedObject

(*)NOTA: Desde AS.3, Los SharedObject también permiten guardar los datos en el servidor, lo cual contradice los dicho anteriormente.

Por Eliseo2

710 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Jul 2009 10:20 am
Por lo tanto, le meto esa opcion cada vez que realice el stopdrag(), y así refrescará el XML con la nueva posicion de la imagen no??

Por despotars

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Jul 2009 10:37 am
Eliseo: los SO se pueden guardar en un servidor Flash Media Server (esto desde AS2, con SharedObject.getRemote), pero no en un servidor cualquiera.

despotars: Eliseo te sugiere usar un SharedObject en vez de un XML, si quisieras escribir en el XML deberías usar algún lenguaje de back-end para sobreescribir y manipular el XML, ya que Flash no puede hacerlo directamente

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 07 Jul 2009 10:40 am
Y si uso eso en vez del XML, podría crearlo mediante .NET???Estoy reralizando un proyecto que enlaza .NET con Flash mediante XML, es decir, desde el .NET cargo las imagenes en el flash (mediante el XML) y desde Flash cambio la posición de la imagen hasta el lugar donde desee, un avez posicionada el XML se actualiza con la nuev a posición. Así el .NET y el Flash ven el mismo XML a tiempo real y con datos reales. No se si me explico?

¿Me aconsejais que cambie el XML por lo que me comentais?

Por despotars

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Jul 2009 10:42 am
Depende del proyecto. Lo mas fácil de utilizar es una base de datos. Un XML está bien para leer datos, pero en cuanto tienes que hacer insert o updates se vuelve engorroso. Tal cual lo planteas, deberías recibir en .Net los nuevos datos, abrir el XML y actualizarlos.

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 07 Jul 2009 11:05 am
La cosa sería más o menos asi:

Desde .NET desarrollo una aplicacion que tenga incrustado un SWF, y por ejemplo desde un browser cargaré imagenes dentro del SWF (y se genera un XML con los parametros de la imagen, posicion dentro del SWL,tamaño, etc), una vez cargada la imagen la posiciono dentro del entorno del SWF (al hacer el stopdrag() se refrescará la posición de la imagen dentro del XML), y cuando este posicionada el el lugar correcto cargo otra imagen, y así hasta finalizar. Una vez posicionadas todas las imagenes, pulsando un boton de Guardar (en el entorno .NET o en el Flash, aun no se donde lo pondré para que sea más efectivo), se guardará el XML generado (que contiene todas las imagenes que he introducido con sus caracteristicas) en una base de datos ACCESS por ejemplo.

Por despotars

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 07 Jul 2009 02:07 pm
No hace falta el XML, puedes sacar y guardar directamente la info en la BD

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 08 Jul 2009 07:10 am
La cosa es que una vez generado el XML, se guarda en ACCESS. Cuando sea necesario se sacará de la base de datos la informacion y se pasará a un XML de nuevo para poder pasarselo a un nuevo documento Flash (Todo desde un entorno creado en .NET, para así poder generar la escena que preparamos previamente pero sin interpolaciones de movimiento, sino tal cual lo dejamos todo (por eso guardamos las posiciones de todos los objetos que hemos introducido. La cosa es que todo el entorno que trabajará con el Flash es .NET, el flash estará incrustado en una aplicación .NET desde donde iré cargando las imagenes en el SWF para poderlas posicionar a mi gusto.

Si no lo hago con XML, ¿como lo podría hacer enconces?

Por despotars

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Jul 2009 10:21 am
Sacando directamente los valores de la base de datos e imprimiento pares de nombre/valor, es decir la salida del aspx tiene que ser algo así:

mc1x=100&mac1y=200&mc2x=150&mc2y=250

Si no sabes como cargar esta info, mírate http://www.flash-db.com/Tutorials/loadingAS3/ , la parte de back-end está con PHP, pero es bien simple reemplazarlo por .Net
Teniendo una base de datos, luego tu eliges de que forma extraes la info, siendo el XML el menos aconsejable a menos que lo necesites porque quieres normalizar info de cara a otras aplicaciones. Los tutoriales siempre usan XML porque es la forma mas simple de estructurar info de solo lectura

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 08 Jul 2009 10:48 am
Claro, pense en XMl por si en un futuro necesito usar esta información en otras aplicaciones, tener crearo un estandar por asi decirlo. Lo que no tengo muy claro es como cargar una foto en el swf con una posicion exacta en el entorno de trabajo (en el centro por ejemplo), y refrescar el XML con la nueva posicion (cuando haga el stopDrag() refrescare el XML con la nueva posicion de la imagen). ¿Alguna Idea?

Por despotars

11 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Jul 2009 11:39 am

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 08 Jul 2009 11:51 am
y en tiempo de ejecucion puedo cambiarle el tamaño a la imagen???es decir, por ejemplo al evento del dobleclick puedo asociarle k cuando se haga doble click aparezca un recuadro para redimensionar la imagen y cuando haga dobleclick desaparezca ese recuadro redimensionador???eske me vendria muy bien pero no tengo ni idea de como meterle mano a esa parte...

Lo que me as comentado mas arriba lo estudiare y ya te contare como me ha ido.


Muchas Gracias!!!
:-D

Por despotars

11 de clabLevel



 

firefox

 

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