プログラミングの為の ..
[2ch|▼Menu]
715:デフォルトの名無しさん
07/03/25 16:06:21
楕円関数の近似式をkの値を適当に決めたルックアップテーブルみたいな形で用意しとけばいいんじゃね?
それつかって円周を求めた(ここではLとおく)として
始点(仮に中心からx軸方向に幅/2移動した点としよう)から
円周にそってl ( = n×L, nは適当な実数)分移動したときの座標(x,y)ってのは楽に求まるの?
精度気にしないのならこれでいけると思うんだけど、どうでしょうか?

716:デフォルトの名無しさん
07/03/25 16:20:25
近似でいいのなら、
Nの個数を30倍くらいに増やし一度テーブルを作成して
補間で、近似値を求めるのが一番簡単だろう


717:デフォルトの名無しさん
07/03/25 16:40:25
もう少し詳しく。
そのテーブルの中味と、
何のデータを元にして、
何の式で補間するか書いてください
お願いします(-∧-)

718:709
07/03/25 16:51:16
ありゃ、思いのほか厄介な問題だったんですね・・・
>>715 円周に沿って l の座標を求める方法がよくわからないです。すみません。
>>716 で言う方法かはわかりませんが、自分ならこうやりますがどうでしょう?

 1. 30N の全ての点の座標を求たテーブルを作る
 2. 隣り合う点との距離を三平方の定理で求めることを全ての点について行い、円周の近時値を計算する
 3. 円周を N等分した長さを求め、これを当初の N個の頂点間の距離 d とする
 4. 30N のテーブル中の頂点の中から、それぞれの点の円周上の位置(始点からの距離)に近いものを選んで点を打つ


719:デフォルトの名無しさん
07/03/25 16:53:40
補間は、とりあえず線形補間とすれば、
テーブルの中身:

double ax[N*30];
double ay[N*30];
double aL[N*30];
double L=0;

ax[i] = cx + W * cos(i * 2 * PI / N);
ay[i] = cy + H * sin(i * 2 * PI / N);
if( i != 0 ) L+= hypot(cx-ocx , cy-ocy);
aL[i]=L;
ocx=cx;
ocy=cy;


のテーブルを作るでしょ?
Lを周長の代用として、

c= L*i/N で aL[k]<=c && aL[k+1]<c になる k を見つけて比例で分割して

w = ((c-aL[k]) /(aL[k+1]-aL[k]) + k) :2*Pi/N

を角度にするという感じ




720:デフォルトの名無しさん
07/03/25 17:04:31
>>718
>円周に沿って l の座標を求める方法
楕円積分の逆関数だから、楕円関数使って求まる気がする。
もちろん、楕円関数の値は数値的に計算するものだけど。

721:719
07/03/25 17:13:07
ゴメンミス テーブルは aL だけでいい。

double aL[N*30];
double L=0;
for( i=0;i<30*N;i++}{
ax  = cx + W * cos(i * 2 * PI / N);
ay  = cy + H * sin(i * 2 * PI / N);
if( i != 0 ) L+= hypot(ax-oax , ay-oay);
aL[i]=L;
oax=ax;
oay=ay;
}

次のループは
for( i=0;i<N;i++}{
で while(aL[k]>c) k++;



722:719
07/03/25 17:16:37
ありゃ、元の式は 違うのか、 上の
 ax = cx + sin(i * 2 * PI / N) * (W / 2);
 ay = cy + cos(i * 2 * PI / N) * (H / 2);
に訂正、

続き、

w = ((c-aL[k]) /(aL[k+1]-aL[k]) + k)*2*PI/N;
int x = cx + sin(w) * (W / 2);
int y = cy + cos(w) * (H / 2);
plot(x, y);
}

723:709
07/03/25 17:30:02
>>722
丁寧にどうもありがとうございます。
よくわかりました。

>>720
まずは楕円積分というのを勉強しなくてはいけなそうです。
おいおいスキルアップしたいと思います。

>>710
よろしければそのスレを教えてもらえないでしょうか。
放物線を速さ一定で進むってのも興味あります。

724:デフォルトの名無しさん
07/03/25 17:44:59
楕円の周長なら
URLリンク(www.tensyo.com)
の後ろの方に計算方法が書いてあったけど
コレは今回の問題には応用できないな

725:しょう
07/03/25 20:12:39
ある学校の生徒数は 1年生が全体の三分の一であり、2年生と 3年生の生徒数の比は5:6である。1年生の生徒数をa人、2年生の生徒数をb人とするとき、bをaの式で表せ。   この問題誰か解いてください


726:デフォルトの名無しさん
07/03/25 20:19:03
プログラミング関係ないな。
宿題は他をあたりなさい。

727:デフォルトの名無しさん
07/03/25 20:22:52
1) a*3=b+c
2) b*6=c*5

1' a*3*5=b*5+c*5
a*3*5=b*5+b*6=b*11


b=a*3*5/11

728:デフォルトの名無しさん
07/03/25 20:23:34
うわーなんてむずかしいもんだいなんだー

729:しょう
07/03/25 20:27:12
解らないですか?

730:デフォルトの名無しさん
07/03/25 20:28:17
ヒントください
せめて何学年まであるか、一学年何クラスかぐらいはわからないと・・・

731:しょう
07/03/25 20:31:33
高校受験の問題です。問題用紙のままカキコしました。


732:デフォルトの名無しさん
07/03/25 20:34:09
……('д`)帰れリア厨

733:デフォルトの名無しさん
07/03/25 20:41:40
SPI並の難しさだな
中学生じゃ解けないよ
大学入って掃き出し法を習うまでとっておきなさい

734:デフォルトの名無しさん
07/03/25 21:04:47
厨房でも溶けるだろ
>727間違ってる
1)a*2=b+c
だな。
で、2)はb:c=5:6から出した式ですね
あとは連立方程式

735:デフォルトの名無しさん
07/03/25 21:31:43
このスレの上の方で文系は数学から逃げ〜とか言ってたけど
俺数学選択で早稲田受かったよ

736:デフォルトの名無しさん
07/03/25 21:38:14
おめでと(^O^)/

737:デフォルトの名無しさん
07/03/25 21:42:19
ありがと(^0^)/
まぁ政経だけどねwショボいけど

738:デフォルトの名無しさん
07/03/25 22:12:11
理系で数学から逃げた俺は退学して工場労働者やってるお(^o^)

739:デフォルトの名無しさん
07/03/26 00:05:29
>>723
これだった
スレリンク(gamedev板)

