Регистрация: May 2001
Адрес: Ukraine Kiev
Сообщений: 157
|
Это канечно изврат но кто сказал что изврат это плохо...
а что касается тормазов то алгоритмы флеша просчитывает на ура и тормозит только лиш при обработке изображений ну вот вам к примеру кусок проги для построения графиков работает без тормазов хоть и сдаровенная ...
[code]
// ======== INVISIBILITI COMPONENT ========= //
setProperty (line_graf, _visible, "0");
setProperty (stolb, _visible, "0");
setProperty (line_vert, _visible, "0");
setProperty (zero, _visible, "0");
setProperty (text_var, _visible, "0");
setProperty (line_step, _visible, "0");
setProperty (info_grafic, _visible, "0");
setProperty (box_graf, _visible, "0");
setProperty (step_info, _visible, "0");
setProperty (mashtabing, _visible, "0");
setProperty (graf_stolb, _visible, "0");
setProperty (fon_region, _visible, "0");
setProperty (hr_inf, _visible, "0");
setProperty (mashtab, _visible, "0");
setProperty (clear1, _visible, "0");
for (no_dr=0; no_dr<=15; no_dr++) {
setProperty (eval("video_"+no_dr), _visible, "0");
setProperty (eval("gal"+no_dr), _visible, "0");
}
N_layer = 0;
color1 = 1;
function clear_video (All_X, All_Y) {
N_layer += 1;
cls = "cl" add N_layer;
duplicateMovieClip (clear, cls, N_layer);
setProperty (cls, _x, 0);
setProperty (cls, _y, 0);
setProperty (cls, _xscale, All_X+5);
setProperty (cls, _yscale, All_Y+5);
}
function draw_all () {
for (k=0; k<=N_layer; k++) {
cls = "c" add k;
duplicateMovieClip (clear1, cls, k);
}
N_layer = 0;
// ====== READ ALL VAR ====== //
/* var diapason = 0;
var All_X = Number(instance1.width); // ALL REGION _X_
var All_Y = Number(instance1.height); // ALL REGION _Y_
var x_first_pos = Number(instance1.x_first); // DISTANCE X FROM ZERO
var y_first_pos = Number(instance1.y_first); // DISTANCE Y FROM ZERO
var info_diap_x = 100; // DISTANCE _X_ FOR INFO
var info_diap_y = 30; // DISTANCE _Y_ FOR INFO
n = Number(instance1.array_n); // AMOUNT N
m = Number(instance1.array_m); // AMOUNT M
for (i = 0; i<=m; i++){
var_array[i] = new Array();
menu[i] = eval("_level0.instance1.Zxn"+i)
for (j = 0; j <= n; j++){
var_array[i][j] = Number(eval("instance1."+array_name+i+'t'+j));
}
}
for (dr=0; dr<=m-1; dr++) {
setProperty (eval("video_"+dr), _visible, "1");
setProperty (eval("gal"+dr), _visible, "1");
}
*/
// ===[=== TEST ARRAY ===]=== //
diapason = 0;
All_X = 800;
All_Y = 300;
x_first_pos = 10;
y_first_pos = 10;
n = 13;
m = 10;
result = new Array();
var_array = new Array();
name_array = new Array(name1,name2,name3,name4,name5,name6,name7,name8);
var_array[0] = new Array(10,20,30,10,50,20,15,30,20,20,40,15,20);
var_array[1] = new Array(20,30,30,10,10,20,20,30,25,0, 30,35,15);
var_array[2] = new Array(10,11,12,13,14,15,16,17,18,19,20,21,22);
var_array[3] = new Array(0 ,1 ,2 ,3 ,4 ,5 ,6 ,7 ,8 ,9 ,10,11,12);
var_array[4] = new Array(10,20,30,40,50,60,70,80,90,10,20,30,40);
var_array[5] = new Array(40,30,20,10,90,80,70,60,50,40,30,20,10);
var_array[6] = new Array(10,15,20,25,30,35,40,45,50,55,60,65,70);
var_array[7] = new Array(70,65,60,55,50,45,40,35,30,25,20,15,10);
var_array[8] = new Array(20,20,10,10,50,50,30,30,20,20,40,40,0 );
var_array[9] = new Array(-60,-60,-70,-70,-80,-80,-90,-90,-50,-50,-40,-40,-30);
menu = new Array(1,2,3,4,5,6,7,8,9,10);
// ====== COLC TEMP ====== //
temp_max = 0;
temp_max = 0;
for (c = 0 ; c <= n ; c++){
s_min = 0;s_max = 0;
for (r = 0 ; r <= m ; r++){
if (menu[r]!= 0){ // <--------- RESULT ARRAY ===== //
result[c] += var_array[r][c];
}
if (temp_max< result[c]){ temp_max = result[c]; }
if (temp_min> result[c]){ temp_min = result[c]; }
if (var_array[r][c]<0){s_min+=var_array[r][c];
if (temp_min >s_min){temp_min = s_min}
}else{s_max+=var_array[r][c];
if (temp_max <s_max){temp_max = s_max}
}
}
}
diapason = temp_max+Math.abs(temp_min);
// COLCULATE LOGO SCALE//
num = 0;
num_x = n;
step_col = 1;
while (num_x>10) {
step_col *= 10;
num_x /= step_col;
num += 1;
}
var_ddd = n;
array_name = instance1.array_name;
// STEP [1] ============[=== DRAW FON ===]====================//
mp = 0;
mx = 0;
mo = 0;
/*for (r=0; r<=15; r++) {
if (eval("_level0.instance1.Zxn"+r) == "1") {
tellTarget (eval("gal"+r)) {
gotoAndStop (2);
}
for (c=1; c<=n; c++) {
temp = var_array[r][c];
if (mp<temp) {
mp = temp;
}
if (mx>temp) {
mx = temp;
}
}
mo = Math.abs(mx);
}
}
diapason = mp+mo;*/ // ALL DIAPASON
// ============ REGION DRAW GRAPHICS ============= //
region_graf_x = All_X-x_first_pos-20; // REGION _X_
region_graf_y = All_Y-y_first_pos-30; // REGION _Y_
x = region_graf_x+x_first_pos+10; // X_INFO
y = y_first_pos; // Y_INFO
// ============ COLCULAT DIAPASON BIDS-OFFERS =========== //
// COLCULATE DELENIYA Y
delenie_y = 10;
zero_koef = z_koef(diapason);
delenie_y = d_y(diapason);
aser = zero_koef+"____"+delenie_y;
// while (all_diap>10) {zero_koef *= 10; all_diap = diapason/zero_koef;}
// if (int(all_diap) == 1) { delenie_y = 2; }
// if (int(all_diap) == 2 or int(all_diap) == 3 or int(all_diap) == 4) {delenie_y = 5; }
mo_num = int(mo/(zero_koef*delenie_y/10))+1;
mp_num = int(mp/(zero_koef*delenie_y/10))+1;
num_grid_y = mo_num+mp_num;
REGION_X = x_first_pos;
|