find point
This commit is contained in:
+23
-10
@@ -11,7 +11,7 @@ Cockpit::Cockpit(QWidget *parent): QWidget(parent)
|
||||
|
||||
|
||||
|
||||
leftladder = new LeftLadder(this);
|
||||
//leftladder = new LeftLadder(this);
|
||||
|
||||
//GPS初始化
|
||||
m_GPS.fixtype = 0;
|
||||
@@ -560,6 +560,7 @@ void Cockpit::drawYawScale(QPainter *painter)
|
||||
//画左刻度尺 用单独的控件最容易解决
|
||||
void Cockpit::drawLeftScale(QPainter *painter)
|
||||
{
|
||||
//leftladder->setGeometry(0,-600,300,1200);
|
||||
|
||||
painter->save();
|
||||
|
||||
@@ -695,23 +696,40 @@ void Cockpit::drawLeftScale(QPainter *painter)
|
||||
|
||||
|
||||
qDebug() << Unit;
|
||||
for(int i = -2 - Unit;i<(2 - Unit);i+=1)
|
||||
//UnitText.clear();
|
||||
|
||||
|
||||
int count = 1;
|
||||
for(int i = -1.5 - Unit;i<(1.5 - Unit);i+=1)
|
||||
{
|
||||
|
||||
QString strText = QString::number(((-i < 0)?(-i+10):((-i>=10)?(-i-10):(-i)))); //设置当前字体
|
||||
painter->save();
|
||||
|
||||
QPen ePen;
|
||||
QFont font;
|
||||
ePen.setColor(m_CentreLineColor);
|
||||
ePen.setWidth(15);
|
||||
font.setPointSize(90);
|
||||
|
||||
painter->setPen(ePen);
|
||||
painter->setFont(font);
|
||||
painter->drawText(QRect(200,(i + Unit) * 100 - 50,100,90),Qt::AlignVCenter|Qt::AlignLeft, strText);
|
||||
|
||||
painter->translate(200,(i + Unit) * 100 - 50);
|
||||
|
||||
//偏移坐标需要修正,现在画的时候从左上开始,因此,总有一个会显示不出来
|
||||
|
||||
switch (count) {
|
||||
case 1:
|
||||
painter->drawText(QRect(0,0,100,90 *(Decimal - 0.5)),Qt::AlignVCenter|Qt::AlignLeft, strText);
|
||||
break;
|
||||
case 2:
|
||||
painter->drawText(QRect(0,0,100,90),Qt::AlignVCenter|Qt::AlignLeft, strText);
|
||||
break;
|
||||
case 3:
|
||||
painter->drawText(QRect(0,0,100,90 *(Decimal + 0.5)),Qt::AlignVCenter|Qt::AlignLeft, strText);
|
||||
break;
|
||||
}
|
||||
|
||||
count++;
|
||||
|
||||
|
||||
|
||||
@@ -719,15 +737,10 @@ void Cockpit::drawLeftScale(QPainter *painter)
|
||||
painter->restore();
|
||||
}
|
||||
|
||||
|
||||
painter->restore();
|
||||
|
||||
|
||||
|
||||
|
||||
painter->restore();
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -57,9 +57,9 @@ void LeftLadder::paintEvent(QPaintEvent *)
|
||||
QPainter painter(this);
|
||||
painter.setRenderHint(QPainter::Antialiasing); /* 使用反锯齿(如果可用) */
|
||||
|
||||
//painter.translate(width() / 2, 2 * height() / 5); /* 坐标变换为窗体中心 */
|
||||
painter.translate(0, height() / 2); /* 坐标变换为窗体中心 */
|
||||
int side = qMin(width(), height()); /* 这一句决定了这个模块只能是方形 */
|
||||
painter.scale(side / 2000.0, side / 2000.0); /* 比例缩放 */
|
||||
painter.scale(side / 1000.0, side / 1000.0); /* 比例缩放 */
|
||||
painter.setPen(Qt::NoPen);
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ void LeftLadder::drawLeftScale(QPainter *painter)
|
||||
painter->save();
|
||||
|
||||
//平移坐标
|
||||
painter->translate(-1100,0);
|
||||
//painter->translate(0,0);
|
||||
|
||||
QPen ePen;
|
||||
QFont font;
|
||||
|
||||
Reference in New Issue
Block a user