![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Регистрация: Feb 2001
Сообщений: 1,893
|
Цитата:
, но какого централа? ![]() |
|
|||||
|
"Аинслей"
|
2 УильямБрэдберри: Реально. Сделай такой туториал. У тебя к ним талант.
__________________
Мы не съедобны. |
|
|||||
|
Регистрация: Apr 2003
Адрес: DC
Сообщений: 4,489
|
Я шас вас всех застрелю. Хватит меня в плагиате обвинять.
Все исходники написал я сам. Ничего не спёр. Ничего не утащил. Знающие люди не станут обвинять меня в плагиате таких лёгких исходников. ЁПРСТ.
__________________
flash/flex/unity |
|
|||||
|
Регистрация: Feb 2001
Сообщений: 1,893
|
млин, да я тока шас пригляделся, что там такое
, и сайт я твой видел раньше - еще тогда в шоке был, тока он маленько другой был =), у меня даже есть папочка в избранном - "suxx" )) |
|
|||||
|
Мастер Цифрового Облика
|
Цитата:
|
|
|||||
|
Регистрация: Feb 2001
Сообщений: 1,893
|
Цитата:
, но я немного не про то, я про другое, чего ты ждешь от него такого неслыханного? ![]() |
|
|||||
|
некрофил
Регистрация: Mar 2002
Адрес: ...по колено в кровище...
Сообщений: 2,292
|
Цитата:
__________________
...убивать людей не удовольствия ради, но для еды. |
|
|||||
|
Регистрация: Apr 2003
Адрес: DC
Сообщений: 4,489
|
всем спасибо за комментарии
__________________
flash/flex/unity |
|
|||||
|
Регистрация: Apr 2003
Адрес: DC
Сообщений: 4,489
|
vertex = function (x, y, z) {
this.x = x; this.y = y; this.z = z; }; vertex.prototype.rotateXY = function(sinX, cosX, sinY, cosY) { //rotation around of axes X and Y var yp = this.y*cosY-this.z*sinY; var zp = this.y*sinY+this.z*cosY; var xp = this.x*cosX+zp*sinX; var zp = -this.x*sinX+zp*cosX; this.x = xp; this.y = yp; this.z = zp; }; vertex.prototype.perspective = function() { //calculation 3d to 2d var perRatio = 1/(this.z/dist+1); this.rx = cnx+this.x*perRatio; this.ry = cny+this.y*perRatio; }; face = function (c, v1, v2, v3, v4) { this.c = c; this.v1 = v1; this.v2 = v2; this.v3 = v3; this.v4 = v4; }; face.prototype.draw = function() { var shadow = 130+((v[this.v1].rx+v[this.v2].rx+v[this.v3].rx+v[this.v4].rx)-(v[this.v1].ry+v[this.v2].ry+v[this.v3].ry+v[this.v4].ry))/5; _root.lineStyle(0, 0x000000, 100); _root.beginFill(shadow << 16 | shadow << 8 | shadow << 0, 100); _root.moveTo(v[this.v1].rx, v[this.v1].ry); _root.lineTo(v[this.v2].rx, v[this.v2].ry, v[this.v3].rx, v[this.v3].ry); _root.lineTo(v[this.v3].rx, v[this.v3].ry, v[this.v4].rx, v[this.v4].ry); _root.lineTo(v[this.v4].rx, v[this.v4].ry, v[this.v1].rx, v[this.v1].ry); _root.endFill(); }; face.prototype.fill = function() { var vis = ((v[this.v2].rx-v[this.v1].rx)*(v[this.v3].ry-v[this.v1].ry)-(v[this.v2].ry-v[this.v1].ry)*(v[this.v3].rx-v[this.v1].rx)); if ((this.c+2)%2) { vis *= -1; } if (vis>=0) { this.draw(); } }; _root.onLoad = function() { cnx = 250; cny = 250; dist = 200; rad = Math.PI/180; amount = 33; v = new Array(); radius = 100; step = 4; next = 0; c = 0; // build sphere while (next<=step) { next++; angstp = 180/(step+1); while (c<=((amount-2)*next)/step) { ang += 360/(((amount-2)+1)/step); angle = ang*rad; newrad = radius*Math.sin(next*angstp*rad); v[c] = new vertex(Math.cos(angle)*newrad, Math.sin(angle)*newrad, radius*Math.cos(next*angstp*rad)); c++; } ang = 0; } // ------------------------------------ v[amount-1] = new vertex(0, 0, radius); v[amount] = new vertex(0, 0, -radius); // initialization of the faces f = new Array(); f[0] = new face(0, 0, 1, 9, 8); f[1] = new face(1, 9, 10, 2, 1); f[2] = new face(0, 2, 3, 11, 10); f[3] = new face(1, 11, 12, 4, 3); f[4] = new face(0, 4, 5, 13, 12); f[5] = new face(1, 13, 14, 6, 5); f[6] = new face(0, 6, 7, 15, 14); f[7] = new face(0, 7, 0, 8, 15); f[8] = new face(0, 8, 9, 17, 16); f[9] = new face(1, 17, 18, 10, 9); f[10] = new face(0, 10, 11, 19, 18); f[11] = new face(1, 19, 20, 12, 11); f[12] = new face(0, 12, 13, 21, 20); f[13] = new face(1, 21, 22, 14, 13); f[14] = new face(0, 14, 15, 23, 22); f[15] = new face(1, 23, 16, 8, 15); f[16] = new face(0, 16, 17, 25, 24); f[17] = new face(1, 25, 26, 18, 17); f[18] = new face(0, 18, 19, 27, 26); f[19] = new face(1, 27, 28, 20, 19); f[20] = new face(0, 20, 21, 29, 28); f[21] = new face(1, 29, 30, 22, 21); f[22] = new face(0, 22, 23, 31, 30); f[23] = new face(1, 31, 24, 16, 23); f[24] = new face(0, 30, 31, 33, 33); f[25] = new face(0, 29, 30, 33, 33); f[26] = new face(0, 28, 29, 33, 33); f[27] = new face(0, 27, 28, 33, 33); f[28] = new face(0, 26, 27, 33, 33); f[29] = new face(0, 25, 26, 33, 33); f[30] = new face(0, 24, 25, 33, 33); f[31] = new face(0, 31, 24, 33, 33); f[32] = new face(1, 0, 1, 32, 32); f[33] = new face(1, 1, 2, 32, 32); f[34] = new face(1, 2, 3, 32, 32); f[35] = new face(1, 3, 4, 32, 32); f[36] = new face(1, 4, 5, 32, 32); f[37] = new face(1, 5, 6, 32, 32); f[38] = new face(1, 6, 7, 32, 32); f[39] = new face(1, 7, 0, 32, 32); faces = 39; }; // #################################################### // -- © 2002-2003 Grigory Ryabov. // -- http://www.flash.plux.ru // -- 3d sphere // #################################################### this.onEnterFrame = function() { var xa = -(cnx-_ymouse)*rad/15; var ya = (cny-_xmouse)*rad/15; var sinY = Math.sin(ya); var cosY = Math.cos(ya); var sinX = Math.sin(xa); var cosX = Math.cos(xa); for (var i = 0; i<=amount; i++) { v[i].rotateXY(sinY, cosY, sinX, cosX); v[i].perspective(); } _root.clear(); for (var i = 0; i<=faces; i++) { f[i].fill(); } }; stop();
__________________
flash/flex/unity |
![]() |
Часовой пояс GMT +4, время: 03:01. |
|
|
« Предыдущая тема | Следующая тема » |
|
|