740:デフォルトの名無しさん
07/03/26 00:10:22
>>734
それを言うなら、 a = (a + b + c) * 1/3 だろ。実際のところ、3学年しかないという前提はどこにもないわけだが。

741:デフォルトの名無しさん
07/03/26 00:26:09
>>723
楕円の周長計算、
「使えるだけでいい」という姿勢なら
単に数値計算ライブラリからソースコピればいける気が。

742:デフォルトの名無しさん
07/03/27 01:25:31
テスト
URLリンク(www.youtube.suppa.jp)

743:デフォルトの名無しさん
07/03/27 02:01:51
>>742はコチラへ移動しました
★☆YouTubeのCMを連続動画に☆★
//ame.x0.com/main/070327015730.html
URLリンク(ame.x0.com)


744:デフォルトの名無しさん
07/03/28 11:26:38
円と曲線がどれだけズレてるかの面積?みたいなものはどうやって計算すればよいですか?

745:デフォルトの名無しさん
07/03/28 11:31:26
曲線が定義済なら、数値積分すればいいじゃない

746:デフォルトの名無しさん
07/03/28 11:37:36
あ、曲線は自由曲線(ドットというか。。。)です。

747:デフォルトの名無しさん
07/03/28 11:43:15
50レスほど戻れば、似たような話をしているよ
>>689のリンク先のページは見た?

748:デフォルトの名無しさん
07/03/28 13:40:09
>>746
その離散点使って、数値積分的なことすれば?
Σ(点から直線への距離 × 傾き)
みたいなのを。

749:デフォルトの名無しさん
07/03/28 19:00:37
曲率の分散とか?

750:デフォルトの名無しさん
07/03/28 23:08:36
>>746
>あ、曲線は自由曲線(ドットというか。。。)です。 

ドットを数えろ。


751:デフォルトの名無しさん
07/03/29 08:38:46
ラジャ>>750

752:デフォルトの名無しさん
07/03/29 08:57:37
円と離散点群がどれだけズレているかなら、
案1、 (点と中心との距離-半径)^2 の平均 ÷ 半径^2
案2、 ( 点と中心との距離^2 - 半径^2 )^2 の平均 ÷ 半径^4

あたりだろう。


753:デフォルトの名無しさん
07/03/29 14:03:24
「ズレている」がきちんと定義されんとなんとも。
基準円よりも広いところで円をなす点たちと
基準円上のある点にのみ集中する点たちで
どっちが「円からズレている」かは一概には言えない。

754:デフォルトの名無しさん
07/03/29 14:22:10
そこで残差の二乗の総和ですよ

755:デフォルトの名無しさん
07/03/29 15:48:26
何が「そこで」なの?

残差自乗みたいな簡単な尺度では「(概形が)円からズレてない」
みたいな位相的な構造はとても捕まえられないはずだけども。

756:デフォルトの名無しさん
07/03/29 16:07:10
>>753 それは、 ズレを最小にする円があるかどうかの問題になるんじゃないのか?

指定された円とのズレという量があればそれを最小にする半径、中心も求められるわけで・・・

それとも何か素晴らしいアイデアをお持ちで?

757:デフォルトの名無しさん
07/03/29 16:33:07
>>756
だから「ズレている」を定義してくれと言ってるんだけどな。
一点に集中してても「ズレてない」とするなら残差自乗で十分だし、
そうでないならより輪郭線抽出などの手法が要るかもしれない。

758:デフォルトの名無しさん
07/03/29 16:37:32
欠点はあるが 簡単な定義は>>752くらいしか無いだろう?

もう少しややこしくするなら、点同士がどれだけ中心からの角度で分散しているかの数値を入れるかい?


759:デフォルトの名無しさん
07/03/29 16:44:25
なんとなく想像だけど、手書きの丸と円のずれ具合を定量化したいんじゃないのかな?
だとすれば>750で充分だと思うのだけど。
#目的も判らずに数学的な意味を見出そうとしても虚しいばかりだ。

760:デフォルトの名無しさん
07/03/29 16:52:34
ドットを数えるってどうやるの?

761:ラジアンの比較で躓いてます
07/03/29 16:57:43
別スレで スレリンク(tech板:9番) の質問をして、最終的にこちらに誘導されてきました。
質問の回答として、以下のコードを教えてもらいました。

v1 … p1→p2 のベクトル
v2 … p2→p3 のベクトル

struct point { double x, y; };
bool isJustLeft(point v1, piont v2)
{
double corssProd = v1.x * v2.y - v1.y * v2.x; //外積
double norm1 = v1.x * v1.x + v1.y * v1.y; // |v1|^2
double norm2 = v2.x * v2.x + v2.y * v2.y; // |v2|^2

if( corssProd < 0.0 ) return false; // 時計回りはダメ
if( crossProd * crossProd == norm1 * norm2 ) return true; // 直角判定
return false;
}


でも、ベクトルの外積って通常3次元のベクトルを返しますよね。上記だと

> double corssProd = v1.x * v2.y - v1.y * v2.x; //外積

とスカラー値を返しているのですが、今一つやっている意味が判りません。

URLリンク(yuki.to)

ぐぐったらこんな掲示板見つけたけど、回答者の答えがイマイチ判りません。
コードを通して、ベクトルを理解したいのですが、誰か教えてもらえませんか?

762:デフォルトの名無しさん
07/03/29 17:08:28
v1,v2の外積の結果は、その2つに直角な方向ですが、
v1,v2が平面上なのでZ成分のみとなります。 だから省略したのでしょう


763:デフォルトの名無しさん
07/03/29 17:24:43
外積の定義って曖昧というか、人によって違うというか。

1つは、>>762 の言うように、3次元ベクトルの外積の考え方を使って、
(x1, y1, 0) × (x2, y2, 0) = (0, 0, x1 y2 - x2 y1) の z 成分のみを取ったもの。

もう1つは、n 次元のベクトルは、n - 1 本あれば、それらに垂直なベクトルが決まるので、
n - 1 本のベクトル → 1 本の n 次元ベクトルを求める演算を外積と呼ぶ。
こっちの流儀だち、2次元ベクトルの外積は1本→1本の演算になって、
「積」というとちょっと微妙。

まあ、x1 y2 - x2 y1 は、外積の値というか、
符号付面積、あるいは行列式よね。
3次元ベクトルの外積は、その絶対値が符号付面積になってるから、
その類推で、2次元ベクトル2本の貼る平行四辺形の符号付面積を外積と呼ぶのかも。

