क्वार्ट्ज 2 डी में, CGColorSpaceCreateLab()
समारोह के रूप में निम्नानुसार एक range
पैरामीटर परिभाषित लेता है:क्वार्ट्ज 2 डी: CGColorSpaceCreateLab: रेंज पैरामीटर का उद्देश्य?
CGFloat रेंज [4]: एक * और ख के लिए मान्य मानों की श्रेणी निर्दिष्ट करें कि 4 नंबर की एक सरणी * रंग अंतरिक्ष के घटक। ए * घटक हरे से लाल रंग के मानों का प्रतिनिधित्व करता है, और बी * घटक नीले से पीले रंग के मूल्यों का प्रतिनिधित्व करता है।
सवाल यह है कि, यह पैरामीटर वास्तव में क्या करता है?
मैं कम से कम तीन संभावित परिदृश्यों के बारे में सोच सकता हूं।
विकल्प 1: शायद यह मापता है घटक को महत्व देता
मैं विभिन्न श्रेणियों के साथ दो रंग रिक्त स्थान है कहते हैं:
CGFloat range1[] = { -10, 10, -10, 10 };
CGFloat range2[] = { -100, 100, -100, 100 };
CGColorSpaceRef space1 = CGColorSpaceCreateLab(whitePoint, blackPoint, range1);
CGColorSpaceRef space2 = CGColorSpaceCreateLab(whitePoint, blackPoint, range2);
मैं एक ही घटक मूल्यों के साथ और की निर्दिष्ट सीमा के भीतर रंग बनाने प्रत्येक स्थान:
CGFloat components[] = { 50, 10, 10, 1 };
CGColorRef color1 = CGColorCreate(space1, components);
CGColorRef color2 = CGColorCreate(space2, components);
color1
और color2
टी का प्रतिनिधित्व करते हैं वह वही रंग? या range
पैरामीटर कुछ तरीकों से घटकों को स्केल करता है, जिससे ये दो अलग-अलग रंग होते हैं? ? (उत्तरार्द्ध, क्या range
के लिए मूल्य मानक CIELAB से मेल खाती है, तो स्केलिंग
विकल्प 2 समन्वय: शायद यह क्लिप घटक
को महत्व देता है को देखते हुए दो रिक्त स्थान ऊपर परिभाषित, मैं बजाय निम्नलिखित रंग बनाते हैं :
CGFloat components[] = { 50, 50, 50, 1 };
CGColorRef color1 = CGColorCreate(space1, components);
CGColorRef color2 = CGColorCreate(space2, components);
अब color1
करते हैं और color2
एक ही रंग का प्रतिनिधित्व करते हैं या range
पैरामीटर {50 color1
के घटकों क्लिप करता है? , 10, 10, 1}? (यदि उत्तरार्द्ध, बिंदु क्या है? एक गैमट परिभाषा का एक बेहद मोटा अनुमान? सुनिश्चित करना मान किसी अन्य डेटा प्रकार के साथ संगत सीमा के भीतर रहते हैं?)
विकल्प 3: शायद यह कहीं और उपयोग किया जाता है, जैसे गैमट मैपिंग एक अवधारणात्मक प्रतिपादन उद्देश्य
एल * ए * बी * मानों की सीमा के बारे में कुछ विचार रखने के लिए गैमट मैपिंग के साथ विशेष रूप से अवधारणात्मक मामले में सहायता हो सकती है, लेकिन फिर से, ऐसा लगता है कि यह एक अनुमानित अनुमान है कि मैं यह न देखें कि यह विशेष रूप से उपयोगी क्यों होगा।
विकल्प 4: कुछ और?