問題タブ [orthogonal]
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.
qt - glOrtho() ビューで立方体を描画しますか?
OpenGL で 4 分割ビューアーを開発しています。1 つの図は斜視図で、もう 1 つの図は正射影 (正面、左、上) 用です。
(-1,-1,-1) から (1,1,1) までの立方体を描画するメソッドを作成しました。パース ビューではうまく機能しますが、使用するビューでは機能しません。 glOrtho(...)。
今、私は次のように設定しました:
面白いことに、ビューにはキューブがまったく表示されません。ただし、正しく表示される OpenGL のビューの境界線を実装しました。
私は Qt を使用しており、QGLWidget の派生クラスを作成しました。
android - android/openGL: 2D ビューポートを正方形で埋める
これまでに達成できたことは次のとおりです。
- GLSurfaceView/Renderer を初期化する
- 画面に三角形を描く
- 画面に正方形/長方形をレンダリングする
- 画面にビットマップ テクスチャを追加する
- レンダリング時に PNG の透過性が尊重されるようにする
- 三角形を自動的にスケーリングして、すべての画面サイズで正しく表示されるようにします
ただし、スケーリングされた三角形を修正した後、背景の四角形 (テクスチャ付き) が画面いっぱいにならなくなりました。
私はしばらくこれに固執しており、タオルを投げたところまで完全に困惑しています。
私が確信していない主な部分は、glFrustumf() と gluLookAt() の使用です。
問題を確認する時間があれば、ファイルをhttps://bitbucket.org/koonkii/test_opengl/srcにアップロードしたので、コピーして貼り付けてコードを再作成する必要はありません。
opengl - glOrtho 平行六面体を回転させるにはどうすればよいですか?
私は自分の世界をレンダリングしました。いくつかの特定の要件に基づいて、(しばらくの間) 床にいくつかのライトが含まれています。三角形のプリミティブを使用してこれらのライトをレンダリングしています。現在、レンダリング領域をズームして制限する次のコードがあります。
この画像でわかるように、ファー プレーンは線 (B と D の間の円の線に平行) を通して光を切断しています。
シーンを回転すると問題が発生します... glOrtho「ボックス」は修正されたままです。ライトのカットラインを常に見ることで気づくことができます。B と D の間の線と平行ではなくなりました...
私の友人の 1 人がこのドキュメントを提案してくれました。基本的には、錐台面を抽出する方法を説明しています...
しかし、これは、各プリミティブが内部にあるかどうかを手動で確認する必要があることを意味します..
glOrtho 呼び出しを使用する方法はありますか?
私はこのようなものを取得したいと思います:
math - ベクトルのセットをどのように直交化できますか
「3Dゲームプログラミングとコンピュータグラフィックスの数学」を読んでいて、章を読み直して調べても理解できない章の練習問題(第2章質問2)があります。どうすれば「次のベクトルのセットを直交化する」ことができますか
e1 =(sqrt(2)/ 2、sqrt(2)/ 2、0)
e2 =(-1、1、-1)
e3 =(0、-2、-2)
また、「ベクトルのセットを直交化する」とはどういう意味ですか?
c++ - glm::ortho() は実際には間違っていますか?
私は最近、行列演算や固定関数パイプラインなど、OpenGL が提供する古い (非推奨の) 機能から切り替えることをお勧めします。
物事を少し単純化するために、マトリックス ライブラリとして GLM を使用しています。問題は、単純化するよりも多くの問題を引き起こした可能性があることです...
パースペクティブ プロジェクションはシェーダーとセットアップでうまく機能しましたが、直交に切り替えようとすると、すべてが機能しなくなりました。ポイントと単純なクワッドが表示されません。古い OpenGL マトリックスを使用すると、再び機能し始めました。
すべて射影行列に絞り込みました。これが私がそれを呼んだ方法です:
これが呼び出されたら、それをopenglによって提供されるものと比較しました」
唯一の違いは [0][0] 要素と [1][1] 要素です (私の知る限り、それぞれ「2/幅」と「2/高さ」に等しい)。OpenGL マトリックスから、値はまさにそれでした! ただし、glm マトリックスでは、値は 0 でした。
glm::ortho を呼び出した後、手動で glm マトリックスから値を切り替えると、すべてが再び機能していました。
だから私の質問: glm::ortho() 関数は本当に壊れていますか、それとも間違って使用していますか?
math - ベクトルから直交基底を構築する方法は?
ベクトルのみを使用して直交基底を構築する方法を知っている人はいますか? v1 = [ab -a -b]' の形式のベクトルがあります。'a' と 'b' は実数です。私は「アドホックな方法」でビルドしようとしましたが、何もありません.2つの直交ベクトルしか得られませんでした:
v1 = [ab -a -b]' v2 = [a -ba -b]'
直交基底 {v1, v2, v3, v4} を完成させるには、さらに 2 つのベクトルが必要です。誰でも私を助けることができますか?
ありがとう...
r - anova の分割と r での比較 (直交単一 df)
anova(固定または混合モデル)で単一の df 直交コントラストを実行したい。以下に例を示します。
これらのデータは、Snedecor と Cochran (1980) で分割プロット計画の例として説明されています。実験で使用された処理構造は、3 種類のアルファルファと 1943 年の 4 つの 3 回目の伐採日を含む 3\x4 完全階乗でした。実験ユニットは 6 つのブロックに配置され、それぞれが 4 つのプロットに細分化されました。アルファルファの品種 (コサック、ラダック、レンジャー) は区画にランダムに割り当てられ、3 回目の伐採日 (なし、S1 - 9 月 1 日、S20 - 9 月 20 日、O7 - 10 月 7 日) は区画にランダムに割り当てられました。各ブロックで 4 つの日付すべてが使用されました。
私はいくつかの比較 (グループ内の直交コントラスト) を実行したいと考えています。たとえば、日付の 2 つのコントラスト:
多様性係数 2 の対比の場合:
したがって、anova の出力は次のようになります。
どうすればこれを実行できますか? ...................................
3d - 2Dへの直交投影
折りたたむ軸を表す非基本ベクトルを使用して、3Dの点のセット(x1、y1、z1 ...)を2次元空間(x1、y1 ...)に正射投影するにはどうすればよいですか?周りを見回しても満足のいく答えは見つかりませんでした。線形数学ハンドブックには平面断面への投影のみがあり、2D空間への投影はありません。投影を扱う多くの答えは、遠近法または基軸のいずれかです。これが必要な理由です。これは、落下する物体の空気抵抗を計算するためのものです。私のベクトルは物体の速度です。