問題タブ [perspective]

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 投票する
2 に答える
475 参照

opengl - まっすぐに見ているように投影を維持しながら、openGL オブジェクトをオフセットするにはどうすればよいですか?

この問題に永遠に費やしたので、私の脳は溶けてしまいました。

立方体を原点から x 方向と y 方向の両方で 2 オフセットする必要がありますが、まっすぐに見ているように一点透視図を維持します。

立方体を移動するたびに、投影が原点から来ているかのように動作します。

私はそれを行う方法を理解できません。

0 投票する
5 に答える
11719 参照

c# - 透視画像の歪み

私が現在取り組んでいるアプリケーションには、Perspective Image Distortion の機能が必要です。基本的に私がやりたいことは、ユーザーがアプリケーションに画像をロードし、指定できる 4 つのコーナー ポイントに基づいてその透視図のプロパティを調整できるようにすることです。

ImageMagic を見てみました。遠近法による調整を伴う歪み機能がいくつかありますが、非常に遅く、特定の入力が正しくない出力を出していることがあります。

皆さんは他のライブラリやアルゴリズムを使用していました。C#でコーディングしています。

どんなポインタでも大歓迎です。

ありがとう

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

php - imagick :: strictimage

画像の遠近法を設定します。空白のポリゴンを持つラップトップの画像がありますここに画像の説明を入力してください

別の画像を空白の領域にプルする必要があります。このような: ここに画像の説明を入力してください

だから、私は動的歪みのためにこのコードを持っています:

$ controlPoints配列を設定するにはどうすればよいですか?画像の各隅に4つの座標を設定することはできませんか?残念ながら、imageick::歪み画像のドキュメントは不十分です。

問題は、別の歪み方法を使用して解決されます。

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

c# - タイリングによる透視画像変換

私が作成する予定の新しいアプリケーションに使用できる優れた画像処理ライブラリを探しています。C#.NET(VS 2008)を使用します

私のアプリケーションは次のことを行う必要があります。

  1. 起動時に画像をロードし、画像ボックスに表示します
  2. これで、画像ボックスの任意の場所で4つのポイント(TopLeft、TopRight、BottomLeft、BottomRight)を選択できるようになります。
  3. 次に、4つのソースポイントとデスティネーションポイントを使用して、ソース画像を正しい視点に変換する必要があります。

それだけでなく、最終的な出力画像は指定されたサイズである必要があります。アプリケーションが同じパースペクティブを使用して、指定した長方形のサイズ(4ポイントのサイズではない)の画像を返すことができるようにしたい。私の言いたいことをご理解いただければ幸いです。指定された領域に完全に適合する出力を生成するには、ソース画像を並べて表示して変換する必要があります。

Aforge.NET、ImageMagick、EMGUなどのライブラリを試しました。遅いものもあります。小さなサイズの透視画像しか作成できないものもあります。いくつかはメモリエラーを与えます。適切な解決策が見つかりません。

0 投票する
5 に答える
3820 参照

wpf - 3D長方形を2D画面にマッピングする

私はSOを検索しましたが、これを理解できません。他の質問は役に立たなかったか、私はそれらを理解していませんでした。

問題は、3D画像にたくさんのポイントがあることです。ポイントは長方形用ですが、遠近法のために3Dカメラのビューからは長方形のようには見えません。タスクは、その長方形から画面にポイントをマップすることです。「クワッドからクワッドへの変換」と呼ばれる方法を見てきましたが、それらのほとんどは、2次元の四辺形を別の四辺形にマッピングするためのものです。しかし、実世界では長方形のX、Y 、Z座標を持っているので、もっと簡単な方法を探しています。誰かがこれを行うための実用的なアルゴリズムや方法を知っていますか?

それが役に立ったら、私の3Dカメラは実際にはOpenNIとNITEミドルウェアを備えたKinectデバイスであり、私はWPFを使用しています。

前もって感謝します。

編集: ウィキペディアで角度と余弦定理を使用した3D投影ページも見つけましたが、それは難しい方法のようです(3D画像で角度を見つける)。それが本当の解決策かどうかはわかりません。

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

