問題タブ [qpainter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2831 参照

c++ - 2d HUD が QGLWidget で正しく描画されない (QPainter を使用)

3D ゲームに HUD を表示しようとしています。手始めに、「Hello World」を表示しようとしていますが、まだ成功していません! 作業が完了すると、シーンがフリーズ/ちらつきます。

これを行うために Qt/C++ と QGLWdiget / QPainter を使用しています。開始するための参照として、オーバーペイントの例を使用しました。これが私がすることです:

  • 自分のサブクラス化された GameGL クラス ( GameGL : public QGLWidget ) で paintEvent(...) をオーバーライドします。
  • openGL ModelView マトリックスを現在のマトリックスとしてプッシュする
  • パラメータを gl_depth_test として有効にする
  • ゲームをレンダリングする (:: paintGL1() )
  • モデルビュー パラメータを無効にする
  • pop モデルビュー マトリックス

  • QPainterオブジェクトを作る

  • paint.drawText() を呼び出す
  • paint.end() を使用してフラッシュする

これは、例で述べたものとほとんど同じです。ただし、このコードを実行すると、フリーズ/ちらつきが発生し、非常に反応しなくなります。なぜこれが起こっているのか、誰にも分かりますか?何か助けていただければ幸いです。


コード:makeCurrent(); glMatrixMode(GL_MODELVIEW); glPushMatrix();


ありがとうございました

0 投票する
1 に答える
681 参照

c++ - クリックをキャッチできる汎用の透過的なQtウィジェット?

QPainterを使用して長方形を描画する方法を理解しました。ここで、ユーザーがクリックすると、マウスポインタがある場所に1x1の長方形が描画される描画領域が必要です。clicked()これを実現するには、シグナルをサポートする透過的なQtウィジェットが必要だと思います。

このような透明なウィジェットを作成するにはどうすればよいですか?または、他に使用できるものはありますか?clicked()おそらく私は窓の信号しか使えないのでしょうか?

0 投票する
1 に答える
965 参照

c++ - QPainter でアニメーション化されたテキスト

QPainter でアニメーション テキストを描画することは可能ですか?
テキストの色を定期的に変更したいだけです。
可能であれば、どのように達成するのですか?

0 投票する
1 に答える
1021 参照

c++ - horizo​​ntalSliderを使用して楕円を回転させるとQt QPainterエラーが発生する

horizo​​ntalSlider/spinBox の値に応じて、楕円といくつかのテキストを回転させる単純なボックスを作成する必要があります。ウィジェットはサイズ変更可能である必要があり、楕円のサイズはそれに応じて変更する必要があります。

今のところ、楕円だけが描かれています。これが機能する場合、テキスト ペインティングが追加されます。問題は、サイズ変更後のウィンドウが元のウィンドウ サイズを超えると、ペイントがおかしくなることです。

window.h:

ウィンドウ.cpp:

main.cpp は通常の window.show() 呼び出しです。

0 投票する
1 に答える
222 参照

qt - QPainter はゴミを描画します

プログラム コードの一部:

これはそのようなゴミをペイントします: http://img697.imageshack.us/img697/5395/qpaintergarbage1.jpg 1

行 (1) と (2) のコメントが外されている場合、状況はあまり良くなりません: http://img63.imageshack.us/img63/9693/qpaintergarbage0.jpg 2

この問題を解決するのを手伝ってください。

0 投票する
3 に答える
7647 参照

c++ - ボタンのクリック時に QFrame を描画します。

「Draw」という名前の QPushButton、QLineEdit、および QFrame があるとします。ボタンをクリックすると、QLineEdit から数値を取得し、QFrame に円を描画します。これどうやってするの?コードを教えてください。

PS問題は、 QPainter の draw メソッドを drawEvent メソッドで呼び出す必要があることです。

0 投票する
1 に答える
3160 参照

c++ - QTc++ドローポイントqpainterqgraphicscene

地獄-すべて、私はqtに不慣れで、私は1つのポイントを描くのに苦労しています。

最終的にQgraphicsSceneを呼び出す大きなqMainWindowがあり、その中に1つのポイント、1つの小さなピクセルを描画する必要があります。これで、QPainterを使用したいのですが、インスタンス化に問題があります。何か案は??

0 投票する
1 に答える
2413 参照

qt - QGraphicsView で QGraphicsScene の上に楕円/円を描く方法

QGraphicsScene を持つ QGraphicsView があります。その QGraphicsScene には QPixmap が含まれています。シーンをドラッグすることが可能です。そのシーンの上に、QLabels、QPushButtons などの HUD があります。シーンをドラッグしても、HUD 要素の位置が変わりません。これまでのところ、すべて完璧に機能しています。しかし、今度はこの HUD に楕円/円という新しい要素を追加する必要があります。しかし、私が試したすべてのものは、正しく機能していません。問題は、マウスでその円の上にいる場合でも、シーンをつかんでドラッグできるはずです。したがって、マウスやその他のアクションによって完全に無視される、目に見える円だけが必要です。どうやってやるの?

0 投票する
1 に答える
363 参照

qt - QPainter WYSIWYGエディターの種類は?

QPainterを使用してQtプリミティブで複雑なオブジェクトを描画する必要があります。それは仕事の一部なので、私は本当にこれをそのような不快な方法で行う必要があります。では、GimpやPaintのようにオブジェクトを描画し、Qt用に事前に作成されたコードを取得する場合、一種のWYSIWYGエディターはありますか?オブジェクトを手動で描画するのはかなり複雑ですが、どういうわけか生のコードを取得する必要があります!そして、はい、私はQtにまったく慣れていません。

0 投票する
2 に答える
2418 参照

qt - 座標スケーリングにより、QPainter::drawText のフォント サイズが大きすぎる

MD シミュレーション コードの単純な 2D 視覚化モジュールに取り組んでいます。私がやろうとしているのは、以下を使用してシミュレートされた分子の位置を描画することです:

そして、その部分は私の視覚化ウィジェットでうまく機能します。たまたま問題だったのは、各分子の ID (整数) を表すテキストを書くことです。

テキストを描画しますが、大きすぎます。myPainterこれはおそらく、分子を簡単に描画するために cooridantes スケーリングを使用する必要があるためです。

スケーリング座標を実行する前に、そのような行を入れてみましたmyPainter:

しかし、分子のラベルはまだ大きすぎます。

助けてくれてありがとう。