作図君 [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
ゲ政策技術板のこんなゲーム作ってくれスレからマルチ
=======以下引用=========
こんなゲームだれか作ってくれないか。
ゲーム名:作図君
目的:条件を満たしながらマークを点Aから点Bへドラッグする。
操作
(1)マークをドラッグする。
(2)定規で線を引く
(3)コンパスで線を引く
1面:直線AC上または直線BC上を通りながらマークをAからBへドラッグせよ。
2面:マークを点Pとし、角XPYを30°に保ちながらマークをAからBへドラッグせよ。
3面:直線ACを一辺とする正五角形上を通りながら、マークをAからBへドラッグせよ。
4面:etc
正解ルート上にマークがあるうちはセーフ、正解ルートを外れたら死亡、とか。
どう?
=======ここまで=========
とりあえず、この板のみんなで問題考えてくれないか?
実装できるかはわからないが。 数学がわかりません
数学できるようになりたいです
頭が良くなりたいです
頭が良くなりません
数学いっぱいやりました
いっぱいやればそれでよかったはずでした
頭が良くなりません
頭が良くならないとダメなんです
頭が良くならないと特別じゃないんです
特別じゃないと私に価値はありません
特別とはなんですか?
頭がいいと特別ですか?
数学できるとすごいですか?
小学校終わるまでに三平方の定理を解けることはすごいですか?
中学終わるまでに微積分の計算できることはすごいですか?
数学ができることと先の勉強を知ってることは違うのですか?
先の勉強を知ってることは特別ではないんですか?
先の勉強を知ってるとは言えなくなったとき、もう特別ではないのですか?
周りとの差がなくなったとき、すごくなるのですか?
その程度ですごくなくなる特別は特別ではないのですか?
なぜ周りの人はすごいと言うのですか?
なぜ嘘をつくのですか?
なぜ私は騙され続けるのですか?
なぜ私に真実を教えてくれる人は一人もいないのですか レスが全然ねぇな
面白いと思ってるのは俺だけかorz. あまりにもスレチだからな。
興味の対象が違うんだろ。 動くもの出せば食いつきも違ってくるかな?
まあ、自分でシコシコ、コード書くしかないか。 昔はペンタブじゃなくてマウスでお絵かきしてて大変だったんだぞ マウスでお絵かきすると正確な作図が出来ないな。
コマンド方式にして厳密な作図できるようにすべきか? 図形クラスをつくって点と線と円に継承させて
二つの図形の共通部分をList<図形>で返せるように設計しようと思ったが、
ほんとにこんな面倒な設計にせにゃならんのか?
誰かヘルプ。 めんどくさいというか、線が交差する点の座標はきちんと表現できるのか?
√2ならルートとして扱うのか? 浮動小数点で double d = sqrt(2) とやったら誤差が出るけどどうする? 近似処理すればいいんじゃねーの
そんなに破綻しないでしょ。 Maximaおもしろそうだが、汎用プログラミング言語からライブラリとして使えないの?
だれか教えて。 ウルフラムアルファとかいうのすごくね?
これを流用すれば作図君もバシッと作れるかも? ウルフラムアルファ、ライセンスがよくわからんorz. ウルフラムアルファ、出力形式もよくわからんorz. >>17
アルファ板だと、HTTPを介するから、
ライブラリとして使うには、動作が遅すぎる。
買って使う? 高いよ? >>21
アルファ版ってなんのこと?
ウルフラムアルファ?
動作速度はそんなに必要ないと思う。
無料の範囲でお願いします。 Maximaとlispは組み合わせて使えるみたいだなぁ。
Maxima上に作図君を実装するのが現実的かなぁ。 コマンド方式作図君maxima上でそこそこ動くようになってきたが、
ゲームとして操作感が悪すぎるつ〜か普通に面白くない。orz. おお、動くように出来たのか。それだけでもすごいわ。
正直いうと見くびっていた。プログラム作るのって難しいから。 maximaで二つの円の交点が求まらない。
solve([(x-2)^2+(y-2)^2=8,x^2+y^2=8],[x,y]);
ってやると空リストが返ってくる。
なぜ? マニュアル載ってたやつだけど、
これはできる?
(%i6) e1: x^2 - y^2;
(%i7) e2: -1 - y + 2*y^2 - x + x^2;
(%i8) algsys ([e1, e2], [x, y]);
(%o8) [[x = -1/sqrt(3), y = 1/sqrt(3)], [x = 1/sqrt(3), y = -1/sqrt(3)], [x = -1/3, y = -1/3], [x = 1, y = 1]]
アウトプットは2重リストだから注意 >>27
レスありがとうございます。
そのまま打ち込んだら、同じ結果になりました。 %i12) algsys([x^2+y^2-8,x^2-4*x+y^2-4*y],[x,y]);
(%o12) []
やっぱり解けないorz orz orz. なんでしょうね?
>>28 の「同じ結果」というのは >>27 の (%o8) と同じ出力にはなりましたか?
(a): x^2 + y^2 - 8 = 0
(b): x^2 + y^2 - 4*x - 4*y = 0
なら辺々引いて
(c): 8 - 4*x - 4*y = 0
だから (a) と (c) の連立でやってみるとかどうでしょう? はい、 >>27 の (%o8) と同じ出力になりました。
(a)と(c)だとsolveで解けますねぇ。
なんでかよくわからん。
ちなみにmaximaで辺々引くというのはどうやるのでしょう? そのままexp1-exp2で辺々引けるのかすごいなmaxima 良く分からないけど algsys のバグのような気がするなあ・・・
レポートすべきだろうか・・・? とりあえず、今の時点でできてるところまでアップするわ
http://textuploader.com/51wjd
詳しくは説明しないけど、一応、頂点と直線と円がなんとなく扱えるところまできた。
バグはあるかもしれない。 作図君で直線l1と点p1が与えられたときにp1を通りl1と平行な線をひくコマンドは以下。
p1: point([x=3,y=0]);
p2: point([x=1,y=1]);
p3: point([x=0,y=0]);
l1: line(p2,p3);
c1: circle(p1,distance(p1,p2));
p4: intersec(c1,l1);
c2: circle(p4[1],distance(p4[1],p4[2]));
c3: circle(p4[2],distance(p4[1],p4[2]));
p5: intersec(c2,c3);
l2: line(p5[1],p5[2]);
c4: circle(p1,distance(p4[1],p4[2]));
p6: intersec(c4,l2);
c5: circle(p6[1],distance(p6[1],p6[2]));
c6: circle(p6[2],distance(p6[1],p6[2]));
p7: intersec(c5,c6);
l3: line(p7[1],p7[2]);
fig : [l1,l3,p1];
d(fig);
ほぼ思った通りのコマンド方式できたけど、入力がめんどくさすぎ、やる気しないorz. maxima をバックエンドに使ってGUIは自作のGUIで動かすのかと思ってたけど違うのか? maximaを自作GUIで動かすってどんなライブラリあんの? 出来ればブラウザからmaxima使いたいんだが。
だれかやり方知らんか? ググったらMaximaPHPとかいうのがヒットした。
使えるか? ローカルにインストールしてアプリケーションからなら
パイプで入出力をつないでコマンドライン流し込めば
出力が返ってくるかなと思ったが、ブラウザからか・・・ いろいろ調べてたらMaximaSharpとかいうのがあった。
ブラウザは諦めてこっち調べるか… MaximaSharpなかなか参考になる。
でもゲームが完成するのは相当先になりそう。 作図君それっぽくなったわ
http://koldr.jp/2frz
DLkeyはsakuzu
エラー処理とか甘いけど動かしてみてください。
そんでなんかコメントくだしあ。
よろしくおながいします。 >>44
ガイドつき初等幾何のクイズみたいで面白く感じました
入力していくにしたがって自分の指定した通りに図形が描かれて良い気分でした
でも問題が意外と難しくて解けなかったけど難易度たかい問題もつくれると
いうことで可能性を感じました
ラベル P4, C などとグラフ上の図形の対応がパゥtと見わかりづらいので
リスト上で選択したときグラフ上の図形にも色が付いたりすると良いですね
Line1 が小数点打ち切りで表示しているのは不正確なので整数か分数で
表示できたらいいですね
maxima が GPL なので作図君も GPL 感染してしまうことには注意が必要ですが
自作プログラム上からこういう風に叩けるなら面白いですね >>46
おお、レスありがとうございます。
反応が全くなかったのでへこんでいました。
図形の色は変えられます。
リストのcolorのところから入力可能です。
C#のknown colorであれば受け付けてくれるはずです。
分数表示はmaxima使えば何とかなるかもしれませんが、
かえってわかりずらいかなとも思いました。
GPLはあんまり詳しくありませんが、
タダで配布しなきゃいけないとかコードを公開しなきゃいけないとかでしたっけ?
なんかそこそこ動くものが出来ちゃったらもう満足しちゃって、
モチベーションダダ下がりですw
しばらく休憩しますw 問題を外部ファイルから読み込めるようにした。
http://koldr.jp/2fxl
DLキーはsakuzu
もうほとんど完成形かな〜 http://up3.kouploader.jp/?m=dp&n=koupz80824
エラー処理いれて問題とか作った。
あとは問題を充実させれば完成かな。 ■ このスレッドは過去ログ倉庫に格納されています