764:ラジアンの比較で躓いてます
07/03/29 17:36:19
>762
なるほど・・・時計回りだとZ値が下方向
反時計回りだと上方向になる性質を利用して、
Z値だけで判断すればいいという事ですね!!

765:ラジアンの比較で躓いてます
07/03/29 17:39:31
もうひとつ質問ですが、ここは何をやっているのでしょうか?

double norm1 = v1.x * v1.x + v1.y * v1.y; // |v1|^2
double norm2 = v2.x * v2.x + v2.y * v2.y; // |v2|^2


766:デフォルトの名無しさん
07/03/29 17:47:02
>>765
え、えっと、変数名もnormだし、コメントもnormだし、normを計算しているんじゃないかなあ。

767:デフォルトの名無しさん
07/03/29 17:53:54
直角であるかどうかは 内積x1*x2+y1*y2 が0になる事
(v1.x * v2.y - v1.y * v2.x)^2 -(v1.x * v1.x + v1.y * v1.y)*( v2.x * v2.x + v2.y * v2.y)
を変形してくと・・・・
って内積計算した方が計算量少ないかもしれないが
まあ、折角 外積計算したからって所じゃないのかな


768:ラジアンの比較で躓いてます
07/03/29 18:03:57
>766
一瞬正規化?とか思っちゃいましたが、「ノルム」でしたか・・・orz

769:デフォルトの名無しさん
07/03/29 18:19:33
>「ノルム」

って日本語の数学では何だっけ?

770:デフォルトの名無しさん
07/03/29 18:27:37
世の中には日本語の数学と英語の数学があるらしい。

771:デフォルトの名無しさん
07/03/29 18:37:01
定まった和訳は無く、日本語をあててる本も特に知らないなあ。
参考までに、中国語では「范数」と書くそうな。

772:デフォルトの名無しさん
07/03/29 18:41:31
>>769
ノルムはノルムじゃない?
数学用語としてじゃなくて、一般には基準とか模範って訳すけど。

ノルムに似たので(というか、絶対値の一般化)付値ってのがあるけど、
それは英語でも valuation。

773:デフォルトの名無しさん
07/03/30 08:56:16
則(のり)じゃなかったか?

片方を90度回転したベクトルで内積をとっても、時計回り判定はできる。
90度回転操作を (x, y) → (-y, x) とすると、外積とコメントされた式と同じになる。
好きな方で解釈するといい。

774:デフォルトの名無しさん
07/03/30 09:20:27
内積外積を使わなくてもこれは解ける
片方のベクトルが水平(y成分が0)になるように回転変換し、
もう一方のベクトルのx成分が0なら垂直で y成分の符号を見ればいい
でも、それが内積と外積になっちゃうんだけどね

775:デフォルトの名無しさん
07/03/30 11:56:04
プログラミングの学習を先にはじめて、その必要に迫られて
その都度、数学の教養を身に着ける順序でも遅くなくねえ?

問題集をひたすら解くだけの抽象的な数学の本ばかり読んで
いると、生きることの意味がわからなくなってくるよ。

776:デフォルトの名無しさん
07/03/30 11:57:48
既出でしたら、ごめんなさい

半径10センチの球表面の座標(XYZ)をファイルに出力したいと考えております
点の間隔は0.1センチぐらいでいいかな、と

ファイルに落とす部分は、わかっているんですが
座標を算出するアルゴリズムが、さっぱりわからなくて

お分かりになる方、御教授いただけると助かります

777:デフォルトの名無しさん
07/03/30 12:20:47
>>755
それが許されればな。

>>756
3次元空間なら
x^2 + y^2 + z^2 = 半径^2
を満す実数だったと。
ざっぱになら x と y で for ループ回しながら z の値を算出すすとか。

もしくは 三次元空間の極座標
x = 半径 * sin(th1) * sin(th2)
y = 半径 * sin(th1) * cos(th2)
z = 半径 * cos(th1)
解説: URLリンク(hp.vector.co.jp)
で角度(th1, th2)でループまわすことも考えられる。

角度で回すのなら、球面三角法
Wikipedia項目リンク
も見おくべし。


778:776
07/03/30 12:56:17
>>>777

ありがとうございます。できたっぽいです
たすかりました

779:デフォルトの名無しさん
07/03/30 20:41:06
そのような極座標だと、目の細かい場所と粗い場所ができないか
できてもさしつかえないならいいけど、もしさしつかえあるなら
ユニバーサルメルカトル図法みたいな雰囲気で局所座標系を
とったりするとよさそうな気が

780:デフォルトの名無しさん
07/03/31 01:53:29
等間隔にするならジオデシックスフィア(日本語でなんて言うのか知らん)の頂点として出すとか

781:デフォルトの名無しさん
07/03/31 02:39:25
まあ、やっぱり極付近ほど密になるけど、↓みたいなのはある。
URLリンク(www.cubido.at)

ジオデシックドームの頂点求めるんだたら↓これ?
URLリンク(www2.tokai.or.jp)

782:デフォルトの名無しさん
07/03/31 04:54:50
正20面体に重心細分を繰り返して得られる多面体とかではどうかね

783:デフォルトの名無しさん
07/04/11 11:07:50
自由な曲線(ベジェ曲線か、折れ線の点列)を円弧のあつまりで近似したいんですが、
ヒントはないでしょうか?

784:デフォルトの名無しさん
07/04/11 11:16:08
円弧は半径が決まっているの? つまりフライスのようなので削るというような場合?

単純に円弧で近似したいのがどういう状況か判らないのだけど
曲線の場合は、微分が一致するように接続してゆけばいいのだけど
円弧の場合は2点と半径で求まってしまうので、
どうやっても接続点が尖がってしまう

785:デフォルトの名無しさん
07/04/12 00:12:15
円弧と線分ならどうにかそれっぽくなるかも

786:デフォルトの名無しさん
07/04/12 08:40:07
円弧の半径に制限無かったら、無限小の円弧になるだけだろ。

787:デフォルトの名無しさん
07/04/13 04:39:53
無限小の円弧の集合では曲線は近似できないのでは。

788:784
07/04/13 06:06:45
まてよ。
接続点で中心の方向が一致すればいいと解けば
接続点が尖らないように出来るか 


789:デフォルトの名無しさん
07/04/13 06:16:25
>>788
 )

 )


こういうこと?

