AR/Math: Difference between revisions
Holy Quran (talk | contribs) |
mNo edit summary |
||
(2 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | |||
==math.abs== | ==math.abs== | ||
تستخدم لتحويل العدد من السالب الي الموجب | تستخدم لتحويل العدد من السالب الي الموجب | ||
Line 629: | Line 624: | ||
* [[Math]] | * [[Math]] | ||
* [http://lua-users.org/wiki/MathLibraryTutorial Math examples on the LUA Wiki] | * [http://lua-users.org/wiki/MathLibraryTutorial Math examples on the LUA Wiki] | ||
[[ar:Math]] | |||
[[de:Math]] | |||
[[en:Math]] |
Latest revision as of 03:45, 15 January 2022
math.abs
تستخدم لتحويل العدد من السالب الي الموجب
تركيب الكود
float/int math.abs(number)
المفردات
- number = الرقم الذي تريد ان تحوله الى موجب
مثال
هذا المثال يقوم بتحويل العدد الى رقم موجب في الردار
myElegy = createVehicle(562, 1591.596680, -2495.323242, 18.098244) local x,y,z = getElementPosition(myElegy) grX = math.abs(math.random(-30,1) grY = math.abs(math.random(-30,1) areaID = createRadarArea(x,y, grX, grY, 0, 0, 0, 0)
math.ceil
يستخدم لتقريب العدد العشري الى اكبر عدد صحيح
تركيب الكود
float/int math.ceil(number)
المفردات
- number = الرقم الذي تريد تقريبه الى العدد الصحيح الاكبر
مثال
myElegy = createVehicle(562, 1591.596680, -2495.323242, 18.098244) local x,y,z = getElementPosition(myElegy) grX = math.ceil(math.random(1.235,100.4575)) grY = math.ceil(math.random(1.235,100.4575)) areaID = createRadarArea(x,y, grX, grY, 0, 0, 0, 0)
math.floor
يستخدم لتقريب العدد العشري وحذف العدد العشري الذي بعد الفاصله
تركيب الكود
float/int math.floor(number)
المفردات
- number = العدد الذي تريد ان تقربه وتحذف الفاصله
مثال
addCommandHandler('Health', -- امر من اف8 function(player,_,who) -- وظيفه if who then -- تحقق local ThePlayer = getPlayerFromName(who) -- نحظر اسم اللاعب local Health = math.floor(getElementHealth(ThePlayer)) -- نحظر صحه اللاعب (الدم) مع حذف الارقام بعد الفاصله outputChatBox('* His Health : '..Health,player,255,255,255,true) -- نخرج نص الى الشات end -- اغلاق end -- اغلاق ) -- اغلاق -- By : The Best
math.round
يستخدم للتقريب إما عدد اكبر او اصغر بحيث اذا كان العدد الذي بعد الفاصله 5 او اكبر يقربه الى الاكبر منه,أما اذا كان العدد اصغر من 5 فسوف يحذف الرقم الي بعد الفاصله فقط
تركيب الكود
float/int math.round(number)
المفردات
- number = العدد الذي تريد تقريبه الى الاكبر او الاصغر
مثال
-- .ملاحظة : الكود ما راح يشتغل بدون هذه الوظيفه function math.round(number, decimals, method) decimals = decimals or 0 local factor = 10 ^ decimals if (method == "ceil" or method == "floor") then return math[method](number * factor) / factor else return tonumber(("%."..decimals.."f"):format(number)) end end -- : المثال local Number = 10.5 -- متغير مع قيمه addCommandHandler('Round', -- امر من اف8 function(player) -- وظيفه outputChatBox('* The Number : '..math.round(tonumber(Number)),player,255,255,255,true) -- نص في الشات end -- اغلاق ) -- اغلاق -- 11 الناتج راح يكون -- لأن العدد الذي بعد الفاصله 5 او اكبر -- لو كان العدد 10.4 راح يكون الناتج 10 -- By : The Best
math.mod
هذا الحدث يستخدم لتحديد باقي القسمة بحيث عند كتابة عددين يقوم الحدث بايجاد باقي القسم بين العدد المقسوم والعدد المقسوم عليه
تركيب الكود
float/int math.mod(number)
المفردات
- number = العدد الذي تريد تحديد باقي القسمه له
مثال
-- TODO
math.sqrt
تستخدم لحساب الجذر التربيعي للعدد
تركيب الكود
float/int math.sqrt(number)
المفردات
- number = العدد الذي تريد حساب الجذر التربيعي له
مثال
-- ملاحظة : الحساب يكون بالجذر التربيعي للعدد -- مثال -- math.sqrt(100) -- نحدد قيمه الجذر 10 -- الناتج -- مثال آخر -- math.sqrt(10000) -- نحدد قيمة الجذر 100 -- الناتج -- مثال على كود -- -- كلينت Health = guiCreateButton(131,163,113,46,"Give me health",false) -- نسوي زر addEventHandler("onClientGUIClick",Health, -- اذا ضغط على الزر function() -- وظيفة triggerServerEvent("Health",localPlayer) -- نرسل الوظيفة للسيرفر end,false) -- اغلاق -- سيرفر addEvent("Health",true) -- نحظر الوظيفة من الكلينت addEventHandler("Health",root, -- نحظر الوظيفة من الكلينت function() -- وظيفة if (getElementHealth(source) <= 30 ) then -- نتحقق ان دم اللاعب يساوي 30 او اقل setElementHealth(source,math.sqrt(10000)) -- اعطاء دم للجذر التربيعي 10000 end -- اغلاق end) -- اغلاق -- هنا راح يعطي اللاعب دم على حسب الجذر التربيعي للـ10000 -- الجذر التربيعي لـ10000 = 100 -- By : The Best
math.pow
تستخدم لحساب الأسس بحيث اذا تم كتابه رقمين يتم ضرب الرقم الاول في الثاني حسب العدد
تركيب الكود
float/int math.pow(number,number2)
المفردات
- number = العدد الاول الذي تريد ان تضربه في العدد الثاني
- number2 = العدد الثاني الذي سيضرب العدد الاول فيه
مثال
-- عملية الحساب تكون بالضرب math.pow(9,9) -- نضرب الاسس 3.8742048 -- الناتج -- مثال آخر -- math.pow(6,7) -- نضرب الاسس 279936 -- الناتج -- عملية الضرب كالتالي : -- اول مثال الناتج 90 -- نضرب 9 في نفسها 9 مرات : -- 9×9×9×9×9×9×9×9×9 = 3.8742048 -- المثال الثاني : -- نضرب 6 في نفسها 7 مرات : -- 6×6×6×6×6×6×6 = 279936 -- مثال على كود -- addEventHandler("onResourceStart",resourceRoot, -- اذا تم تشغيل السكربت function() -- وظيفة for _,Player in pairs ( getElementsByType ( "player" ) ) do -- تحديد النوع وهم جميع اللاعبين if (getPlayerMoney(Player) >= 50 ) then -- نتحقق ان فلوس اللاعب تساوي 50 او اكثر givePlayerMoney(Player,math.pow(9,4)) -- نعطي اللاعب فلوس على حسب ضرب الاسس end -- اغلاق end -- اغلاق end) -- اغلاق -- الفلوس الي راح يعطيها اللاعب هي 6561 -- نتيجه للضرب 9×9×9×9 = 6561 -- By : The Best
math.random
هذه الداله تستخدم لكي تظهر رقم عشوائي بحيث عند كتابة العدد الاول والعدد الثاني يقوم الحدث باظهار رقم عشوائي بين الرقمين التي ادخلتها
float/int math.random(number)
addEventHandler("onResourceStart",resourceRoot, -- اذا تم تشغيل السكربت function() -- وظيفه Height = math.random(50,100) -- رقم عشوائي لإرتفاع الماء setWaveHeight(Height) -- نربط ارتفاع الماء بالرقم العشوائي end) -- اغلاق -- مثال آخر -- addEventHandler("onResourceStart",resurceRoot, -- اذا تم تشغيل السكربت function() -- وظيفه for _,Player in ipairs ( getElementType ( "player" ) ) do -- نحدد النوع وهو اللاعب if getPlayerMoney ( Player ) >= 100 then -- اذا اللاعب عنده 100 او اكثر givePlayerMoney(Player, math.random(50,100)) -- يعطيه رقم عشوائي مابين 50 و 100 end -- اغلاق end -- اغلاق end) -- اغلاق -- By : The Best
___________________________________________________________________
math.randomseed
هذا الحدث يستخدم لكي يظهر رقم عشوائي ثابت بحيث عند كتابة عدد يقوم الحدث باظهار رقم عشوائي ثابت بين رقمين مثل (100-9999) ولن يتغير هذا الرقم العشوائي ابداً ولتغيره يجب تغير العدد المدخل في البداية
float/int math.randomseed(number)
--
___________________________________________________________________
math.HexToNumber
هذا الحدث يستخدم لتحويل الارقام من النظام السادس عشر (Hex) الى النظام العشري (Dec)بحيث عند كتابة عدد Hex يقوم الحدث بتحويله الى عدد Dec معلومة : ارقام Hex هي (0 ، 1 ، 2، 3 ،4 ،5 ، 6، 7 ،8 ، 9 ، F ،E ،D ،C ،B ، A ) ارقام Dec هي (0 ، 1 ، 2، 3 ،4 ،5 ، 6، 7 ،8 ، 9 )
float/int math.HexToNumber(number)
--
___________________________________________________________________
math.rad
هذا الحدث يستخدم لتحويل قياس الزاوية من راديان الى درجة بحيث عند كتابة الزاوية بالراديان يعمل الحدث بتحويله الى درجة
float/int math.rad(number)
--
math.HexColorToNumber
هذا الحدث يستخدم لتحويل رقم اللون من هيكس الى ديكس بحيث عند كتابة رقم هيكس يعمل الحدث بتحويله الى ديكس
float/int math.HexColorToNumber(number)
--
math.deg
هذا الحدث يستخدم لتحويل قياس الزاوية من درجة الى راديان بحيث عند كتابة درجة الزاوية يقوم الحدث Math.Rad بتحويله الى راديان
معلومة:
راديان :هي وحدة قياس الزوايا الرسمية المعتمدة ضمن مجموعة الوحدات القياسية المستخدمة في الرياضيات و الفيزياء و تعرف بأنها الزاوية المركزية المتوضعة على مركز الدائرة و التي تحدد قوسا طولها مساوي لنصف قطر الدائرة. كيف نحسب الراديان للتحويل من راديان إلى درجات نضرب الراديان في 180 ونقسم الحاصل على ( باي ) وللتحويل من الدرجات إلى راديان نضرب الدرجات في ( باي ) ونقسم الحاصل على 180
float/int math.deg(number)
--
math.RGBToNumber
هذا الحدث يستخدم لتحويل رقم الالوان الاساسية الاحمر والاخضر والازرق من Hex الى Dec بحيث عند كتابة ارقام ثلاثة الالوان يعمل الحدث Math.RGBToNumber بتحويله الى Dex
float/int math.RGBToNumber(number)
--
math.sin
هذا الحدث يستخدم لحساب جيب الزاوية (جا) بحيث عند كتابة قياس الزاوية يعمل الحدث Math.Sin بحساب جيب الزاوية
ملاحظة : يجب قبل حساب جا تحويل قياس الزاوية الى راديان بالحدث Math.Rad
float/int math.sin(number)
--
math.cos
هذا الحدث يستخدم لحساب جيب تمام الزاوية (جتا) بحيث عند كتابة قياس الزاوية يعمل الحدث بحساب جيب الزاوية
float/int math.cos(number)
--
math.tan
هذا الحدث يستخدم لحساب ظل الزاوية (ظا) بحيث عند كتابة قياس الزاوية يعمل الحدث بحساب ظل الزاوية
float/int math.tan(number)
--
math.asin
هذا الحدث يستخدم لحساب معكوس جا بحيث عند كتابة العدد يعمل الحدث بحساب معكوس جا الزاوية
float/int math.asin (number)
--
math.acos
هذا الحدث يستخدم لحساب معكوس جتا بحيث عند كتابة العدد يعمل الحدث بحساب معكوس جتا الزاوية
float/int math.acos (number)
--
___________________________________________________________________
math.atan
هذا الحدث يستخدم لحساب معكوس ظا بحيث عند كتابة العدد يعمل الحدث على حساب معكوس ظا الزاوية
float/int math.atan(number)
--
___________________________________________________________________
math.atan2
هذا الحدث يستخدم لحساب مقسوم معكوس ظا بحيث عند كتابة العدد الاول والثاني يعمل الحدث Math.Atan2 على حساب معكوس ظا (العدد الاول / العدد الثاني)
float/int math.atan2(number)
--
math.max
هذا الحدث يستخدم لتحديد العدد الاكبر من الاخر بحيث عند كتابة عددين يقوم الحدث بمقارنة العددين وتحديد العدد الاكبر
float/int math.max(number1,number2,number...)
math.max(15, -100, 30) -- نحدد القيم المراد الاختيار منها 30 -- الناتج math.max(2.5, -2.5) 2.5 -- النتاج ملاحظة : السالب تكون قيمته صغيرة -- By The Best
math.min
هذا الحدث يستخدم لتحديد العددالاصغر من الاخر بحيث عند كتابة عددين يقوم الحدث بمقارنة العددين وتحديد العدد الاصغر
float/int math.min(number1,number2,number...)
addEventHandler("onResourceStart",resourceRoot, -- اذا تم تشغيل السكربت function() -- وظيفة outputChatBox("The number is "..math.min(10,-20).." is good") -- نظهر نص في الشات end) -- اغلاق -- الرقم الي بيظهر في الشات هو -20 -- ملاحظة السالب اصغر من الموجب -- By The Best