- TransformationPoint aTransformationPoint;
-
- QPoint aPoint;
- QString aCaption;
- QColor aColor = Qt::black;
- switch( aPointType )
- {
- case PointA:
- aPoint = QPoint( 0, 0 );
- aCaption = "A";
- aColor = Qt::darkRed;
- break;
- case PointB:
- aPoint = QPoint( aWidth, 0 );
- aCaption = "B";
- aColor = Qt::darkGreen;
- break;
- case PointC:
- aPoint = QPoint( 0, aHeight );
- aCaption = "C";
- aColor = Qt::darkBlue;
- break;
- }
-
- aTransformationPoint.Point = aPoint;
- aTransformationPoint.Caption = aCaption;
-
- aTransformationPoint.PointItem = new QGraphicsEllipseItem( this );
- aTransformationPoint.PointItem->setVisible( false );
- aTransformationPoint.PointItem->setPen( QPen( aColor ) );
- aTransformationPoint.PointItem->setBrush( QBrush( aColor ) );
-
- double aRadius = 3;
- QRectF aRect( -QPointF( aRadius, aRadius ), QSizeF( aRadius * 2 + 1, aRadius * 2 + 1 ) );
- aTransformationPoint.PointItem->setRect( aRect );
- aTransformationPoint.PointItem->setFlag( QGraphicsItem::ItemIgnoresTransformations );
- aTransformationPoint.PointItem->setPos( aPoint );
-
- aTransformationPoint.CaptionItem = new QGraphicsSimpleTextItem( aCaption, this );
- aTransformationPoint.CaptionItem->setVisible( false );
- aTransformationPoint.CaptionItem->setPen( QPen( aColor ) );
- aTransformationPoint.CaptionItem->setBrush( QBrush( aColor ) );
- QFont aFont = aTransformationPoint.CaptionItem->font();
- aFont.setPointSize( qApp->font().pointSize() );
- aTransformationPoint.CaptionItem->setFont( aFont );
- aTransformationPoint.CaptionItem->setFlag( QGraphicsItem::ItemIgnoresTransformations );
-
- myTransformationPointMap[ aPointType ] = aTransformationPoint;