#include <moemoe.h>

基本情報技術者試験まで残りあと**日!

全体表示

[ リスト ]

イメージ 1

前回の球面お絵かきはちょっと不完全でした。
どの辺がダメかと言えば、上手く表現できないのですが、※
上の画像を見ればなんとなくお分かり頂けるかと。

<ソース変更点>

coordinate[0] = ox+r*sin(x/r)*cos(y/r);
coordinate[1] = oy+r*sin(y/r);
coordinate[2] = oz+r*cos(x/r)*cos(y/r);

これを、

float a = 0, b = 0;
a = x/abs(x)*sqrt(sq(x)+sq(y))/r;
if(x!=0){
b = atan(y/x);
}
else if(y>0){
b = PI/2.;
}
else if(y<0){
b = -PI/2.;
}
coordinate[0] = ox+r*cos(b)*sin(a);
coordinate[1] = oy+r*sin(b)*sin(a);
coordinate[2] = oz+r*cos(a);

に変更しますた。
普通に遊ぶ分には正直どうでもいいのですが(その理由で、アプレットは非公開w)、
作る側の情熱にとっては重要な事なのです〜。
ところで、
a = x/abs(x)*sqrt(sq(x)+sq(y))/r;
で絶対値を使っていますが、
上手く一般化出来ないか考え中〜。


平面状の端っこはやっぱり、球面上で同じ所に収束させたい訳ですw

<追記>
Classiclllさんありがとうございます〜♪
おかげでソースがスマートになりました♪♪

float a = 0, b = 0;
a = sqrt(sq(x)+sq(y))/r;
b = atan2(y, x);
coordinate[0] = ox+r*cos(b)*sin(a);
coordinate[1] = oy+r*sin(b)*sin(a);
coordinate[2] = oz+r*cos(a);

<さらに追記!!>
今度はglobe()の逆関数を求めるべく式変形していたら・・・

float a = 0;
a = sqrt(sq(x)+sq(y))/r;
coordinate[0] = ox+x*sin(a)/a;
coordinate[1] = oy+y*sin(a)/a;
coordinate[2] = oz+r*cos(a);

ここまで簡単になりました!
タンジェントが消えて、全て同じ偏角!!(偏角とは違うかw
自分でもビックリ〜。
この記事は自分の為に永久保存ですな〜w

閉じる コメント(20)

顔アイコン

おおお〜、ソースについてはよく分からないけど、 「ソースを弄って遊ぶ」の奴はなんか良いねえ〜。

2006/7/6(木) 午後 3:53 [ ran*ran*93* ]

顔アイコン

あれはオマケです。球面座標のそれぞれの偏角の倍率を変えると色々な、そして予測不可能な立体物が浮かび上がります。

2006/7/6(木) 午後 3:56 [ che*tn*t_ch**mun* ]

顔アイコン

P5のatan2()を見てみてください。atan()では特異点(無限遠)の存在と象限判定(第一と第三、第二と第四)の区別が無いんですが、atan2()ではその問題はありません。

2006/7/6(木) 午後 5:17 Classiclll

顔アイコン

atan2()は気になっていたのですが、よく分かりませんでしたw もう一回見てきますw

2006/7/6(木) 午後 6:35 [ che*tn*t_ch**mun* ]

顔アイコン

「遊ぶより作る方が楽しいと実感します。」って、うれしいタイトルです。

2006/7/6(木) 午後 7:51 Classiclll

顔アイコン

あれこれ試行錯誤しながら悩むってのが、なんだかいい感じですw

2006/7/6(木) 午後 9:07 [ che*tn*t_ch**mun* ]

顔アイコン

ストレス解消になるでしょう?

2006/7/6(木) 午後 9:35 Classiclll

顔アイコン

無心になれますからね。でもちょっと中毒気味かもwww と、カキコしてる今も創作中〜♪

2006/7/6(木) 午後 10:03 [ che*tn*t_ch**mun* ]

顔アイコン

遊ぶより作る方が楽しいと、思えるようになりたいものです。ヽ('A`)ノ

2006/7/7(金) 午前 2:50 [ - ]

顔アイコン

小さいときにレゴで遊んでいましたが、あれは完成したもので遊ぶより作ってる時の方が面白いですねw

2006/7/7(金) 午前 9:50 [ che*tn*t_ch**mun* ]

顔アイコン

それは言えるね。

2006/7/7(金) 午前 9:56 [ ran*ran*93* ]

顔アイコン

プログラミングも、「ものづくり」の楽しさを教えてくれます♪

2006/7/7(金) 午前 10:17 [ che*tn*t_ch**mun* ]

顔アイコン

ソース、難しいけど遊ぶまえに作らなければ遊べませんよね。作るって素晴らしいことですね。

2006/7/7(金) 午後 0:00 bak*a*ttae

顔アイコン

はい。

2006/7/7(金) 午後 1:12 [ che*tn*t_ch**mun* ]

顔アイコン

「作る遊び」って〜のだと、一挙両得でごんす。

2006/7/7(金) 午後 5:20 [ ThoruZOO ]

顔アイコン

なるほどな

2006/7/7(金) 午後 5:40 [ 友蔵 ]

顔アイコン

>thoruさん。まさにそんな感じですね。辛い時ももちろんありますがwww

2006/7/7(金) 午後 6:20 [ che*tn*t_ch**mun* ]

顔アイコン

試験も忘れずに

2006/7/7(金) 午後 6:23 Classiclll

顔アイコン

>友蔵 電情に行けばよかった・・・orz

2006/7/7(金) 午後 6:23 [ che*tn*t_ch**mun* ]

顔アイコン

>Classiclllさん。そうですね・・・忘れてましたorz ハードルは低くないので、真剣に取り組まないと落ちますw

2006/7/7(金) 午後 6:26 [ che*tn*t_ch**mun* ]


よしもとブログランキング

もっと見る

[PR]お得情報

いまならもらえる!ウィスパーWガード
薄いしモレを防ぐパンティライナー
話題の新製品を10,000名様にプレゼント
コンタクトレンズで遠近両用?
「2WEEKメニコンプレミオ遠近両用」
無料モニター募集中!
お肉、魚介、お米、おせちまで
おすすめ特産品がランキングで選べる
ふるさと納税サイト『さとふる』
いまならもらえる!ウィスパーうすさら
薄いしモレを防ぐ尿ケアパッド
話題の新製品を10,000名様にプレゼント
ふるさと納税サイト『さとふる』
実質2000円で特産品がお手元に
11/30までキャンペーン実施中!

その他のキャンペーン


プライバシー -  利用規約 -  メディアステートメント -  ガイドライン -  順守事項 -  ご意見・ご要望 -  ヘルプ・お問い合わせ

Copyright (C) 2019 Yahoo Japan Corporation. All Rights Reserved.

みんなの更新記事