» Utilizator
Salut, vizitatorule!

SkullBox este o comunitate formata din programatori si administratori de sisteme sau retele care iti sta la dispozitie cand ai o problema legata de calculatoare. Daca esti un utilizator existent, autentifica-te.

Daca nu te-ai inregistrat inca pe forum, alatura-te noua astfel marind comunitatea si ajutandu-i pe cei care au nevoie de informatii.

Daca te-ai inregistrat dar inca nu ai primit codul de activare, il poti cere aici.




Autentifica-te cu numele de utilizator si parola pentru a putea posta pe forum sau pentru a accesa ariile disponibile doar utilizatorilor inregistrati.
» Promovam
» Parteneri » Statistici
  • 59774 de mesaje.
  • 7153 de topicuri.
  • 1002 de utilizatori.
  •  
  • BirthBaby e ultimul utilizator inregistrat.
[Detalii]

 
Pagini: [1]
Print
Cool Bezier [293 afisari]
Th3 P!mp
*


Mesaje: 186
OfflineOffline

WWW

Buna .. a trebuit sa fac la lucru ceva legat de curbele bezier (in 3D) si am facut ceva teste sa vad ce si cum ...
am atasat cum arata curbele bezier de gradul 20 (puncte random in 2D) .. se poate face pt oricate puncte

ce imi place cum sunt desenate Love struck hee hee

o sa atasez si codul deseara Tongue
Logged

18-06-2009, 14:08 Twitt ::
Claudiu
*


Mesaje: 1368
OfflineOffline

WWW

Beziers rule! (Foarte utile in game dev acolo unde este cazul Winking ) Astept codul hee hee
Logged

18-06-2009, 16:33 Twitt ::
Th3 P!mp
*


Mesaje: 186
OfflineOffline

WWW

Code:
package
{
import flash.display.*;
import flash.events.*;

public class Main extends MovieClip
{
var points:Array;
var degree2Arr:Array = new Array()
var t:Number = 0.0; // de facut intre 0 si 1 ... sau 0% 100% :P
var num:int = 5;
var canContinue:Boolean = true;
var gRotation:Number = 0;
public function Main()
{
points = new Array();

for(var i:int = 0; i<num; i++)
{
var dot:Dot = new Dot();
dot.x = Math.random()*stage.stageWidth;
dot.y = Math.random()*stage.stageHeight;
dot.dotNumber.text = String(i+1);
addChild(dot);
points.push(dot);
}

addEventListener(Event.ENTER_FRAME, movePoints);
}

public function movePoints(ev:*):void
{
//if(degree2Arr.length != 0)
//while(degree2Arr.length != 0)
//removeChild(degree2Arr[0]);
if(!canContinue) return;

var total:int = num;
/* INCARC PUNCTELE ... */
for(var k=0; k<total; k++)
degree2Arr[k] = points[k];
/* INCEP SA CALCULEZ */
for(var q=total-1; q>0; q--)
for(var v:int = 0; v<q; v++)
{
var X = degree2Arr[v].x + (degree2Arr[v+1].x - degree2Arr[v].x)*t;
var Y = degree2Arr[v].y + (degree2Arr[v+1].y - degree2Arr[v].y)*t;
var i:Intermediar = new Intermediar();
i.x = X;
i.y = Y;
degree2Arr[v] = i;
}

addChild(degree2Arr[0]);
gRotation += 1;
if(t<=1)
t+= 0.003;
else
canContinue = false;
}
}
}

am vrut sa il mai modific sa ii mai adaug cate ceva ... da ma f*** o lene de numa numa  Big grin rolling on the floor

EDIT: pentru a trece in 3D pur si simplu trebuie adaugata a 3-a dimensiune (Z) ... am tinut sa editez pentru ca initial m-am gandit(poate chiar si altii) ca trebuie calculat pe perechi de coordonate dupa care va trebui pus x,y si z ... dar dupa mai multe experimente la lucru' am observat ca merge pe toate cele 3 coordonate odata
Logged

19-06-2009, 09:18 Twitt ::
Reclama
VIP

Hosting

Mesaje: 25.90
OnlineOnline

WWW
 

   Pe ABCDomenii: 250MB spatiu + 20GB trafic + 5 subdomenii = 0.95 €
 
 

The problem with troubleshooting is that trouble shoots back.
Azi 
Pages: [1]
Print
SkullBox Forum  |  Development  |  Programe facute de userii forumului  |  Topic: Cool Bezier
Jump to: