对象的外观

打印

对象的外观


灰姑娘的绘图引擎为每种可以绘制的元素(点、线、文本)存储默认外观。只要在不带任何修改器的情况下调用绘图语句,就会使用默认外观来渲染对象。这对于图形上看起来相同的图形对象非常有用。受外观影响的主要属性是颜色,大小、和不透明度对象的。


将元素推到外观堆栈上:gsave()


从外观堆栈中弹出元素:grestore()


清除外观堆栈:格雷塞()




描述:通常需要临时切换到不同的默认外观。为此,操作员gsave()grestore()提供了。这个gsave(通用存储设备)操作符将图形状态的所有信息(大小、颜色、不透明度)存储在堆栈中。这个格雷斯托操作符通过从堆栈中弹出信息来反转这种效果。最后格雷塞特运算符将堆栈设置回其初始状态。除了外观信息外,还存储了有关局部坐标系的信息。


另请参见: 脚本坐标系





大小

设定点大小:点大小(<number>)


设置线条大小:线条大小(<number>)


设置文本大小:文本大小(<number>)


默认大小可以由三个操作符设置:点大小(<数字>),线条大小(<number>)、和文本大小(<number>)。大小由实数表示。对于直线和点,假定大小为介于120。大小编码绝对像素值。以下代码生成以下图片:

尺寸=1..15;所有(尺寸,点大小(#);文本大小(#+4);绘制((#,0));绘图文本((#,1),#);)







颜色



颜色由代表颜色的红/绿/蓝成分的三个实数列表表示。假设每个数字都在0和1之间,其中0表示黑色,1表示全色值。使用此RGB颜色方案,八种基本颜色由以下向量表示:


颜色:矢量:
黑色(0,0,0)
红色(1,0,0)
绿色(0,1,0)
蓝色(0,0,1)
青色(0,1,1)
品红色(1,0,1)
黄色的(1,1,0)
白色(1,1,1)



设置点颜色:点颜色(<colorvec>)


设置线条颜色:线条颜色(<colorvec>)


设置文本颜色:文本颜色(<colorvec>)


设置颜色:颜色(<colorvec>)


默认颜色可以由三个操作符设置:点颜色(<colorvec>),线条颜色(<colorvec>)、和文本颜色(<colorvec>)此外,操作员颜色(<colorvec>)同时设置所有类型对象的颜色。

如果实际值被解释为颜色分量,则值如下0将被替换为0和上述值1将被替换为1.


例子:以下代码生成以下图片:


n=13;ind=1..n;点大小(9);对于所有(ind,对于所有(ind、j、,点颜色((i/n,j/n,0));绘制(i,j),noborder->true);点颜色((0,i/n,j/n));绘制(i+15,j),noborder->true);点颜色((j/n,0,i/n));绘制(i+30,j),noborder->true);))






不透明度

设置不透明度:α(<数字>)




描述:不透明度由介于01.在这里0代表完全透明和1用于完全不透明。超出此范围的值设置为0或至1.






颜色函数


为了使颜色计算稍微简单一些,声明了一些返回颜色值的默认函数。


红色:红色(<数字>)




描述:此操作符创建绿色和蓝色值设置为的RGB向量0。红色值设置为<数字>.




绿色:绿色(<数字>)




描述:此操作符创建一个RGB向量,其红色和蓝色值设置为0。绿色值设置为<数字>.




蓝色:蓝色(<数字>)




描述:此操作符创建一个RGB矢量,其红色和绿色值设置为0。蓝色值设置为<数字>.




灰色:灰色(<数字>)




描述:此操作符创建一个RGB向量,其红色、绿色和蓝色值均设置为<数字>.




彩虹颜色:色调(<数字>)




描述:该操作符创建一个RGB向量,用于创建一种完全饱和的彩虹颜色。的价值<数字>位于0和1之间。该值范围表示完整的彩虹颜色循环。对于较大的数字,循环周期性地重复。



例子:以下代码生成以下图片:


n=360;ind=(1..n)/n;线宽(2);对于所有(ind,颜色(色调(#));绘制((0,0),(sin(#*2*pi),cos(#*2%pi)))




此页面的参与者:科尔滕坎普,里希特科勒.
页面上次修改日期为2011年9月2日星期五[17:18:36 UTC]科尔滕坎普.

本页面上的内容根据许可证.


菜单