我正在创建一个PostScript绘图,其中有数百个四边形。我希望每个四边形都使用四种颜色之间的双线性插值进行着色,每种颜色都与一个顶点相关联。
目前,对于每个四边形,我使用的是
newpath
<<
/BBox [294 353.6387 627.0481 644.4492
/Domain [294 353.6387 627.0481 644.4492
/ShadingType 6
/ColorSpace [/DeviceRGB]
/DataSource
[
0
322.00000000 639.52198166
308.00000000 633.28505452
308.00000000 633.28505452
294.00000000 627.04812738
309.50334395 629.25461291
309.50334395 629.25461291
325.00668790 631.46109845
339.32269715 637.95516131
339.32269715 637.95516131
353.63870639 644.44922417
337.81935320 641.98560292
337.81935320 641.98560292
0.23047 0.29688 0.75
0.23047 0.29688 0.75
0.91493 0.82918 0.78143
0.91948 0.82593 0.77364
]
>>
shfill
ShadingType 6似乎对我想要完成的事情有点过分,但是将四边形细分为三角形并进行线性插值会产生较低质量的东西。
是否有更有效的方法对此效果进行编码,以便更快地渲染数百个四边形?
答案 0 :(得分:1)
通过将shfill
替换为
gsave
x y w h rectclip
shfill
grestore
其中x
和y
是包含矩形的左下角坐标,w
和h
是矩形的宽度和高度。