Codifacion de una curva

Solo disponible en BuenasTareas
  • Páginas : 2 (456 palabras )
  • Descarga(s) : 0
  • Publicado : 28 de noviembre de 2010
Leer documento completo
Vista previa del texto
CODIFICACION PARA TEXTO EN UNA CURVA
/**cp es un array de 4 elementos, donde: cp[0] es el punto inicial. cp[1] es el punto de anclaje del punto inicial.
cp[2] es el punto de anclaje del puntofinal. cp[3] es el punto final. t es el valor del parámetro, 0 <= t <= 1***/
//Creamos un estilo para los textos
estilo = new TextFormat();
estilo.font = "Arial";
estilo.size = 20;estilo.color = 0xFF3300;
//Creamos las líneas de los puntos de ancla
_root.createEmptyMovieClip("linIni", 33333);
//Ponemos la curva inicial
var cp:Array = new Array(p0, p1, p2, p3);
n = 0;numberOfPoints = 200;
t = 0;
dt = 1/(numberOfPoints-1);
//Creamos la curva
for (i=0; i<numberOfPoints; i++){
t += dt;
pointOnCubicBezier(cp, t);
}
//Si hemos puesto un texto lo añadimos a lacurva
if (texto_txt.text != ""){
ponerTexto();
}

//Eventos
for (i=0; i<4; i++){
_root["p"+i].onPress = function(){
startDrag(this, true);
pulsado = true;
}
_root["p"+i].onRelease =function(){
stopDrag();
pulsado = false;
}
}
function pointOnCubicBezier(cp, t){
// Calcular los coeficientes polinomiales (o algo así XD)
cx = 3 * (cp[1]._x - cp[0]._x);
bx = 3 *(cp[2]._x - cp[1]._x) - cx;
ax = cp[3]._x - cp[0]._x - cx - bx;
cy = 3 * (cp[1]._y - cp[0]._y);
by = 3 * (cp[2]._y - cp[1]._y) - cy;
ay = cp[3]._y - cp[0]._y - cy - by;

// Calcular elpunto de curva para el parámetro con valor t
tSquared = t * t;
tCubed = tSquared * t;

attachMovie("puntos", "puntos"+n, n);
_root["puntos"+n]._x = (ax * tCubed) + (bx * tSquared) + (cx * t) +cp[0]._x;
_root["puntos"+n]._y = (ay * tCubed) + (by * tSquared) + (cy * t) + cp[0]._y;
n++;
}
function ponerTexto(){
var letra_str:String = new String();
var letras:Array = new Array();letra_str = texto_txt.text;
largo = texto_txt.length;
//Numero de puntos de separación entre letra y letra
posicion = Math.round(numberOfPoints/largo);
//Array con las letras
letras =...
tracking img