Comunidad de diseño web y desarrollo en internet online

Conocer el símbolo de una instancia????

Citar            
MensajeEscrito el 22 Sep 2010 09:40 am
Hola, muy buenas.

¿Es posible conocer dinámicamente que símbolo de la biblioteca posee una intancia concreta del Stage?

El objetivo es conocer dinámicamente cuantas veces ha sido instanciado un determinado símbolo de mi biblioteca..

Gracias.

Un saludo.

Por ElMarkis

55 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 22 Sep 2010 11:19 am
No, la propiedad stage existe en tanto el objeto esté en el DisplayList. En POO cuando se quiere controlar cantidad y tipo de instancias se usa un modelo llamado Factory, en este caso puedes simplemente usar alguna especie de contador que se incrememnte cada vez que haces un addChild

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 22 Sep 2010 11:36 am
Gracias por tu respuesta.

El problema viene debido a que yo no instancio dinámicamente por AS3 cada uno de los elementos de la biblitoca, sino que ya están instanciados a través de Flash. Esto me impide implementar el contador que me comentas...

Supongo que deberé pensar en otras opciones, ya que por este camino parace no funcionar la cosa...

Gracias de nuevo.
Un saludo.

Por ElMarkis

55 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 22 Sep 2010 12:25 pm
Si lo haces manualmmente, en la misma librería te indica cuantas veces usaste un símbolo

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 22 Sep 2010 01:36 pm
Sí, eso lo se. Lo que pasa es que a mi me hace falta conocer ese dato en tiempo de ejecución..

Estoy haciendo una especia de parser, que recorre los distinto mc del Stage y guarda ciertos datos en BBDD. El objetivo es guardar estos datos en BBDD tan solo una vez por cada símbolo y no por cada instancia..

Saludos.

Por ElMarkis

55 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 22 Sep 2010 02:51 pm
Si le has asignado alguna clase a los MC, puedes trazarlo, y usass el string que sale de ese trace

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Sep 2010 11:13 am
hola Jorge,

La opción que me comentas ya la he mirado, pero la pega es que eso supondria asignar una clase distinta a cada símbolo. ¿Esto no probocaría que al exportar se me generasen las definiciones de todas estas clases?

Probé este método usando getDefinitionByName() y getQualifiedClassName() y funciona, pero claro, son más de 300 símbolos diferentes y se van a ir añadiendo más..

Gracias por tu ayuda.
Un saludo.

Por ElMarkis

55 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 23 Sep 2010 02:20 pm
¿Instancias manualmente 300 símbolos diferentes?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 24 Sep 2010 08:23 am
Jeje!!

A ver, la aplicación que estoy desarrollando es una especie de "generador de avatares" tipo FaceYourManga (http://faceyourmanga.com/). El objetivo de lo que estoy desarrollando en estos momentos es parsear todos los elementos que existen en el .fla desarrollado por el grafista e insertarlos en BBDD. Ese .fla se distribuye por capas (en la capa 1 un mc con las distintas formas de la cara, en la capa 2 un mc con todos los pelos, etc..). Además, este .fla posee 2 frames, uno que contiene todos los mc de los avatares masculinos y otro con todos los femeninos.

En resumen, en el .fla existen 2 frames, en cada frame hay 24 capas (una por cada elemento (pelo, ojos, bocas, etc.). y cada capa posee un mc que contiene todos los elementos de un grupo (en la capa uno hay un mc con todos los pelos).

Para conseguir el objetivo que te he comentado recorro, para cada uno de los frames (chico y chica), todas las capas, y para cada capa recorro el mc pertinente que contiene todos los elementos diferentes de un grupo en particular (por ejemplo, todos los pelos). El motivo por el cual quiero saber si un mismo símbolo se encuentra instanciado 2 veces en la escena es para evitar insertar un mismo elemento 2 veces en BBDD (uno para el chico y otro para la chica). Si al parsear una instancia detectase que se encuentra duplicada, eso querría decir que es un elemento que esta tanto en los chicos como en las chicas y lo insertaria en BBDD una sola vez indicando que se encuentra en ambos sexos (por ejemplo, existen bocas que se encuentran tanto en los chicos como en las chicas).

Bueno, menudo royo te he soltado, pero espero que sirva para que entiendas mejor lo que estoy intentando hacer..

Gracias.

Por ElMarkis

55 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 24 Sep 2010 02:43 pm
Ok, me parece que hay un tema de términos. Según me cuentas, todos los símbolos están instanciados (que no visibles) en un MC que se va moviendo de frame para mostrar uno u otro elemento. Si por ejemplo toda una tira de bigotes se encuentra en distintos fotogramas de un MC, no se como detectas su duplicación, en todo caso que un mismo MC está en el mismo frame.
Luego en cuanto a parsear supongo que te refieres a interpretar donde está cada uno de los MC. Entonces si sigues una regla para los nombres de isntancia de cada MC y usas currentFrame para ver donde está, creo que puedes hacerte el mapa y en cualquier caso, a menos que sean muchos elementos o que el acceso sea muy masivo, algunos datos duplicados no dañarán tu base de datos

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 28 Sep 2010 01:37 pm
Bien, supongamos que tengo 2 mc diferentes, uno con las instancias de las bocas para chicos y otros con las instancias de bocas para chicas. EL primero posee 25 frames y el segundo 35, o sea, 25 y 35 bocas distintas respectivamente. En este supuesto caso, las bocas que se encuentran en los frames [20,25] son las mismas tanto en los chicos como en las chicas y por lo tanto cada uno de los símbolos correspondientes a estas bocas ha sido usado 2 veces.¿Cómo saber que ha sido usado 2 veces en tiempo de ejecución?

Lo de usar nombres para las instancias ya lo había pensado, además de otras opciones, pero todas ellas hacen que el proceso dependa directametne del grafista, que tendría que encargarse de poner los nombres de forma correcta. Mi objetivo es que no dependa de él, sino que sin que él haga nada yo pueda saber lo que te comento.

Saludos Jorge y gracias.

Marcos.

Por ElMarkis

55 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 28 Sep 2010 02:12 pm
Si realmente no quieres que dependa del grafista, entonces el sistema sería algo así:

- Cada elemento tiene un id de exportación para AS siguiendo la convención que acuerden (si no quieres que lo haga el grafista, tendrás que hacerlo tu)
- Cada tira por personaje se crea usando attachMovie de los elementos, en un array tienes el listado de los elementos de cada tira
- A partir de la selección que se hace, armas tus datos con absoluto control de cuantas instancias tienes

Si realmente te preocupa la duplicación de dos bocas, entonces hazlo realmente dinámico

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 01 Oct 2010 09:42 am
Ok Jorge.

Parece ser que en este caso o bien se hace la aplicación realmente dinámica o bien se asume cierta dependencia del trabajo del grafista.

Aunque quizá haciendo que cada elemento tenga un id de exportación bastaría y no sería necesario utilizar attachmovie..

Bien, comentaré las distintas opciones e intentaremos elegir la mejor..

Muchas gracias pro tu ayuda.

Un saludo.
Marcos.

Por ElMarkis

55 de clabLevel



Genero:Masculino  

firefox

 

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