790:デフォルトの名無しさん
07/04/13 13:54:27
円弧も極小の長さで繋いでゆけばどんな曲線でも表現出来るし、
直線も半径を限りなく大きな値にすれば可能っぽいね。
適当に曲線から3点抽出して、3点を通る円を求めればいいんじゃね?
必要精度に達していなければ間隔を短くし、足りてれば長くして情報量を落とせばいけそう。

791:デフォルトの名無しさん
07/04/13 20:32:08
半径無限大に飛ばせば曲率ゼロだしな。

792:デフォルトの名無しさん
07/04/14 00:14:38
よくあるフォームの座標系を
0|
―+――→x
 |
 |
 ↓
y
を、
  y
  ↑
  |
  |
―+――→x
 0 |
に変換する行列教えてください。

793:デフォルトの名無しさん
07/04/14 00:26:24
1, 0; 0, -1

794:デフォルトの名無しさん
07/04/14 15:36:47
>「network.standard-url.escape-utf8」を「false」にしてください。
>about:configで「network.standard-url.encode-utf8」を「true」にします。

上記の設定で、無事、日本語になりました。

気になるのは、IE7では、『"』⇒『"』でしたが、
URLリンク(forum.mozilla.gr.jp)'国際化'
URLリンク(forum.mozilla.gr.jp)国際化"

FireFox2では、『"』⇒『%22』になっていました、少々オシイです。
URLリンク(forum.mozilla.gr.jp)'国際化'
URLリンク(forum.mozilla.gr.jp)国際化%22

『%22』を『"』に戻す作業が残ってしまいます。
共通化としてOpera9の国際化URL設定も分かると良いと思います。


795:デフォルトの名無しさん
07/04/18 10:03:30
数学的要素が少ないプログラムの分野は何ですか?
ゲームプログラムは数学的要素満載だと思うのですが。

796:デフォルトの名無しさん
07/04/18 10:46:25
事務web系

797:デフォルトの名無しさん
07/04/18 13:57:03
>>795
どんな分野であっても、スレタイが読める程度の日本語力は必要。

798:デフォルトの名無しさん
07/04/18 21:51:26
>>796
事務web系って何ですか?

799:デフォルトの名無しさん
07/04/18 22:46:08
全国の支社から出退勤のデータを収集して給与を計算するとか
ネット通販の注文を受け付けて倉庫に発送を指示するとか

800:デフォルトの名無しさん
07/04/19 02:44:55
そういうのって地味だから長く働けそうですね。

801:デフォルトの名無しさん
07/04/19 02:48:30
追記

出来るだけ長く働ける分野が良いんです

802:デフォルトの名無しさん
07/04/19 11:29:46
息子が大学に行く直前まで働ける職種でおk?

803:デフォルトの名無しさん
07/04/19 11:38:45
数学、算数はプログラムに必要か?
スレリンク(tech板)
を汚した奴だろ?

あちこち汚してゆくような奴が奴隷の待遇の上下を聞いたって嫌われるだけだろうに

804:デフォルトの名無しさん
07/04/19 23:48:04
就職先探すのとかは完全にすれ違い。帰れ。

805:デフォルトの名無しさん
07/04/21 06:19:39
>>802
あなたの息子を舐め舐めしますよ

806:デフォルトの名無しさん
07/04/21 09:01:30
 これから数学の勉強始めてみようと思ってるんだが、プログラミングに役立つ
勉強方法が知りたい。大学受験レベルの数学問題をひたすら解くのがいいのか、
公式を理解しつつ大学レベルの数学を勉強するのがいいのか。

どんな風にすればいいか教えてください。。。。。

807:デフォルトの名無しさん
07/04/21 09:31:49
大学レベルの数学もいろいろあって、いまのあなたの
プログラミング・数学の能力と、役立てようとしている
方面によって勉強すべきものは変わる。

目的に近いところを読んでから、不足してそうな部分を
適宜補うってのが順当なごく普通の勉強の仕方。

どんなのがやりたいか言ってくれれば本などは紹介するよ。


因みに受験レベルの数学は単純計算すら覚束ないなら
仕方が無いけれど、そうでなければやる必要なしと思う。

808:デフォルトの名無しさん
07/04/21 16:00:13
> プログラミングに役立つ勉強方法が知りたい。
これは例えるなら「スポーツに役立つ練習方法を知りたい」と言ってるようなもの。
スポーツの種目によって練習方法が違うように、プログラミングの分野によって役立つ
数学の分野も違う。

# プログラミングで飯を食っていきたいなら、数学より簿記でもやった方が潰しがきくような気がしないでもない。

809:806
07/04/22 13:35:06
>>807-808
レスサンクス。

プログラミングはCの基本的な文法を理解している程度で、数学に関しては
高校レベルもサパーリな状況です。

簿記の知識って業務系だとそんなに役に立つのか。。。。
それなら一応日商の簿記一級を持ってるんで、この知識を生かして業務系に
進んだほうがいいのかなと思ってるんだが、
「生涯現役でプログラマなんだぜ?」
な漏れとしては組込み系や制御系のほうがいいのかなと考えたり、、、
今現在はどの分野にいこうか迷ってるところです。

どうやらプログラミングに必要な数学は各分野ごとにまちまちで、漏れの
やりたいこと自体もまだ定まってないので、とりあえず高校レベルの数学を
勉強する。そしてその時の勉強法としては大学受験を目指す感じのやり方
じゃなく、基本的な公式を理解する程度でよいってことでFA?


810:デフォルトの名無しさん
07/04/22 21:45:37
人に分からないことは全く問題ないけど、
全部頼るのは良くない。
自分で決める、たぶんそれが一番大事だ。

811:デフォルトの名無しさん
07/04/22 22:39:13
>人に分からないことは全く問題ないけど、
日本語でOK。

812:デフォルトの名無しさん
07/04/24 00:45:08
進路相談は完全に板違いなんでとっとと消えろな
毎年毎年現れる上に、人によって状況が違うし、いちいち答えてたらキリが無い

813:全知全能者
07/04/25 05:10:58
いつの世も物を言うのは「力」だ。

原始時代は「筋力」
江戸時代は「家柄」
そして現代は「金」

現代社会では金を持っている人間が強い。
革新的なパラダイムの転換が無い限りこの価値観は変わらない。

814:デフォルトの名無しさん
07/04/25 15:49:14
そして、この先は『人柄』が力となる。

815:デフォルトの名無しさん
07/04/29 00:22:43
ピクセルのフェード計算についての質問をさせてください。
実行したいのは以下の式です。

