ActionScript - Cambiar color mediante as2 y xml

 
Vista:
sin imagen de perfil

Cambiar color mediante as2 y xml

Publicado por TONY (2 intervenciones) el 17/05/2011 23:50:07
Hola estoy haciendo un mapa electorail y me gustaria saber como en las distintas provincias, que serán objetos o mc puedo ponerle un color recogiendo los datos de un xml, es decir, madrid en rojo o en azul... dependiendo del codigo hexadecimal que ponga desde un xml. thanks
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Cambiar el color de las provincias según datos de un archivo XML

Publicado por Alejandro (369 intervenciones) el 27/06/2023 20:13:34
Paso 1: Preparación del archivo XML
- Crea un archivo XML que contenga la información de las distintas provincias y sus respectivos códigos hexadecimales de color. Por ejemplo:

1
2
3
4
5
<provincias>
  <provincia nombre="Madrid" color="#FF0000" />
  <provincia nombre="Barcelona" color="#0000FF" />
  ...
</provincias>

Paso 2: Cargar y procesar el archivo XML
- Utiliza las funciones de carga y procesamiento XML en ActionScript para cargar y analizar el archivo XML. Aquí hay un ejemplo básico:

1
2
3
4
5
6
7
8
var xmlLoader:URLLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, onXMLLoaded);
xmlLoader.load(new URLRequest("ruta_del_archivo.xml"));
 
function onXMLLoaded(event:Event):void {
  var xml:XML = new XML(event.target.data);
  // Procesa el XML aquí
}

Paso 3: Acceder a los datos del XML y cambiar los colores
- Una vez que hayas cargado y analizado el archivo XML, puedes acceder a los datos de cada provincia y cambiar el color correspondiente en tu mapa electoral. Aquí hay un ejemplo de cómo hacerlo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function onXMLLoaded(event:Event):void {
  var xml:XML = new XML(event.target.data);
 
  // Accede a cada provincia en el XML
  for each (var provincia:XML in xml.provincia) {
    var nombre:String = provincia.@nombre;
    var color:String = provincia.@color;
 
    // Cambia el color de la provincia en tu mapa electoral
    var provinciaObjeto:MovieClip = obtenerProvincia(nombre); // Reemplaza "obtenerProvincia" con tu función para obtener el objeto o mc de la provincia
    provinciaObjeto.transform.colorTransform = new ColorTransform();
    provinciaObjeto.transform.colorTransform.color = uint(color);
  }
}

En el código anterior, se recorre cada elemento `<provincia>` en el XML y se obtiene el nombre y el código de color. Luego, se utiliza la función `obtenerProvincia()` para obtener el objeto o mc correspondiente a la provincia en tu mapa electoral. Finalmente, se cambia el color de la provincia utilizando la clase `ColorTransform` y se asigna el valor hexadecimal del color.

Recuerda adaptar el código a la estructura de tu mapa electoral y asegurarte de tener las referencias correctas a los objetos o mcs de las provincias.

Puedes utilizar esta solución como base para futuras consultas relacionadas con la manipulación de datos de un archivo XML en ActionScript.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar