[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2006/02/22(Wed) 10:20
投稿者名:gt
URL :
タイトル:
3次元線分について
VB(Ver6.0)で、
3次元線分を作ることができるのでしょうか。
(3次元っぽいでもいいですが)

アドバイスよろしくお願いします。

投稿時間:2006/02/22(Wed) 10:27
投稿者名:K.J.K.
Eメール:akiya@koalanet.ne.jp
URL :
タイトル:
Re: 3次元線分について
VB6ではないけれども、例えば、
hhttp://www.ipa.go.jp/SPC/report/01fy-pro/explorat/3dintfac/3dintfac.pdf
などをよく読んでみては。

投稿時間:2006/02/22(Wed) 11:39
投稿者名:ダンボ
URL :
タイトル:
Re: 3次元線分について
> VB(Ver6.0)で、
> 3次元線分を作ることができるのでしょうか。

#正しく答えようとすると突っ込まれそうな予感がする。何を聞きたいのかも実は良く分からない。
 多分一般的にこんなことが聞きたいのだろうなという推定で。

3次元座標:3つの基底で完全に位置が決まる座標系(普通はx軸・y軸・z軸の直交座標系)
線分:2つの点を決めると一意に定まる直線の、端点で囲まれた閉区間部分

だから、VBには限らず「3つの要素を持つ1点」「2点間の演算」ができるものであれば3次元線分は
できる(操作できる)。ここら辺は「線形代数」の本でも読んで。特に行列演算が重要。

で、次の問題は「3次元線分をどう表現するか」ということで、それはグラフィックに拘らなければ
P1(x1,y1,z1)-P2(x2,y2,z2)あるいは[P1(x1,y1,z1),P2(x2,y2,z2)]とでも定義しておけばよい。

gt さんの興味は「3次元線分を2次元であるPC画面にどう表示させるか」であると思われるので、
そこはまた「線形代数」の「射影」の勉強が必要かな。

もっと具体的にと言われると、「対象としている3次元空間を回転させて自分とPC画面を結ぶ線を新z軸
とする。PC画面には新x軸・新y軸での座標表示をする。新z軸に関する情報は輝度や色で表現する」

#分かっている人には分かる、分かっていない人には分からない回答かな。。。
#言いたいだろうけれど「2点を結ぶ直線は無数にある」っていう突っ込みも無しで。

投稿時間:2006/02/22(Wed) 12:26
投稿者名:gt
URL :
タイトル:
Re^2: 3次元線分について
K.J.Kさん、ダンボさん
ご返事ありがとう。

K.J.Kさんの紹介サイトを見ました。
大変勉強になりました。
VBで実装ができないでしょうね。(自分で推定)

>#正しく答えようとすると突っ込まれそうな予感がする。何を聞きたいのかも実は良く分からない

> 多分一般的にこんなことが聞きたいのだろうなという推定で。

説明が不十分ですが、すみませんでした。

>gt さんの興味は「3次元線分を2次元であるPC画面にどう表示させるか」であると思われるので、
>そこはまた「線形代数」の「射影」の勉強が必要かな。

今まで使っている2次元座標系ですが、その上で3次元の線分(折れ線)を表示するということです.
でも、3次元っぽいでもいいです。
なぜ、そのことするというと画面上で見た目がよくなるためです.
簡単な方法があればやると思っています、手間がかかりそうならやめます。

投稿時間:2006/02/22(Wed) 12:55
投稿者名:K.J.K.
Eメール:akiya@koalanet.ne.jp
URL :
タイトル:
Re^3: 3次元線分について
> VBで実装ができないでしょうね。(自分で推定)

どの部分を指していっているのかが不明ですけれども、
原理的には十分移植可能だと思いますよ。

投稿時間:2006/02/22(Wed) 13:10
投稿者名:gt
URL :
タイトル:
Re^4: 3次元線分について
> どの部分を指していっているのかが不明ですけれども、
> 原理的には十分移植可能だと思いますよ。
3次元お絵書きというソフトを見たのですが、
その中に、線分を引くという機能がありまして、その部分を使いたいのですが、
そのソフトはVB(或は,VC)で使えるdllファイルがあるのでしょうか。
ちなみに、そのソフトはなに言語を使っているのでしょうか。

よろしくお願いします.

投稿時間:2006/02/22(Wed) 13:43
投稿者名:K.J.K.
Eメール:akiya@koalanet.ne.jp
URL :
タイトル:
Re: 3次元線分について
> ちなみに、そのソフトはなに言語を使っているのでしょうか。

javaを使っているのでしょう。

投稿時間:2006/02/23(Thu) 08:01
投稿者名:gt
URL :
タイトル:
Re^2: 3次元線分について
K.J.Kさん:
返事ありがとう。

> javaを使っているのでしょう。
そうみたいですね、VB上で利用無理でしょうね、
でも、ソフトの開発者の発想がすごくいいです。
使用者の立場から考えていますようね。

投稿時間:2006/02/23(Thu) 08:37
投稿者名:K.J.K.
Eメール:akiya@koalanet.ne.jp
URL :
タイトル:
Re: 3次元線分について
> > javaを使っているのでしょう。
> そうみたいですね、VB上で利用無理でしょうね、

javaで書かれたそのコードを参考にして、翻訳・移植すればいいのでは。
効率はともかくとして、まずはそういうことを試すべきだと思います。

投稿時間:2006/02/23(Thu) 10:18
投稿者名:gt
URL :
タイトル:
Re^2: 3次元線分について
K.J.Kさん:
ご返事ありがとう。

> javaで書かれたそのコードを参考にして、翻訳・移植すればいいのでは。
> 効率はともかくとして、まずはそういうことを試すべきだと思います。
ご意見ありがとう。
そうですね、まずJavaを読むこと、次に移植ですね、
Javeのことを知りません、私に対して結構大変なことですが、
いつ時間があったら、その辺に挑戦しようと思っていますが、
なかなか行っていないです(笑)

どうもありがとうございました。

投稿時間:2006/02/22(Wed) 13:12
投稿者名:ダンボ
URL :
タイトル:
Re^3: 3次元線分について
> 簡単な方法があればやると思っています、手間がかかりそうならやめます。

簡単な方法:
(1)VB6付属のあるいは市販の3DグラフDLLで使えるものが無いか
(2)Excelの3Dグラフ呼び出しでは
(3)DirextX利用
(4)OpenGL利用

でも、機能やインターフェースを調べると結構手間がかかる。かと言って自分で作るのも面倒ではある。
とは言っても「行列」さえ分かっていれば「回転サブルーチン」「座標変換サブルーチン」は簡単に
作れるけどね。

投稿時間:2006/02/23(Thu) 08:07
投稿者名:gt
URL :
タイトル:
Re^4: 3次元線分について
ダンボさん:
返事ありがとう。

> > 簡単な方法があればやると思っています、手間がかかりそうならやめます。
>
> 簡単な方法:
> (1)VB6付属のあるいは市販の3DグラフDLLで使えるものが無いか
> (2)Excelの3Dグラフ呼び出しでは
> (3)DirextX利用
> (4)OpenGL利用
>
時間がかかりそうですね、

> でも、機能やインターフェースを調べると結構手間がかかる。かと言って自分で作るのも面倒では
ある。
> とは言っても「行列」さえ分かっていれば「回転サブルーチン」「座標変換サブルーチン」は簡単

> 作れるけどね。
一応、考えます。

アドバイスありがとう。