主页 / 库函数目录 / 图形绘制 / ege_setapttern_texture

功能:

设置高级函数颜色填充模式为纹理填充模式。
使用前需要先将图像用ege_gentexture()生成纹理图。
若填充区域超出纹理区域大小,将使用纹理重复填充
纹理图像使用ARGB颜色,如果图像透明度为0,则无填充效果

声明:
void ege_setapttern_texture(
    PIMAGE texture,
    float x,
    float y,
    float w,
    float h,
    PIMAGE pimg= NULL
);
参数: texture 用作填充的纹理图像,需要先使用ege_gentexture()生成纹理,不可为NULL。 x, y, w, h 纹理图像上作为纹理填充的区域,区域必须在纹理图像范围内,否则填充失效。 (设置好区域后,区域的左上角将与目标图像视口原点对齐,如果想任意调整对齐位置, 可以通过setviewport()设置视口改变原点位置) pimg 设置的目标图像,默认为 NULL,即设置窗口。 返回值: (无) 示例:
#include <graphics.h>
int main()
{
    initgraph(640, 480, 0);
    
    setbkcolor(WHITE);
    setcolor(EGEACOLOR(0xFF, RED));
    setfillcolor(EGEACOLOR(0xFF, BLUE));

    //创建图像图像
    PIMAGE pimg = newimage();
    ege_fillellipse(300, 0, 100, 100);	
    getimage(pimg, 300, 0, 100, 100);

    //可设置图像透明度
    ege_setalpha(0xFF, pimg);

    //生成纹理图像
    ege_gentexture(true, pimg);

    //设置纹理填充模式
    ege_setpattern_texture(pimg, 0, 0,100, 100);

    //设置纹理填充模式后纹理图像可销毁
    delimage(pimg);

    //通过设置视口方法设置纹理对齐
    setviewport(50, 50, 700, 700, false);

    //下面有填充的高级函数会使用纹理填充图形
    ege_fillrect(-100, -100, 320, 320);
    ege_fillellipse(200, 200, 300, 300);

    getch();
    closegraph();
    
    return 0;
}