Image Processing ၏နယ်ပယ်တွင် PHP ၏ GD စာကြည့်တိုက်ကို အသုံးပြု. ဂရပ်ဖစ်ဆွဲခြင်းသည်ဘုံကျွမ်းကျင်မှုတစ်ခုဖြစ်သည်။ ၎င်းတို့အနက် Imageopenpolygon function (မှန်ကန်သော function name name name name image perfolygon ဖြစ်သင့်သည်) ကိုအနားမယူမီမဆိုအနားများထံမှဆွဲထုတ်နိုင်သည်။ ဤဆောင်းပါးသည်သွဒိနိတ်ခင်း arrays များကိုပုံမှန်ဖန်တီးရန်နှင့်ပုံမှန် n-sides ဆွဲရန်အသုံးပြုကြောင်းအသေးစိတ်ကိုအသေးစိတ်ဖော်ပြထားသည်။
ImagePolygon () Php GD စာကြည့်တိုက်တွင် Php GD စာကြည့်တိုက်တွင်အသုံးပြုသော function တစ်ခုဖြစ်သည်။
၎င်း၏အခြေခံအသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -
bool imagepolygon(
GdImage $image,
array $points,
int $num_points,
int $color
)
$ ပုံရိပ် သည်ပုံကြမ်းအရင်းအမြစ်ဖြစ်သည်။
$ ရမှတ် များသည်အမှတ်အသားတစ်ခုဖြစ်ပြီး [X1, Y1, x2, Y2, xn, Yn တို့ဖြစ်သည်။
$ numpoints သည်အချက်များအရေအတွက်ဖြစ်သည် (2 ဖြင့်ကွဲပြားသောခင်းကျင်းဒြပ်စင်အရေအတွက်မဟုတ်ပါ);
$ အရောင် သည်အရောင်ရေးဆွဲခြင်းဖြစ်သည်။
(Pentagons, Octagons စသဖြင့်မဆိုအနားမယူသည့်အနားတွင်မဆိုတုန့်ပြန်ရန် (ဥပမာ, ဒီစိတ်ကူးကအောက်ပါအတိုင်းဖြစ်သည် -
Polygon ၏ဗဟိုအချက်ကိုသတ်မှတ်ပါ (CX, CY) ,
Radius r ကို (i.e. စင်တာကနေ Vertex) ကိုသတ်မှတ်ပါ။
တစ် ဦး ချင်းစီ vertex အညီအမျှ 360 °မှာအညီအမျှဖြန့်ဝေ;
Vertex တစ်ခုချင်းစီ၏သွဒီနိတ်များကို sine ( အပြစ် ) နှင့် cosine ( COS ) ဖြင့်တွက်ချက်နိုင်သည်။
ပုံသေနည်းမှာ -
x = cx + r * cos(ထောင့်)
y = cy + r * sin(ထောင့်)
PHP COS () နှင့် အပြစ်များ က ရရှိသောထောင့်များသည် radians များ,
ဒီနေရာမှာသွဒီနိတ်ကိုဘယ်လိုတက်ကြွစွာထုတ်လုပ်နိုင်ပြီးအနားအရေအတွက်မဆိုအနားဆက်မဆိုပုံဆွဲကြောင်းဖေါ်ပြသည့်ပြည့်စုံသောဥပမာတစ်ခုရှိသည်။
<?php
// ပုံအရွယ်အစားသတ်မှတ်ပါ
$width = 400;
$height = 400;
// ပတ်တူဖန်တီးပါ
$image = imagecreatetruecolor($width, $height);
// အရောင်များကိုသတ်မှတ်ပါ
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
// နောက်ခံဖြည့်ပါ
imagefill($image, 0, 0, $white);
// Polygon parameters တွေကို
$number_of_sides = 7; // ဥပမာအားဖြင့်,heptagons ဆွဲပါ
$radius = 150; // အချင်းဝက်မျဉ်း
$centerX = $width / 2;
$centerY = $height / 2;
// သွဒီနိတ်အချက်များ generate
$points = [];
for ($i = 0; $i < $number_of_sides; $i++) {
$angle_deg = (360 / $number_of_sides) * $i - 90; // ထိပ်ကနေဆွဲစတင်ပါ
$angle_rad = deg2rad($angle_deg);
$x = $centerX + $radius * cos($angle_rad);
$y = $centerY + $radius * sin($angle_rad);
$points[] = (int)$x;
$points[] = (int)$y;
}
// Polygons ဆွဲပါ
imagepolygon($image, $points, $number_of_sides, $black);
// browser မှ output ကိုဓာတ်ပုံများ
header('Content-Type: image/png');
imagepng($image);
// အရင်းအမြစ်များကိုဖျက်ဆီးသည်
imagedestroy($image);
?>
အထက်ပါ code ကို PHP ဖိုင် (ဥပမာ polygon.php ) အဖြစ်သိမ်းဆည်းပါ။ ၎င်းကို browser မှတဆင့်ကြည့်ရှုပါ,
$ number_of_sides variable ကိုညှိခြင်းအားဖြင့်, polygonons ကွဲပြားခြားနားသောနှစ်ဖက်နှင့်အတူ polygons ဆွဲနိုင်ပါတယ်;
$ အချင်းဝက်သည် polygon ၏အရွယ်အစားကိုဆုံးဖြတ်သည်။
ထောင့်၏ offset (ဤနေရာတွင် -90 ဒီဂရီဤဒီဂရီများ) သည်ပထမ ဦး ဆုံး vertex ကိုထိပ်ဆုံးတွင်ဖော်ပြထားသည်။
ပုံကိုဆာဗာသို့သိမ်းဆည်းရန်လိုအပ်ပါက imagePng ($ image, image, လမ်းကြောင်း / file.png) ကို သုံးနိုင်သည်။
ဥပမာအားဖြင့်, ပုံကို m66.net/uploads/polygon.png သို့သိမ်းဆည်းပါ။
imagepng($image, '/var/www/m66.net/uploads/polygon.png');
Save လမ်းညွှန်သည်ခွင့်ပြုချက်ကိုရေးရန်သေချာစေရန်သတိထားပါ။
PHP ၏ Implolygonon function ကိုရိုးရှင်းသော trigonometric operations နှင့်ပေါင်းစပ်ပြီးပေါင်းစပ်ထားသော PHP ၏ importpolygon function ကိုကျွန်ုပ်တို့အလွယ်တကူမဆိုအနားဆက်မဆို polygon များကိုအလွယ်တကူဆွဲနိုင်သည်။ ဂရပ်ဖန်တွေမီးစက်များ, စိစစ်အတည်ပြုထားသောကုဒ်များနှင့်ဇယားအစိတ်အပိုင်းများကိုပြုလုပ်ရာတွင်၎င်းသည်အလွန်အသုံးဝင်သည်။ အနာဂတ်တွင်အဆင်သင့်တွင်အရောင်ဖြည့်စွက်ခြင်းဖြင့် polygon ကိုဆွဲယူလိုပါက၎င်းကိုအကောင်အထည်ဖော်ရန် IdentePolygon () function ကိုပေါင်းစပ်နိုင်သည်။