// dst[0 〜 255]: 転送先ピクセルの色要素)
// src[0 〜 255]: 転送元ピクセルの色要素)
// rate[0 〜 255]; srcの比率 )
// (すべてbyte型です)
//
フェード式
 = (dst * (255 - rate) + src * rate) >> 8;
 ~= dst + (((src - dst) * rate) >> 8);
  (~= はニアリーイコールです)

これを実現するために以下のような計算方法がよく使われています。

1) short tmp = (short)src - (short)dst; //< 符号付き2バイト数に拡張します
2) tmp = (short)(tmp * rate); //< 演算結果の下位2バイトを結果として受け取ります
3) tmp = (word)tmp >> 8; //< 無符号型としてシフト()
4) byte result = (byte)(dst + (byte)tmp); //< tmpの下位1バイトのみを足し込みます

これだけ見ると変に複雑に見えますが、
実は計算にはmmxを使っていて4要素まとめて演算します。
そこで、1要素につき2バイトの範囲内で
(src - dst){-255 〜 255} * rate{0 〜 255}
の符号付き乗算をしないといけないため、このようなことになっています。

816:815
07/04/29 00:24:22
>>815の続きです^^

例えば、src=0, dst=255, rate=255の場合、
結果としては0が期待されますが、実際に計算してみると
1) tmp = -255 = 0xff01
2) tmp = (short)(0xff01 * 0xff) = (short)0xfff01ff = 0x01ff
3) tmp = 0x01
4) result = (byte)(0xff + 0x01) = 0x00
となり正しい結果が得られます。

また、src=200, dst=225, rate=200の場合は、
204程度が望まれますが、実際に計算してみると
1) tmp = -25 = 0xffe7
2) tmp = (short)(0xffe7 * 0xc8) = (short)0xc7ec78 = 0xec78
3) tmp = 0xec
4) result = (byte)(0xe1 + 0xec) = 0xcd = 205
とほぼ正しい結果が得られます。

上の式は有名なライブラリで使われている式でもあり、
正しいことはほとんど保証されているのですが、
これがなぜ正しいのか証明できる方はいませんか?
少なくとも自分には理解できないです。
文献でもいいです。よろしくお願いします。

817:デフォルトの名無しさん
07/04/29 00:48:54
>>815

どうしてもなにも、定義そのままの計算式じゃん。

> 1) short tmp = (short)src - (short)dst; //< 符号付き2バイト数に拡張します

(src-dst) は、-255〜+255 なので、short に納まる。

> 2) tmp = (short)(tmp * rate); //< 演算結果の下位2バイトを結果として受け取ります

(src-dst)*rate は、-65280〜+65280 なので、2の補数で17ビット必要→shortだと1bit足りない→後述

> 3) tmp = (word)tmp >> 8; //< 無符号型としてシフト()

((src-dst)*rate)>>8 は -255〜+255なので、2の補数で9ビット必要だが、2)の時点で9ビット目の情報は落ちている

> 4) byte result = (byte)(dst + (byte)tmp);

ここで、8ビット整数で計算するのだから、上記3)の所で、結果は8ビットあれば十分。9ビット目の値は要らない。

8ビットで演算するのに「-1(0xff)を足す」のも「255(0xff)を足す」のも、まったく同じ結果になることに気付けばOK。
3)の結果で、-255 が出てきたのを、+1 として処理してもまったく問題ない。
→ -255〜-1 を +1〜+255 で処理しても結果は同じ。

818:デフォルトの名無しさん
07/04/29 14:31:47
>>817
おお!
8ビットまで精度を保証すればうまくいくってことね^^
どうもありがとう

819:デフォルトの名無しさん
07/04/29 18:19:52
数学の知識はそりゃあった方が良いと思うけど、
一番大事なのは物事を合理的に考える事が出来るか。

820:デフォルトの名無しさん
07/04/29 19:08:45
合理的に考えれば2chで質問するほど無駄なことは無い訳だが

821:デフォルトの名無しさん
07/04/29 19:46:50
自由な曲線(ベジェ曲線か、折れ線の点列)を円弧のあつまりで近似したいんですが、
ヒントはないでしょうか? と、質問した者です。

点列が1個の円や直線にフィットするかどうかは、最小二乗法などで、
解決できると思います。
したがって、どういう風なグループで円弧や直線にすると、さらに最小になるか、
という問題になるような気がするのですが、そういう問題には、どのような考え方で臨めばよいでしょうか。




822:デフォルトの名無しさん
07/04/29 20:18:42
やりたい事が判らないから困ってしまうのだけど、
円は3点で決まるから、3点毎に円弧を描いても、近似と言い張れば近似になる。

823:デフォルトの名無しさん
07/04/29 20:40:03
4点あるときにどの3点を選んで円弧にするかっていう話?

824:デフォルトの名無しさん
07/04/30 01:30:11
円弧だけじゃなくて、適宜直線も使いたいってことかい?

825:デフォルトの名無しさん
07/05/02 18:06:14
たとえば、N点(3000点とか)からなる折れ線の図形があったとして、人間は図をかけば、適度にこの部分は円弧だろうとか、直線だろうとか、あてはめることができます。
それを、精度をあたえることで、コンピュータに計算で円弧+直線に解かせられないでしょうかね。


826:デフォルトの名無しさん
07/05/02 18:27:41
使う円弧の数に制限が無いのなら、>>822の方法で指定点での誤差ゼロで描ける

使う円弧の数を減らしたいという要求があるなら
単純に端から3点でフィッティングして、次の点が誤差の範囲内ならと処理してもいいし
最小2乗円を求めては、誤差の範囲が収まるならとやってもいいとおもう

ただし、誤差だけでは、つなぎ目がガクガクに見えるという事になる
だから、それが嫌なら、点との誤差が幾ら以内で、接続が滑らかであるというような条件を追加しないといけない

827:デフォルトの名無しさん
07/05/02 19:42:29
>>825
用途を書いてくれればもう少し具体的なアドバイスが出てくると思われ

828:デフォルトの名無しさん
07/05/02 20:19:07
>>825
滑らかじゃなくていいなら既に色々レスついてるからそれ参照。誤差ゼロ。
滑らかである必要があるなら、確かに精度(許容誤差)を与える必要はあるだろう。
滑らかって何とか言うならもっと勉強しなさい。

829:デフォルトの名無しさん
07/05/04 00:50:19
ペゾルドにかいてなかったっけ?

