如何在netlogo显示器上显示颜色



在我的模拟中,海龟被分成几组。每一组都有名字和颜色。群体的形成和消亡是动态的。我想在netlogo的监视器上显示组信息(名称和颜色)。当我在监视器上使用颜色变量时,它给出了颜色的值(以数字形式)。谁能告诉我如何在显示器上显示颜色,而不是颜色的值?

我认为没有一个原语可以用来将颜色值与颜色名称相匹配。这种匹配的问题在于,例如,值为52和52的颜色是同一种原始颜色(绿色)的两种不同深浅。你可以用shade-of?检查某种颜色是否是原始颜色的某种色度。你可以在这里检查颜色的深浅。

shadow -of:

使用示例
to-report getshade [col]
  if(shade-of? col black) [report "black"]
  if(shade-of? col gray) [report "gray"]
  if(shade-of? col white) [report "white"]
  if(shade-of? col red) [report "red"]
  if(shade-of? col orange) [report "orange"]
  if(shade-of? col brown) [report "brown"]
  if(shade-of? col yellow) [report "yellow"]
  if(shade-of? col green) [report "green"]
  if(shade-of? col lime) [report "lime"]
  if(shade-of? col turquoise) [report "turquoise"]
  if(shade-of? col cyan) [report "cyan"]
  if(shade-of? col sky) [report "sky"]
  if(shade-of? col blue) [report "blue"]
  if(shade-of? col violet) [report "violet"]
  if(shade-of? col magenta) [report "magenta"]
  if(shade-of? col pink) [report "pink"]
end

您可以使用此报告:getshade pcolor并检索您的补丁的原始颜色名称。

你应该考虑的事情:所有颜色值为10的倍数都是黑色,但它们属于不同的阴影,所以你可能会看到一个带有黑色的补丁显示另一个颜色名称。白色也是如此:每一种以。9结尾的颜色都是白色,但它们都属于不同的色调。

最新更新