<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// ဤအပိုင်းသည်စာသား၏အကြောင်းအရာနှင့်မသက်ဆိုင်ပါ,တင်ဆက်မှုသာ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ဒီဆောင်းပါးကိုဖတ်ရန်လှိုက်လှဲစွာကြိုဆိုပါသည်!"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
---
</span><span><span class="hljs-comment"># PHP အသုံးပြု atan2 function ကိုစဉ်အတွင်းကြုံတွေ့အနုတ်လက်ခဏာရှုထောင့်,ဘယ်လိုမှန်ကန်စွာကိုင်တွယ်သင့်သလဲ?</span></span><span>
တည်နေအသုံးပြု PHP နှစ်ခု - ရှုထောင်ဂရပ်ဖစ်တွက်ချက်မှုလုပ်ဆောင်ပါ、သွဒီနိတ်ပြောင်းလဲသည့်အခါသို့မဟုတ်ဂိမ်းတစ်ခုတည်ဆောက်သည့်အခါ,ကျနော်တို့မကြာခဏအချက်များ၏သွဒီနိတ်အားဖြင့်ထောင့်တွက်ချက်ရန်လိုအပ်ပါတယ်。PHP ပါဝင်သည် `atan2` လုပ်ဆောင်ချက်များကိုအဆင်ပြေစွာအခြေခံသည် **y ညီညာစေ** နှင့် **x ညီညာစေ** Radian Value ကိုပြန်သွားပါ。ဒါပေမယ့်လက်တွေ့ကျတဲ့ applications များ၌တည်၏,လူအများစုကဘုံပြ problem နာကိုကြုံတွေ့ရလိမ့်မည်:**ပြန်လာသောထောင့်သည်အနုတ်လက်ခဏာဖြစ်နိုင်သည်**。
</span><span><span class="hljs-comment">## 1. `atan2` ပြန်လာတန်ဖိုးအကွာအဝေး</span></span><span>
တည်နေ PHP အလယ်ပိုင်း,`</span><span><span class="hljs-title function_ invoke__">atan2</span></span><span>(y, x)` ပြန်လာတန်ဖိုးအကွာအဝေး是:
</span></span>-π to π (i.e. -180 °မှ 180 ဒီဂရီ)
<span><span>အဓိပ်ပါယျမှာ,အမှတ်စတုတ်ထ quadrant ၌တည်ရှိ၏အခါ,ပြန်လာသောထောင့်တန်ဖိုးသည်အနုတ်လက်ခဏာဖြစ်လိမ့်မည်。ဥပမာအားဖြင့်:
```php
</span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$angle</span></span><span> = </span><span><span class="hljs-title function_ invoke__">atan2</span></span><span>(-</span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">1</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$angle</span></span><span>; </span><span><span class="hljs-comment">// output ကိုခန့်။ -0.785398163 (အခုချက်ချင်း -45°)</span></span><span>
</span></span>သင်္ချာနည်းအရ, ထောင့်သည် X-Axis ၏အပြုသဘောဆောင်သော ဦး တည်ချက် မှစ. လက်ယာရစ်လက်ယာရစ်ကိုကူးယူထားသည်။ Atan2 ၏ဒီဇိုင်းကြောင့်ဒီထောင့်သည်စတုတ်ထ quadrant တွင်သဘာဝအရသဘာဝကျကျအနုတ်လက်ခဏာဖြစ်လိမ့်မည်။ ၎င်းသည်အမှားတစ်ခုမဟုတ်ပါ, သို့သော် function တစ်ခု၏အင်္ဂါရပ်တစ်ခုဖြစ်သည်။
လျှောက်လွှာအများအပြားတွင် (ဥပမာဂရပ်လှည့်ခြင်း, လမ်းညွှန်ချက်ညွှန်ပြခြင်းစသည့်) တွင်ကျွန်ုပ်တို့ထောင့်ကို 0 မှ 360 ° (0. radian addians) တွင်တစ်ပုံစံတည်းဖြစ်စေလိုသည်။ ယခုအချိန်တွင်သင်သည်တရားစီရင်ခြင်းအားဖြင့်ပြောင်းလဲခြင်းကိုရိုးရိုးရှင်းရှင်းပြောင်းလဲနိုင်သည်။
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">atan2To360</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-variable">$y</span></span></span><span>, </span><span><span class="hljs-variable">$x</span></span><span>) {
</span><span><span class="hljs-variable">$angle</span></span><span> = </span><span><span class="hljs-title function_ invoke__">atan2</span></span><span>(</span><span><span class="hljs-variable">$y</span></span><span>, </span><span><span class="hljs-variable">$x</span></span><span>); </span><span><span class="hljs-comment">// ပြန်လာ -π ရောက်လာ π</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$angle</span></span><span> < </span><span><span class="hljs-number">0</span></span><span>) {
</span><span><span class="hljs-variable">$angle</span></span><span> += </span><span><span class="hljs-number">2</span></span><span> * M_PI; </span><span><span class="hljs-comment">// 转换ရောက်လာ 0 ရောက်လာ 2π</span></span><span>
}
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-variable">$angle</span></span><span>;
}
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">atan2To360</span></span><span>(-</span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">1</span></span><span>); </span><span><span class="hljs-comment">// ခန့်မှန်းခြေအားဖြင့် output ကို 5.497787143 (အခုချက်ချင်း 315°)</span></span><span>
</span></span>အကယ်. ၎င်းကိုထောင့်တစ်ခုတွင်ကိုယ်စားပြုရန်လိုအပ်ပါက Rad2DEG function ကိုပေါင်းစပ်နိုင်သည်။
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">atan2ToDegree360</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-variable">$y</span></span></span><span>, </span><span><span class="hljs-variable">$x</span></span><span>) {
</span><span><span class="hljs-variable">$angle</span></span><span> = </span><span><span class="hljs-title function_ invoke__">atan2</span></span><span>(</span><span><span class="hljs-variable">$y</span></span><span>, </span><span><span class="hljs-variable">$x</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$angle</span></span><span> < </span><span><span class="hljs-number">0</span></span><span>) {
</span><span><span class="hljs-variable">$angle</span></span><span> += </span><span><span class="hljs-number">2</span></span><span> * M_PI;
}
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-title function_ invoke__">rad2deg</span></span><span>(</span><span><span class="hljs-variable">$angle</span></span><span>); </span><span><span class="hljs-comment">// ထောင့်ပြောင်းရန်</span></span><span>
}
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">atan2ToDegree360</span></span><span>(-</span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">1</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း 315</span></span><span>
</span></span>PHP တွင် Atan2 မှပြန်လာသောအကွာအဝေးမှာ [-π, π] ဖြစ်သည်။
အနုတ်လက်ခဏာရှုထောင့်ဖြစ်လျှင်၎င်းသည်အမှားတစ်ခုမဟုတ်ပါ, သို့သော် function application တစ်ခုဖြစ်သည်။
ပေါင်းစည်းထားသောအကွာအဝေးလိုအပ်သည့်အခါရလဒ်ကို (0, 2π] သို့ပြောင်းရန် 2πကို ပေါင်းထည့်နိုင်သည်။
သငျသညျထောင့်စနစ်ရှိချင်လျှင်, rad2deg ပေါင်းစပ်ခြင်းနှင့် 0 ° ~ 360 ° မှာ unifify ။
ဤနည်းအားဖြင့်အပျက်သဘောဖြင့်ထောင့်များကြောင့်ရှုပ်ထွေးမှုများကိုရှောင်ရှားနိုင်ပြီးအမှန်တကယ်လိုအပ်ချက်များသည်တွက်ချက်မှုများနှင့်ထောင့်လျှောက်လွှာများကိုညှိနှိုင်းဆောင်ရွက်ရန်ပိုမိုကောင်းမွန်သောလုပ်ဆောင်နိုင်စွမ်းရှိသည်။