Пример #1
0
void drawVerticalSegment(int midx, int midy, int width, int height)
{
    if (height <= 0)
        drawFilledBox(midx-width/2, midy-2, midx+width/2, midy+2);
    else {
        drawFilledBox(midx-width/2, (int)(midy-height*1.5), midx+width/2, (int)(midy+height*1.5));
        drawFilledTriangle(midx, midy+height*2, midx-width/2, (int)(midy+height*1.5), 
                           midx+width/2, (int)(midy+height*1.5));        
        drawFilledTriangle(midx, midy-height*2, midx-width/2, (int)(midy-height*1.5), 
                           midx+width/2, (int)(midy-height*1.5));        
    }
}
Пример #2
0
void drawHorizontalSegment(int midx, int midy, int width, int height)
{
    if (width <= 0)
        drawFilledBox(midx-2, midy-height/2, midx+2, midy+width/2);
    else
    {
        drawFilledBox((int)(midx-width*1.5), (int)(midy-height/2), 
                      (int)(midx+width*1.5), (int)(midy+height/2));
        drawFilledTriangle((int)(midx-width*2), midy, (int)(midx-width*1.5), 
                           midy-height/2, (int)(midx-width*1.5), midy+height/2);        
        drawFilledTriangle((int)(midx+width*2), midy, (int)(midx+width*1.5), 
                            midy-height/2, (int)(midx+width*1.5), midy+height/2);
    }
}
Пример #3
0
void H2CanvasDelegate::drawStraightFilledH2Triangle(const H2Triangle &triangle, bool back)
{
    H2Point A, B, C;
    (mobius*triangle).getPoints(A, B, C);
    Complex zA = A.getDiskCoordinate();
    Complex zB = B.getDiskCoordinate();
    Complex zC = C.getDiskCoordinate();
    drawFilledTriangle(zA, zB, zC, back);
}
Пример #4
0
void H2CanvasDelegate::highlightStraightH2Triangle(const H2Triangle &triangle, const QColor &color)
{
    H2Point A, B, C;
    (mobius*triangle).getVertices(A, B, C);
    QBrush brush;
    brush.setColor(color);
    brush.setStyle(Qt::SolidPattern);
    painterTop->setBrush(brush);
    penTop->setWidth(1);
    penTop->setColor(color);
    painterTop->setPen(*penTop);
    drawFilledTriangle(A.getDiskCoordinate(), B.getDiskCoordinate(), C.getDiskCoordinate(), false);
}