問題タブ [computational-geometry]

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

java - Java-定規を描画します(90度の角度で目盛りが付いた線)

私はJavaAWTを使用してパネル(Line2DおよびGraphics2D.drawLine())に線を描画していますが、次のような目盛り付きの線を描画するにはどうすればよいか疑問に思っています。

| ---- | ---- | ---- | ---- | ---- |

目盛りを描きたい位置を事前に知っています。

線は任意の位置に配置できるため、目盛りは線自体に対して相対的な角度で描画する必要があります。

私の基本的なジオメトリとJavaでそれを適用する能力は私を失敗させています。:)

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

algorithm - 凸多角形の最大対角と最小対角のアルゴリズム?

ポリゴンの最大長と最小長の対角線を取得するために、力ずくで比較するよりも良い方法はありますか? より具体的には、比率を見つけたいので、ポリゴンの「細さ」でソートできます。

ポリゴンはそれほど大きくはありませんが (通常、ポリゴンごとに 4 ~ 8 面)、多くのポリゴンがあります。SOに確認して、これを行うより良い方法があるかどうかを確認したいと思いました。

前もって感謝します

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

algorithm - ポイントと法線に基づいてエッジを認識する

相対法線に基づいてポイントを分類するのに少し問題があります。私がやりたいのは、以下で得た情報を使用して、ある程度90度の角度にバイアスをかけて、単純化されたポリゴンをポイントにフィットさせることです。

各ポイントの大まかな(あまり正確ではありませんが)法線がありますが、ポイントの近さと法線の近さでデータベースを分離する方法がわかりません。法線が実際の面にうまく適合しない場合があるため、各面のポイントをチャンク化した後、線形回帰を実行する予定です(ただし、各面は互いに近接しています)。

例: 代替テキストhttp://a.imageshack.us/img842/8439/ptnormals.png

理想的には、このデータの周りに長方形を収めることができるようにしたいと思います。ただし、ポリゴンは凸面である必要はなく、軸と位置合わせする必要もありません。

このようなことを達成する方法についてのヒントは素晴らしいでしょう。

前もって感謝します

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

java - Java AWT - 滑らかな曲線で接続されたポリゴンを描画します

ここで私はもっとばかげたグラフィックスの質問をしています。うまくいけば、私はグラフィックスの世界を後にして、再び色のない中間層にしっかりと身を置きたいと思っています. 私は、コードを通じて楽しい方法で画像をいじることができる人々に新たな敬意を払っています。

そうは言っても、キャンバスにポリゴンを描いています。任意の数のポイントを持つことができますが、ここでは 12 と仮定しましょう。実装されているポリゴンは、点から点へ直線で接続されています。誰かがペン/鉛筆でポイントを接続したかのように、形状がより「自然に」描かれるように、ある種の変換を適用したいと思います。

これがあまりにも漠然とした説明であるかどうかはわかりません。私が探しているのはベジエ曲線だと思いますが、私はグラフィックス (およびジオメトリ) が苦手です。私は一般的に斬新な解決策に興味があります。それは、直線の多角形をインクの塊のように見せるものです。多かれ少なかれ「自然な」形状を実現するためのコントロールが必要かもしれません。

追加情報が必要な場合は、お気軽にお問い合わせください。

ありがとう、マット

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

c++ - CGALで線上の点を計算する方法

CGALの3D線が与えられた場合、端点からの既知の距離であるその線上の点を計算するにはどうすればよいですか?

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

algorithm - 任意の2D形状を、指定された長方形のセットで塗りつぶします

2D空間に長方形と任意の形状のセットがあります。形状は必ずしも多角形(円の場合もあります)である必要はなく、長方形の幅と高さは異なります。タスクは、可能な限り長方形で形状を近似することです。長方形の寸法を変更することはできませんが、回転は許可されています。

パッキング問題やカバーリングの問題と非常によく似ていますが、カバーエリアは長方形ではありません...

NPの問題だと思います。それを解決するための優れたヒューリスティックを示す論文がいくつかあるはずですが、何をグーグルで検索すればよいかわかりません。どこから始めればいいですか?

更新: 1つのアイデアが頭に浮かびましたが、調査する価値があるかどうかはわかりません。境界形状を水で満たされた物理的な型と見なすとどうなりますか。各長方形は、サイズが正に帯電した粒子と見なされます。次に、最小の長方形をドロップします。次に、ランダムなポイントでサイズで次をドロップします。長方形が近すぎると、互いに反発します。すべてが使用されるまで、長方形を追加し続けます。この方法は機能しますか?

0 投票する
4 に答える
37335 参照

math - 逆運動学の計算方法

逆運動学を使って回転角を計算する方法を知りたいです。これをリアルタイム 3D アニメーションに使用する予定です。特定の解決策を詳しく説明している優れた文献を知っている人はいますか?

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

algorithm - 交差しない強制のための任意の方向付けおよび寸法付けされた 3D ボックスのスケーリング

任意の寸法、平行移動、および回転を持つ 3D ボックスのセットがあります。ボックスを 3 次元コンポーネントで単一の定数でスケーリングして、ボックスが交差しないようにする必要があります。

現時点では、交差点をチェックしてから、交差点がなくなるまで繰り返しスケーリングを減らすことで、これを繰り返し行っています。ただし、これは実行に時間がかかりすぎて、何度も実行する必要があります。

1回のヒットで必要なスケーリングを見つける方法を知っている人はいますか? おおよその解決策は大歓迎です。

すべてに感謝します。

ロブ。

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

math - クォータニオンと 3 つの軸

クォータニオン q と、任意の方向に向けることができる座標軸を形成する 3 つの 3D ベクトル (vx、vy、vz) が与えられますが、これらはすべて互いに垂直であり、3D 空間を形成します。

クォータニオン q が一部の 3D ベクトル (vx、vy、vz) と同じ方向 (または反対方向) に回転しているかどうかを確認するにはどうすればよいですか?

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

math - すべての基底ベクトルに平行または垂直なオブジェクトの四元数

オブジェクトのクォータニオン q と、3D 空間を形成する基底ベクトル vx、vy、vz が与えられた場合、クォータニオンがすべての基底ベクトルに対して平行か垂直かを確認するにはどうすればよいですか?

たとえば、基底ベクトルがあります。

およびクォータニオン

四元数がすべての基底ベクトルに対して垂直または平行 (または反平行) であることはわかっていますが、実際にどのように計算すればよいでしょうか?

もう一つの例、

これは、すべての基底ベクトルに対して垂直または平行 (または反平行) ではありません。