c# - WP7パースペクティブ変換(3DマトリックスとPlaneProjection)

私はこのアプリを見ていた:http ://www.ztitch.com/index.htmlそして彼らがどのようにすべての3Dのものをしたのか疑問に思っていた...彼が組み込みの3D回転を使用しているようには見えない(PlaneProjection)Silverlightで、しかし彼は3DMatrixProjectionsで何かをしているに違いありません...

これには具体的にどのような数学が関係していますか?それは本当の回転ですか、それともアプリは画像が画面の端に近づくと台形に「歪んで」、画像が球体のように見えるようにしますか?

PSこれが組み込みの3D回転ではないと思う主な理由は、深度との戦いがないためです。どの角度で回転したかに関係なく、背面の画像は常に背面にあります...

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

math - 透視投影による表面除去の深度補間

これは、ウェブや本ですぐに答えが得られるはずの質問のように思えますが、答えを探し求めた結果、行き止まりであることが判明した袋小路にしかたどり着きませんでした。

隠面除去を使用してリアルタイムで 3D 線を描画しようとしています (線はソリッド オブジェクトのエッジです)。

したがって、透視投影を使用して 2D ポイントに投影された 2 つの 3D ポイントがあります。各ポイントについて、ポイントの深さを計算しました。ここで、2 つの点を結ぶ線分を描きたいと思います。隠面の除去を機能させるには、2D 線上の各中間 2D ポイント (投影の結果) について、対応する 3D ポイントの深さを計算する必要があります (その中間の 2D ポイントに投影される 3D ポイント)。

私の問題は、透視投影を行うと深度関数が線形ではないため、2 つの元の 3D ポイントの深度を補間して中間点の深度を計算できないことです。

では、リアルタイム レンダリングの制約と互換性のある方法を使用して、線上の各点の深さを計算するにはどうすればよいでしょうか?

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

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

opengl - 3D プロジェクションの問題: パースペクティブ分割後、Z 値が [1,-1] にならない

3D ポイントをラスタライズする過程で、単純な透視投影を実行しようとしています。ここにすべてのマトリックスとその他の情報があります。すべての行列は行優先です。座標系は右手です。

カメラは [0,0,-1] にあり、ポイントは [0,0,0] にあります (行列演算では w=1)。

モデル ビュー マトリックス (カム マトリックスの逆、つまり、tx = 0;ty = 0; tz = 1):

パースペクティブ マトリックス:

ビューポートは正方形なので、アスペクトは 1 です。遠方 = 100 および近方 = 0.1 f = 1/tan(fovDegress*M_PI/360);

結果のマトリックスは次のとおりです。

ここで、モデル ビュー マトリックスを適用し、次に射影マトリックスをポイント ベクトルに適用して、新しいポイント Pv = {x,y,z,w} を取得します。次に、正規化された座標 x' = x/w を取得します。y' = y/w; z' = z/w; x' と y' は、点が錐台にある限り、常に [-1,1] の間にあります。しかし、z' の場合はそうではありません。ポイントがカメラの近くに近づくにつれて、z' 値は指数関数的に増加します。ポイントが [0,0,0] にある場合、z' 値は -1 に等しくなります。

ここで、いくつかの行を切り取る必要があるため、z' 値が [1,-1] の間にある必要があります。私の手順の何が問題なのか疑問に思っています。ありがとうございました。

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

eclipse - パースペクティブでポップアップ メニューを削除する方法

私はEclipseで働いています。新しい視点を開拓しています。このパースペクティブで、いくつかの Eclipse プラットフォームのコントリビューション (org.eclipse.ui.popupMenus で定義) を削除する必要があります。これらのポップアップ メニュー オプションの一部は、たとえば「Debug As...」で削除されます。

助けてください。ありがとう。

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

jakarta-ee - FlashBuilder4.5のJavaEEパースペクティブ

ご存知のとおり、AdobeはJavaPerspectiveを備えたAdobeFlashBuilder4.5を導入しました。データ中心のアプリケーションを簡単に開発できるようにJavaEEパースペクティブを追加する方法はありますか?EclipseでFlash Builderプラグインを使用できることは知っていますが、他の方法もあるべきではありませんか?