שאלה

bambipoop

New member
שאלה

העליתי את הנושא כבר אבל לא הבנתי תשובה מדויקת. יש לי שני צבעים שכל אחד מהם מיוצג על ידי ארבעה משתנים: RGB A R- כמות האדום שיש בו G- כמות הירוק שיש בו B- כמות הכחול שיש בו A-כמות הצבעים סך הכל (אצלי זה תמיד קבוע 255) אני רוצה לחבר את שני הצבעים בצורה שאדום וצהוב ייתן לי כתום, שחור ולבן יתנו לי אפור וכו' אשמח לקבל את הפונקציה שעליי לעשות איתם כדי לקבל את סכום הצבעים.
 
בשביל ליצג צבע מסוים צריך שלשה צבעים שונים

אם לוקחים בחשבון גם את הגוון והבהירות של הצבע. אז אני משער שבאופן כללי הדבר שאתה רוצה הוא בלתי אפשרי. הרקע התאורטי לזה הוא כאן: http://en.wikipedia.org/wiki/Color_theory
 

bambipoop

New member
קראתי

לא הבנתי למה השיטה בלתי אפשרית, הרי כך פועל מסך מחשב..
 

bambipoop

New member
נכון אני מסכים

אני עדיין לא מבין איך אני יכול לחבר אותם אבל... אשמח לפתרון בבקשה ופחות להנחיה
 
צבעי יהיסוד והגוונים

1-צבעי היסוד הנראים לעין (שים לב! הניראים לעין האדם!! ) הם אדום ירוק וכחול. 2-כל שאר הגוונים (ה"צבעים") הם תערובות יחסיות של 3 צבעי היסוד. לדוגמא: אדום + כחול =סגול ירוק +כחול=ציאן (תכלת) אדום+ירוק=צהוב אדום+ירוק+כחול=לבן ,על פי היחס 61 אחוז ירוק 29 אחוז אדום 10 אחוז כחול. אדום מינוס ירוק מינוס כחול=שחור גווני אפור מתקבלים כאשר תחסיר מהלבן ,ז.א. מאדום ירוק וכחול את אותו הערך בדיוק! כך שיישמר הערך היחסי באחוזים כמו שכתבתי לעיל. שחור הוא אינו גוון כי אם העדר של שלשת הצבעים . המספר 256 מציין את מספר הדרגות שיש ל"מילה" בעלת 8 סיביות כלומר כדי לקבל ירוק הערך שיקבל ה"ביית" שלו יעמוד על המקסימום ואילו ה"בייתים" של האדום והכחול יקבלו ערך אפס. כדי לקבל כתום ערך הביית של האדום יהיה 256 של הירוק 180 ושל הכחול 0 וכך הלאה.
 

bambipoop

New member
את ההקדמה הבנתי

את ההקדמה הבנתי ואני יודע אבל איך אני מחבר את הצבעים אדום וצהוב נניח?
 
חיבור אדום וצהוב

שים לב!! חיבור של אדום וצהוב פירושו חיבור של אדום ועוד אדום ועוד ירוק ! כלומר של אדום רווי (טהור) ושל אדום מ"מעורבב" בירוק באחוזים מסוימים. צהוב הוא גוון לא צבע יסוד, הרבה מתבלבלים בין עולם צבעי הדפוס לבין עולם צבעי האופטיקה. בעולם הדפוס (פיגמנטים של צבע) "מחסרים" צבעים על מנת לקבל בהירות ולבסוף לבן , הרי בהעדר כל פיגמנט נקבל בסוף את הדף מלבן. חיבור של כל צבעי היסוד בדפוס יביא לצבע עכור כמו בוץ חום שחור, לכן בדפוס נוהגים להשתמש גם בגווני "יסוד" כמו צהוב ורוד ותכלת כדי לקבל עוד תת גוונים שיתקבלו בהירים בעולם האור מוסיפים צבעי יסוד (R G B)זה לזה ומקבלים גוונים בהירים יותר עד ללבן. השאלה למה אתה מתכוון , האם לקבל גוונים על צג מחשב בעזרת תוכנה או לציור על דף נייר???
 

bambipoop

New member
אני מתכוון ל...

יש לי תוכנה, המשתמש בה בוחר את צבעם של שני הכדורים,ברגע שהכדורים מתנגשים (התנגשות פלסטית) הם נדבקים זה לזה, ונוצר כדור אחד, שמסתו סכום מסת הכדורים וצבעו כסכום צבעי הכדורים. כאשר אני אומר סכום הצבעים אני מתכוון לשיטת החיסור בה אדום כחול וצהוב הם צבעי הבסיס. נתונים לי ה ARGB של כל אחד מהצבעים ועליי לכתוב פונקציה שתחבר או "תחסר" אותם. איך עליי לעשות זאת? תודה על העזרה
 

ישראל1210

New member
חיבור וחיסור צבעים

סוף סוף הבנתי. לגבי חיבור צבעים הנוסחה היא: w=0.3r+0.6g+0.1b ז.א. לבן יתקבל אם אכוונן עוצמת אור של שלושה פנסים לנקודה אחת ביחס הזה אקבל אור לבן אם אשנה אחד מהם אקבל גוונים. אני ממליץ לך לבצע ניסוי פשוט עם שלושה לדים אדום ירוק וכחול לחברם למתח משתנה (בעזרת 3 פוטנציומרים) ולראות בדיוק את התוצאות. לגבי "חיסור" צבעים אין לי נסיון כיוון שזה שייך לעולם הדפוס והפיגמנטים
 

א ש ו

New member
אתה בס"כ הכל מחפש את הממוצע RGB

יש לך שלושה ערכים לכל כדור R G B כדי לקבל את מה שאתה מחפש תעשה ממוצע של R ממוצע של G וממוצע של B ----- אחרי כמה התנגשויות, אתה תראה שהכל מזדחל לאפור יש כמה פתרונות לדוגמא - אחרי הממוצע, תרחיק את הערכים אחד מהשני (מבין ה RGB של כדור מסויים, תגדיל את הגדול ותקטין את הקטנים.) -----
 
למעלה