Board logo

标题: MultiCharts编程-PowerLanguage-Colors色彩 [打印本页]

作者: 龙听    时间: 2018-5-9 10:26     标题: MultiCharts编程-PowerLanguage-Colors色彩

5 Colors色彩

   PowerLanguage中提供了17种基本色彩关键字用来指定色彩。还可以用传统色码或RGB色码书写程序代码。对于画线的颜色,也可以用本章的渐变色关键字指定,如RSI指标中,能够直觉的看到超买或超卖。

  Black  
  

说明

  
  

基本颜色关键字,用来指定黑色。

  
  

语法

  
  

Black

  
  

范例

  
  

用黑色画线:

  

Plot1(Open);
  SetPlotColor(1,Black);

  

同样的色彩关键字还有:

  

基本颜色

  
  

传统色码

  
  

RGB色码

  
  

说明

  
  

Black

  
  

1

  
  

0

  
  

黑色

  
  

Blue

  
  

2

  
  

16711680

  
  

蓝色

  
  

Cyan

  
  

3

  
  

16776960

  
  

青色

  
  

Green

  
  

4

  
  

65280

  
  

绿色

  
  

Magenta

  
  

5

  
  

16711935

  
  

品红色

  
  

Red

  
  

6

  
  

255

  
  

红色

  
  

Yellow

  
  

7

  
  

65535

  
  

黄色

  
  

White

  
  

8

  
  

16777215

  
  

白色

  
  

DarkBlue

  
  

9

  
  

8388608

  
  

深蓝色

  
  

DarkCyan

  
  

10

  
  

8421376

  
  

深青色

  
  

DarkGreen

  
  

11

  
  

32768

  
  

深绿色

  
  

DarkMagenta

  
  

12

  
  

8388736

  
  

深品红色

  
  

DarkRed

  
  

13

  
  

128

  
  

深红色

  
  

DarkYellow

  
  

14

  
  

32896

  
  

深黄色

  
  

DarkBrown

  
  

14

  
  

32896

  
  

深棕色

  
  

DarkGray

  
  

15

  
  

8421504

  
  

深灰色

  
  

LightGray

  
  

16

  
  

12632256

  
  

浅灰色

  



  GetBValue  
  

说明

  
  

取得RGB色码的蓝色元素值,范围为0~255

  
  

语法

  
  

GetBValue(BigRGBValue)

  
  

参数

  
  

BigRGBValue——RGB色码,取值0~16777215

  
  

范例

  
  

RGB色码为2138336(橙色)的蓝色元素值赋值给Value1Value1的值变为32

  

Value1=GetBValue(2138336);

  


  GetGValue  
  

说明

  
  

取得RGB色码的绿色元素值,范围为0~255

  
  

语法

  
  

GetGValue(BigRGBValue)

  
  

参数

  
  

BigRGBValue——RGB色码,取值0~16777215

  
  

范例

  
  

RGB色码为2138336(橙色)的绿色元素值赋值给Value1Value1的值变为160

  

Value1=GetGValue(2138336);  

  


  GetRValue  
  

说明

  
  

取得RGB色码的红色元素值,范围是0~255

  
  

语法

  
  

GetRValue(BigRGBValue)

  
  

参数

  
  

BigRGBValue——RGB色码,取值0~16777215

  
  

范例

  
  

RGB色码为2138336(橙色)的红色元素值赋值给Value1Value1的值变为224

  

Value1=GetRValue(2138336);

  


  GradientColor  
  

说明

  
  

根据定义的色彩范围,返回对应的渐变色的RGB色码。渐变色对应的RGB色码是由使用者定义的参考值、最大值、最小值和参考色彩范围决定的。

  

例如:颜色范围指定为白色到黑色,最小值为0,最大值为2,则当数值小于等于0时,GradientColor会返回白色,当数值为1时,GradientColor会返回灰色,当数值大于等于2时,GradientColor会返回黑色。

  
  

语法

  
  

GradientColor(参考值,最小值,最大值,下限颜色,上限颜色)

  
  

参数

  
  

参考值——数值表达式,要计算色彩的参考数值。

  

最小值——数值表达式,数值范围的最小值,小于等于此值都是对应到下限色彩。

  

最大值——数值表达式,数值范围的最大值,大于等于此值都是对应到上限色彩。

  

下限颜色——数值表达式,设定色彩范围的开始值。

  

上限颜色——数值表达式,设定色彩范围的结束值。

  
  

范例

  
  

用渐变色画出ADX指标。当指标由550时,渐变色由品红渐变为白色:

  

Variable:ADXValue(0);

  

ADXValue=ADX(14);

  

Plot1(ADXValue,"ADXValue");

  

SetPlotColor (1,GradientColor  (ADXValue,5,50, Magenta,White));  

  


  LegacyColorToRGB  
  

说明

  
  

将指定的传统色码转换为RGB色码值。RGB色码取值范围为0~16777215

  
  

语法

  
  

LegacyColorToRGB(LegacyColorValue)

  
  

参数

  
  

LegacyColorValue——传统色码,取值范围(0~16)。

  
  

范例

  
  

将传统色码4(绿色)所对应的RGB色码赋值给Value1,则Value1=65280:

  

Value1 = LegacyColorToRGB(4);  

  


  RGB  
  

说明

  
  

返回由蓝,绿,红三原色所组成的RGB色码值。取值介于0~16777215之间,代表一个16M色彩。

  
  

语法

  
  

RGB (Red,Green,Blue)

  
  

参数

  
  

Red——数值表达式,指定RGB色码中的红原色,取值介于0~255之间。

  

Green——数值表达式,指定RGB色码中的绿原色,取值介于0~255之间。

  

Blue——数值表达式,指定RGB色码中的蓝原色,取值介于0~255之间。

  
  

范例

  
  

RGB色码组成新画一条橙色线:

  

Plot1(Open);

  

SetPlotColor(1, RGB(224,160,32));

  


  RGBToLegacyColor  
  

说明

  
  

将指定的RGB色码值转换成传统色码值。取值范围0~16

  
  

语法

  
  

RGBToLegacyColor(RGBColorValue)

  
  

参数

  
  

RGBColorValue——RGB色码,取值范围(0~16777215

  
  

范例

  
  

RGB色码65280对应最近匹配的传统色码(green)赋值给Value1,则Value1=4

  

Value1=RGBToLegacyColor(65280);

  





欢迎光临 龙听期货论坛 (http://www.qhlt.cn/) Powered by Discuz! 7.2