830:デフォルトの名無しさん
07/05/15 23:20:02
URLリンク(www.emit.jp)
の高速除算なのですが、
どうしてこれで正しく計算できるのか分かる方いませんか?

あと、割られる数が負数のときでも上手くいくような
つまり
X / D = Q (Qは整数)
のときに
-X / D = -Q
となるような高速除算の方法を知っている方はいますか?

831:デフォルトの名無しさん
07/05/16 01:13:49
830のリンク先はなーんか誤差が出そうなやり方だなー。
定数除算なら、誤差項を1ビット誤差以下に抑えればいいから、こういうことは出来るけど。


32bit同士の乗算がオーバーフローせずに使える場合。
X/3 = [X/3 + 2n/(3*2^32)] (∵ 2n/(3*2^32) < 1bit )
= [ (2^32 + 2)/3 * (n/2^32) ]
= 1431655766 * n / 2^32
= 1431655766 * n >> 32

832:デフォルトの名無しさん
07/05/16 01:16:49
あ、途中でXがnになっちまった……。
nが負なら最後に1足してくんなまし。

833:デフォルトの名無しさん
07/05/16 07:36:56
>>830
Web上にある情報を、どれも正しいと思うな
Q=trunc(X/D +0.5) と計算したい筈なのに

m = 2*n-------------------1)
R = (2^m - 1) / D ---------2)
Q = (R * X + 2^n) >> m ------3)  から>>m を2のベキに変更して
Q = (R * X + 2^n)/2^m   Rに代入して
Q = ((2^m - 1) / D * X + 2^n)/2^m
Q = (2^m - 1) /2^m * X/ D + 2^(n-m)
   ~~~~~~~~~~~~~~~~      ~~~~~~~
(2^m-1)/2^m は1ではない
2^(n-m) は 0.5 ではない

これは単に使いたかった範囲で巧くいっただけだろ

834:デフォルトの名無しさん
07/05/16 11:48:36
>>831,832
ありがとうございます。
一応、プログラムを組んで実験してみたのですが、
違う結果しか得られませんでした。
自分の理解が足りていないのかもしれません。
チェック用プログラムをアップしますので、確認していただければ幸いです。
URLリンク(kissho.xii.jp)

>>833
整数における割り算なので、やりたいのは四捨五入ではなく切り捨て、
つまりQ=trunc(X/D) です。
あと、使える値の範囲も>>830のページ上に書いてありますよ。

835:デフォルトの名無しさん
07/05/16 16:28:10
>>834
831に書いた方法は、
R=(2^32 + F)/Dのとき、F=D-1では、多くのDで誤差が出る。
大事なのはRが割り切れることと、F/2^32が1bitより小さい正の値になること。
これが満たされない場合は、
R=(2^33+F)/Dとか、R=(2^34+T)/D-2^32なんかを使う必要がある。
(おまけに最後の例は最後に2^32分の補正が必要)
以上のようにR の決定がそんなに単純じゃないんだー。
だから定数除算って書いた。
っていうかハッカーのたのしみって本を買えばこういうことが書いてある。
興味あるならオススメ。

836:デフォルトの名無しさん
07/05/16 17:04:05
>>830
URLリンク(swox.com)

> Division by Invariant Integers using Multiplication
>
> 4 Unsigned division
> 5 Signed division, quotient rounded towards 0
> 6 Signed division, quotient rounded towards -∞


837:デフォルトの名無しさん
07/05/16 18:06:56
ターゲットのチップにも寄るだろうけど、Intel系でって話なら普通に割り算命令使った方が速いんじゃね?

838:デフォルトの名無しさん
07/05/16 18:13:07
>>837
実測してみないとなんともだけど割り算の結果を遅延評価するといいかもね。


839:デフォルトの名無しさん
07/05/16 23:59:10
>>835
そうなんですか^^
ハッカーの教科書は持っていたのですがこんな話題があるとは知りませんでした。
ちょっと研究してみようと思います。

>>836
そのページを見てみたのですが、正確にやるのは結構大変なんですね^^
よく使う定数の除算のみを最適化して
あとはテーブルなりなんなりで処理することにしました。

>>837
スレリンク(tech板:99-番)
↑を見て欲しいのですが、x86のdiv命令は
おそらくもっとも効率化がめざましい命令の一種です。
最新の石ならばそのままが一番速いと思うのですが、
昔のCPUを考慮するとなかなかそういうわけにもいきません。

840:デフォルトの名無しさん
07/05/17 00:08:18
>>839
この手の高速化は高級言語で記述してもコンパイラが糞なら無意味だし、そもそも可読性が落ちるので歓迎されない。
そうなるとアセンブラでの記述に限定されるわけだが、肝心のターゲットが書かれていないので議論するだけ無駄。
というかそもそもこのスレ向きの話題じゃない。

841:デフォルトの名無しさん
07/05/17 00:55:37
なんでいまさら昔のPCのことを考慮する必要があるんだ

842:デフォルトの名無しさん
07/05/17 01:26:26
>>840
その理屈で行くとハッカーのたのしみや>>836の内容は
まったく無意味ってことになりますね。
もちろんそんなことはなくて、
ビット演算やコンピュータ用数学(?)にはある程度の普遍性があります。
だから、ターゲットが明確に決まっていなくてもある程度は意味はあります。
(一応、特定アーキテクチャ専用の話題は避けたつもりなのですが、
div命令のレイテンシの話題はたしかにスレ違いですね^^)

>>841
ここでいう「昔のCPU」とは、Pentium4やAthlonXPクラスの
(多分)今一番普及しているCPUのことです。
さすがに考慮しないわけにはいかないです^^

843:デフォルトの名無しさん
07/05/17 06:19:35
>>842
アセンブラ系スレなら有意義なんだろうが、それ以外の場所じゃ完全に無意味。
>ビット演算やコンピュータ用数学(?)にはある程度の普遍性があります。
これもない。現にシフト命令が異様に遅いコアが存在する。
5年10年前なら確かにその言い分は通用したが、複雑化したx86系CPUで
除算命令のような数クロックを稼ごうという時にターゲットも指定しないなんてありえないだろ?

844:デフォルトの名無しさん
07/05/17 07:11:01
>>843
> アセンブラ系スレなら有意義なんだろうが、それ以外の場所じゃ完全に無意味。

