3次ベジェ曲線アニメクラス

3次ベジェ曲線アニメクラス class PHP ファイル
bez_cla.php


MoveImage に戻る

<?php
class Bezier_3n {
// メンバ変数(プロパティ)、
//アクセス修飾子付与
private $we;
private $t_end;
private $t_dvp;
private $t;
private $tt;
private $y;
private $x;
//コンストラクタ
protected
function __construct ($bezier)
{
$we="";	
if($bezier['ic'] == 1){
  $we="-webkit-";	
}
$t_end = 100 / $bezier['dv'];
$t_dvp =
  ($bezier['no'] - 1) * $t_end;
for($t = 0; $t <= $t_end; $t++){
  $tt = $t / $t_end;
  $x = 
  $bezier['x0']*pow((1-$tt),3)
  +
  $bezier['x1']*3*$tt*pow((1-$tt),2)
  +
  $bezier['x2']*3*pow($tt,2)*(1-$tt)
  +
  $bezier['x3']*pow($tt,3);		 
  $y = 
  $bezier['y0']*pow((1-$tt),3)
  +
  $bezier['y1']*3*$tt*pow((1-$tt),2)
  +
  $bezier['y2']*3*pow($tt,2)*(1-$tt)
  +
  $bezier['y3']*pow($tt,3);
  echo
    $t + $t_dvp."%{".$we.
    "transform:translate(".
    $x."px,".$y."px);}";
}// for文 END
}// function __construct END
}// class Bezier_3n END
/*	
 x0:X軸-始点
 y0:Y軸-始点

 x1:X軸-制御点1
 y1:Y軸-制御点1

 x2:X軸-制御点2
 y2:Y軸-制御点2

 x3:X軸-制御点3
 y3:Y軸-制御点3
	
 x4:X軸-終点
 y4:Y軸-終点

 ic:ieとChromeの区別 0→ie  1→Chrome
*/
?>