MD シミュレーション コードの単純な 2D 視覚化モジュールに取り組んでいます。私がやろうとしているのは、以下を使用してシミュレートされた分子の位置を描画することです:
myPainter.drawEllipse(myQPoint,myRx,myRy)
そして、その部分は私の視覚化ウィジェットでうまく機能します。たまたま問題だったのは、各分子の ID (整数) を表すテキストを書くことです。
myPainter.drawText(myPosPoint,QString::number(mySoftMolecule2D->getID()));
テキストを描画しますが、大きすぎます。myPainter
これはおそらく、分子を簡単に描画するために cooridantes スケーリングを使用する必要があるためです。
myPainter.scale(myWidgetWidth_ / simSizeX_ , myWidgetHeight_ / simSizeY_);
// myWidgetWidth_ is much bigger simSizeX_
// myWidgetHeight_ is much bigger simSizeY_
スケーリング座標を実行する前に、そのような行を入れてみましたmyPainter
:
QFont myFont;
myFont.setPointSizeF(1.0); // values less than 1.0 doesn't work
myFont.setFamily("Courier");
myPainter.setFont(myFont);
しかし、分子のラベルはまだ大きすぎます。
助けてくれてありがとう。