![]() |
|
||||||||||
|
|||||
|
Подскажите по какому принципу выстроить интерактивную сетку из шестиугольников во Флеше ? может у кого исходничек есть для наглядности?
|
|
|||||
|
тяжело с принципами что-то, на вот беспринципный пример:
MovieClip.prototype.getHexagon=function(r){
var h=this.createEmptyMovieClip('h',this.getNextHighestDepth());
h.lineStyle(0);
h.beginFill(0xCCCCCC);
h.moveTo(r*Math.cos(Math.PI/6),r*Math.sin(Math.PI/6));
for(var i=6;i--;){
var fi=Math.PI/6+i*Math.PI/3
h.lineTo(r*Math.cos(fi),r*Math.sin(fi));
}
return h;
}
var r=30,nx=5, ny=4, rv=r*Math.sin(Math.PI/3), rh=r*(1+Math.cos(Math.PI/3));
for(var i=0;i<nx;i++){
cells[i]=[];
for(var j=0;j<ny;j++){
var h=this.getHexagon(r);
h._x=rv*(1+i*2+j%2);
h._y=r+j*rh;
h.xi=i;
h.yi=j;
h.onRelease=function(){
trace('x: '+this.xi+'; y: '+this.yi);
}
}
}
|
|
|||||
|
silin,
tab у тебя вкрался лишний getNextHighes ---> tDepth |
|
|||||
|
типа md5 местный.
|
|
|||||
|
елы палы народ я тут не все разобрал (что к чему относиться и что должно быть еще в файле? плохо еще ориентируюсь в проге..)а можно коменты к строчкам написать? может прям в fla файлик запихать пмагите плиз чайнику?
|
|
|||||
|
код в первый фрейм, больше ничего..
getHexagon создает мувик, рисует в нем шестиугольник.. в цикле создаем сколько надо мувиков, расставляем.. на onRelease вешаем вывод 'опозновательных' свойств: для проверки, раз уж нужна интерактивная сетка ![]() зы:строчка cells[i]=[]; не нужна (хотел в массив их запихнуть..) Последний раз редактировалось silin; 31.01.2006 в 14:59. |
|
|||||
|
...ладно попробую разобраться.
большое тебе спасибо Silin |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:10. |
|
|
« Предыдущая тема | Следующая тема » |
|
|