検索結果 1560 件

by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 配送計画問題(C言語)
返信数: 5
閲覧数: 1537

Re: 配送計画問題(C言語)

何をしたいのかよくわからないけど,取り得るルートを列挙できているのなら
それら個々のルートに関して,あなたが課す制約条件を満たしているか否か を判定すればよいのでは?
オフトピック
まずもって 問題定義から不明瞭に思うのだけど.
制約条件を絶対に満たせない場合はどうすんの?とか.
(「配送計画問題」という言葉だけで,伝わる人には伝わるのか??)
あと,変数の意味すら不明なコードをどさっと貼って,何の説明もなく
「何やってるのかは見る側で全て解読してくれ→その上でやりたいことも追加してくれ」
というスタンス(?)は どうなのかなぁ……とか.
by usao
6年前
フォーラム: 作品お披露目掲示板
トピック: 玉が転がるアプリ「Win32Balls」
返信数: 20
閲覧数: 9135

玉が転がるアプリ「Win32Balls」

ゲームではありません.
超簡易物理シミュレーションのような,なんかそんな感じのもの.

VS2012 Expressで作成.特別なライブラリ等はつかっていません.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 突然のExceptionエラー
返信数: 6
閲覧数: 3838

Re: 突然のExceptionエラー

Debugビルドして動かしても同じ状況が出るのであれば
ステップ実行等で,どの時点で例外発生しているのかを突き止めると良いでしょう.
例えば,「A()という関数を呼びだしたらそうなる」とかいうあたりまでわかれば
その関数に渡している引数の値を疑う等して,原因が究明できると思います.

Releaseだと出るけどDebugだと出ない とかいう状況だと
詳細な場所まで突き止めるのが難しくなるかもしれませんが,
それでも Releaseビルドしたものをデバッグ実行して ある程度範囲を絞りこめると思います.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: C言語 関数を使って2次元配列
返信数: 10
閲覧数: 1310

Re: C言語 関数を使って2次元配列

