-
Notifications
You must be signed in to change notification settings - Fork 743
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changing Colors behavior #1736
Comments
Hi @brianharvey, I'm not sure what are you asking me now ??
Let me know what changes I have to make. Joan |
I'm thinking if we're calling it "hue" it should be in degrees, like the rest of the world. We'll have a compatibility library that will translate "color number" (0-100) to hue 0-359. Similarly we should have "lightness" which I guess is generally in percent, right? So 0-100, with a "shade" compatibility block that takes 0-200 (with the up-and-down wrapping of course). And saturation in percent, right? The compatibility blocks will be in a library; the primitives should be in real-world names and values. So, including the libraries, we'll have three distinct ways to think about color:
Does that sound good? |
P.S. All the fighting (for which I apologize; I fight too much) was about the meaning of "color number" and whether or not it has some connection with hue. But since I'm now thinking "crayon number" which clearly doesn't sound like anything we had before, everyone should be happy. |
I feel like this is pretty confusing. I mean, it makes sense in a way, but you do need to know that hue is a degree. If you're new to color, this difference is hard to discover. Perhaps we can change the block spec to indicate the parameter value, by using º or % after the input.
I think this makes sense, but definitely seems a bit confusing. I'm not sure isn't any more confusing than all the other suggestions, though, so in the absence of something better, I agree. |
Hi,
Last comment. When defining crayons, we must think to connect all three modes. The connection will be with the basic set of colors. Then, our palette Finally... Pending to define clearly shade and hue |
We've since changed colors and added the missing third dimension for the upcoming Snap5. I think it's okay to now close this. Thanks! |
For what it's worth, I still agree with Joan about HSL vs. HSV, and we just had a user complaint that pure black and pure white aren't selectable in the color picker. I like Joan's color picker with a grayscale bar and individual buttons for black and white. Not reopening, to not get you angry, but we (Joan and I) formerly disagreed about details but we don't any more because of the crayon library. So we have a single proposal on the table. |
Hi Brian and Jens, If you agree this, I can add this picker to the ColorSlotMorph and also to the paint editors. One question. Is the default Color(145, 26, 68) consciously chosen? If not, we can change it for one of the defined colors. Continue after Jens holidays... Joan |
P.S. It just occurred to me that I should make room for the block colors in the 100-crayon box: Lists in the reds, Variables in the oranges, Commands in the yellows, etc. |
Ok, if you both agree, I will pull these changes.
Waiting for your decisions. Joan |
The thing about the dividing line (the yellow line you don't like) is that without it, I think it's not obvious that it isn't a continuation of the gradient, so that only the very leftmost pixel is black, and only the rightmost pixel is white. The dividing line makes it obviously a button. I don't insist on yellow. For example, the one on the left could be white and the one on the right could be black! (Edit: I'm actually very proud of those one-pixel-wide lines, which, I claim, make it entirely obvious what's happening without any help text required!) |
Ok! |
Please wait a day before implementing this. Having had the idea of including the block colors, I'm rearranging the colors within a family by hue, more or less, which will affect the second row of my crayon box. Thanks. |
Ok, but before reading you, I was trying ...to show a result... And doing this, only some details-questions about your crayons:
I know these are only details... but I question about them for the "last" proposal. Continue.... |
Nice! There are CSS colors? I started with the X11 color chart and found more colors here: |
You mean gray36, right? I'm happy to change the two grays. The one you want to call "orange" (which is hideous) is "web orange" in my list, crayon 46. But I think that's the one I'm dropping in favor of Variables. :-) I'll get the official new list done this afternoon. I've reordered them, too, so that other than the multiples of 5 they're either in hue order or in brightness order, whichever subjectively looks better, within each color family. |
Ok Brian. I wait for your reordered crayons. But you see the problem were not in CSS vs X11. It was about official standards. The W3C adopts CSS color module level 3. And yes X11 and CSS names are really the same. The only little conflict is between "web color names" and "x11 names". The only important is to respect the official names. Then: And you see there my notes about your "gray26", "gray71" and "orange". And no notice about "Burnt orange" and "Rubber duck". And note that I only checked the 20 crayons for the picker. Joan |
I just don't like some of the choices they made. And, as for following standards, the real standard we should be following is the Crayola crayon names! So, here's the compromise: I changed the grays to what you want, and I'm keeping orange the way I want. :-P Honestly, I started with the X11 chart, and mostly it was usable, but, for one thing, it just doesn't have enough oranges. (For the purposes of the crayon block, I don't want to use names with numbers in them.) And we now have crayons named Motion, Looks, Sound, etc., which aren't in anybody's standard list! So, here it is: grays={ |
Ok, done! Note that those are not "the colors that I want". I only implementing your crayons, and checking that those "numbers" are right. It's easy to make mistakes, and I need a real reference. I think that W3C was a good standard, because Snap! is running inside browsers. My opinion, the 140 X11 names supported by browsers (without any variation nor gray%) is really enought to build a set of crayons. And we don't need to introduce "burnt orange", "sandstorm"... But this is only an opinion. For me is not a problem. And if you change crayons lib I can build our color picker related to it. If the colors are fixed, I also build the editor pickers and then, the PR to close this. Remember we can change the "default color"...finally "red"? Joan |
I don't think even Crayola makes a 140-crayon box! So there would be some curation no matter what. I actually learned a lot from the workwithcolor.com pages, both from their grouping of colors (e.g., "pink" is distinct from both red and violet) and from their occasional weird choices. And in the opposite direction, Pantone has thousands of distinct colors. I suppose red will do for the default color. (Unless you'd rather make it burnt orange...) Did you have a thought about using crayons 3, 7, and 11 as the grays instead of 0, 5, and 10, so as to avoid duplicating black? I don't really care but didn't want you to have missed that idea, especially since the two black buttons are on top of each other. |
Oops I didn't answer the main question: Yes, I'm done with colors at least until Snap! 7.0. :-) |
Hi @brianharvey,
I open a new issue to continue (and try to end) the Color discussion from #1659 and #1723 (I think you can close them)
I agree we can look at costume effects later (in another thread), but certainly, users will expect similar behavior to the same thing: color. And we can offer the same params, ranges, wrappings...
I've changed pen blocks name as you requested.
I still like the other option (set pen color [param] to). Of course, if we only have two criteria ... yours is more important than mine. Let me explain this (it will be the last time):
I think pen color hue/shade/saturation/opacity are not bad. Yes, pen hue/shade/opacity are not bad too. But maybe pen saturation is really not clear.
We are migrating set pen color to %n block from previous projects to the new block. Maybe the change to set pen color hue to %n is more clear. And also, users using set pen color will find it easier.
If we try set pen param option, size is another pen param. Then maybe has no sense the separation. We can separarate color params of other params (here, the sense of color param) or build only a section.
Brian, for your option, do you want to build only one "set pen param to" with params= [hue, shade, saturation, opacity, size] ?
All these comments, also for "change" blocks
And for the separate option (with or without "color"), do you want to build a pen size reporter?
I don't implement Palettes. You know I disagree to implement another pseudoHue param. But I've updated ColorPalettes into the InputMorph and into Paint Editor (with hot pink and wheat). Then, if you want to implement later your 100 palette with 20 main colors, PickerPalettes will be consistent with your idea.
Brian, if you want another change... or you want to change the order, I will do it.
Let's continue...
You know changes are documented, and you can run current proposal online.
Joan
The text was updated successfully, but these errors were encountered: