本文整理匯總了C#中Qyoto.QPainter.DrawEllipse方法的典型用法代碼示例。如果您正苦於以下問題:C# QPainter.DrawEllipse方法的具體用法?C# QPainter.DrawEllipse怎麽用?C# QPainter.DrawEllipse使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Qyoto.QPainter
的用法示例。
在下文中一共展示了QPainter.DrawEllipse方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: Paint
public override void Paint(QPainter painter, QStyleOptionGraphicsItem option, QWidget widget)
{
// Body
painter.SetBrush(color);
painter.DrawEllipse(-10, -20, 20, 40);
// Eyes
painter.SetBrush(Qt.GlobalColor.white);
painter.DrawEllipse(-10, -17, 8, 8);
painter.DrawEllipse(2, -17, 8, 8);
// Nose
painter.SetBrush(Qt.GlobalColor.black);
painter.DrawEllipse(new QRectF(-2, -22, 4, 4));
// Pupils
painter.DrawEllipse(new QRectF(-8.0 + mouseEyeDirection, -17, 4, 4));
painter.DrawEllipse(new QRectF(4.0 + mouseEyeDirection, -17, 4, 4));
// Ears
painter.SetBrush(Scene().CollidingItems(this).Count == 0 ? Qt.GlobalColor.darkYellow : Qt.GlobalColor.red);
painter.DrawEllipse(-17, -12, 16, 16);
painter.DrawEllipse(1, -12, 16, 16);
// Tail
QPainterPath path = new QPainterPath(new QPointF(0, 20));
path.CubicTo(-5, 22, -5, 22, 0, 25);
path.CubicTo(5, 27, 5, 32, 0, 30);
path.CubicTo(-5, 32, -5, 42, 0, 35);
painter.SetBrush(Qt.BrushStyle.NoBrush);
painter.DrawPath(path);
}
示例2: Paint
public override void Paint(QPainter painter, QStyleOptionGraphicsItem option, QWidget widget)
{
painter.SetBrush(Qt.GlobalColor.gray);
painter.DrawRect(-20, -58, 40, 2); // front axel
painter.DrawRect(-20, 7, 40, 2); // rear axel
painter.SetBrush(color);
painter.DrawRect(-25, -79, 50, 10); // front wing
painter.DrawEllipse(-25, -48, 50, 20); // side pods
painter.DrawRect(-25, -38, 50, 35); // side pods
painter.DrawRect(-5, 9, 10, 10); // back pod
painter.DrawEllipse(-10, -81, 20, 100); // main body
painter.DrawRect(-17, 19, 34, 15); // rear wing
painter.SetBrush(Qt.GlobalColor.black);
painter.DrawPie(-5, -51, 10, 15, 0, 180 * 16);
painter.DrawRect(-5, -44, 10, 10); // cocpit
painter.Save();
painter.Translate(-20, -58);
painter.Rotate(wheelsAngle);
painter.DrawRect(-10, -7, 10, 15); // front left
painter.Restore();
painter.Save();
painter.Translate(20, -58);
painter.Rotate(wheelsAngle);
painter.DrawRect(0, -7, 10, 15); // front left
painter.Restore();
painter.DrawRect(-30, 0, 12, 17); // rear left
painter.DrawRect(19, 0, 12, 17); // rear right
}