Показать сообщение отдельно
Старый 06.12.2007, 02:27
MurziQ вне форума Посмотреть профиль Отправить личное сообщение для MurziQ Найти все сообщения от MurziQ
  № 1  
Ответить с цитированием
MurziQ

Регистрация: Dec 2007
Сообщений: 6
По умолчанию MovieClip между двумя другими MovieClip

Знаю звучит както странно, однако проблема есть а как решить её я незнаю...
Если коротко то у нас есть ХМЛ файл откуда читается определенные данные
[<it name="Piter" cordx="100" cordy="50" type="megapolis" fromx="50" fromy="20" />]
Программа вырисовывает все города и прочее. Так вот проблема в том что надо еще эти города соединить "железной дорогой" которая пойдет к объекту с именем name и кординатами cordx и cordy из кординат fromx и fromy... Пробывал сначала просто линиями соединять но запутался в depth'e >< Потом решил, что всетаки железная дорого ftw и начал мудрить с всякими atan'ами и прочее, и как вы видите безрезультатно.
вот код с линиями... если кто знает как сделать с MovieClipом буду очень признателен...
Код:
my_xml = new XML();
my_xml.ignoreWhite = true;

my_xml.onLoad  = function(ok) {
	if (ok) {
		parovozik();
	}
};
my_xml.load("data3.xml");
parovozik = function() {
	var len = my_xml.childNodes[0].childNodes[0].childNodes.length;
	for (var i = 0; i<len; i++) {
		_root.createEmptyMovieClip("gr"+i, i+1);
		var gr = _root["gr"+i];
		var color = 0xFF0000;
		var tp = my_xml.childNodes[0].childNodes[0].childNodes[i].attributes.type;
		var xx = my_xml.childNodes[0].childNodes[0].childNodes[i].attributes.cordx;
		var yy = my_xml.childNodes[0].childNodes[0].childNodes[i].attributes.cordy;
		var fromx = my_xml.childNodes[0].childNodes[0].childNodes[i].attributes.fromx;
		var fromy = my_xml.childNodes[0].childNodes[0].childNodes[i].attributes.fromy;
		gr.attachMovie (my_xml.childNodes[0].childNodes[0].childNodes[i].attributes.type,"gr"+i,{_x:0, _y:0});
		gr._x = xx;
		gr._y = yy;
		this.createEmptyMovieClip("gg"+i,i+i+1);
		var gg = _root["gg"+i];
		gg.lineStyle(2,color);
		gg.moveTo(fromx,fromy);
		gg.lineTo(gr._x,gr._y);
		gr.createTextField("tf", 1,-12, 9, 80, 20);
		with (gr.tf) {
			autoSize = "middle";
			text = my_xml.childNodes[0].childNodes[0].childNodes[i].attributes.name;
		}
	}
};


Последний раз редактировалось iNils; 06.12.2007 в 02:46.