んなことない。定数除算→乗算の最適化をやってくれない環境はあるし、自分
が仕事で使った RISC とかは加減シフトが実効 1 サイクル、乗算が 2 サイク
ルに対して除算命令は 33 サイクル(中で何やってるかわかるな。しかも除算
命令実行中に割り込みが入ると割り込み終了後に再度除算命令を実行し直す)。

> 現にシフト命令が異様に遅いコアが存在する。

後学のために教えてくれ。


845:デフォルトの名無しさん
07/05/17 07:46:16
>>844
だから、それはアセンブラ系のスレでやってくれということでしょ

846:デフォルトの名無しさん
07/05/17 08:04:05
負数での符号については423から、同じような事一度やってるからな。
速度だけの問題なら他でやって欲しい所。

847:デフォルトの名無しさん
07/05/17 09:09:48
>>843
自分がもともと質問していたことは、除算→乗算+シフトの変換方法です。
(このスレのおかげで定数除算の最適化という分野があることを知りましたし、
特定の除算の最適化もできそうな感じです。
その点は本当に感謝しています)

確かに石によって演算速度の違いがあることは事実なのですが、
そういったこともふまえて、対象となるCPUをつらつら挙げて
CPU別の最適化方法をここで聞いた方がよかったのですか?
もちろん、自分的には大歓迎なのですが^^

>>846
収穫もあったことですし、自分はそろそろ去りたいと思います^^

848:デフォルトの名無しさん
07/05/17 10:32:12
>CPU別の最適化方法をここで聞いた方がよかったのですか?
最適化スレもあればアセンブラスレもあるのに?

849:デフォルトの名無しさん
07/05/17 10:51:11
特定のMPUの話じゃなければ充分メタな話出来るだろ…。
そういう命令セットの定義とかも数学の範疇じゃないのか?

850:デフォルトの名無しさん
07/05/17 11:24:26
>>848
>CPU別の最適化方法をここで聞いた方がよかったのですか?
>>843
>除算命令のような数クロックを稼ごうという時にターゲットも指定しないなんてありえないだろ?
に対するレスです。
当然、自分の考えは>>848さんと同じで「それはスレ違いでしょ?」です。

>>849
命令セットの定義が数学の範疇だというのははじめて聞きました。
そうなのかもしれないのですが、
自分は特定アーキテクチャの最適化の話はここでするべきでは無いと考えたのです。

851:デフォルトの名無しさん
07/05/17 11:45:33
何がやりたいから判らなくなってるが、ようするに、
R>0 Xは正負のint 範囲で

Q=trunc(X/D) を
Q= (int)(((long)X*(long)R + k) >> (long)m )

で計算したいが 適切な R と m を求むって事だろ?

852:デフォルトの名無しさん
07/05/17 11:45:45
使える命令とその計算コストを厳密に定義した上で最適な計算を
求める問題ってのは、特に並列計算の分野で見ることがある研究だね。
実際のCPUくらいのコストモデルでやるのはかなり大変だと思うけれど

853:デフォルトの名無しさん
07/05/17 11:46:45
ウザ…スレ違いだって言われてんだから素直に移動しろや。
少なくともここはアセンブラの話題振るスレじゃねえことくらいは理解してんだろ?

854:デフォルトの名無しさん
07/05/17 21:17:53
離散的数の演算は数学だ。
ただ、その実装手段が大抵の場合アセンブラしかないだけ。
CPUの除算が遅いとか言い出したヤツが最初にスレ違い。


855:デフォルトの名無しさん
07/05/17 23:01:21
車のスピード違反みたいだなw
除算は多倍長文字列でやった事あるけど、
別と比べて極端に難しかった。

856:デフォルトの名無しさん
07/05/18 01:50:28
結局実装の話になると思うけどね。
ここがム板である限り。

857:デフォルトの名無しさん
07/05/19 05:32:05
>>855
除算は四則のうち、唯一「トライ&エラー」的要素が必要になってくるからな。
「除法の定理」という、それほど単純ではない性質に則った結果にしなければ
いけないという縛りがその原因だろう。

858:デフォルトの名無しさん
07/05/19 15:26:24
どっちかっつーと数学板向きの話題だな

859:デフォルトの名無しさん
07/05/21 08:21:46
除算を自作でやってみると、0除算がなぜダメなのかが分かる。

860:デフォルトの名無しさん
07/05/21 08:28:33
ニュートン法で除算を解く手順はどうなりますか?

861:デフォルトの名無しさん
07/05/21 08:37:57
URLリンク(www.tensyo.com)
> a/b
>ニュートン法でcを更新すれば良い結果が得られます
> ニュートン法x-f(x)/f'(x)を適用するのに
> c*b-2^n=0 f(x)=b*x-2^n f'(x)=b とやったのではダメです
> b-2^n/c=0 f(x)=b-2^n/x f'(x)= 2^n/x^2
> x:=x-b*x^2/2^n+x=(x+x-b*x^2/2^n)=x+(x*(1-b*x/2^n));
> c:=c+(c*(2^n-b*c))/2^n と更新します



862:デフォルトの名無しさん
07/05/21 08:44:08
>>859
除算をわざわざ自作しなくても簡単に判ることですが?
それとも、r = p / d を r * d = p に変形することもできないんですか?

863:デフォルトの名無しさん
07/05/21 09:10:47
>>862
それだと
0 / 0 が定義出来てしまいますが?


864:デフォルトの名無しさん
07/05/21 10:23:45
>>863
あんた馬鹿? dが0のときにpが0になるrは、一意には決まらないんですが。
つまり、0 / 0は数学的には解があるってこと。1 / 0とは事情が違う。

865:デフォルトの名無しさん
07/05/21 11:06:44
>858
全くだなw

866:デフォルトの名無しさん
07/05/21 13:17:07
北極の氷が融けて水面が上がるという話があるが、それがありえないのは
アルキメデスの原理を学んでいれば理解出来る筈だ。

実際にグラスに氷を入れて、水をすりきれ一杯にして、水がこぼれない実験をするまでは判らないのだろう

0で割るとどうなるかも、そりゃ数式を弄くれば予想は出来るが
それと、実際に計算させてみての実感とは違うものなのだろう

867:デフォルトの名無しさん
07/05/21 14:43:02
海に浮かんでる氷が溶けても海面上がらないけど、
地面の上に乗ってる氷が溶けると海面上がるよな。

北極って、大陸ではないけど、
小さな島状の部分とか浅瀬もなく、完全に氷が海に浮いてる状態?

868:デフォルトの名無しさん
07/05/21 14:50:03
実際に計算することと、計算過程をプログラミングすることは、違う。

