example_canvas_clip.cpp

クリッピング
クリッピングのサンプルコード
canvas_clip.png

クリッピング

void DlgSample::Draw(SGRect region)
{
    SGDialog::Draw(region);

    SGCanvasDraw cd( this );
    if( cd.CvBegin() ){

        cd.CvArc(128,128,80,0,360);
        cd.CvClip();

        cd.CvNewPath();

        cd.CvColor(0,0,0);
        cd.CvRectangle(0,0,256,256);
        cd.CvFill();

        cd.CvColor(0,255,0);
        cd.CvSetLineWidth(10);

        cd.CvMoveTo(0,0);
        cd.CvLineTo(256,256);

        cd.CvMoveTo(256,0);
        cd.CvLineTo(0,256);

        cd.CvStroke();

        cd.CvEnd();
    }
}

PlusG リファレンスマニュアル Ver 2.0.0