[ https://issues.apache.org/jira/browse/EDGENT-179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15526708#comment-15526708 ]
Queenie Ma edited comment on EDGENT-179 at 9/27/16 4:52 PM: ------------------------------------------------------------ I will be opening a PR with the following changes: * I looked at the existing defined oplets, updated the current list, and assigned static colors * For undefined oplets, generate a random color that is perceptually different than all assigned colors: *# Convert the assigned oplet colors from Hex to RGB to XYZ to LAB *# Generate a random color using the golden ratio conjugate in the RGB color space (use bright, saturated colors for non-org.apache.edgent defined oplets) *# Convert RGB to XYZ *# Convert XYZ to LAB *# For each assigned oplet color, compute Delta E between the two LAB colors (new and assigned) *# If Delta E >= 15 for all pairs of colors, consider the color to be different enough from the other colors A few resources that I referenced: * http://martin.ankerl.com/2009/12/09/how-to-create-random-colors-programmatically/ * http://zschuessler.github.io/DeltaE/learn/ * http://www.easyrgb.com/?X=MATH was (Author: queeniema): I will be opening a PR with the following changes: * I looked at the existing defined oplets, updated the current list, and assigned static colors * For non-org.apache.edgent defined oplets, generate a random color that is perceptually different than all assigned colors: *# Convert the assigned oplet colors from Hex to RGB to XYZ to LAB *# Generate a random color using the golden ratio conjugate in the RGB color space (use bright, saturated colors for non-org.apache.edgent defined oplets) *# Convert RGB to XYZ *# Convert XYZ to LAB *# For each assigned oplet color, compute Delta E between the two LAB colors (new and assigned) *# If Delta E >= 15 for all pairs of colors, consider the color to be different enough from the other colors A few resources that I referenced: * http://martin.ankerl.com/2009/12/09/how-to-create-random-colors-programmatically/ * http://zschuessler.github.io/DeltaE/learn/ * http://www.easyrgb.com/?X=MATH > console: oplet coloring gradients "too close" > --------------------------------------------- > > Key: EDGENT-179 > URL: https://issues.apache.org/jira/browse/EDGENT-179 > Project: Edgent > Issue Type: Bug > Components: Console > Reporter: Dale LaBossiere > Assignee: Queenie Ma > Priority: Minor > Attachments: EDGENT-179_oplet_colors.png, Screen Shot 2016-09-19 at > 2.22.00 PM.png > > > The oplet color generator ends up yielding two light purple-ish colors for > two different kinds of (adjacent) oplets and one can't tell them apart. One > is a Sink the other is a subtype of Peek - a StreamScope. > I was seeing this in a ParallelBalancedRecipe app of mine. I can provide it > if really necessary to repro/improve this. -- This message was sent by Atlassian JIRA (v6.3.4#6332)