以前の質問時に,  関数を呼んだ時点で表示されてしまう仕様 に悩まされてそれらの関数を呼びだす側で四苦八苦するよりも,  f_max_2()等の関数が「計算→表示」という2つの仕事をするのではなくて  計算のみを行って結果を返すようにすれば済む(あとは好きに並べて表示すればいい)のでは? という旨のことを言った気がしますが,そういう方針は無しなのでしょうか. int GetMaxValue_of_Row( int row, int dat[][5] ) { //※関数の中では表示を行わない. //返された値を表示する方法やタイミングは,この関数を使う側で勝手に調整すればよい. return (...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: OpenCVで物体検出する方法について
返信数: 6
閲覧数: 2225

Re: OpenCVで物体検出する方法について

「画像から消す」とは具体的にはどういう操作を指しているのでしょうか. >何をしたいのかもっと具体的詳細を書かれたほうがよいかなと思います. >問題設定というか. >あと,これって何かの課題なのでしょうか? と書きましたが,問題の内容詳細を示すことは無理でしょうか? 現状では 扱っている画像が 何らかの人工的な理想画像なのか,カメラ撮影画像のようなものなのかすら不明です. (他の質問では「カメラ画像」のような単語がコード内に見られるようですが,  カメラで撮影した画像であっても,問題を簡単化できるようにして撮影したものなのか,  {背景,邪魔なオブジェクトの存在,照明具合}等々に制約を設けない自...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 自炊した書籍の歪みを補正したい
返信数: 24
閲覧数: 8665

Re: 自炊した書籍の歪みを補正したい

あなたがどのような歪をどう扱おうとしているかわからないので何とも言えませんが, 簡単なものであればアフィン変換か射影変換で対応できないか検討されると良いかもしれません. OpenCVの関数名が知りたい場合は 変換名とOpenCV くらいで検索すれば見つかるでしょう. OpenCVは単なるライブラリであって万能ではありませんから どういう機能が提供されているのかをざっと把握するためにも 一度リファレンスを眺めてみることを強く推奨します. そこに在る以上のことをしたい場合には,自分でやるしかありません. (あったとしても使いにくい場合も多いですし) やるべき変換処理の内容が決まっているのであれば,...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: OpenCVで物体検出する方法について
返信数: 6
閲覧数: 2225

Re: OpenCVで物体検出する方法について

何をしたいのかもっと具体的詳細を書かれたほうがよいかなと思います. 問題設定というか. あと,これって何かの課題なのでしょうか? >ライントレース というと床に引いてある線をロボットがセンサで検出して 線の上を移動していくやつを思い浮かべるのですが,そういうことをやられているのでしょうか? センサとしてカメラを用いているということであれば,取り付け位置やカメラの姿勢などによって 直方体が撮影画像上でどのような見え方になるかが異なるでしょうし,いろいろと状況が不明だと 誰も何も答えられない気がしますよ. >ラインを消して… というあたりもどういうことかわかりません. (どこから(何から)ラインを...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: クラスを配列化して operatorでベクトル演算させたい
返信数: 3
閲覧数: 576

Re: クラスを配列化して operatorでベクトル演算させたい

どういうことに困っているのかいまいちわからないのですが
53行目を単純にタイプミスされているのではありませんか?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: コマンドラインで入力したアルファベットの文字列の処理(課題)
返信数: 6
閲覧数: 571

Re: コマンドラインで入力したアルファベットの文字列の処理(課題)

各文字が大文字か否かが判定できるならば
やることは前回と大差ないのでは?

結果格納バッファを作って,大文字でない文字だけを選んでコピーしていけばよいでしょう.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: コマンドライン引数の文字を逆順に表示する(課題)
返信数: 5
閲覧数: 1905

Re: コマンドライン引数の文字を逆順に表示する(課題)

いまいち意味がわかりませんが, 一旦,「反転した文字列を用意」することが指定されているのでしょうか? だとしても,1文字ずつ反転作業を行う手順 はそのまま使えると思いますが. //文字列SrcStrを反転した文字列を作成して表示する void ReversePrint( const char *SrcStr, int length ) { char *ResultBuff = (char*)malloc( (length+1) * sizeof(char) ); for( int i=0; i<length; i++ ) { ResultBuff[i] = SrcStr[ length - 1...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: コマンドライン引数の文字を逆順に表示する(課題)
返信数: 5
閲覧数: 1905

Re: コマンドライン引数の文字を逆順に表示する(課題)

うーん,逆に「表示する」だけならば
文字列をコピーしたりとかする必要はないと思います.
もっと簡単に考えてみてはいかがでしょう.

コード:

char str[ 6 ] = "01234";  //こんなのがあったとして…

//前から1文字ずつ順に表示
for( int i=0; i<5; i++ )
{  printf( "%c", str[i] );  }

//じゃあ,逆順に表示するなら?
for( i=???;  i>=0;  i-- )
{  printf( "%c", str[i] );  }
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 【雑談】境界はどこか?
返信数: 7
閲覧数: 1158

Re: 【雑談】境界はどこか?

オフトピック
「ゲームプログラミング」という話ではありませんが,
単に「プログラミング」と観点で考えると… なんていうかな,

たとえば,”騙し絵”ってありますよね.
実世界ではありえない立体物がそれらしく描かれているやつ.それを見たときに
「○○が××だからこの部分がおかしいのだ」っていうのが具体的にわかるよりも前に
なんとなく「何か変だな」って思う.

コードでも同じように,上級者というか熟練者は それを見たときに
問題のある,あるいはありそうな箇所 というのを「ん?」って感じることができるような,
そんな感じの特殊能力?を習得されているような気がします.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 衝突判定…
返信数: 38
閲覧数: 3466

Re: 衝突判定…

現在採られてる方法の上での問題現象の解決 を望まれているのだと思いますので, 現状の方法が  他者には煩雑に見えたり,違う方法の方が良いのではないかと思われたり,  あるいは根本的に間違っているのではないかと捉えられたりすること については この際,どうでもいいこととして脇においておくことにしたとして…… 何かしらの修正作業が行われたのですから,まず現在最も情報をいただきたい事柄は 「それで 直ったのかまだなのか? まだだとしたらどういった状況の変化なり改善があったのか?」 という点です. 私のNO.25の書き込みで言えば,(2)の項目ですね. (1)と(3)についてはまぁお答えいただいている...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: OpenCVのcvFindContours関数を使って取り出した輪郭を処理をする方法
返信数: 8
閲覧数: 7042

Re: OpenCVのcvFindContours関数を使って取り出した輪郭を処理をする方法

まず,cvSetImageROI()によるROI指定 ということであれば,(傾いていない : X軸,Y軸に辺が平行な)矩形領域しか扱えないはずです. なので,一般的な輪郭形状をROIとして用いることはできません. で,リンク先の絵をみたところ,どうやら輪郭は矩形っぽいので, その状態なのであれば,輪郭形状を取得して一度矩形データに直せば良いかと思います. cvFindContour()の結果から,輪郭の頂点群座標を得る方法は 「cvApproxPoly cvFindContour CV_GET_SEQ_ELEM」 とかで検索すると見つかると思います. 効率とかを気にしなくてよいのであれば, 最...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 衝突判定…
返信数: 38
閲覧数: 3466

Re: 衝突判定…

>私は,最初に示されたコードの状態で既に,画像と判定枠との関係が >>2013年11月08日(金) 01:21 >であなたが示した画像(の左側の絵)のようになっているのではないかと思っていました. と書いていますから 私はそう思っている,ということです.ソフト屋さんとは意見が異なる状況ですね. ただ,私は「コードを見て」そう思っているだけです. コードを実際に走らせて値を見て検証しているわけではありません. (そもそも走らせることができる状況でコードが示されていませんし.) それに対して, あなたは実際に変数の値を確認した結果を踏まえて 私の言っていることを否定しているはずですから,その純然た...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 衝突判定…
返信数: 38
閲覧数: 3466

Re: 衝突判定…

>四つありますから、式が。 >ただ、明らかにおかしかったものが混じっていたわけです。 4つともコピペしてきて見比べていたのですが,気づくことができません. 4つのうちのどれが おかしかったもの だったのでしょうか. //修正前(No.1より) (*it)->getposX() + ((*it)->getimage_w() + (*it)->getbounds_w())/2 //(1) (*it)->getposX() + ((*it)->getimage_w() - (*it)->getbounds_w())/2 //(2) (*it)->getposY() + ((*it)->getimag...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 衝突判定…
返信数: 38
閲覧数: 3466

Re: 衝突判定…

No.17の >・Y方向については「プレイヤの中心」に対応するグリッドの座標を求めている については私が勘違いしていました. 失礼しました. 最後に,一応私の想像を書いておきます. int j =(int)((*it)->getposX())/MAPCHIP_SIZE; //←これがまちがい ↓ int j =(int)((*it)->getposX() + ( (*it)->getimage_w() - (*it)->getbounds_w())/2 )/MAPCHIP_SIZE; //iの導出と同じようにする //iについては,本来は複数グリッド対応をされているらしいので,実際の記述は不明...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 衝突判定…
返信数: 38
閲覧数: 3466

Re: 衝突判定…

ごめん,よくわからないのだけど… 私は,最初に示されたコードの状態で既に,画像と判定枠との関係が >2013年11月08日(金) 01:21 であなたが示した画像(の左側の絵)のようになっているのではないかと思っていました. 最初の式 (*it)->getposX() + ( (*it)->getimage_w() + (*it)->getbounds_w() )/2 修正されたという式 (*it)->getposX() + ( (*it)->getimage_w()/2 ) + ( (*it)->getbounds_w()/2 ) 私には /2 が展開されただけに見えるのです. >4+8÷2...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 衝突判定…
返信数: 38
閲覧数: 3466

Re: 衝突判定…

「複雑」とか「面倒」とかいうのはまぁ最終的には主観でしょうし, ご自身がそう思われないのであれば,こちらとしては実際 *わりとどうでもいい* ので, それよりも以下について明確にしてほしいところです. (1)式を修正したとのことですが,どこを見ればそれがわかるのでしょう?  NO.1, No.2あたりのコードが修正されたのでしょうか.  具体的に何が変わったのですか?  元がどうなってて,それをどうしたのか というのが読み取れる形にしておかないと  話がわからなくなってしまいます.  式について解説されたようですが,それは元の式について? 修正後の式について?  #元の式の状態でも その説明通...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 数値型の最小値を得る方法
返信数: 5
閲覧数: 1040

Re: 数値型の最小値を得る方法

なるほど! この方法はシンプルで良いですね.
ありがとうございました.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 衝突判定…
返信数: 38
閲覧数: 3466

Re: 衝突判定…

あと,↑の話に関連して,このコード部分でのiとjの導出方法が気になります. int j =(int)((*it)->getposX())/MAPCHIP_SIZE; int i =(int)((*it)->getposY() + ((*it)->getimage_h() - (*it)->getbounds_h())/2-1)/MAPCHIP_SIZE; ・Y方向については「プレイヤの中心」に対応するグリッドの座標を求めている ・X方向については「左移動時だから」ということで,「プレイヤの左側辺」に対応するグリッド座標を求めている? のかな,と漠然と思うのですが,これだと ・前述のとおり,やは...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 衝突判定…
返信数: 38
閲覧数: 3466

Re: 衝突判定…

>「座標を真ん中で持つこと」自体が争点ではなく, >当たり判定の計算に際して,本来関係ないはずの画像サイズが用いられているという点が >指摘されているのだと思います. と書いたのですが… 私が捉え方を間違っているのでしょうか. 「座標を中心で管理しなくてはならない」と言われているわけではない と思います. 「中心で管理すれば複雑さが軽減される」と言われているわけで,言い換えれば, 複雑さを緩和する方法の例 として 中心座標を持つ という方法が挙げられているに過ぎないものと思います. あるデータの座標を,どこで持つか は自由でしょう. いろいろなやり方が考えられます. たまたまそれが 画像描画に...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 衝突判定…
返信数: 38
閲覧数: 3466

Re: 衝突判定…

>あ、すみません、実際はプレイヤのサイズは16×16より大きくなります。

大きくなるなら なおさら複数のグリッドとのチェックが必要になるように思います.


(繰り返しになっちゃうけど)
「座標を真ん中で持つこと」自体が争点ではなく,
当たり判定の計算に際して,本来関係ないはずの画像サイズが用いられているという点が
指摘されているのだと思います.

「getposX(),getposY()で得られる「何らかの座標」と,
 当たり判定を決めるデータ
 の2つだけで判定処理するべきでしょ,表示の都合とかこの場所では関係ないわけだし」
という.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 偶数か奇数かを判定するプログラムなんですがエラーがでます・・・間違え箇所がわからないのでおねがいします。
返信数: 2
閲覧数: 762

Re: 偶数か奇数かを判定するプログラムなんですがエラーがでます・・・間違え箇所がわからないのでおねがいします。

なんというエラーが出たのか書きましょうよ.

とりあえず貼られたコードでは,下から2番目の括弧が他と違うようですよ?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 衝突判定…
返信数: 38
閲覧数: 3466

Re: 衝突判定…

「画像と判定は別」という扱いなのに,計算に用いるデータが画像依存というのはどうなんでしょう?
ということだと思います.

ところで,
障害物の有無は16x16のグリッドサイズで設定されているのに対して,
プレイヤはそれとは関係なく(最低でも画素単位で?)移動できる という話なのだと思うのですが,
プレイヤの判定サイズがチップと同じ16x16であれば,
「プレイヤの左側」をチェックするのに 2つのグリッドを見なければならないように思うのですが,違いますか?

コード:

90度回転してるけど… ↑方向が「左」だとして,
  ■■
   □
みたいな状況とか考えると.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 数値型の最小値を得る方法
返信数: 5
閲覧数: 1040

Re: 数値型の最小値を得る方法

そんなものがあったのですね.
ありがとうございました.

ちなみに「C++11はダメ」とか言われた場合には,
私が↑で書いたようにやるしかないのでしょうか.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 数値型の最小値を得る方法
返信数: 5
閲覧数: 1040

数値型の最小値を得る方法

●知りたいこと C++で数値型 (組み込み型というのかな? {unsigned char, char, ..., int, ..., float, double} ) の取り得る最小値を得る定石的な方法. ●現状 std::numeric_limits<>::min() の返す値の意味が整数型と浮動小数点数型とで異なっているために, 数値の型をテンプレートとした関数の中などで,その型の最小値が欲しい場合に, template< class T > inline T GetMinVal(){ return (std::numeric_limits<T>::min)(); } template<>...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ソートについてなのですが・・・
返信数: 13
閲覧数: 1039

Re: ソートについてなのですが・・・

>ソートの部分を関数void sort(int ab[],n)を利用して作らなければならなくて

既にソート処理の関数が用意されているなら
あとは呼ぶだけなのでは…??

とりあえず課題であれば,可能ならば課題の内容全てが分かる形の方が(誰かが)答えやすいと思います.
さらに,「現在どこまできていて,どこができていない」みたいなのをコードで示すと良いかと.

#フォーラムルールにコードの部分をどう書けばいいかなどが書かれているので目を通してください
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 自炊した書籍の歪みを補正したい
返信数: 24
閲覧数: 8665

Re: 自炊した書籍の歪みを補正したい

なぜリファレンスを見ないのでしょうか.
dst(x,y)<-src(mapx(x,y),mapy(x,y))
という感じでわかりやすく説明されているのですが.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 自炊した書籍の歪みを補正したい
返信数: 24
閲覧数: 8665

Re: 自炊した書籍の歪みを補正したい

スキャナではなくてカメラで撮影されているのですね. (とりあえず台形が気にならない程度に真正面方向から撮影する という選択肢は無いのだろうか?) 画像の状況を知らないので,ちょっとずれたことを言っているかもしれませんが, カメラ視点位置が本の上空(カメラ位置から 本表面を含む平面 に垂線を下ろしたときに,垂線と面との交点が本領域内にある) な形で取れば… 撮影対象ページの4辺に関して, (1)ページの上下エッジは,撮影対象ページの下に重なる他ページの影響を受けずに取れると思うのです. (2)背表紙側のエッジはおそらく照明を調整できれば ほぼ直線として観測できる.  あるいは陰ができて直接観測で...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: if else ifについて
返信数: 7
閲覧数: 562

Re: if else ifについて

(実際に動かしてみればいいのに…)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 構造体のlistでの条件比較
返信数: 13
閲覧数: 1229

Re: 構造体のlistでの条件比較

ラムダ式使わない なら,

コード:

//こんな関数を用意して…
bool IsEq( const A &lhs, const A &rhs )
{  return ( lhs.m_Name == rhs.m_Name );  }

//それを使う
Hoge.unique( IsEq );
のように書けばよいかと.
あと,リストのデータ並びがunique以前に m_Nameの並び順でソートされてないとうまく削除できないと思います.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 異なる種類の敵はクラスを分けるべきか
返信数: 9
閲覧数: 3071

Re: 異なる種類の敵はクラスを分けるべきか

どっちの方が{良いか,便利か}ではなくて, メリットデメリットみたいなこと という話に関してですが, 2.の方法のデメリットとして,単純に「コード書くのが面倒そう」とか思いました. 例えば,敵の種類による違いが{移動方法,攻撃方法,鳴き方,ごはんの食べ方}の4種類であって, それぞれの要素が2パターンずつある場合,最大16通りの敵の種類が作れるけど, 2.の方法を採って,仮に敵の種類を全部クラスで分けるとしたら 16個のクラスを書かないとならない. 移動と攻撃と鳴く方法は一緒だけどご飯の食べ方だけがちょっと違う種類 を用意するために 新しいクラスを作らなければならない というのは面倒そう. あ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 自炊した書籍の歪みを補正したい
返信数: 24
閲覧数: 8665

Re: 自炊した書籍の歪みを補正したい

たいちうさんが示されたリンク先の絵を見たところ, スキャン画像中に本の上下輪郭が写っている. しかも背景が黒で,紙が白なので超はっきりしてる. こんな感じの絵であれば,少なくともY方向の補正はわりと簡単にできるんじゃないのコレ?とか思った. 本を閉じてる部分付近でのX方向の縮みの補正に関しても,その輪郭の傾斜量をヒントにできそうな予感. 全自動ではないにしろ,なんとなく「夢の中ではできた」感w 現実はそううまくはいかないのだろうけど. ところで,この話って安易に 「スキャンした絵の例を示す」とかすると著作権的な問題が発生したりしそうですね. そういった点でも 他人の助力を得にくい問題なのかもし...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 自炊した書籍の歪みを補正したい
返信数: 24
閲覧数: 8665

Re: 自炊した書籍の歪みを補正したい

cvRemapを使うだけのサンプルがあるのかどうか知りませんが, OpenCVのドキュメントを見れば使い方が自明な類の関数だと思いますよ. 最終的な補正処理=入力画像から出力画像を作る処理 に関してcvRemapを使うことは妥当だと思います. 画素値補間や領域外参照時処理等をこの関数に任せることで楽ができるでしょう. しかし,それ以前に「どう補正するのか?」という処理内容はあなたが決めねばなりません. ここで言う 補正 とは,入力画像から出力画像を作ることであり,より具体的に言えば, 「出力画像のすべての位置(x,y)に関して,画素値を入力画像の位置(x',y')からひっぱってくる」という処理...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 自炊した書籍の歪みを補正したい
返信数: 24
閲覧数: 8665

Re: 自炊した書籍の歪みを補正したい

例えば 紙の上に等間隔に点が格子状にならんでいるものをスキャンした場合, 理想的にはスキャン画像上でも等間隔の2次元格子的ならびになってほしいんだけど 実際は並びが歪むわけですよね. このとき,個々の点の像について,  現実の座標p → 理想の格子座標q という対応づけをできたら 補正できますよね. (要するに,点pでの補正量は (q-p) です.) (点の無い個所での補正量は近傍の点の補正量から補間するとかして) で,具体的な方法は 例えば No.3の方がおっしゃっているような方法が考えられますよね. あと,No.2で私が2段階にわけて考えたらどうの,と言っているのですが, (1)現実vs理...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: Objective-CでOpenCVを使ったテンプレートマッチングが…
返信数: 4
閲覧数: 3101

Re: Objective-CでOpenCVを使ったテンプレートマッチングが…

まず,どの時点で問題が起きているのかを 突き止めるべきでしょう. 例えば,当然以下のような事柄を一つずつ調べるべきです. (言われるまでもなく当然やられているのだと思うのですが,であれば,その結果の情報も提示した方が早いと思いますよ) (1)matchTemplateの結果である result_img を可視化したら,それらしい絵になっているのか?  →なってないなら,matchTemplate自体がバグっているか,引数がおかしいということ.  →なっているならminMaxLoc()以降がおかしいということ. (2)解像度をどうの という話をやらないで 素の入力画像とテンプレート画像を用いれば...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: マウスを押した瞬間だけ処理を実行したいのですが・・・
返信数: 7
閲覧数: 1505

Re: マウスを押した瞬間だけ処理を実行したいのですが・・・

>この状態ですとタイマースタートを左クリックした瞬間に
>「タイマースタート」と「タイトル画面」の処理が一緒に行ってしまいます。

これが「なぜそうなるのか」がご自身でわかっているのでしょうか.
それとも原因からわからない状況でしょうか.

例えば,クリックが「何回目」なのかを数えるとしたら
 ボタンが押された(1回目)→離された→再度押された(2回目)→…
ということを判定する必要があるでしょう.
 ボタンが押されている(1回目)→引き続き押されている(2回目)→…
みたくならないようにする必要がありますよね.
(マウスボタンを「押し続けている間」延々とカウント値が増えていくようでは困る)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 2次元配列 後、一歩なのです!!
返信数: 5
閲覧数: 778

Re: 2次元配列 後、一歩なのです!!

もう解決チェックがついてしまっているけど… 提示コードでは,f_max_2()とかf_ave()とかいう類の関数が (1)最大値とか平均とかを計算すること (2)計算した結果を(ある1つの決まった形で)表示すること という2つの仕事をまとめて行っているけど, (2)までが入りこんでいることによって,これらの関数を使いにくくなってしまっている,ということじゃないかな. (1)の仕事 と (2)の仕事 とを分離してしまうのがわかりやすいと思う. f_max_2()の仕事を(1)だけ(最大値を求めて,その結果をどこかしらに格納する)にして, あとは その格納されてきた結果を f_pout()内とかで...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 3Dライブラリ
返信数: 2
閲覧数: 592

Re: 3Dライブラリ

円というか球のことかな?

ポリゴンベースの方法であれば
物体を平面(三角形とか)の集合で表すから,曲面は小さな平面の集合で近似される.

なので,球を球として扱うことができる方法(ライブラリ)を使えば角ばらない.
例えばレイトレーシングとか.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: Luaをゲームに組み込むと何が出来るのでしょうか?
返信数: 4
閲覧数: 2376

Re: Luaをゲームに組み込むと何が出来るのでしょうか?

オフトピック
イベント処理内容に関するデータが定型的なフォーマットで用意可能なものであれば
それらは例えばCSVとか簡単なファイルで用意するとして,
Luaをイベントの開始判定とかに使うとか.
イベント開始条件が一辺倒であれば必要ないだろうけど,
「ユニットAとBが隣接した際であって,既に敵Cを倒していて,なおかつ味方Dが生存していて,しかもAがアイテムIを2つ以上保持しているとき」だとか
「ユニットAのLVがN以下の場合にのみ,地点(X,Y)から3マス以内で敵を倒したか,あるいは同範囲内にてユニットBをロストした場合」だとか
まぁとにかくイベントトリガに使うものが多種多様でフリーダムとか言う場合?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 遺伝的アルゴリズムの交叉方法
返信数: 7
閲覧数: 2293

Re: 遺伝的アルゴリズムの交叉方法

>ここで、親1の巡回路を(1,2,3,4,5)、親2の巡回路を(1,5,2,3,4)、子の出発都市を1とする。 >この時、(2,1,1,2)の順番で親の都市が選択された場合、子の巡回路は(1,5,2,3,4)となる。 各ステップを書き下すと… 子の出発都市を1 : 子の経路データ ( 1, *, *, *, * ) →c1 は,親1のデータ内で1の次にあるやつ → c1=2  →c2 は,親2のデータ内で1の次にあるやつ → c2=5  ↓ c2を選択 : 子の経路データ ( 1, 5, *, *, * )  →親1のデータ内で5の次は1だけど,1は既に子の経路に含まれているからその次の2 →...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 遺伝的アルゴリズムの交叉方法
返信数: 7
閲覧数: 2293

Re: 遺伝的アルゴリズムの交叉方法

私が問題自体を誤解しているのかもしれませんが, 都市間で経路が繋がってる箇所と繋がってない箇所があるんじゃないかと思うのですが, そんなシンプルな方法で新しい経路を作ってしまっても良いものなのでしょうか? (それともそうやって作った経路の中に,繋がってないルートがあった場合は,その経路を単に棄却するのかな??) >まとめると、親1の巡回路を(1,2,3,4,5)、親2の巡回路を(2,1,3,5,4)、子の出発都市を3とする。 >この時(1,1,2,1)の順番で親の都市が選択された場合、子の巡回路は、(3,1,2,5,4)となります。 どういうルールでその子の経路が作られたのか というあたりをも...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 助けて下さい!
返信数: 9
閲覧数: 1345

Re: 助けて下さい!

現在の課題ができなくてこまっている →じゃあ一個前の(above program)ならできるのでしょうか?  →できるなら今回のもほとんど大差ないと思うけどわからない点は何でしょう?  →できないなら…学校の課題ということであれば,何かしら教科書みたいなのとかがあると思うのです.   おそらく   >文字がASCIIコードで表されていると仮定すると、大文字と小文字の変換はアルファベットの文字コードに0x20をxorするとできます。   のようなヒント等は事前になにかしらの形で与えられているのではないでしょうか.   関連しそうなあたりを もう一度見返してみてはいかがでしょう.   で,その上で...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 射影変換について教えてください!!
返信数: 2
閲覧数: 816

Re: 射影変換について教えてください!!

「射影変換」で検索すれば解説がいくつか見つかると思うのですが.

仮に掲示板で訊くにしても
あなたがどこでどのように何がわからないのか,については誰もわからないのだから,
やろうとしていることを具体的に数式で示すとその結果sinだのcosだのが出てくる というのであれば
まずはその辺までの導出をあなたが示し,「ここまでわかるのだがここがわからない」というような
訊き方をしたほうがよいのではないでしょうか.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 最小値フィルタ
返信数: 8
閲覧数: 1375

Re: 最小値フィルタ

>即ち、これが定石的な方法
と言えるほど有名な本なのでしょうか.
しかし,なんか楽しそうな本ですね.
アルゴリズムの解説とかが詳しく述べられていたりするのでしょうか.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 自炊した書籍の歪みを補正したい
返信数: 24
閲覧数: 8665

Re: 自炊した書籍の歪みを補正したい

大量に処理するなら全て自動でやらないとダメということでしょうかね.

目的達成の道のりを

(1)とりあえず「人手で何かしらのオペレーションをしても良い」という条件下で
問題の歪を補正できる方法を考える
 ↓
(2)そのオペレーションに相当する部分を自動化する

という2段階にわけて考えた場合,
(1)と(2)のどちら側で困っている状況なのでしょうか.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 最小値フィルタ
返信数: 8
閲覧数: 1375

Re: 最小値フィルタ

自分の思いつきコードと No.6 のコードの処理速度を test16.txt で比較してみました. (N回連続して処理させると1,2回目あたり(?)は処理時間がすこしかかるようなので,  処理はループで15回連続して行い,6回目~15回目の10回の試行の平均を取った) No.6コード : 4.93035[ms] 私のコード : 5.14685[ms] …くやしいです! が,4096*4096とられていたバッファサイズを 512*512 に変更して見ると以下のように逆転. No.6コード : 3.66212[ms] 私のコード : 2.70538[ms] なんだろう? バッファへのアクセス順の違...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 最小値フィルタ
返信数: 8
閲覧数: 1375

Re: 最小値フィルタ

ありがとうございます. 縦と横で分けて2回走査するのは他のフィルタでもやる手ですね(なのになぜ自分は気づかなかったのか!?) ちょっと今現在時間とれないのですが 縦横に分離するのを基本方針として,必要時間が  セグメント木 < その他てきとーな方法 となるのかどうかなど,時間が取れるときに試してみようかと思います. #思いついているてきとーな方法:  ある(x,y)を中心とした領域内の最小値の座標が(x',y')のとき,(x+1,y)を中心とした領域内に(x',y')が含まれているなら  2領域の共通領域内の要素比較を再度やる必要はないから比較回数を減らせるかな みたいな.  (ワーストケース...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 最小値フィルタ
返信数: 8
閲覧数: 1375

Re: 最小値フィルタ

このくらいのことなら自分でもすぐ思いつくのですが, よりうまい方法が無いものか,と. void MinFilterB( int r ) { r = (std::max)( abs( r ), 1 ); //※rは1以上の整数 unsigned char *Buff = new unsigned char[W]; for( int y=0; y<H; y++ ) { const int top = (std::max)( y-r, 0 ); const int bottom = (std::min)( y+r, H-1 ); {//Buff[]に各X座標の幅1pixelな縦長領域の最小値を格納 ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 最小値フィルタ
返信数: 8
閲覧数: 1375

最小値フィルタ

●やりたいこと: 画像(2次元配列的に値が並んでいるデータ)上の各位置(x,y)に関して, その近傍 : 上下左右r[pixel]分,すなわち,(x,y)を中心とした 縦横共に r*2+1 サイズの領域 の最小値を求める(→その結果を別の画像の(x,y)に出力する) 最もシンプル(?)に書くと↓のような感じです. //※画像バッファは入力出力共にW*H画素分用意されているものとする const int W = 画像幅: const int H = 画像高さ; //画素アクセス inline unsigned char &SRC(x,y){ return 入力画像データバッファの(x,y)の位置...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: スピードメーターの円について
返信数: 13
閲覧数: 2006

Re: スピードメーターの円について

上に同じく,現状態がどうなってるのか読み取れないのですが,

そもそもSetDrawArea()というやつは 傾いた矩形領域を設定できるものではないと思うので
自前で回転した状態を作図するのには向いてなさそうに思います.(できなくはないでしょうが,その領域の計算がつらそう)

(前処理として無回転の絵を描いて用意しておき,その絵を毎度回転して描画するという話ならわかりますが.)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: C++/DxLibで大量の画像を管理する方法
返信数: 5
閲覧数: 2820

Re: C++/DxLibで大量の画像を管理する方法

なんかIDというのとハンドルというのが役割かぶってるような…? (DXライブラリ知らないのでダメかもしれないけど)こんな感じでどうでしょう? 画像のロードが必要な場合は常に GraphicManager::LoadAndRegisterImg() で行い, その戻り値を,描画する側で覚えておく. typedef int HGRAPHIC; //※DXライブラリの「画像ハンドル」はintなのかな? //画像管理クラス class GraphicManager{ public: GraphicManager(){} ~GraphicManager(){ ReleaseAllImg(); } pri...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: スピードメーターの円について
返信数: 13
閲覧数: 2006

Re: スピードメーターの円について

とりあえず回転しない場合は描けてるのでしょうか? できてるのであれば,あとはその描画の際に用いた座標を 回転量に合わせて変化させるだけの話でしょう. 三角関数がわかるなら回転させる方法は訊くまでも無い事柄だと思いますし, 「sin? cos? なにそれ美味しいの?」という状態なのであれば説明するのは難しいし… [追記] …っていうか,その元ネタのリンク先で三角関数つかってるハズだよな… ということで念のため確認したら使ってたので,少なくともメータの赤線を書いている方法は理解されているのであれば 赤線群を回転させるのは簡単な話ですよね? で,今回やりたいことが 赤線ごと回るのか,円弧だけ回るのか...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: スピードメーターの円について
返信数: 13
閲覧数: 2006

Re: スピードメーターの円について

完全な円を描いたあとで,不要な部分を背景色で上書きするのではダメですか?
いらない部分を矩形で塗りつぶしとか.
線の切れ目を赤線と同じ角度の斜めにしたいなら三角形で.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 玉の衝突判定について
返信数: 4
閲覧数: 1405

Re: 玉の衝突判定について

法線を持った点群ですか…

生成が楽そうだし,当たり判定も難しいこと考えなくていいし,判定計算は軽いし
いいですね.

点の配置が疎すぎると 2つの点の間に玉がはまる みたいなことが起きそうなので
滑らかに転がる みたいなのをやるためにはそれなりに密な点群が必要そうですが…
玉の位置に合わせて動的に補間とかすればその点も問題ないのかな.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 文字幅について
返信数: 6
閲覧数: 1055

Re: 文字幅について

判定の実装が{つらい/面倒/そこまでしたくない/わからん}→「人間があらかじめ判定しておく」という妥協は……ダメ?

"aaaあああiiいいい9"
 ↓ 手動でこう書いちゃう
{ "aaa", "あああ", "ii", "いいい", "9" } (+最初の文字列が半角か全角かを示すboolか何か)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: マインスイーパーの上級がうまくいきません。
返信数: 14
閲覧数: 2150

Re: マインスイーパーの上級がうまくいきません。

私が大昔にマインスイーパを作ったときは確か↓のような感じでやった気がします. 例えば,マップにマスがN個あり,各マスをindex値{0~N-1}で表せるとする. このマップ上にb個の爆弾を配置する場合, (1)マスのindexの配列を作る  この配列の要素数はN-1.  (最初にクリックされたマスには爆弾を置けないので.  例えば,最初にクリックされたマスのindexが12番であれば,  配列の内容は{ 0~11, 13~N-1 }のように12番を除いたものになる.) (2)この配列をランダムにシャッフルする. (3)結果の配列の [0]~[b-1]までのb個の要素が表すマスに爆弾を置く とい...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: マインスイーパーの上級がうまくいきません。
返信数: 14
閲覧数: 2150

Re: マインスイーパーの上級がうまくいきません。

バグが解決したのかどうかはこちらからは基本的に知り得ないので,それはご自身で判断いていただくしかないかと. デバッグ時は,現象面からの判断だけだと原因もよくわからないままになってしまうので 本当に治ったかどうか結局はっきりしなくなってしまいます. 自信を持って「俺はこのバグを潰した」と言い張るためには, きちんとコードを追う他に,例えばログ等の証拠を収集して 「コードのこの箇所ががうっかり○○になっていた」→「その場合,××になってしまう」→「結果として△△になるため,そのようにバグっていたのだ」 「データ(ログとか)もそのことを物語っている」 みたく,起こっていた現象を理路整然と説明できるこ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: マインスイーパーの上級がうまくいきません。
返信数: 14
閲覧数: 2150

Re: マインスイーパーの上級がうまくいきません。

以上のことを確認してもわからない場合,

>dataはmallocした2次元配列でしょうか?
が真であるならば
dataの確保の部分とかを差し支えなければ提示されると良いかも?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: マインスイーパーの上級がうまくいきません。
返信数: 14
閲覧数: 2150

Re: マインスイーパーの上級がうまくいきません。

>爆弾の配置部分に時間がかかっているようで、
ということがわかっているなら,(printfとリダイレクトとかでさくっと)ログを吐いてみてはどうでしょうか?

例えば,
爆弾の配置箇所が決定するたびに
 1個目 x y
みたいなのを出力.
xやyがうっかり範囲外になってないか等を見るとよいかもしれません.


>pDoc->data[x][y]
これが実は data[y][x] として参照すべき,ということだったりとかは…しませんよね?
あと,
>pDoc->blocks
が pDoc->Data[][]のサイズと合ってないとか.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: OpenCVで瞬きの検出について
返信数: 1
閲覧数: 2595

Re: OpenCVで瞬きの検出について

うーん…卒研であれば先生方とかに相談した方がよいような気もしますが… とりあえずその手の話はある程度やられていると思うので文献を探されるのが早いかと思いますよ. [追記] これとか近そう. http://ci.nii.ac.jp/naid/110003673653 [hr] 適当に考えると↓のような感じとか. 被験者がカメラの視野範囲に対してどの程度(範囲,速さ)動くのかによると思いますが (極端な話,目の位置がフレーム外に出るかもしれない) 仮に,開眼時にそれなりの精度で >目の検出はできる のであれば,単純に それができないときが瞬きだと考えることはできませんか? 例えば… あるフレームで...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 龍神録15章でつまづきました・・
返信数: 14
閲覧数: 2456

Re: 龍神録15章でつまづきました・・

exeファイル名はおそらく RyuJin.exe だと思われ,Debugフォルダ内にできていると思うのですが,ありませんか?
storyH0.csvというファイルはとりあえず(そのプログラムが読むための正しい内容で)存在しているのですよね?

例えば
char fname[32]={"../dat/csv/storyH0.csv"};
これを↓仮にこう変えて
char fname[32]={"storyH0.csv"};

Debugフォルダ内にstoryH0.csvをコピーしてみてもダメですか?
オフトピック
何章がどうのという話はよくわからんので その辺把握している方におまかせ
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 龍神録15章でつまづきました・・
返信数: 14
閲覧数: 2456

Re: 龍神録15章でつまづきました・・

C言語がどうのという話ではなく,単にファイルパス(ファイルのありか)の話ですよ. ソースコード内で,プログラムが読み込むべきファイルのパスとして "../dat/csv/storyH0.csv" という指定しているわけですから,当然その場所にその名前のファイルが無いと読み込めないわけです. すなわち,プログラム実行時には,  (プログラムが当該ファイルロード処理に差し掛かった時点での)カレントディレクトリからの相対パスで ../dat/csv/ となるフォルダに  storyH0.csv という名前のファイルが存在する という状態を用意してあげなければならないということです. で,「そのような...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 玉の衝突判定について
返信数: 4
閲覧数: 1405

Re: 玉の衝突判定について

曲線と衝突判定する対象が玉(円かな)だけ なのであれば
真面目にやるなら 曲線の方程式 f(x,y)=0 に対して,
|f(x,y)| や f(x,y)^2 を曲線からの距離関数として使って判定すればいいのかな.

もし,図のような曲線を適当に近似して判定してもよいということなら
折れ線の他に,複数の円弧 で近似するというのも良いかもしれませんね.
オフトピック
(話によってはパクろう…)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 画面に表示されている内容を指定した角度で回転
返信数: 4
閲覧数: 972

Re: 画面に表示されている内容を指定した角度で回転

本当に
>画面
の内容なのであればPrintScreenキーを押したことにするとか
http://msdn.microsoft.com/ja-jp/library/cc364822.aspx
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: プログラマーについて
返信数: 5
閲覧数: 1267

Re: プログラマーについて

>プログラマってなったら大変なんですか?
はい

×過労で休む
○過労→休めない
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 辞書型人工無能?
返信数: 19
閲覧数: 4271

Re: 辞書型人工無能?

私の文章が誤解しやすい文章ですいません 「C++を勉強している 習得している」と誤解させてしまったみたいですね >DXライブラリを始めて3日で、C++の勉強は特にしていない こちらの方が今の私に正しい状況です…誤解させてすいませんでした という質問者側の状況に対して,サンプルとして提示するには厳しいコードなのでは… ある単語を完全に含む別の単語 がある場合,例えば "三毛猫" の他に "箱入り三毛猫" と "三毛猫(遺伝子組み換えでない)" の3種類を登録してあったら 2番目が知りたいのに1番目が出てきてしまったりとかしそうですね. 正しいのを見つけるには辞書内を全探索する必要があるのだろう...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 辞書型人工無能?
返信数: 19
閲覧数: 4271

Re: 辞書型人工無能?

では不肖私めが換わりにマジレスをば. まぁ言語は目標物を作るための道具ですから 目標物を作りながら必要な事柄を勉強していくのでも良いと思います. (とは言え,手を付けるためには最低限の言語の勉強はやはり必要でしょうけど) このトピックの話で言えば,重要というか難しいのはむしろ「実現方法(アルゴリズムというか)」を考えることだと思います. 自然言語的な”まともな受け答え”を作るのは超絶難しいと思いますので, 例えばユーザからの入力を ・名詞のみ(知りたい単語でググる感じ.「○○とは?」みたいな文章では訊かない) ・{みけねこ,三毛猫,三毛ねこ,…}の例みたく書き方がいろいろあると網羅が大変なので...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: openglの文字表示について
返信数: 2
閲覧数: 3112

Re: openglの文字表示について

glLoadIdentity()とかglRotated()とかglTranslated()とかの影響は,それらをコールした関数を抜けてもそのまま残っています. (これらの関数は OpenGL側が管理している(?)変換マトリクスを変化させるもので,その変換マトリクスの状態が保持されているから) そのコードで言えば,display()内のglRotated()とかの影響は,次回のdisplay()呼び出し時も生きているということです. 例えば64行目のglLoadIdentity()を,61行目のrender_string()の直前に持って来れば (文字の表示位置が所望の場所になるかどうかは別とし...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: オブジェクト間のアクセス方法
返信数: 9
閲覧数: 829

Re: オブジェクト間のアクセス方法

別に「こうしなければダメ」という決まりがあるわけではないので
好きな方法でやれば良いと思うのですが,
コードで示されたような方法でいくとしたら,私なら少なくともこう↓するかなぁ

コード:

class Bullet {
    Enemy* enemy;  //ターゲットだけを知っていれば良いのでは?
で,それはそれとして,こういう方法をとる場合だと,
指定されたターゲットの生存期間に関わる問題をどこで解決するのか?とかいう別の問題に頭を悩ませそうだから
個人的には,敵の消滅を知り得る層に管理してもらった方が見通しが良いような気もします.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 計算結果が振動する
返信数: 21
閲覧数: 2499

Re: 計算結果が振動する

>(beforeは一番上に表示されるテキストの位置になります。 >テキスト内容によって縦の行間を変化させる場合があるので、テキストの行数から >全体の縦の長さを求めることはできません。 >そのため、テキストの一番下の行位置と、前フレームで表示した一番上の行位置(before)の差分を求めることで >テキスト全体の縦ピクセル数およびスクロールバー移動時のテキストの移動量を計算しようとしています。) よくわかりませんが,この辺の理屈あるいは実装がバグっているだけな気がします. 単に表示スクロール量を計算するだけのことに対して謎のループ計算(?)が必要な意味がわかりません. 振動とか収束とかいう言葉...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: C言語の3次方程式
返信数: 12
閲覧数: 3453

Re: C言語の3次方程式

>実数解を以下のステップを踏むことにおり、数値的に求めよと書いてありました。
とのことですから,あれこれ想像で回答するよりも
まずはその指定されたステップとやらを確認された方が早い気が…

課題文(の一部だと思われる文面)を見た感じだと,課題としてやらせたいことは非常に初歩的なことで,
数値計算アルゴリズムの部分まで求めていない可能性もありそうですし.
(たとえばプログラムAのように,「ちゃんと答えに収束するような初期状態を与える」
といった類の前提条件があるのかもしれませんし.)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: MFC タブコントロールのOwner Draw Fixedについて
返信数: 13
閲覧数: 5883

Re: MFC タブコントロールのOwner Draw Fixedについて

>ASSERT(FALSE);
本当にあなたのコードにこれが書かれているのであれば,
Debug実行した際には,ここに到達した時点で
Debug Assertion Failed と言われるのは当たり前です.そうしろと書いたのだから.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: error LNK2001: 外部シンボル ""int 〇〇〇" (?〇〇〇@@3HA)"は未解決です。 と出ます。
返信数: 10
閲覧数: 2278

Re: error LNK2001: 外部シンボル ""int 〇〇〇" (?〇〇〇@@3HA)"は未解決です。 と出ま

オフトピック
ああ,その伏字部分って変数名の可能性もあるのか.
(変数の実体が無いとかいう謎なケースに出会ったことがないから関数だとしか思わなかった)
…と,先入観だけで不確かなことを書いてしまったのでNO.2は取り下げます.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: error LNK2001: 外部シンボル ""int 〇〇〇" (?〇〇〇@@3HA)"は未解決です。 と出ます。
返信数: 10
閲覧数: 2278

Re: error LNK2001: 外部シンボル ""int 〇〇〇" (?〇〇〇@@3HA)"は未解決です。 と出ま

あなたがコールしようとした関数の実装が存在しないということです.
何故エラーメッセージをわざわざ伏字にしたのかわかりませんが,
何らかのライブラリの関数を使っているのであれば,そのライブラリがリンクされるように設定されているか確認してください.

>インクルードは正しくできてる
ヘッダのインクルードとライブラリのリンク設定は別です.


↑内容取り下げます↑
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: C++ テンプレートのいろんな型を list に追加する方法
返信数: 10
閲覧数: 10067

Re: C++ テンプレートのいろんな型を list に追加する方法

>脱出ゲームのフラグ管理 という目的に対して良いかどうかは別として,勉強目的でいろいろこねてみるのはよいと思います. (フラグ管理なら,単にboolの配列的なものさえあればいいんじゃないかな?とか思いますが) なんでも放り込んでおけるlistなりvectorなりについては, それがどうにかこうにか実現できたとしても,それを使う側のコードがわりと苦しいことになるんじゃないかなー…と. 具体的には,”そのlistのN番目の要素が実際には何型のデータを保持しているのか?” をどうにかして そのlistの中身を利用する側の箇所で判断できないと,データを取り出せないわけです. 例えば今回enumで書かれ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ゲームプログラミングにおいての今の主流
返信数: 9
閲覧数: 8737

Re: ゲームプログラミングにおいての今の主流

> (DirectXを利用するなら)macでも使えない、(openGLを利用するなら)windousでは使えない、 コンシューマがどうとか知りませんが,とりあえず DirectXやOpenGLを使うこと  と,  C++が使えるか否か  については関連が無いように思うのですが…(?) ・DirectXをmacで使う手段があるのか知りませんけど,使えないのであれば  「macではDirectXは使えない」のであって,そこにはC++という単語が出てこないような… ・OpenGLについてはWindowsでも使えるし,何を指して言っているのか不明です. 何を言いたいのかいまいちわかりませんが, ゲーム...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ワールド行列の計算が怪しいので
返信数: 2
閲覧数: 2640

Re: ワールド行列の計算が怪しいので

オフトピック
>SetTransform()に渡す行列はW1~W3のどれになるのでしょうか?
DirectX関連の話の内容はわかりませんが
候補が3つしかないなら,実際にその関数に渡してみて,結果を確認すれば一目瞭然だったりしないのでしょうか?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: C++ テンプレートのいろんな型を list に追加する方法
返信数: 10
閲覧数: 10067

Re: C++ テンプレートのいろんな型を list に追加する方法

とりあえず Flag<int> と Flag< std::string > は「別の型」なので,そういう扱い方はできません. (その点は大丈夫でしょうか?) なので,このコードをコンパイル通すために頑張るのではなく,代替的な方法を考える方が良いと思います. 具体的に何を実現したいのかが明確になれば代替案を(誰かが)示せるかもしれません. (たとえば,テンプレートではなく union とか void* とかでどうにかするとか) 以下のような情報があると良いかもしれません. >いろんな型 これの種類って固定でしょうか? それとも本当に”任意の型”を考えておられるのでしょうか? あと,仮にそのリスト...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 【DXライブラリ】アクションゲームにメモ機能を実装したい
返信数: 4
閲覧数: 2871

Re: 【DXライブラリ】アクションゲームにメモ機能を実装したい

なんだろう?
キャラクターとかが動いているゲーム画面上に 唐突にマウスで何か線を引けて,
それがゲーム進行に伴う背景とかのスクロールに合わせて移動すればいい,という話なのでしょうか?

そういう話だとしたら,マウスでの描画の開始~終了までのマウス軌跡点群を
包括する矩形サイズの画像(BMPなのか何なのかわかりませんけど)的なオブジェクトを作成して,
あとは背景と同量だけ(STGとかでいうところの"地上物"みたいな感じで)移動させるようにすればいいのではないでしょうか.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 【雑談】美しいコードとは?
返信数: 16
閲覧数: 7040

Re: 【雑談】美しいコードとは?

>美しいコードの書き方

逆説的になりますが,
「コードを書くときに『これはどうにも美しい書き方では無い』と思わないような形に書く」
という感じでしょうか.
言い換えれば,「その時最善だと思う形に書く」…かな?
オフトピック
その時そうしたつもりでも,しばらく後に見ると
「なんだこのコードひどい」とか見えたりするけれども,それは自分がその時よりも成長しているからなのだと思うことにする.
で,それが起こらないコード,すなわち,後で「そういや書いたことあるなぁ再利用しよう」となったときに
特に美しくないコードだと思わなかったとき,そのコードは自分の中では「美しいコード」の部類に入るのかも?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 飛行機を目的地の方向に向けたい
返信数: 31
閲覧数: 6611

Re: 飛行機を目的地の方向に向けたい

座標変換側のテストについては,(コードまで読んでませんがテスト自体がバグってたりしないならば) 結果としては良いのではないでしょうか. このテストで用いたRとTが,あなたが本番側のコードで用いているそれらと同じデータ形式であれば 計算箇所をそのまま本番側に持って行っても使えるハズです. gifで示された側は 見るべき値は左上の水色の値で,これは 紫の線と緑の線 がなす角のcos()値になっているべき ということですよね? まず,今回は少なくとも,内積の値がcos(45度)の境界を越えた際に if(){}のスコープに入ったか入らなかったか,を見たいのだと思うのですが, gifを見た感じだと常に ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 飛行機を目的地の方向に向けたい
返信数: 31
閲覧数: 6611

Re: 飛行機を目的地の方向に向けたい

>これを証明するには回転行列の中身にもある平面上の三角関数の挙動について熟知していないといけませんよね >現在の向きから手計算で方向を算出しないといけないのでしょうか。 >ゲームを作る上で当たり前なのでしょうけど・・・ どういうふうにやるにしても 「こうなったら正しい」「正しい結果はこう」という比較対象がないと,動作が正しいかどうか判断つきませんよね. 手計算で簡単に求められるデータを作るのでももちろんOKですし 例えば,以下のようなテスト方法とかだと,全部PCが計算しますが「正しい結果」が既知ですよね. (1)まず,飛行機の位置T=(0,0,0)としてワールド原点に置き,回転Rも単位行列にし...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 飛行機を目的地の方向に向けたい
返信数: 31
閲覧数: 6611

Re: 飛行機を目的地の方向に向けたい

>これは以前の0.5と比較していたコードの時と根本的な解決になっていないような・・・ ならば根本的なことをきちんとひとつずつ確認していきましょう. まず,座標変換の問題の解決(DestinationDirectionがまともな値として得られていること)が 十分に確認されているのでしょうか? まだであれば, 正誤が確認できる状況(機体向きと目標点座標)で何通りか計算させて確実に求められていることを しっかりと確認してください. (以降の処理に対する入力なので.入力が間違っていれば話が進まない) で,そのうえで, >「目標への向きと現在の向きのなす角度が45度以上ある場合、if文のスコープに入る」...
by usao
6年前
フォーラム: サンプルを共有するコミュニティ
トピック: Catmull-Rom Spline
返信数: 0
閲覧数: 2951

Catmull-Rom Spline

参加しましたのでちょっとしたものを. Catmull-Rom Spline. 全ての制御点の上を通る曲線(の上の点)が簡単に求まるので便利. (数式とか曲線具合は検索すると見つかります.) //Catmull-Rom Splineの,ある区間(隣接する制御点間)のカーブ(上の離散点位置)を計算する. // //・制御点[i]~制御点[i+1]までの区間を,"i番目"の区間とする. //・両端の制御点位置での傾きは関数内でてきとーに決定されるが, // 自分で制御したい場合には,両端の外側にもう一個それ用のダミー制御点を用意すればできると思われ. // //< template引数 > // V...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 飛行機を目的地の方向に向けたい
返信数: 31
閲覧数: 6611

Re: 飛行機を目的地の方向に向けたい

>逆行列 回転マトリクスの逆行列,ということであれば,転置と同じ意味です (正しい文言(?)をググったところ「直行行列の逆行列は転置」だそうです.) >e-008 10のマイナス8乗です. その程度なら影響のほとんどない誤差と見なして良いのではないでしょうか. >内積 うーん,{内積や外積,行列の本当の基礎}くらいはさすがに勉強しないと 3Dのゲームを作るのは難しい(というか無茶な)気がしますが… (中学校か高校でやったと思うのですけど.) 【内積】 A・B = |A||B|cosθ ここで,|*|はベクトル*の大きさ,θはAとBがなす角です. また,内積はA,Bの成分から A・B = ax*...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: プログラムを起動してコールバックの取得方法
返信数: 1
閲覧数: 712

Re: プログラムを起動してコールバックの取得方法

オフトピック
(その相手先に尋ねればいいのに…)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ifまみれの移動制御をなんとかしたい
返信数: 24
閲覧数: 4407

Re: ifまみれの移動制御をなんとかしたい

>そこが悩みどころです。
あ,私の指摘は,「移動処理をどうすべきか」という方法論についてではなくて
あくまでも
「ifで書いてたときと結果が違うけど大丈夫?」(コードをきれいにする作業→動作が変わったらダメじゃない?)
という点についてです.本件のタイトル的に.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ifまみれの移動制御をなんとかしたい
返信数: 24
閲覧数: 4407

Re: ifまみれの移動制御をなんとかしたい

左と下が同時に押されたら
p.yが通常の2倍だけ変化しそうですが,それで動作としてはOKなのですか?
(ifで書いてた時と動作が違いそう?)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 2.ジャンプ処理 について
返信数: 10
閲覧数: 2726

Re: 2.ジャンプ処理 について

難しいところが何なのかがいまいちつかめてないのですが,

最初に「押した」を検知(ジャンプの開始)
→以降,「離した」ことを検知するまでは押されたままであると判断(ジャンプ高さがどうのという話を制御)
→前記「離した」ことを検知しないと,次回の「押した」を検知しない(連続でジャンプしない)

ということを単純にやれば良いような話ではないのでしょうか.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 質問です
返信数: 1
閲覧数: 824

Re: 質問です

なんか同じ質問が2つあるようですが,こっちを使いますか. とりあえず 「課題の類なのか,単に自分でやってみているだけなのか」 を教えてください. さて,現状のコードについてですが,このプログラムの問題点は「何もできていない」ことです. やりたいことの内容がいまいち不明瞭なのは置いといても, 「配列」「ソート」「コピー」などと言った単語が並んでいるのに対して そのどれもが実装されていないのは何なのでしょうか? 問題を (1)n*m個の掛け算九九みたいな値を一次元配列に入れる (2)その配列をソートする (3)「1個しかないなら」とかいう条件に見合うものを別の一次元配列にコピーする という3段階く...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 2.ジャンプ処理 について
返信数: 10
閲覧数: 2726

Re: 2.ジャンプ処理 について

リンク先のコードを見た感じだと,
(ジャンプと関係なくパッド操作でY座標を増減させることが可能なように見えて,その辺が謎というか意味不明なのですが,
 それはそれとして置いといてジャンプボタンの押下だけでの操作の話だとして,)
ボタンを押している長さでジャンプの高さが変わったりしそうには見えないのですが,実際は変わるのでしょうか?
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 飛行機を目的地の方向に向けたい
返信数: 31
閲覧数: 6611

Re: 飛行機を目的地の方向に向けたい

VTransform()というのをググってみたところ,以下のような変換みたいです. >戻り値.x = InV.x * InM.m[0][0] + InV.y * InM.m[1][0] + InV.z * InM.m[2][0] + InM.m[3][0] ; >戻り値.y = InV.x * InM.m[0][1] + InV.y * InM.m[1][1] + InV.z * InM.m[2][1] + InM.m[3][1] ; >戻り値.z = InV.x * InM.m[0][2] + InV.y * InM.m[1][2] + InV.z * InM.m[2][2] + InM.m...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 方向ベクトルと中心点間の距離
返信数: 3
閲覧数: 1490

Re: 方向ベクトルと中心点間の距離

その方向ベクトルの値 (0.71,-0.71 ) が間違っているだけではないでしょうか.
(その図では下に行くほどYが+なのだと思うのですが,
 方向ベクトルの矢印の向き的に考えて,Y成分が負の値というのは違いません?)
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: debugではバッチリ。releaseしたら不具合が発覚。
返信数: 10
閲覧数: 29165

Re: debugではバッチリ。releaseしたら不具合が発覚。

あと,その 個別キャラ というのがどういう風に互いに何かが異なるのか がわかりませんが,
場合によっては,その違いをStrategyパターンみたいな感じに書く方が向いていたりするかもしれません.
オフトピック
StrategyとBridgeとStateあたりの呼び分け方がどうにもはっきりしない私.
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: debugではバッチリ。releaseしたら不具合が発覚。
返信数: 10
閲覧数: 29165

Re: debugではバッチリ。releaseしたら不具合が発覚。

>例えば、usaoさんなら下記の状況時、どうされますか? 私なら…という話で答えますが, 原則というか: ・実装を持つクラスは自身の受け持つ仕事を責任をもってやる. ・クラスは「自身が管理する変数=自身の受け持つ仕事に必要なもの」のみを持つ. 以上から,あるクラスが自身の仕事の範囲に必要のない変数を持つことはありません. なので,その例で言えば  その基底クラス(キャラclass)が変数aを持つのは私的にはおかしいです. Aclass~Fclassに本当に共通な要素だけが キャラclass に含まれる候補になります. aはその中に含まれません. ●A~Dのクラスがその変数aを同じ意味で用いてい...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 飛行機を目的地の方向に向けたい
返信数: 31
閲覧数: 6611

Re: 飛行機を目的地の方向に向けたい

うーん,よくわからないけど, ”今まではライブラリがその辺の変換を中でやってくれていたのだけれど,  今回その変換を自前で計算しないとならなくなった” といった感じ…なのかな? >ControlAircraft->AxisX ・このControlAircraftというやつもライブラリ側が提供してくれているオブジェクトを指しているのでしょうか? ・そのメンバ AxisX とか GetPosition() とかは実際には何に相当しているのでしょう? GetPosition()が返す座標が,ワールド座標系で書かれた 飛行機の現在位置 であって, AxisX,AxisY,AxisZ が, ワールド座標...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: 飛行機を目的地の方向に向けたい
返信数: 31
閲覧数: 6611

Re: 飛行機を目的地の方向に向けたい

今何かを確認されているコードって他者が見てわかるものなのでしょうか? 貼られているコードで使われている関数とかが 一般的に使われているライブラリの関数か何かであって, 見る人が見ればわかる(つまり他者からアドバイスが得られる状態である)のであれば良いのですが. ところで,現状態は ワールド座標系とローカル座標系との間での座標変換 という基礎的な事柄がバグっているという話なのですか? (つまり本題とは関係ない,かなり前段階のところで問題発生中?) だとしたら 他のスレッドでやられているミサイルの話等でもそういったこと必要だと思いますし, (というか今までずっと3次元のSTGをコーディングされてこ...
by usao
6年前
フォーラム: C言語何でも質問掲示板
トピック: ランダムダンジョン自動生成に関して
返信数: 6
閲覧数: 3129

Re: ランダムダンジョン自動生成に関して

(なんかこのサイトが繋がらなくなっていたためか) 他に誰も回答されていないようですから,一つアドバイス(のようなもの)を. なんというか,処理の単純さに対してコードがごちゃごちゃしすぎているような印象です. 短いんだけどデバッグ時に追いにくそう,というか. 例えば,どうしても今のコードの問題点がわからないとか直せないとかいうことであれば, ひとまずそのソースコードは別に保存しておいて, 挙動が把握できる結果が各段階で出来上がっていく形に書きなおすとデバッグしやすいかもしれません. ・ある処理単位を関数にでもして,処理のINとOUTをきちっと決める ・処理フローをきちっと決定する&そのことをコー...

詳細検索ページへ移動する