Способ первый (как в примере):
Code: Select all
void Test::Draw( wxDC *graphics)
{
wxPaintDC* dc = wxDynamicCast(graphics, wxPaintDC);
wxGraphicsContext* gc = wxGraphicsContext::Create(dc);
if (gc)
{
gc->SetPen(*wxRED_PEN);
wxGraphicsPath path = gc->CreatePath();
path.AddCircle(50.0, 50.0, 50.0);
path.MoveToPoint(0.0, 50.0);
path.AddLineToPoint(100.0, 50.0);
path.MoveToPoint(50.0, 0.0);
path.AddLineToPoint(50.0, 100.0);
path.CloseSubpath();
path.AddRectangle(25.0, 25.0, 50.0, 50.0);
gc->StrokePath(path);
gc->DrawPath(path);
delete gc;
}
}
Code: Select all
void Test::Draw( wxDC *graphics)
{
wxGraphicsContext* graphicsContainer = wxGraphicsContext::Create(graphics);
graphicsPath = graphicsContainer->CreatePath();
graphicsPath.MoveToPoint(0, 0);
graphicsPath.AddLineToPoint(100, 100);
graphicsContainer->DrawPath(graphicsPath);
}