2点間に単純な曲線を描きたい。具体的には、任意のサイズの画像の左上隅と右下隅です。
imagearc を使用してみましたが、明らかにそれは私が探しているものではありません。私が何を意味するかを説明するには:
私を助ける機能が見つからないので、助けていただければ幸いです:)
image gd の代わりに ImageMagick を使用できます。イメージ gd には、曲線の組み込みサポートがありません。
ImageMagick を使用する可能性がない場合でもimagesetpixel
、単純な de casteljau アルゴリズムを使用して独自の曲線を使用および作成できます。
結局imagearcで解決しました。
トリックは、左下隅を中心として設定し、開始角度を -90°、終了角度を 0° に設定し、画像のサイズを 2 倍にすることです。
//GET VARS
$width = $_GET['width'];
$height = $_GET['height'];
//CREATE IMGS
$image = imagecreatetruecolor($width, $height);
$color = imagecolorallocate($image, 255, 0, 0);
imagearc( $image,
0, 0, //center point = bottom-left corner
$width*2, $height*2, //size = image size * 2
-90, //top left
0, //bottom right
$color);
//OUTPUT IMAGE
header('Content-Type: image/png');
imagepng($image);
//DESTROY IMAGE
imagedestroy($image);
次のようになります: http://www.schizosplayground.com/pers/curvedlinetest.php?width=132&height=163