Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

วิธีวาดและเติมสีเส้นโค้งบางส่วนด้วยฟังก์ชัน imagefilledarc() ใน PHP

imagefilledarc() เป็นฟังก์ชันในตัวของ PHP ที่ใช้เพื่อวาดเส้นโค้งบางส่วนและเติมสี

รูปแบบการใช้งาน (Syntax)

bool imagefilledarc($image, $cx, $cy, $width, $height, $start, $end, $color, $style)

พารามิเตอร์

imagefilledarc() รับพารามิเตอร์ 9 ตัว ได้แก่ $image, $cx, $cy, $width, $height, $start, $end, $color, และ $style

  • $image - คืนค่าจากฟังก์ชันสร้างภาพ imagecreatetruecolor() ใช้สำหรับสร้างขนาดภาพ

  • $cx - ตั้งค่าพิกัด x ของจุดศูนย์กลาง

  • $cy - ตั้งค่าพิกัด y ของจุดศูนย์กลาง

  • $width - ตั้งค่าความกว้างของเส้นโค้ง

  • $height - ตั้งค่าความสูงของเส้นโค้ง

  • $start - มุมเริ่มต้นในองศา

  • $end - มุมสิ้นสุดของเส้นโค้งในองศา 00 อยู่ที่ตำแหน่ง 3 โมง และเส้นโค้งวาดตามเข็มนาฬิกา

  • $color - เป็นตัวระบุสีที่สร้างด้วยฟังก์ชัน imagecolorallocate()

  • $style - แสดงวิธีการเติมสีภาพและค่าสามารถเป็นได้จากรายการต่อไปนี้:

    • IMG_ARC_PIE

    • IMG_ARC_CHORD

    • IMG_ARC_NOFILL

    • IMG_ARC_EDGED

IMG_ARC_PIE และ IMG_ARC_CHORD เป็นแบบสลับกันได้ (mutually exclusive)

IMG_ARC_CHORD เชื่อมเส้นตรงจากมุมเริ่มต้นและมุมสิ้นสุด ในขณะที่ IMG_ARC_PIE สร้างขอบโค้งมน

IMG_ARC_NOFILL บ่งชี้ว่าเส้นโค้งหรือสายตรงควรเป็นขอบเขต ไม่เติมสี

IMG_ARC_EDGED ใช้ร่วมกับ IMG_ARC_NOFILL บ่งชี้ว่ามุมเริ่มต้นและมุมสิ้นสุดควรเชื่อมต่อกับจุดศูนย์กลาง

ค่าที่คืนกลับ (Return Values)

คืนค่า True เมื่อสำเร็จ และ False เมื่อล้มเหลว

ตัวอย่างที่ 1

<?php 
define("WIDTH", 700);
define("HEIGHT", 550);
// สร้างภาพ
$image = imagecreate(WIDTH, HEIGHT);
// จัดสรรสี
$bg = $white = imagecolorallocate($image, 0x00, 0x00, 0x80);
$gray = imagecolorallocate($image, 122, 122, 122);
// สร้างเส้นโค้งแบบ Pie
$center_x = (int)WIDTH/2;
$center_y = (int)HEIGHT/2;
imagerectangle($image, 0, 0, WIDTH-2, HEIGHT-2, $gray);
imagefilledarc($image, $center_x, $center_y, WIDTH/2, HEIGHT/2, 0, 220, $gray, IMG_ARC_PIE);
// ส่งภาพ
header("Content-Type: image/gif");
imagepng($image); 
?>

ผลลัพธ์

วิธีวาดและเติมสีเส้นโค้งบางส่วนด้วยฟังก์ชัน imagefilledarc() ใน PHP

ตัวอย่างที่ 2

<?php 
// สร้างภาพด้วยฟังก์ชัน imagecreatetruecolor
$image = imagecreatetruecolor(700, 300);
// จัดสรรสี darkgray และ darkred
$darkgray = imagecolorallocate($image, 0x90, 0x90, 0x90);
$darkred = imagecolorallocate($image, 0x90, 0x00, 0x00);
// สร้างเอฟเฟกต์ 3D
for ($i = 60; $i > 50; $i--) {
    imagefilledarc($image, 100, $i, 200, 100, 75, 360, $darkred, IMG_ARC_PIE);
}
imagefilledarc($image, 100, $i, 200, 100, 45, 75, $darkgray, IMG_ARC_PIE);
// ส่งภาพ
header('Content-type: image/gif');
imagepng($image);
imagedestroy($image); 
?>

ผลลัพธ์

วิธีวาดและเติมสีเส้นโค้งบางส่วนด้วยฟังก์ชัน imagefilledarc() ใน PHP