فئة تمثل لونًا.
التكرار عبر مثيل [name] سيعود بمكوناته (r، g، b) بالترتيب المقابل.
يمكن تهيئة Color بأي من الطرق التالية:
// المُنشئ الفارغ - سيكون الافتراضي أبيض
const color1 = new THREE.Color();
// لون سداسي عشري (مستحسن)
const color2 = new THREE.Color( 0xff0000 );
// سلسلة RGB
const color3 = new THREE.Color("rgb(255، 0، 0)");
const color4 = new THREE.Color("rgb(100٪، 0٪، 0٪)");
// اسم لون X11 - يتم دعم جميع أسماء الألوان الـ 140.
// يرجى ملاحظة عدم وجود CamelCase في الاسم
const color5 = new THREE.Color( 'skyblue' );
// سلسلة HSL
const color6 = new THREE.Color("hsl(0، 100٪، 50٪)");
// قيم RGB منفصلة بين 0 و 1
const color7 = new THREE.Color( 1، 0، 0 );
[page:Color_Hex_or_String r] - (اختياري) إذا تم تعريف الوسيطتين [page:Float g] و [page:Float b]، فهو مكون أحمر للون. إذا لم يتم تعريفهما، فيمكن أن يكون [link:https://en.wikipedia.org/wiki/Web_colors#Hex_triplet ثلاثيًا سداسيًا عشريًا] (مستحسن)، أو سلسلة على طراز CSS، أو مثيل `Color` آخر.
[page:Float g] - (اختياري) إذا تم تعريفه، فهو مكون أخضر للون.
[page:Float b] - (اختياري) إذا تم تعريفه، فهو مكون أزرق للون.
يرجى ملاحظة أن الطريقة القياسية لتحديد اللون في three.js هي باستخدام [link:https://en.wikipedia.org/wiki/Web_colors#Hex_triplet ثلاثية سداسية عشرية]، وتستخدم هذه الطريقة في جميع أنحاء المستندات المتبقية.
عند تعريف جميع المعاملات ثم [page:Color_Hex_or_String r] هو المكوِّن الأحمر و [page:Float g] هو المكوِّن الأخضر و [page:Float b] هو المكوِّن الأزرق للون.
عند تعريف [page:Color_Hex_or_String r] فقط:
علامة للقراءة فقط للتحقق مما إذا كان كائنًا معينًا من نوع [name].
قيمة قناة حمراء بين 0 و 1. الافتراضي هو 1.
قيمة قناة خضراء بين 0 و 1. الافتراضي هو 1.
قيمة قناة زرقاء بين 0 و 1. الافتراضي هو 1.
يضيف قيم RGB لـ [page:Color color] إلى قيم RGB لهذا اللون.
يضع قيم RGB لهذا اللون على مجموع قيم RGB لـ [page:Color color1] و [page:Color color2].
يضيف [page:Number s] إلى قيم RGB لهذا اللون.
يطبق التحول [page:Matrix3 m] على مكونات RGB لهذا اللون.
يعود بـ Color جديد مع نفس قيم [page:.r r] و [page:.g g] و [page:.b b] كهذا المربع.
ينسخ معاملات [page:.r r] و [page:.g g] و [page:.b b] من [page:Color color] في هذا اللون.
يحول هذا اللون من مساحة خطية إلى مساحة sRGB.
يحول هذا اللون من مساحة sRGB إلى مساحة خطية.
[page:Color color] — لون للنسخ.
ينسخ اللون المعطى في هذا اللون، ثم يحول هذا اللون من مساحة خطية إلى مساحة sRGB.
[page:Color color] — لون للنسخ.
ينسخ اللون المعطى في هذا اللون، ثم يحول هذا اللون من مساحة sRGB إلى مساحة خطية.
يقارن قيم RGB لـ [page:Color color] مع تلك الموجودة في هذا الكائن. يعود بـ true إذا كانت متطابقة، و false في حالة عدم التطابق.
[page:Array array] - [page:Array] من الأرقام العشرية على شكل [[page:Float r]، [page:Float g]، [page:Float b]].
[page:Integer offset] - إزاحة اختيارية في المجموعة.
يضع مكونات هذا اللون بناءً على مجموعة مهيأة مثل [[page:Float r]، [page:Float g]، [page:Float b]].
[page:BufferAttribute attribute] - السمة المصدر.
[page:Integer index] - فهرس في السمة.
يضع مكونات هذا اللون من [page:BufferAttribute attribute].
يعود بالقيمة السداسية عشرية لهذا اللون.
يعود بالقيمة السداسية عشرية لهذا اللون كسلسلة (على سبيل المثال، 'FFFFFF').
[page:Object target] — سيتم نسخ النتيجة في هذا الكائن. يضيف مفاتيح h و s و l إلى الكائن (إذا لم يكن موجودًا بالفعل).
يحول قيم [page:.r r] و [page:.g g] و [page:.b b] لهذا اللون إلى تنسيق [link:https://en.wikipedia.org/wiki/HSL_and_HSV HSL] ويعود بكائن على الشكل:
{
h: 0,
s: 0,
l: 0
}
[page:Color target] — سيتم نسخ النتيجة في هذا الكائن.
يعود بقيم RGB لهذا اللون كمثيل من [page:Color].
يعود بقيمة هذا اللون كسلسلة على طراز CSS. مثال: `rgb(255،0،0)`.
[page:Color color] - لون للاقتراب منه.
[page:Float alpha] - عامل التداخل في الفاصل المغلق `[0، 1]`.
يتداخل بشكل خطي قيم RGB لهذا اللون نحو قيم RGB للحجة الممررة. يمكن التفكير في وسيطة alpha كالنسبة بين اللونين، حيث `0.0` هذا اللون و `1.0` هو الحجة الأولى.
[page:Color color1] - اللون الابتدائي [page:Color].
[page:Color color2] - [page:Color] للتداخل نحوه.
[page:Float alpha] - عامل التداخل، عادة في الفاصل المغلق `[0، 1]`.
يضع هذا اللون ليكون اللون المتداخل بشكل خطي بين [page:Color color1] و [page:Color color2] حيث يكون alpha هو نسبة المسافة على الخط الذي يربط بين اللونين - سيكون alpha = 0 [page:Color color1]، وسيكون alpha = 1 [page:Color color2].
[page:Color color] - لون للاقتراب منه.
[page:Float alpha] - عامل التداخل في الفاصل المغلق `[0، 1]`.
يتداخل بشكل خطي قيم HSL لهذا اللون نحو قيم HSL للحجة الممررة. يختلف عن [page:.lerp] الكلاسيكية بعدم التداخل مباشرة من لون إلى آخر، ولكن بدلاً من ذلك يمر عبر جميع الألوان الموجودة بين تلك الألوان. يمكن التفكير في وسيطة alpha كالنسبة بين اللونين، حيث 0.0 هذا اللون و 1.0 هو الحجة الأولى.
يضرب قيم RGB لهذا اللون بقيم RGB لـ [page:Color color] المعطى.
يضرب قيم RGB لهذا اللون بـ [page:Number s].
يضيف [page:Float h] و [page:Float s] و [page:Float l] المعطى إلى قيم هذا اللون. داخليًا، يحول هذا اللون قيم [page:.r r] و [page:.g g] و [page:.b b] إلى HSL، يضيف [page:Float h] و [page:Float s] و [page:Float l]، ثم يحول اللون مرة أخرى إلى RGB.
[page:Color_Hex_or_String r] - (اختياري) إذا تم تعريف الوسيطتين [page:Float g] و [page:Float b]، فهو مكون أحمر للون. إذا لم يتم تعريفهما، فيمكن أن يكون [link:https://en.wikipedia.org/wiki/Web_colors#Hex_triplet ثلاثيًا سداسيًا عشريًا] (مستحسن)، أو سلسلة على طراز CSS، أو مثيل `Color` آخر.
[page:Float g] - (اختياري) إذا تم تعريفه، فهو مكون أخضر للون.
[page:Float b] - (اختياري) إذا تم تعريفه، فهو مكون أزرق للون.
انظر المُنشئ أعلاه للحصول على التفاصيل الكاملة حول الوسائط الممكنة. يفوض إلى [page:.copy]،
[page:.setStyle]، [page:.setRGB] أو [page:.setHex] اعتمادًا على نوع الإدخال.
يضع مكونات [page:.r r] و [page:.g g] و [page:.b b] لهذا اللون من مكونات x و y و z لـ [page:Vector3 vector] المحدد.
[page:Integer hex] —
[link:https://en.wikipedia.org/wiki/Web_colors#Hex_triplet شكل ثلاثي سداسي عشر].
يضع هذا اللون من قيمة سداسية عشرية.
[page:Float h] — قيمة اللون بين 0.0 و 1.0
[page:Float s] — قيمة التشبع بين 0.0 و 1.0
[page:Float l] — قيمة الإضاءة بين 0.0 و 1.0
يضع اللون من قيم HSL.
[page:Float r] — قيمة قناة حمراء بين 0.0 و 1.0.
[page:Float g] — قيمة قناة خضراء بين 0.0 و 1.0.
[page:Float b] — قيمة قناة زرقاء بين 0.0 و 1.0.
يضع هذا اللون من قيم RGB.
[page:Float scalar] — قيمة بين 0.0 و 1.0.
تضع جميع مكونات اللون الثلاثة على قيمة [page:Float scalar].
[page:String style] — اللون كسلسلة على طراز CSS.
يضع هذا اللون من سلسلة على طراز CSS. على سبيل المثال، "rgb(250، 0،0)"، "rgb(100٪، 0٪، 0٪)"، "hsl(0، 100٪، 50٪)"، "#ff0000"، "#f00" أو "red" (أو أي [link:https://en.wikipedia.org/wiki/X11_color_names#Color_name_chart اسم لون X11] - يتم دعم جميع أسماء الألوان الـ 140).
يتم قبول الألوان شفافة مثل "rgba(255، 0، 0، 0.5)" و "hsla(0، 100٪، 50٪، 0.5)" أيضًا، ولكن سيتم تجاهل إحداثية قناة ألفا.
يرجى ملاحظة أنه بالنسبة لأسماء الألوان X11، تصبح الكلمات المتعددة مثل Dark Orange السلسلة 'darkorange'.
[page:String style] — اسم اللون (من [link:https://en.wikipedia.org/wiki/X11_color_names#Color_name_chart أسماء الألوان X11]).
يضع هذا اللون من اسم لون. أسرع من طريقة [page:.setStyle] إذا كنت لا تحتاج إلى التنسيقات الأخرى على طراز CSS.
للراحة، يتم عرض قائمة الأسماء في Color.NAMES كتجزئة:
Color.NAMES.aliceblue // returns 0xF0F8FF
يطرح مكونات RGB للون المحدد من مكونات RGB لهذا اللون. إذا نتج عن ذلك مكون سالب، يتم تعيين هذا المكون إلى صفر.
[page:Array array] - مجموعة اختيارية لتخزين اللون فيها.
[page:Integer offset] - إزاحة اختيارية في المجموعة.
يعود بمجموعة على شكل [r, g, b].
هذه الطرق تحدد نتيجة التسلسل لـ [name]. يعود باللون كقيمة سداسية عشرية.
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]