>>867
どこまでを北極というかによって変わるが、基本的に北極海には問題になるほどの陸地はない。
勿論北米北欧ロシアの海岸線を含むわけだが、面積比で言えば問題にならない。

869:デフォルトの名無しさん
07/05/21 15:19:40
問題なのはグリーンランドだよ
映画でアルゴアが言ってた

>>866
グラスに氷とかのすぐできるような実験もしないで
「本に書いてあるからそうなんです」って胸を張るような
中世の暗黒時代さながらの学問態度は取りたくないものだな
馬の歯は何本あるんだっけ

870:デフォルトの名無しさん
07/05/21 15:47:10
URLリンク(www2.odn.ne.jp)

でも、氷河期が終わるんなら、氷床も無くなって当然では?


871:デフォルトの名無しさん
07/05/21 16:23:24
>>866
>アルキメデスの原理を学んでいれば
うみのみずはしょっぱいです。でも、ほっきょくのこおりはしょっぱくないです。

872:デフォルトの名無しさん
07/05/21 16:41:13
北極の氷でも海の水が凍ったものは 塩を含むだろう。
その上に降り積もった部分は違うだろうけど

873:デフォルトの名無しさん
07/05/21 16:43:46
>>872
面白い考え方だな

874:デフォルトの名無しさん
07/05/21 17:09:45
URLリンク(www.littlewaves.info)
塩分濃度が35ppt で 温度15℃の時の比重が1.0263

つまり、塩が溶けると 1.035/1.0263 = 1.0085倍に膨張するといいたいわけ?

875:デフォルトの名無しさん
07/05/21 17:15:29
>>874
つ[浮力]

876:デフォルトの名無しさん
07/05/21 17:15:36
>>872
>海の水が凍ったものは 塩を含む
もしそうなら、半導体価格は今より何倍も高いはずだ。

877:デフォルトの名無しさん
07/05/21 17:16:37
北極の氷はプログラムと関係あんのか?

878:デフォルトの名無しさん
07/05/21 17:17:15
数学とは関係があるかもしれない。

879:デフォルトの名無しさん
07/05/21 17:18:24
>>878
そんなことは聞いてねぇよ、北極の氷はプログラムと関係あんのかって聞いてんだよ

880:デフォルトの名無しさん
07/05/21 17:20:10
>>879
あると思うの? んなことマジで聞いてるの?

881:デフォルトの名無しさん
07/05/21 17:23:48
>>880
雑談でスレ埋めるな、って嫌味も通じない馬鹿か…

882:デフォルトの名無しさん
07/05/21 17:31:33
そんな当たり前のことを承知の上でおちょくっていることにも気付けない?

883:デフォルトの名無しさん
07/05/21 17:32:49
それもまた雑談なのだ。 同じ雑談なら、面白がる方がいいだろ
さて
URLリンク(blog.livedoor.jp)
のように、真水が凍った氷が溶けて水面が上がのが正しそうに見えるけど
氷が溶けると、塩水の濃度は下がるのだから、濃度が下がる事により容積は下がるので
その効果が打ち消す可能性もあり、やっぱり実験しないと判らない

884:デフォルトの名無しさん
07/05/21 18:35:54
>>876
海氷の塩分濃度は10〜12gだそうだ。 海水の1/3程度だとはいえ、まだ塩分はそれなりにあるみたい

885:デフォルトの名無しさん
07/05/21 18:42:39
>>871
たまに、海水は真水より比重が大きいのだから、
水銀の上で氷が溶ければ水面が上がるように、水面が上がるという人がいる。

でも、これは海水の主成分が水である事を忘れている。
氷が溶ければ真水ではなく、塩水になり、塩水は薄まる。
塩分濃度と比重は変化が小さい時には比例するので、
トータル水面は変わらないのさ。

極端に言えば、海水中の塩分と、水を別けて計算すればいい。

886:デフォルトの名無しさん
07/05/21 20:59:20
ええと、
  氷の比重0.917
  水の比重1.000
海水の比重1.024
海水上に出る氷の容積は、1-0.917/1.024 = 0.104
氷が水になると1-1/1.024 = 0.023

一旦は水面は氷*2.3%だけ持ち上がるよね? その後塩水と混じると水面が下がるわけ?

887:デフォルトの名無しさん
07/05/21 22:48:44
1

888:デフォルトの名無しさん
07/05/21 22:52:39
2

889:デフォルトの名無しさん
07/05/21 22:54:08
3

890:デフォルトの名無しさん
07/05/21 22:56:04
4

891:デフォルトの名無しさん
07/05/21 22:59:28
5

892:デフォルトの名無しさん
07/05/21 23:06:04
6

893:デフォルトの名無しさん
07/05/21 23:16:00
>>876
ヘンリーラウールの法則によると凍った海水には塩が含まれる


894:デフォルトの名無しさん
07/05/22 00:05:39
7

895:デフォルトの名無しさん
07/05/22 00:08:06
8

896:デフォルトの名無しさん
07/05/22 00:17:38
9

897:デフォルトの名無しさん
07/05/22 00:35:25
10

898:デフォルトの名無しさん
07/05/22 00:57:15
11

899:デフォルトの名無しさん
07/05/22 02:43:23
埋めようとしてるのは
はずかしいボケをしたお友達かな?

900:デフォルトの名無しさん
07/05/22 08:17:30
スレ違いよりかはマシなんじゃないの

901:デフォルトの名無しさん
07/05/23 08:18:11
痲疹よりは感染力低いな


902:デフォルトの名無しさん
07/06/02 20:26:08
       __
 /\   /  /
 \ \ /  /______   _____     ___ ___    ___
  .\//  _______/ /__  __/ [][] _| |_| |__ _| |_
 /\ /__/ ______      / /     |    _  | |_  レ'~ ̄|
 \ \  /         /     |  |___      ̄|  | / / /   /| |
  .\/  / / ̄/ / ̄/  /      \__|     |  |  ̄ /_  /  | |_
   / ̄ ̄   ̄   ̄    ̄/              |_|     |__|   \/
 /\ ̄/ / ̄/ / ̄/  / ̄
/  / /   ̄   ̄ ̄   ̄/     
\/   ̄ ̄ ̄ ̄ ̄/  / ̄        2007 Summer @ Shou-nan
          / ̄  /            URLリンク(www.2ch.net)
           ̄ ̄



次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5374日前に更新/259 KB
担当:undef