محاكاة بروتانوومالي للون
عاين اللون كما يراه من لديه ضعف في الحساسية للأحمر: الأحمر الزاهي #e74c3c يصبح #416f3e عند الشدة الافتراضية 0.6. انتقل من 0 دون تغيير إلى 1 القريب من عمى الأحمر الكامل قبل اعتماد ألوان العلامة أو الرسوم البيانية. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
تعمل هذه الأداة داخل متصفحك — مجانًا، ولا تُرسل بياناتك إلى أي خادم
البروتانوومالي شكل شائع من ثلاثية الألوان الشاذة تكون فيه المخاريط طويلة الموجة (L) في الشبكية ذات حساسية منخفضة للضوء الأحمر. يحتاج المصممون ومدققو إمكانية الوصول والمعلمون غالباً إلى معاينة سريعة وحتمية لكيفية ظهور لون علامة تجارية أو سلسلة مخطط أو حالة واجهة عندما يضعف تمييز الأحمر — ليس بروتانوبيا كاملة، بل مزجاً جزئياً بين الرؤية الطبيعية وإسقاط بروتاني. تقبل هذه الأداة لمحاكاة البروتانوومالي على لونٍ لوناً بصيغة hex أو RGB مع شدة اختيارية من صفر إلى واحد، وتحوّل اللون إلى فضاء المخاريط LMS، وتطبّق جزئياً تحويلاً بروتانياً بأسلوب Viénot يعيد بناء قناة L من M وS، ثم تعود إلى RGB وتُرجع الـ hex المحاكى والقنوات وسلسلة CSS. الشدة صفر تترك اللون كما هو؛ والشدة واحد تقارب البروتانوبيا الكاملة؛ والقيمة الافتراضية صفر فاصلة ستة تمثّل بروتانوومالي معتدلاً نموذجياً.
ماذا تعني محاكاة البروتانوومالي وكيف يعمل التحويل البروتاني الجزئي
رؤية الألوان البشرية الطبيعية ثلاثية: ثلاثة أنواع من المخاريط (L وM وS) تستشعر الطيف عند موجات طويلة ومتوسطة وقصيرة. في البروتانوومالي يكون الصباغ الضوئي لمخروط L مزاحاً أو أقل فعالية، فتبدو الحمر أغمق أو أقل تشبعاً وتصعب أزواج الأحمر–الأخضر أكثر من الرؤية الطبيعية، ومع ذلك تظل ثلاث فئات من المخاريط تعمل — بخلاف البروتانوبيا حيث تغيب قناة L فعلياً.
لا يحتاج نموذج هندسي عملي إلى طيف فسيولوجي كامل: يرسم RGB الشاشة إلى LMS، ويستبدل إحداثي L بتركيبة خطية من M وS تقارب المستوى البروتانوبي (كلاسيكياً L يساوي اثنين فاصلة صفر اثنين ثلاثة أربعة أربعة أمثال M ناقص اثنين فاصلة خمسة اثنين خمسة ثمانية واحد أمثال S وفق مصفوفات بأسلوب Viénot وBrettel وMollon)، ثم يعيد LMS إلى RGB. المحاكاة ثنائية اللون الكاملة تستخدم ذلك الاستبدال وحده.
يُنمذج البروتانوومالي بمزج LMS الأصلي مع LMS البروتاني بوزن شدة s في الفترة الوحدوية: L-أولية تساوي (واحد ناقص s) مضروباً في L زائد s مضروباً في L-بروتان، بينما تبقى M وS على المسار الأصلي قبل التحويل العكسي. هذا التطبيق الجزئي حتمي ورخيص ويكفي لمعاينات الواجهة وتدقيقات اللوحات والعروض التعليمية. ليس أداة تشخيص سريري ولا يغني عن الاختبار مع أشخاص لديهم قصور في رؤية الألوان.
المصفوفات ثوابت ثابتة في المعالج، لذا تعطي نفس المدخلات دائماً نفس الـ hex المحاكى عبر بيئات التشغيل.
أين يثبت محاكي لون البروتانوومالي قيمته
تحتاج فرق المنتج التي تستهدف البحث عن محاكاة لون البروتانوومالي إلى ودجت حي يطابق مسار الأتمتة المدفوع حتى تتشارك أنظمة التصميم وإضافات Figma ومدققو اللوحات في CI أوراكل واحداً. يمكن لمنصات التعليم التي تدرّس قصور رؤية الألوان عرض عينات طبيعية ومحاكاة جنباً إلى جنب دون تضمين مرشحات صور ثقيلة. التحقق الفاشل لا يستهلك الرصيد.
اقرن النتائج بفحوصات تباين على اللون الأصلي والمحاكى لمسارات موجَّهة نحو WCAG؛ هذه النقطة الطرفية تحوّل عينة لون واحدة فقط ولا تقيس نسب التباين ولا مناطق الصور.
حالات الاستخدام
تدقيق أنظمة التصميم ورموز العلامة
عاين كيف تتحوّل ألوان الأساسي والخطر والمخطط تحت بروتانوومالي معتدل قبل تثبيت رموز hex في مكتبة مكوّنات.
تعليم قصور رؤية الألوان
اعرض على الطلاب مقارنة حتمية جنباً إلى جنب بين عينات أصلية ومحاكاة بروتانوومالي مع شدة قابلة للضبط من خفيفة إلى بروتان كاملة.
الأسئلة الشائعة
ما البروتانوومالي وكيف يُحاكى هنا؟
البروتانوومالي انخفاض حساسية مخروط L (الأحمر). ترسم هذه الأداة RGB إلى LMS، وتعيد بناء L من M وS كما في إسقاط بروتاني، وتمزج مع LMS الأصلي حسب الشدة، ثم تعود إلى RGB.
ماذا يفعل المعامل severity؟
severity وزن مزج في [0, 1]. 0 يعيد اللون الأصلي؛ 1 يطبّق إسقاط البروتانوبيا الكاملة؛ الافتراضي 0.6 يمثّل بروتانوومالي معتدلاً نموذجياً.
ما صيغ الألوان المقبولة؟
Hex (#RGB أو #RRGGBB)، CSS rgb()/rgba()، نص r,g,b عادي، أو أعداد صحيحة منفصلة r وg وb 0–255.
هل هذا اختبار طبي أو تشخيصي؟
لا. إنه تقريب هندسي لمعاينات التصميم والتعليم، وليس تقييماً سريرياً لرؤية الألوان.
ما الفرق بين البروتانومالي والبروتانوبيا؟
في البروتانومالي تبقى المخاريط الحساسة للأحمر عاملة لكن استجابتها ضعيفة، فيبدو الأحمر أغمق أو باهتًا ويصعب التمييز بين الأحمر والأخضر. أما في البروتانوبيا فهذا النوع من المخاريط شبه غائب، والشدة 1 تقترب منه.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/color/sim-protanomaly \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"color":"#e74c3c","hex":"valor-ejemplo"}'const res = await fetch("https://api.kit.forhosting.com/color/sim-protanomaly", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"color": "#e74c3c",
"hex": "valor-ejemplo"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/sim-protanomaly",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"color": "#e74c3c",
"hex": "valor-ejemplo"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/sim-protanomaly", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"color":"#e74c3c","hex":"valor-ejemplo"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"color":"#e74c3c","hex":"valor-ejemplo"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/sim-protanomaly", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"color": "#e74c3c",
"hex": "valor-ejemplo"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.sim_protanomaly",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
الخوارزمية النقية نفسها تشغّل أداة المتصفح المجانية ومسار API، فلا تختلف رموز التصميم وفحوصات التباين الآلية حول العينة المصفّاة.
عقد الإدخال وشكل الاستجابة وسلوك الخطأ
قدّم اللون كسلسلة hex مثل #e74c3c أو #e74، أو CSS rgb(r,g,b)، أو نص r,g,b عادي، أو حقول صحيحة منفصلة r وg وb من صفر إلى مئتين وخمسة وخمسين. لا تُفوتر إخفاقات التحقق هذه. تُقرَّب القنوات إلى أعداد صحيحة من صفر إلى مئتين وخمسة وخمسين بعد التقييد حتى يرسم العملاء عينات دون قياس إضافي. مثال: أحمر حي قريب من #e74c3c عند الشدة الافتراضية ينزاح نحو درجة أبهت وأقل هيمنةً للأحمر لا تزال تحتفظ ببعض فرق الموجة الطويلة مقارنة بالبروتانوبيا الكاملة عند الشدة واحد. أرسل بجسم JSON عبر POST لوناً مصدرياً وشدة اختيارية. تُقبل الأسماء المستعارة hex وvalue وtext وinput وcode للشكل النصي؛ وred وgreen وblue لحقول القنوات. الشدة الافتراضية صفر فاصلة ستة عند الحذف ويجب أن تكون عدداً منتهياً بين صفر وواحد شاملاً عند التقديم؛ وتُقبل amount وstrength وseverity. غياب اللون تماماً، والسلاسل الفارغة، والقمامة غير الـ hex، والقنوات خارج صفر إلى مئتين وخمسة وخمسين، والقنوات الكسرية، والشدة خارج الفترة الوحدوية تفشل بـ invalid_input مع رسالة تسمّي المشكلة. عند النجاح يتضمن الجسم input_hex وinput_rgb للمصدر المحلول، والشدة الرقمية المستخدمة، وsimulated_hex وsimulated_rgb للون المصفّى، والقنوات simulated_r وsimulated_g وsimulated_b، وسلسلة css rgb()، وmethod protanomaly_partial_lms، وdeficiency protanomaly، وسلسلة صيغة قصيرة تصف مزج LMS، ورسالة مقروءة.
أين يثبت محاكي لون البروتانوومالي قيمته
يمكن لمراجعي إمكانية الوصول معالجة رموز العلامة وسلاسل المخططات دفعة عبر API ووضع علامة على الأزواج التي تنهار تحت حساسية حمراء منخفضة قبل الإطلاق. لأن التنفيذ parse نقي من المستوى A، كل استدعاء ناجح يكلف السعر الأساسي المنشور $0.002 بلا رموز نموذج وبلا شبكة صادرة. أبقِ الشدة صريحة في اختبارات الانحدار عندما تهمّك شدة بأسلوب سريري محدد، وثبّت simulated_hex في الذهبية، لتحصل على معاينات بروتانوومالي قابلة لإعادة الإنتاج لرموز التصميم ووحدات LMS وعمال الحافة دون استضافة مكتبات رؤية ألوان خاصة.
حالات التكامل
تكامل مستمر لإمكانية الوصول على اللوحات
صفِّ JSON اللوحات دفعياً في المسارات واجعل البناء يفشل عندما تصبح الحالات الحرجة متشابهة جداً بعد التحويل البروتاني الجزئي.
أسئلة تقنية
كم تكلفة محاكي لون البروتانوومالي؟
أداة المتصفح مجانية. طلبات API تستخدم رصيد KIT المدفوع مسبقاً بمبلغ $0.002 لكل استدعاء ناجح؛ الإدخال غير الصالح لا يُفوتر.