検索結果 1883 件
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ReadConsoleOutput()の挙動について
- 返信数: 10
- 閲覧数: 5008
Re: ReadConsoleOutput()の挙動について
>GetStdHandleする前に、文字コードを切り替えてください。 ありがとうございます. SetConsoleOutputCP()を使うと とりあえず私の環境では 前述のコードが「所望の動作」になることを確認いたしました. (GetConsoleOutputCP()で調べてみたところ, プロジェクトの文字コードの設定に関わらずデフォルト状態だと 932 が返されていました.) SetConsoleOutputCP()に渡す引数の値は何ぞや?という点については, MSDNのSetConsoleOutputCP()の英語版の方 http://msdn.microsoft.com/en-us/...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ReadConsoleOutput()の挙動について
- 返信数: 10
- 閲覧数: 5008
Re: ReadConsoleOutput()の挙動について
>僕のマシンだと実行結果が異なります。
ご確認いただきありがとうございます.
MBCSならOKというわけでもないのですね.
「はみ出さないように指定する」しかないのでしょうか…
ご確認いただきありがとうございます.
MBCSならOKというわけでもないのですね.
「はみ出さないように指定する」しかないのでしょうか…
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ReadConsoleOutput()の挙動について
- 返信数: 10
- 閲覧数: 5008
ReadConsoleOutput()の挙動について
環境 : Win7 Home(64bit) , VS2012 Express Win32APIの ReadConsoleOutput() についてです. MSDNによると,この関数は, 情報を取得したい領域矩形をコンソールスクリーンバッファからはみ出す形に指定した場合でも よろしくやってくれる(はみ出さない部分についてのみの情報をくれる)ことになっているのですが, プロジェクトが「Unicode文字セットを使用する」設定になっているとうまくいかないようで困っております. 以下のコードを 「マルチバイト文字セットを使用する」設定でビルド→実行した場合だと ただしく はみ出さない部分についての情報...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 物理エジソンについて
- 返信数: 23
- 閲覧数: 11579
Re: 物理エジソンについて
どうしたいのでしょう?
秘密にしたいのであれば
>そのソフトに関するアイディアとか
を万人が閲覧できる掲示板に書くことはできないわけで,
秘密にしたい内容を書かないのであれば,検索されても別に問題ないわけで,
すなわち おかしな文字列置換を行う必要性もないわけで……
秘密にしたいのであれば
>そのソフトに関するアイディアとか
を万人が閲覧できる掲示板に書くことはできないわけで,
秘密にしたい内容を書かないのであれば,検索されても別に問題ないわけで,
すなわち おかしな文字列置換を行う必要性もないわけで……
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: C言語/英単語のソート/リスト
- 返信数: 9
- 閲覧数: 4835
Re: C言語/英単語のソート/リスト
単方向リストで最低限のコード例です. (エラーチェックとかは省略してます) typedef struct ListNode { struct ListNode *pNextNode; char *pDataStr; } ListNode; // ListNode *CreateNode( const char *pDataStr ) { ListNode *pNewNode = (ListNode*)malloc( sizeof(ListNode) ); pNewNode->pNextNode = NULL; { const int StrLen = strlen( pDataStr ) + ...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: C言語/英単語のソート/リスト
- 返信数: 9
- 閲覧数: 4835
Re: C言語/英単語のソート/リスト
「自分ではここまではできているが,ここがうまくいかない」とかいう形を提示して質問すると良いです.
>リストの使い方
→リストとは何ぞや?ということであれば,とりあえず検索してもらったほうが早いです.
>メモリの確保
→malloc(), free() について調べるとよいでしょう.
>リストの使い方
→リストとは何ぞや?ということであれば,とりあえず検索してもらったほうが早いです.
>メモリの確保
→malloc(), free() について調べるとよいでしょう.
オフトピック
100000個の英単語なファイルを用意するのがまず大変そうな課題ですね.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ハフ変換について
- 返信数: 10
- 閲覧数: 5062
Re: ハフ変換について
>ピクセルの集合から線を導くんですよね?ピクセルは何百とあるわけですがどの段階で線を抽出するのでしょう?
おおざっぱに言うと,
線の構成要素であろうと思われる点群について,
各点が 自身が所属し得る直線すべてに対して投票を行い
その結果として投票の多く集まった箇所を直線として検出しようというのがハフ変換です.
投票は 直線検出であれば 直線のパラメタを軸にとった空間上で行うので
投票量の多い箇所を見つければ,その段階で直線パラメタが得られるわけです.
本当にアルゴリズムの内容を把握されているのですか?
おおざっぱに言うと,
線の構成要素であろうと思われる点群について,
各点が 自身が所属し得る直線すべてに対して投票を行い
その結果として投票の多く集まった箇所を直線として検出しようというのがハフ変換です.
投票は 直線検出であれば 直線のパラメタを軸にとった空間上で行うので
投票量の多い箇所を見つければ,その段階で直線パラメタが得られるわけです.
本当にアルゴリズムの内容を把握されているのですか?
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ハフ変換について
- 返信数: 10
- 閲覧数: 5062
Re: ハフ変換について
オフトピック
>「可能性のある線」の検出条件は、複数のパラメータで調整します。
>このパラメータの意味がわかれば、プログラムの実装は難しくないです。
投票空間の様子から最終的な検出結果を決定する方法 をどうするのか?ということ自体も
結構難しい問題だとは思いますが……
入力画像毎に(何らかの意味で最適な)調整を手動で行っても良い,という話ならまぁ簡単なのかもしれませんが.
>このパラメータの意味がわかれば、プログラムの実装は難しくないです。
投票空間の様子から最終的な検出結果を決定する方法 をどうするのか?ということ自体も
結構難しい問題だとは思いますが……
入力画像毎に(何らかの意味で最適な)調整を手動で行っても良い,という話ならまぁ簡単なのかもしれませんが.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ハフ変換について
- 返信数: 10
- 閲覧数: 5062
Re: ハフ変換について
一体何で(どこで)困っているのかわかりません.たとえば,
画像入力 → … → 最終的に直線を得る
みたいな処理の順番を箇条書きにでもして,
そのうちどこまではわかってどの段階が不明なのか等を示されると良いのではないでしょうか.
画像入力 → … → 最終的に直線を得る
みたいな処理の順番を箇条書きにでもして,
そのうちどこまではわかってどの段階が不明なのか等を示されると良いのではないでしょうか.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 3乗の和で表せる数
- 返信数: 7
- 閲覧数: 6499
Re: 3乗の和で表せる数
内側のループはこんな感じで探索できないかな? int Cubic[22]; for( int i=0; i<22; i++ ){ Cubic[i] = i*i*i; } ... //※aとbのループは省略. //常に a<b であるものとする. const int a = 9; const int b = 10; const int AB = Cubic[a] + Cubic[b]; //cとdの探索.c<d とする. int c=1; int d=21; while( c<d ) { if( c==a ){ ++c; continue; } if( d==b ){ --d; continue...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: c言語の練習問題(デミリタ)
- 返信数: 29
- 閲覧数: 11033
Re: c言語の練習問題(デミリタ)
まず,%c云々の件については, >usaoさんの方法で%sではなく%cを使って最後に空白を出すと処理がシンプルかもしれません という文章を,その時点で既に "%d%c " ←%cの次に空白あり という意味で受け取っています.(…ので私のNo16の受け答えがあのようになる) 以上,「私はそこは間違ってないつもりです」という自己弁護. >usaoさんや、manaさんもそのように感じられたのでしょうか? 文章の受け取り方側の話については, 「その書き方はこう見える」みたいな私見を申し上げるのは避けさせていただきたく… 個人的希望(?)を述べさせていただくならば, 私の書いた内容について何かしらご指摘...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: c言語の練習問題(デミリタ)
- 返信数: 29
- 閲覧数: 11033
Re: c言語の練習問題(デミリタ)
>%sではなく%c
そっちの方がシンプルで良いですね.
(課題提出先が 末尾に空白ガー とか言い出すような相手だったら
fprintf( stdout, ... ) とかを持ち出して応戦しましょうw)
そっちの方がシンプルで良いですね.
(課題提出先が 末尾に空白ガー とか言い出すような相手だったら
fprintf( stdout, ... ) とかを持ち出して応戦しましょうw)
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: c言語の練習問題(デミリタ)
- 返信数: 29
- 閲覧数: 11033
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: c言語の練習問題(デミリタ)
- 返信数: 29
- 閲覧数: 11033
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: メンバ関数の引数に自分と同じ型を設定したい
- 返信数: 11
- 閲覧数: 6651
Re: メンバ関数の引数に自分と同じ型を設定したい
_Pos_t だとか _NAME とかいうのは予約語の規則に違反してますよ.
オフトピック
何やらこの掲示板では
typedef struct { ... } name; のように構造体を無名にする書き方をよく見かける気がしますが
そうすることで何かメリットあるんでしょうか? 扱い難いだけだと思うのすが.
typedef struct { ... } name; のように構造体を無名にする書き方をよく見かける気がしますが
そうすることで何かメリットあるんでしょうか? 扱い難いだけだと思うのすが.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: クラスを用いた連結リストの実装
- 返信数: 10
- 閲覧数: 5686
Re: クラスを用いた連結リストの実装
質問者様の文章内容を無理矢理想像すると… 例えばこんな形とかになっているんでしょうか? //[クラスA] class Node { public: //データのセッタ void SetData( const Data &rData ){ m_Data=rData; } //リストrListに自身を追加? void AddToList( List &rList ) //引数に「参照を渡す必要がある」 { rList.AddNode( this ); } //うーん… //リストrListから自身を削除? bool RemoveFromList( List &rList ) //引数に「参照を渡す...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ボスの体力ゲージを色で区別する方法について
- 返信数: 27
- 閲覧数: 14339
Re: ボスの体力ゲージを色で区別する方法について
>usaoさんが僕のコードを使ってプログラムを書いてみてくれませんか?
私は今回「あなた自身が試行錯誤と理解の結果,答えにたどり着くこと」を目的として回答しています.
なので,これはできかねます.そういうスタンスです.申し訳ないですが.
(常に一定のスタンスを取れているというわけではないですが…今回はそういう姿勢で回答している感じ)
私は今回「あなた自身が試行錯誤と理解の結果,答えにたどり着くこと」を目的として回答しています.
なので,これはできかねます.そういうスタンスです.申し訳ないですが.
(常に一定のスタンスを取れているというわけではないですが…今回はそういう姿勢で回答している感じ)
オフトピック
ダイレクトにコードを書くタイプの方も結構おられるようですので
そいう方向を期待したいならばそういう回答を待つ手もあるとは思います.
ただ,こう言っては何ですが,今回のお話はかなり簡単なものです(四則演算ですし)ので,ご自身で片づけてしまった方が早いかと思います.
そいう方向を期待したいならばそういう回答を待つ手もあるとは思います.
ただ,こう言っては何ですが,今回のお話はかなり簡単なものです(四則演算ですし)ので,ご自身で片づけてしまった方が早いかと思います.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ボスの体力ゲージを色で区別する方法について
- 返信数: 27
- 閲覧数: 14339
Re: ボスの体力ゲージを色で区別する方法について
>「重ねた感じで描画するコード が 現状うまく動いていない」これは違いますよ。 >重ねた感じで描画するのは出来ていますよ。それに、重ねたあとに緑のゲージだけ動いています。 おっと,用いた言葉がうまくなかったのでしょうかね. 私の投稿において 「重ねた感じで描画するコード」 と書いた部分は 「No.4やNo.6のような動作を実現しようとして書いたコード」(あなたがやりたいことを実装したつもりのコード) と読み替えてください. それで意味が伝わると思います. さて,それとは別にあなたのコードについて言えば, 赤い矩形は GraphicsDrawBox() 内で描画されており,その矩形サイズは引数s...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ボスの体力ゲージを色で区別する方法について
- 返信数: 27
- 閲覧数: 14339
Re: ボスの体力ゲージを色で区別する方法について
>一本というより、もう緑と赤のゲージを重ねた感じにしています。 えっと, その重ねた感じで描画するコード が 現状うまく動いていないのであって, なおかつ その修正方法あるいは何が間違っているのか,といったこと がわからない から困ってるんですよね? なので,その重ねた感じで描画する方法について考えるのが難しい のであれば, とりあえず最初は 実現が簡単な=わかりやすい 方法を実装し, それを足がかりにして徐々にその最終目標に向かう形に修正していく道筋でやってみたら (ひとつひとつ問題をクリアしていったら) わかりやすくて良いのでないですか? という提案をしているのですよ. 例えば...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ボスの体力ゲージを色で区別する方法について
- 返信数: 27
- 閲覧数: 14339
Re: ボスの体力ゲージを色で区別する方法について
うーん…段階を経て実現していく方が理解しやすいかもしれませんね. 例えばですが,今やろうとしている表示方法ではなくて… (1)一本の一色のゲージで表示する方式: HP100% ■■■■■■■■■■ ↓ HP60% ■■■■■■ ↓ HP10% ■ みたいなのであればご自身で実装可能でしょうか? (この段階ではゲージを一個の矩形で描画します) これが可能であれば,これを (2)50%を境に色分けして表示 HP100% ■■■■■ ■■■■■ ↓ HP60% ■■■■■ ■ ↓ HP10% ■ のように変更することはできますか? (この段階で矩形を2個描画する形になります) ここまでできるのであれ...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ボスの体力ゲージを色で区別する方法について
- 返信数: 27
- 閲覧数: 14339
Re: ボスの体力ゲージを色で区別する方法について
>ボスの体力ゲージを緑ゲージと赤ゲージの2色で区別する これって,↓のようなことがやりたいということですよね? HPが減っていくにしたがって, [hr] HPが100%のときはゲージは緑一色: 緑緑緑緑緑緑緑緑緑緑 ↓ HPがちょっと減ると減った分が赤で表示される: 緑緑緑緑緑緑緑赤赤赤 ↓ 例えばHPが50%まで減った段階でゲージは赤一色になる 赤赤赤赤赤赤赤赤赤赤 ↓ さらに減った場合はゲージ自体が短くなる: 赤赤赤赤赤 ↓ 瀕死: 赤 [hr] みたいな. で,ゲージの描画方法としては 赤の長方形を最初に描画して,その上に緑の長方形を重ねる形で描画する という方法を採られている,と. 故...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ボスの体力ゲージを色で区別する方法について
- 返信数: 27
- 閲覧数: 14339
Re: ボスの体力ゲージを色で区別する方法について
あまりにも唐突すぎて話の意味がわかりません. おそらく http://dixq.net/forum/viewtopic.php?f=3&t=14947 と話が続いているのでしょうけど, 新しいトピックなのに話が続いているのであれば,少なくともこういうリンクを示して 続きの話である旨を説明して然るべきではないでしょうか. 前回のトピックでは[解決]となっているのですが,今回の話はそれとは違うのでしょうか? で,本題に関してですが, >衝突判定処理のところで書いた方がいいかと思っています。 というのは,何のことですか?(「何を」衝突判定処理のところに書くという意味ですか?) ↑にリンクを示したトピ...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: csvファイルを入力する
- 返信数: 47
- 閲覧数: 25681
Re: csvファイルを入力する
ところで データがいくつあるかわからないファイルを読み込むときに vector<vector<X>>にpush_backしていくという方法は コピーが頻繁に行われそうなのが気になるのですが,その辺ってどうなんでしょう? 例えば読込時は list<list<X>> みたいなのに追加していき, 読込終了後に,実際に持ちたいデータ形式である vector<vector<X>> をそこから作るような形を取ったら データコピーは最後に全体を一度だけになるので そこらへんの効率が良いような気がするのですが,実際どうなのでしょう? (なんか便乗質問みたいになってしまいますが…) >玉井さん うっかりミスかと...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: csvファイルを入力する
- 返信数: 47
- 閲覧数: 25681
Re: csvファイルを入力する
>結局、この問題はいつ解決するの? ちょっと雰囲気的に質問者様が書き込みにくいのかもしれませんね. とりあえず質問内容への回答や指摘などを拾い集めてみました. [hr] (1)質問者様の提示された最初のコードにおいてresize()が無い場合 vector vssがサイズ0である状態. →読込時にいきなり存在していないi番目の要素vss にアクセスしている. コレがエラーの原因. vectorにはメモリを必要に応じてやりくりしてくれるメンバ関数群があるが, 逆に言えば,「それ以外の触り方」ではメモリを自動的にやりくりしてくれるわけではない,ということ →これに関しては動的に...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: マップの描画について
- 返信数: 8
- 閲覧数: 4151
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 物理エンジンの作り方
- 返信数: 7
- 閲覧数: 9850
Re: 物理エンジンの作り方
どこまで物理法則に則れば(?) 「物理エンジン」って呼べるのかわかりませんが,
いろんなことを誤魔化していいなら,とりあえずこのくらいのもの↓は割と簡単ですよ.
http://dixq.net/forum/viewtopic.php?f=78&t=14198
いろんなことを誤魔化していいなら,とりあえずこのくらいのもの↓は割と簡単ですよ.
http://dixq.net/forum/viewtopic.php?f=78&t=14198
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ゲームの動作確認をしていましたが、バグが発生・・
- 返信数: 11
- 閲覧数: 5341
Re: ゲームの動作確認をしていましたが、バグが発生・・
>バグ発生は、プレイ中におこりました。存在していない敵2と衝突したみたいになっているんです。 >しかもプレイヤーはダメージを受けていて、残機も2減ってしまっています。 これは プレイ中に見られた現象面(残機が2減る)から「敵2と衝突したことになっているようだ」と推測しているだけでしょうか. それとも,実際に敵2との衝突判定が真となる動作をしていることまでは確認できているのでしょうか. 前者のような状況であれば, まずは本当に ”敵2と衝突したと判定されたことによってその現象が起こっているのかどうか” を確認されると良いでしょう. (CollisionDragonEnemy2One()のifの中...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: SPボムマンのソースコードが見たいです
- 返信数: 4
- 閲覧数: 2311
Re: SPボムマンのソースコードが見たいです
オフトピック
>SPボムマン
というのが何なのか存じませんが,
>どうにかメールなどのやり取りでソースコードとゲーム本体を拝借できませんか?
という話は,製作者あたりに直接メールなりで問えばいいのではないでしょうか…
というのが何なのか存じませんが,
>どうにかメールなどのやり取りでソースコードとゲーム本体を拝借できませんか?
という話は,製作者あたりに直接メールなりで問えばいいのではないでしょうか…
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: csvファイルを入力する
- 返信数: 47
- 閲覧数: 25681
Re: csvファイルを入力する
連投すみません。EOFの位置についてコメントさせて下さい。 正しくは、 while (true){ if (fin.eof()){ break; } getline(fin, str); vss[i].push_back(str); ++i; } で、よろしいでしょうか? よろしくお願い致します。 最初のコードと特に動作に差が生まれないように思います. (eof()が,ループの初回でtrueを返すことはないから) 例えば空のファイルだった場合に,どのように動くかなどを調べてみるとよいかと思います. (eof()を使わない方法は既に示されていますが,この問いに関して誰も答えていないようなので…)
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: csvファイルを入力する
- 返信数: 47
- 閲覧数: 25681
Re: csvファイルを入力する
オフトピック
今回のみたいに数行しかないような箇所であれば,
今のコードとは別にもう一度書いてみる(当たり前だと思ってることは当たり前に書かれる)
→今のコードとdiffをとってみる(当たり前だと思ってた箇所が間違っていたのが発覚)
という手段も有効.
今のコードとは別にもう一度書いてみる(当たり前だと思ってることは当たり前に書かれる)
→今のコードとdiffをとってみる(当たり前だと思ってた箇所が間違っていたのが発覚)
という手段も有効.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 敵の画像を左右に回転させる方法について
- 返信数: 14
- 閲覧数: 6296
Re: 敵の画像を左右に回転させる方法について
>学校内で使っているライブラリならドキュメントがあるはずです。 >関数の使い方を確認してください 何でこれを先にやらないのでしょうか? そして何故そのライブラリが流通している世界にいる人間に訊かないのでしょうか? 何らかの事情により上記のようなことが不可能な立場におられるのだとしたら, とりあえずgsDraw2DPartEx()という関数の使い方がわからないのであれば, いきなり目的のプログラムに組み込むのでなく, 画像の回転表示に最低限必要な処理のみを書いたプログラムを別途用意して その上でこの関数の引数の意味などを探った方が早いと思います. ドキュメントで調べられないのであれば 仮にその関...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: クォータービューにおけるマス移動に要する時間
- 返信数: 6
- 閲覧数: 3063
Re: クォータービューにおけるマス移動に要する時間
それはそれとして,
既に表示上での上方向や右方向(データ上では斜め方向)に動くものがあって,その移動時間が1になっている
という状況にある中で,
その動きと「等速に見えるような」隣接マス間の移動時間が知りたい,ということであれば
√(1/2) とかで良いのではないでしょうか.
既に表示上での上方向や右方向(データ上では斜め方向)に動くものがあって,その移動時間が1になっている
という状況にある中で,
その動きと「等速に見えるような」隣接マス間の移動時間が知りたい,ということであれば
√(1/2) とかで良いのではないでしょうか.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: クォータービューにおけるマス移動に要する時間
- 返信数: 6
- 閲覧数: 3063
Re: クォータービューにおけるマス移動に要する時間
話の前提がいまいちわかりません.
「見かけの」上方向や右方向に動く時間を1とする ことの意味というか意義と言うか,が.
正方格子であるデータ上の隣接マス間の移動をどれだけの時間をかけて行う(見せる)か,は
適当に決めてしまえばいいように思うのですが,違うのでしょうか.
データの上で(X,Y)の位置にいるキャラクタを Pixel座標のどこに表示するか,
すなわち データ座標系→表示座標系 の変換が計算できるのなら,
移動中の(X+0.2, Y)みたいなデータ座標だって,Pixel座標のどこに表示すべきかは計算できますよね.
「見かけの」上方向や右方向に動く時間を1とする ことの意味というか意義と言うか,が.
正方格子であるデータ上の隣接マス間の移動をどれだけの時間をかけて行う(見せる)か,は
適当に決めてしまえばいいように思うのですが,違うのでしょうか.
データの上で(X,Y)の位置にいるキャラクタを Pixel座標のどこに表示するか,
すなわち データ座標系→表示座標系 の変換が計算できるのなら,
移動中の(X+0.2, Y)みたいなデータ座標だって,Pixel座標のどこに表示すべきかは計算できますよね.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: メンバ関数ポインタにメンバ関数のアドレスを代入したい
- 返信数: 7
- 閲覧数: 4757
Re: メンバ関数ポインタにメンバ関数のアドレスを代入したい
オフトピック
>なのでdrawをdrawAに、upDataをupDataAという名前に変えてprivateにし、
その A に何らかの意味(何かの単語の略とか?)があるのなら良いのですが,
そうでないなら もうちょっと変数名をちゃんとした方がいいのでは…とか.
(upData というのも綴り間違いな気もする)
その A に何らかの意味(何かの単語の略とか?)があるのなら良いのですが,
そうでないなら もうちょっと変数名をちゃんとした方がいいのでは…とか.
(upData というのも綴り間違いな気もする)
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 敵を360°回転させる処理について
- 返信数: 9
- 閲覧数: 4493
Re: 敵を360°回転させる処理について
(1)そのライブラリにそういった機能がないかどうかを調べる → あれば使う
(2)無いなら自前の方法でやる
というだけの話ですね.
(1)については,外界に情報を求めても無駄でしょうから,ご自身で完結してもらうしかないかと.
(2)であれば,回転した画像の計算方法自体は掲示板で訊くよりも検索した方が早いです.
特段難しい話でもないですから多くの解説が見つかるでしょう.
毎回表示処理時に回転画像の計算を行うことが速度的に問題になる場合には,
最初にNパターン用意して使うとかすれば良いんじゃないでしょうか.
(2)無いなら自前の方法でやる
というだけの話ですね.
(1)については,外界に情報を求めても無駄でしょうから,ご自身で完結してもらうしかないかと.
(2)であれば,回転した画像の計算方法自体は掲示板で訊くよりも検索した方が早いです.
特段難しい話でもないですから多くの解説が見つかるでしょう.
毎回表示処理時に回転画像の計算を行うことが速度的に問題になる場合には,
最初にNパターン用意して使うとかすれば良いんじゃないでしょうか.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: メンバ関数ポインタにメンバ関数のアドレスを代入したい
- 返信数: 7
- 閲覧数: 4757
Re: メンバ関数ポインタにメンバ関数のアドレスを代入したい
drawとupDataが ただの(普通の関数用の)関数ポインタとして宣言されています.
メンバ関数ポインタは
void (Enemy::*draw)();
のように宣言します.
あと,主題ではないけど,
メンバ変数であるdrawとupDataはprivateにすべきではないかな.
メンバ関数ポインタは
void (Enemy::*draw)();
のように宣言します.
あと,主題ではないけど,
メンバ変数であるdrawとupDataはprivateにすべきではないかな.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: マウスのx座標とy座標の2つを返り値とした関数を作りたい
- 返信数: 33
- 閲覧数: 15732
Re: マウスのx座標とy座標の2つを返り値とした関数を作りたい
>緑の矢印を,赤の矢印(をp倍に伸縮したもの)と青の矢印(をq倍〃)の和で表す,ということを考えたら
>pとqはそれぞれどんな値になるか? という話です.
これをもっと簡単に言うと,
矢印の根元の場所から,緑矢印の先端の場所 まで行きたいです.
しかし,直接移動可能な方向は,赤矢印(に平行な)方向と,青矢印(〃)方向 に限定されています.
では,
赤方向にどれだけ(赤矢印のp倍)進んで,その後青方向にどれだけ(青矢印のq倍)進めば 目的の位置に行けるでしょうか?
みたいなことですね.
>pとqはそれぞれどんな値になるか? という話です.
これをもっと簡単に言うと,
矢印の根元の場所から,緑矢印の先端の場所 まで行きたいです.
しかし,直接移動可能な方向は,赤矢印(に平行な)方向と,青矢印(〃)方向 に限定されています.
では,
赤方向にどれだけ(赤矢印のp倍)進んで,その後青方向にどれだけ(青矢印のq倍)進めば 目的の位置に行けるでしょうか?
みたいなことですね.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: マウスのx座標とy座標の2つを返り値とした関数を作りたい
- 返信数: 33
- 閲覧数: 15732
Re: マウスのx座標とy座標の2つを返り値とした関数を作りたい
ベクトルの話ができないと非常に説明し難い気がしますが, No.14のみけCATさんの図で言えば, 要は,その連立方程式を解く というのは, 緑の矢印を,赤の矢印(をp倍に伸縮したもの)と青の矢印(をq倍〃)の和で表す,ということを考えたら pとqはそれぞれどんな値になるか? という話です. p,qの満たすべき条件に関しては, 赤と青の矢印の成す角が直角な場合を考えてみるとわかりやすいかもしれません. 例えば,一方がX軸に,他方がY軸に沿うような場面ですね. さらに考えやすく,この2の矢印(ベクトル)の長さが共に1な場合を考えるとわかりやすいです. 緑の矢印というのは判定したい実際の点の座標(x...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: マウスのx座標とy座標の2つを返り値とした関数を作りたい
- 返信数: 33
- 閲覧数: 15732
Re: マウスのx座標とy座標の2つを返り値とした関数を作りたい
> RedVektor_X*p + BlueVektor_X*q = GreenVektor_X
> RedVektor_Y*p + BlueVektor_Y*q = GreenVektor_Y
この連立方程式を p,q について解かなければならないのであって,
この式をそのままコーディングすれば良いというわけではないと思いますよ.
> RedVektor_Y*p + BlueVektor_Y*q = GreenVektor_Y
この連立方程式を p,q について解かなければならないのであって,
この式をそのままコーディングすれば良いというわけではないと思いますよ.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: C言語初心者です。どうがご教授お願いします。
- 返信数: 12
- 閲覧数: 5728
Re: C言語初心者です。どうがご教授お願いします。
>#ifdef __cplusplusとわざわざ記載されているので、C++じゃなくてもコンパイルが通る仕様だと思います。
>つまりC++って関係ないのでは。
プログラムにCの部分とC++の部分があって
A.c と B.cpp の両方からこのヘッダをincludeして使うとかいうことではないでしょうか.
>実装コードはxxxx.cに記載されていました。
とのことなので,少なくともA_RETURN関数はCっぽいですね.
>つまりC++って関係ないのでは。
プログラムにCの部分とC++の部分があって
A.c と B.cpp の両方からこのヘッダをincludeして使うとかいうことではないでしょうか.
>実装コードはxxxx.cに記載されていました。
とのことなので,少なくともA_RETURN関数はCっぽいですね.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: C言語初心者です。どうがご教授お願いします。
- 返信数: 12
- 閲覧数: 5728
Re: C言語初心者です。どうがご教授お願いします。
ところで,どうしても自分で解読しなければならないのでしょうか…
まぁそこらへんは事情次第ですが,
C初心者 という状態で C++のコードを解析 というのはとても辛そうです.
(その関数が何をするものなのか?という情報すらもないようですし)
まぁそこらへんは事情次第ですが,
C初心者 という状態で C++のコードを解析 というのはとても辛そうです.
(その関数が何をするものなのか?という情報すらもないようですし)
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: C言語初心者です。どうがご教授お願いします。
- 返信数: 12
- 閲覧数: 5728
Re: C言語初心者です。どうがご教授お願いします。
>A_RETURNでは整数に変換?を行っているのでしょうか?
関数の宣言だけ見ても この関数の動作はわかりません.
動作が知りたいのであれば,実装コードの方を読むしかないと思います.
>int*、double*の意味がどうも分かりません。
これは ポインタ ですね.
参照されている「C言語入門」にもきっと書かれています.
関数の宣言だけ見ても この関数の動作はわかりません.
動作が知りたいのであれば,実装コードの方を読むしかないと思います.
>int*、double*の意味がどうも分かりません。
これは ポインタ ですね.
参照されている「C言語入門」にもきっと書かれています.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 子クラスの、親クラスのメンバ参照について
- 返信数: 5
- 閲覧数: 20121
Re: 子クラスの、親クラスのメンバ参照について
クラスの関係はともかく,メンバを操作するならインスタンスを指定する必要があります.
「どのOya型インスタンスの」メンバ変数にアクセスするの? っていうことですね.
「どのOya型インスタンスの」メンバ変数にアクセスするの? っていうことですね.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ほにゃらら.eneからほにゃほにゃらら.exeを起動できない
- 返信数: 24
- 閲覧数: 12006
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 3D空間の座標をスクリーン座標で取得
- 返信数: 3
- 閲覧数: 2463
Re: 3D空間の座標をスクリーン座標で取得
「スクリーン」と視点との配置関係が既知であると仮定すると,
まず,その「3D空間上の座標」と「視点の座標」(と,スクリーン)とを,同一の座標系で表し,
次に,「3D空間上の座標」と「視点の座標」とを通る無限直線を求め,
最後に,その直線とスクリーンとの交点を求めればよいのではないでしょうか.
(必要ならさらにその結果座標を「スクリーン座標系」に変換)
まず,その「3D空間上の座標」と「視点の座標」(と,スクリーン)とを,同一の座標系で表し,
次に,「3D空間上の座標」と「視点の座標」とを通る無限直線を求め,
最後に,その直線とスクリーンとの交点を求めればよいのではないでしょうか.
(必要ならさらにその結果座標を「スクリーン座標系」に変換)
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ビルドが止まってしまう
- 返信数: 8
- 閲覧数: 10358
Re: ビルドが止まってしまう
調べていたところ,ほとんど同じソースを利用しているプロジェクトが存在していたので Releaseビルド時間を調べたところ15秒ほどでした. そこで,そのプロジェクトと今回のプロジェクトとの間で設定を見比べたところ, 今回問題となっている側では 「SDLチェック」というのが有効になっている点が異なっていました. 試しにそれを無効にしてリビルドしてみたところ, 前記ご指摘いただいたインクルードパスを減らすこと込みで ビルド時間が約19.4秒に改善しました.(リンクの部分は体感では10秒くらいでしょうか) なんだかよくわからないのですが,とりあえずこれが主たる原因だったように見えます. 本件の主題た...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ビルドが止まってしまう
- 返信数: 8
- 閲覧数: 10358
Re: ビルドが止まってしまう
情報ありがとうございます. ご報告申し上げます. >この場合インクルードpathの問題だと思われます。 使用しているライブラリのヘッダがある場所と, プロジェクト直下を含む4カ所に散らばっているソース群のパスの 全5カ所のパスを以下のようにインクルードパスに指定していました.(指定順) ./ ← 直下 ./A ← サブフォルダ1号 ./B ← サブフォルダ2号 ../C ← ちょっと別のところにあるソース群 C:\.../include ← ライブラリ用 これを,とりあえず ./A, ./B, ../C にあるソースファイル群について,全てプロジェクト直下にコピーしてきて インクルードパスを ...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ビルドが止まってしまう
- 返信数: 8
- 閲覧数: 10358
Re: ビルドが止まってしまう
すみません.私,かなり無知であり 「パス1」とか「パス2」とかって何?状態です…
>[補足]検索パスを減らすか、パスの並びを変えれませんか?
これは 何を見ればよいのでしょう?
/LIBPATH のことなのでしょうか?(これは一個しか指定してないです)
>[補足]検索パスを減らすか、パスの並びを変えれませんか?
これは 何を見ればよいのでしょう?
/LIBPATH のことなのでしょうか?(これは一個しか指定してないです)
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ビルドが止まってしまう
- 返信数: 8
- 閲覧数: 10358
Re: ビルドが止まってしまう
>インクリメンタルリンクをOFFにしてみたらどうでしょうか。 設定を確認したところ インクリメンタルリンクはOFFな設定になっていました. …で,その後,一応ビルドできました. リンカの進行状況を全て表示させてみたところ 1> パス 1 を開始します。 1> /DEFAULTLIB:msvcprt オプションで処理を行いました。 1> /DEFAULTLIB:MSVCRT オプションで処理を行いました。 1> /DEFAULTLIB:OLDNAMES オプションで処理を行いました。 1> /DEFAULTLIB:glu32.lib オプションで処理を行いました。 1> /DEFAULTLIB:...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ビルドが止まってしまう
- 返信数: 8
- 閲覧数: 10358
ビルドが止まってしまう
環境:Win7 64bit, Visual Studio Professional 2012 Releaseでビルドすると出力ウィンドウに「コード生成しています。」という表示が出た段階から進まなくなってしまう現象に困っています. IDEのメニューから ビルド→キャンセル を選べば 「Microsoft Incremental Linkerは動作を停止しました この問題の解決策を確認しています...」 というダイアログが出て,しばらく放置するか キャンセルボタンを押せば ビルドの取り消しは可能です. このプロジェクトはDebugビルドだと普通にexe生成まで終わり,動作も可能です. クリーン,リ...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 関数などの辞書ソフト、又はお勧めの書籍はないだろうか
- 返信数: 4
- 閲覧数: 2493
Re: 関数などの辞書ソフト、又はお勧めの書籍はないだろうか
Visual Studio ならヘルプをオフラインにDLしてきて使うという方法があります. http://social.msdn.microsoft.com/Forums/vstudio/ja-JP/100386d7-6bb4-48e0-a658-a346c4cea0f1/visual-studio-2012?forum=vsgeneralja 今試してみたところ,とりあえずオフラインのヘルプで「printf」を検索すれば printf関数のリファレンスを見ることはできましたが, VisualStudioのコード上で printf と書いた箇所を選択してF1を押しても そのページには飛べず,(...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: FPS制御で指定したFPS+1になる
- 返信数: 5
- 閲覧数: 3762
Re: FPS制御で指定したFPS+1になる
おそらく30億光年くらい的外れかと思いますが,38行目の
>timeDiff=1000000*frameCount/fpslimit-(nowTime-prevTime);
の除算のあたりって大丈夫なのでしょうか
>timeDiff=1000000*frameCount/fpslimit-(nowTime-prevTime);
の除算のあたりって大丈夫なのでしょうか
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: C言語の開発環境を整えたいのですが、迷子に・・・
- 返信数: 10
- 閲覧数: 4594
Re: C言語の開発環境を整えたいのですが、迷子に・・・
差し支えないならば,何をしたいのか
・使いたい言語は何か(C? VB?)
・それでどんなことをしようとしているのか(というのがあると答える側の参考になるのかも)
を具体的に説明されれば詳しい方が答えやすいのではないでしょうか.
私は Win7なPCでC(C++)を趣味でやるのに Visual Studio 2012 Express を使っています.
とりあえず統合開発環境で日本語です.
他のものを使った経験がほとんどないので環境の良し悪しの比較とかはできませんが
VisualStudio関連はググると情報が多いという点が 初心者にはうれしいような気もします.
・使いたい言語は何か(C? VB?)
・それでどんなことをしようとしているのか(というのがあると答える側の参考になるのかも)
を具体的に説明されれば詳しい方が答えやすいのではないでしょうか.
私は Win7なPCでC(C++)を趣味でやるのに Visual Studio 2012 Express を使っています.
とりあえず統合開発環境で日本語です.
他のものを使った経験がほとんどないので環境の良し悪しの比較とかはできませんが
VisualStudio関連はググると情報が多いという点が 初心者にはうれしいような気もします.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: バイト数について
- 返信数: 4
- 閲覧数: 3556
Re: バイト数について
記事の読み手側としては
「何で10240という値なの? 9800じゃダメなんですか?」みたいなことについて考える必要は特に無いように思います.
必要なのはその値の役割(というか何の値なの?ってこと)を理解することで,
自分が作るものにおいて必要十分な容量を用意しさえすれば.
「何で10240という値なの? 9800じゃダメなんですか?」みたいなことについて考える必要は特に無いように思います.
必要なのはその値の役割(というか何の値なの?ってこと)を理解することで,
自分が作るものにおいて必要十分な容量を用意しさえすれば.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 多重定義?
- 返信数: 4
- 閲覧数: 2248
Re: 多重定義?
おそらく,複数のcppファイルに WinMain関数が書かれているのではありませんか? エラーの原因は,タイトルにもされているように多重定義でしょう. 同じ関数がたくさんあるのは困る ということですね. で,対処としては, ・「各段階」で毎回専用のプロジェクトを作る のが最もわかりやすいかと思いますが, 一つのプロジェクトの中でずっとやりたいのであれば, ・今コンパイル対象としたいcpp以外をコンパイル対象から外す という方法があると思います. ソリューションエクスプローラ上でcppファイルを右クリックしてプロパティを選ぶと 「ビルドから除外」という項目があると思いますのでこれを使います. 別...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: C/C++縦スクロールゲーム
- 返信数: 35
- 閲覧数: 14401
Re: C/C++縦スクロールゲーム
No20のコードにはとりあえずループが存在しているわけですが,それに対して
>ループしませんでした
とのことですから,
あなたの言う「ループ」とは,それとはまったく違うものであるということですよね.
だとしたら,(最初に説明を求められて,うやむやになってる感のある)
>敵の数をループ
という言葉の真の意味が,おそらく誰にも伝わってないものと推測します.
まず,自分にしか通じない言葉を繰り返すのをやめて
まともな日本語で説明するところから初めてみてはいかがでしょうか.
「数をループ」とは何か,
一体あなたは何を観測して「ループしていない」と言っているのか,
全体として何をしたいのか.
>ループしませんでした
とのことですから,
あなたの言う「ループ」とは,それとはまったく違うものであるということですよね.
だとしたら,(最初に説明を求められて,うやむやになってる感のある)
>敵の数をループ
という言葉の真の意味が,おそらく誰にも伝わってないものと推測します.
まず,自分にしか通じない言葉を繰り返すのをやめて
まともな日本語で説明するところから初めてみてはいかがでしょうか.
「数をループ」とは何か,
一体あなたは何を観測して「ループしていない」と言っているのか,
全体として何をしたいのか.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: PC買い替えにおけるメモリ要件について
- 返信数: 7
- 閲覧数: 3152
Re: PC買い替えにおけるメモリ要件について
現在使っている環境でどのくらいメモリを使っているかを見れば
多少は判断材料になったりしないでしょうか?
・どのくらい空き容量があれば快適なのか?
・OSが変わる影響
とかもわからないとダメかもしれませんが…
OSはWin7ですが,職場には4GBのノートで仕事してる人もいますよ.
問題があるのは メモリをクッソ使うソフトを使うときくらいな感じですね.
多少は判断材料になったりしないでしょうか?
・どのくらい空き容量があれば快適なのか?
・OSが変わる影響
とかもわからないとダメかもしれませんが…
OSはWin7ですが,職場には4GBのノートで仕事してる人もいますよ.
問題があるのは メモリをクッソ使うソフトを使うときくらいな感じですね.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタの操作でつまづきました
- 返信数: 14
- 閲覧数: 7266
Re: ポインタの操作でつまづきました
>本(の著作者)の名誉を傷付けるのはフォーラムルール違反ではないかと思います。 おっと,これは私のNo3の書き込み >amazonの内容紹介を斜め読みしてみましたが… >先に文法側をそれなりに固めた方が良いような予感も. に対してのご指摘でしょうか. (そうじゃなかったとしても)そのようにも読めてしまうので,意図したところをより明確に今一度書いておきますと, その本の紹介文を見た限りだと「考え方」みたいなことに関する本のようです. そういった考え方を学ぶのも有用だと思うけれども,そういった内容の本は, 少なくとも「基本的な文法的な面(No2で指摘されているような事柄とか)を把握したうえで」読む...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタの操作でつまづきました
- 返信数: 14
- 閲覧数: 7266
Re: ポインタの操作でつまづきました
本件の質問内容が
>27行目で、sの内容は 0 なので、実行時エラーにはならないのでしょうか?
であったので,それに関して「解決」したということなのでしょう.
で,それとは別に
>なにかNULLポインタと0とNUL文字がごっちゃになっている感じです。
とか
>配列のdelete
とかの,他の部分に関しては,
質問者様としては それらはこの場はそのままでOK ということなのか否か
という点が示されるとよいのではないでしょうか.
>27行目で、sの内容は 0 なので、実行時エラーにはならないのでしょうか?
であったので,それに関して「解決」したということなのでしょう.
で,それとは別に
>なにかNULLポインタと0とNUL文字がごっちゃになっている感じです。
とか
>配列のdelete
とかの,他の部分に関しては,
質問者様としては それらはこの場はそのままでOK ということなのか否か
という点が示されるとよいのではないでしょうか.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 学校での宿題でコードはかけたのですが正しく動作しません!ご教授をば・・・・
- 返信数: 51
- 閲覧数: 22011
Re: 学校での宿題でコードはかけたのですが正しく動作しません!ご教授をば・・・・
>上位桁の1の大群がなぜ入ってきているのかわからない状況です。
unsigned な値を signed として表示しているからではないでしょうか.
そのようにまともに動いているかどうかを変数を実際に表示等してみてデバッグしていくと良いですね.
unsigned な値を signed として表示しているからではないでしょうか.
そのようにまともに動いているかどうかを変数を実際に表示等してみてデバッグしていくと良いですね.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 学校での宿題でコードはかけたのですが正しく動作しません!ご教授をば・・・・
- 返信数: 51
- 閲覧数: 22011
Re: 学校での宿題でコードはかけたのですが正しく動作しません!ご教授をば・・・・
とりあえず問題文すら見てませんが
ファイルを開いては閉じるという行為をループで繰り返すのは何か間違っているような気がしますね.
ファイルを開いては閉じるという行為をループで繰り返すのは何か間違っているような気がしますね.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ポインタの操作でつまづきました
- 返信数: 14
- 閲覧数: 7266
Re: ポインタの操作でつまづきました
オフトピック
>参考書は プログラマの考え方がおもしろいほど身につく本 を使っています。
amazonの内容紹介を斜め読みしてみましたが…
先に文法側をそれなりに固めた方が良いような予感も.
amazonの内容紹介を斜め読みしてみましたが…
先に文法側をそれなりに固めた方が良いような予感も.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: シューティングゲーム ステージについて
- 返信数: 8
- 閲覧数: 7939
Re: シューティングゲーム ステージについて
「ステージが違ってもやることは同じ」っていう処理があるのではないでしょうか.動作の枠組みというか.
そういうのまでもを ステージ毎の別々の関数内に重複して実装している という意味なのであれば
多分ちょっと「{普通?一般的?効率的?}ではない」と言えるかと思います.
そういうのまでもを ステージ毎の別々の関数内に重複して実装している という意味なのであれば
多分ちょっと「{普通?一般的?効率的?}ではない」と言えるかと思います.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: カーソルが平行四辺形上にあるかどうかの判定
- 返信数: 4
- 閲覧数: 2431
Re: カーソルが平行四辺形上にあるかどうかの判定
ぬぅ,何かしら方法論が書かれてしまったか…
じゃあ答えてしまうと
長方形なら,
・上辺よりも下側にあって
・下辺よりも上側にあって
・左辺よりも右側にあって
・右辺よりも左側にある
という判定を行うことで目的を達成できますよね.
平行四辺形でも同じです.
ちょうど みけCATさんが図を貼ってくれているので,その図内の記号で言えば,
・辺ABよりも右側(…というのは正確な文言ではないが多分通じるだろう)で…
というのを4辺についてやればいいわけですね.
2つの三角形として判定するとかでもいいでしょう.
(3角形の内外判定方法とかは検索すればすぐに見つかると思います)
じゃあ答えてしまうと
長方形なら,
・上辺よりも下側にあって
・下辺よりも上側にあって
・左辺よりも右側にあって
・右辺よりも左側にある
という判定を行うことで目的を達成できますよね.
平行四辺形でも同じです.
ちょうど みけCATさんが図を貼ってくれているので,その図内の記号で言えば,
・辺ABよりも右側(…というのは正確な文言ではないが多分通じるだろう)で…
というのを4辺についてやればいいわけですね.
2つの三角形として判定するとかでもいいでしょう.
(3角形の内外判定方法とかは検索すればすぐに見つかると思います)
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: カーソルが平行四辺形上にあるかどうかの判定
- 返信数: 4
- 閲覧数: 2431
Re: カーソルが平行四辺形上にあるかどうかの判定
長方形だったらできるのでしょうか?
→できるとしたら どうやって判定するのでしょう?
→並行四辺形でも同じことをすれば判定できませんか?
→できるとしたら どうやって判定するのでしょう?
→並行四辺形でも同じことをすれば判定できませんか?
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 本格的なrpg マップ処理。
- 返信数: 86
- 閲覧数: 37549
Re: 本格的なrpg マップ処理。
オフトピック
そういう書き方的な面も重要ではありますが,本題である
>固定配列から動的配列
みたいな話とどちらを先にやるか,みたいなことをはっきりさせた方がいいような気がします.
リファクタリングが先か,内容が先か,みたいな.
(「良い書き方」で「内容側」を進めていけるのがベストではあるのでしょうけど)
>固定配列から動的配列
みたいな話とどちらを先にやるか,みたいなことをはっきりさせた方がいいような気がします.
リファクタリングが先か,内容が先か,みたいな.
(「良い書き方」で「内容側」を進めていけるのがベストではあるのでしょうけど)
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 本格的なrpg マップ処理。
- 返信数: 86
- 閲覧数: 37549
Re: 本格的なrpg マップ処理。
>マップの地形データ[h*w]・・・その名のとうりマップの地形、土台など >マップ上の設置物データ[h*w]・・・この前、トピックを建てた時に説明したように、物をおける用にしたいので、置いたものを保存する配列 >マップの当たり判定[h*w]・・・マップの当たり判定1は通れない、など >マップのイベント[h*w]・・・触れたらマップ移動とか、 >マップ上のモンスターのいる場所[h*w]・・・マップ上のモンスターのいる場所の記録するやつ(アクションrpgみたいなかんじ) >マップの画像データ[h*w]・・・マップチップの画像 こうしたいならそれをせっせと実装すればいいんじゃないですかね. 今のとこ...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: マウス操作の選択画面
- 返信数: 14
- 閲覧数: 6751
Re: マウス操作の選択画面
オフトピック
C → C++ という普通な(?)順で学ばれているのではなくて
いきなり C++ からスタートされているのでしょうか.
とりあえず
「C/C++でポインタとかnewとか抜きでゲーム作ってね」とか言われたら超絶的苦行でしかないと思うので
この機にしっかり把握しておくことをお勧めします.きっととてつもなく楽になるので.
いきなり C++ からスタートされているのでしょうか.
とりあえず
「C/C++でポインタとかnewとか抜きでゲーム作ってね」とか言われたら超絶的苦行でしかないと思うので
この機にしっかり把握しておくことをお勧めします.きっととてつもなく楽になるので.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: マウス操作の選択画面
- 返信数: 14
- 閲覧数: 6751
Re: マウス操作の選択画面
No.5に書かれたコードのように, 多態性を用いたりせずに単に同じC_MenuElement型の要素を固定数持つだけで良いのであれば, ポインタ配列とnewをわざわざ持ち出すことの利点は特にないと思います. (C_MenuElement型のサイズが巨大だとかいうわけでもないでしょうし, C_Menu型のコピーが問題になったりして,面倒になるだけでしょう.) コンストラクタで SetMenuElement() を全要素に対してコール等しとけばそれで済むのではないでしょうか. >自分でもポインタとnewを使えるようになりたいのですが、よく理解せずに使うのは危険らしいというのもあり・・ >今からで...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: c++の問題初級
- 返信数: 4
- 閲覧数: 2582
Re: c++の問題初級
実行結果が知りたいなら
実行してみたらよいだけなのではないかと…
実行してみたらよいだけなのではないかと…
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: STGの弾幕で綺麗な正円(半円)の書き方を教えてください
- 返信数: 2
- 閲覧数: 2301
Re: STGの弾幕で綺麗な正円(半円)の書き方を教えてください
弾幕がどうの という話はよくわかりませんが,
単純に円弧上の座標
(x, y) = (cosθ, sinθ)
とかをそのまま使えばよいという話ではない,ということなのでしょうか?
単純に円弧上の座標
(x, y) = (cosθ, sinθ)
とかをそのまま使えばよいという話ではない,ということなのでしょうか?
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: C言語の中央値を求めるアルゴリズムについて
- 返信数: 17
- 閲覧数: 34946
Re: C言語の中央値を求めるアルゴリズムについて
最初の質問文に対して答えるならば, a,b,cの3つの数について大小を比較する必要がある →とりあえず最初にaとbについて比較してみると… if( a>=b ) {//(1) a>=b の場合 } else {//(2) a>=bではない,すなわち a<b の場合 } この比較だけではまだ答えはわからないので,さらに cを絡めた比較を行ってみる まずは(2)の側は保留して,(1)の側だけを考えてみる if( a>=b ) {//(1) a>=b の場合 if( b>=c ) {//(1-1) a>=bであって,さらにb>=cな場合 return b; //このとき答えはbだとわかる } els...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: C言語の中央値を求めるアルゴリズムについて
- 返信数: 17
- 閲覧数: 34946
Re: C言語の中央値を求めるアルゴリズムについて
>ずっと悩んでいてもラチがあかないですしね、また別に新しい発見があるかもしれませんので >解説はないのは飛ばして次に行こうと思います。皆さん大変迷惑かけました これは 本件はわからないまま終了 ということですか? 本に解説があるとか無いとかいうのとは別の話として, 「ここで多くの方に答えていただいた内容を読んでもわからない」ということなのでしょうか? ※「こんなこともわからないのか」とかいうスタンスで言っているのではなくて, せっかく時間を割いて回答してくださっているのに,全くまともに読まずに終了するのであれば そもそも何故質問されたのでしょう? とか やや失礼ではありませんかね? という側を...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 型指定子がありません
- 返信数: 3
- 閲覧数: 4692
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 独自のファイル形式について
- 返信数: 3
- 閲覧数: 3735
Re: 独自のファイル形式について
>自分で都合の良いファイル形式を作ればいいと思った時にどうやって作ればいいか
底なしに自由だと思います.
ファイルに書き出したい情報を適当に決めたフォーマットで書きだす→そのフォーマットに従い読む
…でいいのでは?
(「何らかの意味で 良い ファイルフォーマットとは?」みたいな話はあるのかもしれませんが.)
拡張子は,良く見かけるやつと被ると面倒なだけなので,とりあえず見かけないものを付ければいいと思います.
底なしに自由だと思います.
ファイルに書き出したい情報を適当に決めたフォーマットで書きだす→そのフォーマットに従い読む
…でいいのでは?
(「何らかの意味で 良い ファイルフォーマットとは?」みたいな話はあるのかもしれませんが.)
拡張子は,良く見かけるやつと被ると面倒なだけなので,とりあえず見かけないものを付ければいいと思います.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: DXライブラリのプログラムの流れ
- 返信数: 5
- 閲覧数: 2860
Re: DXライブラリのプログラムの流れ
@の箇所だけでなく,全ての↓の箇所とかに何らかの表示を挟んでみると
何がどういう順番で実行されているかがわかるのではないでしょうか.
キーが押された際の処理の箇所などでも
例えばEnterキーが押された際の処理の箇所に「ENTERがおされた」
みたいな表示をしてみるとよいかもしれません.
何がどういう順番で実行されているかがわかるのではないでしょうか.
キーが押された際の処理の箇所などでも
例えばEnterキーが押された際の処理の箇所に「ENTERがおされた」
みたいな表示をしてみるとよいかもしれません.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 同じ二次元配列を複数つくる
- 返信数: 21
- 閲覧数: 9804
Re: 同じ二次元配列を複数つくる
>なぜ2次配列はファイルセーブロードにとって厄介なんですか?できるだけ一次配列で組んだ方がいですか?
「厄介」かどうかは極論すれば主観ですから,実際にやってみて
楽だと思う側を採用されてはいかがでしょうか.
「厄介」かどうかは極論すれば主観ですから,実際にやってみて
楽だと思う側を採用されてはいかがでしょうか.
オフトピック
つい最近,2次元的なものを実装するのに 「おい,おまえ,A[][] のように書けや」 という話があって
それを A[] で書く方向で納得してもらうのに ものすごーく苦労しました.
【要素アクセスを A[3][5] みたくコード上で書けること(利便性??)】を重要視する人もおられるみたいです.
それを A[] で書く方向で納得してもらうのに ものすごーく苦労しました.
【要素アクセスを A[3][5] みたくコード上で書けること(利便性??)】を重要視する人もおられるみたいです.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 同じ二次元配列を複数つくる
- 返信数: 21
- 閲覧数: 9804
Re: 同じ二次元配列を複数つくる
失礼ながら,何を言いたいのかまるでわからないですね. ・部屋の地形(=見た目?) は全部屋で共通であるという「仕様」 なのか ・各部屋別々の地形 にする予定であり,それを実現できるようにコード作成しているけれども, 現段階では地形aという一種類のデータしか用意できていないので 「とりあえず現段階では仮に」地形データaを全部屋で使う形にしておきたい という話なのか.あるいは別の何かなのか. で,それはそれとして, 【単に「ある配列から別の配列に値をコピーしたい.その方法は?」というだけの質問だ】ということであれば RPGがどうのとか家が云々という話は全く不要ですよね. int Src[100...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ゲーム開発におけるスクリプトの扱いについて
- 返信数: 6
- 閲覧数: 5297
Re: ゲーム開発におけるスクリプトの扱いについて
>具体的に …とのことなので,具体的に書いてみました. (このコード例の無意味さはともかくとして)こんなのでも 「スクリプト」 と呼ぶのかもしれません. //俺スクリプト(?)で変数Xの値を動かす enum ScriptOp{ L,R,S,E }; const ScriptOp ScriptData[] = { L,L,S,R,R,R,S,L,E }; void Proc() { int X = 100; ScriptOp *p = ScriptData; while( 1 ) { switch( *p ) { case L: X-=1; break; case R: X+=1; break...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: Visual Studioで作ったライブラリのヘッダーファイルについて
- 返信数: 6
- 閲覧数: 4531
Re: Visual Studioで作ったライブラリのヘッダーファイルについて
ゲーム側の ビルド前イベント でreplaceとか
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: rpgで家に入る
- 返信数: 17
- 閲覧数: 7618
Re: rpgで家に入る
>あと部屋の画像とフィールドの画像の切り替えはどのようにしたらいいですか? >普通にswitch関数などを使うのですか? 何かをしたい→さぁどうすればいいのですか? といきなり質問するよりも まず自分で思った方法でやってみてはどうでしょう. switchでいけそうだと思う&他の方法が思いつかない ならとりあえずswitchで実装してみる →その結果,「実現できなかった」とかこの方法だと「○○という面で良くない」 →じゃあどうすればよくなるか? (質問するのは少なくともこの段階) …というように話を進めていく感じ,というか. (あるいは,最低限, switchしか思いつかないけど「それだと実...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: rpg内での、小ウィンドウ(メニュー)の表示について
- 返信数: 6
- 閲覧数: 3243
Re: rpg内での、小ウィンドウ(メニュー)の表示について
その文章通りのことを実装すれば良いのではないでしょうか.
アイコンのクリック→ウィンドウ操作に移行→決定で反映
何が問題なのでしょう?
アイコンのクリック→ウィンドウ操作に移行→決定で反映
何が問題なのでしょう?
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 敵の動きの計算方法
- 返信数: 11
- 閲覧数: 5885
Re: 敵の動きの計算方法
いや,x0もv0もベクトルでしょう,そこは. ※ベクトル表記でx0とか書かれているやつは,その記号一つで x0=(x,y) を表しています. vの方も同様に,v0=(vx,vy)のように2つの座標成分をまとめて書いているだけです. 実際の計算時は,↓に書いたようにそれぞれの成分ごとに独立して行えばいいでしょう. 「ベクトル」の意味がわからないのであれば,とりあえず 各制御点のデータが,(2次元ならば)(x,y, vx,vy) の4個あるのだと思えばいいでしょう. で, x座標の計算については そのうちの(x, vx)だけを, y座標の計算については 残りの(y,vy)だけを用いて それぞれ...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: OPENCVで輪郭の輪郭の間を塗りつぶしたいです。
- 返信数: 4
- 閲覧数: 12746
Re: OPENCVで輪郭の輪郭の間を塗りつぶしたいです。
「cvFindContours」でググって,最初に出てくるページです
http://imagingsolution.blog107.fc2.com/ ... y-202.html
ここにcvFindContoursが返す情報のデータ構造が解説されています.
階層構造と輪郭のデータの取得方法がわかれば,あとは望む形に塗ればよいでしょう.
http://imagingsolution.blog107.fc2.com/ ... y-202.html
ここにcvFindContoursが返す情報のデータ構造が解説されています.
階層構造と輪郭のデータの取得方法がわかれば,あとは望む形に塗ればよいでしょう.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 敵の動きの計算方法
- 返信数: 11
- 閲覧数: 5885
Re: 敵の動きの計算方法
ベジェやスプラインみたいな曲線を補間に使うにしても 点間の「勝手に補間された部分」の形状が想定していた形状とはなかなか合致しない→どうする?っていう問題はあるわけで, 制御点の位置を変えてみたり区間内に制御点を増やしたりだとか,そういう調整は必要で, そのへん結構難しいというかやっかいかなと思います. それと,この手のやつは,曲線を描画するだけならいいのですが 移動軌跡として使う場合には,媒介変数 t を単純に(各区間で同じ刻み幅で)扱うと, 曲線上を進む速度が場所場所で変わることになるので,そこらへんの調整もわりと面倒というか 自然に見せる方法自体が問題となると思います. (tの刻みを決め...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 敵の動きの計算方法
- 返信数: 11
- 閲覧数: 5885
Re: 敵の動きの計算方法
>点を3つ以上にしたら、式をさらに追加して・・・
X0,V0とX1,V1を与えて1区間の曲線を求めたら,次の区間の曲線を
前の区間の終点データX1,V1と 次の点のデータX2,V2を用いて求めるようにすれば
連続したように見えるのではないでしょうか.
ただし,連続した曲線軌跡として実際に動かしてみると,点X1を境にして唐突に加減速があるように
みえたりするかもしれません.
X0,V0とX1,V1を与えて1区間の曲線を求めたら,次の区間の曲線を
前の区間の終点データX1,V1と 次の点のデータX2,V2を用いて求めるようにすれば
連続したように見えるのではないでしょうか.
ただし,連続した曲線軌跡として実際に動かしてみると,点X1を境にして唐突に加減速があるように
みえたりするかもしれません.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 2次元配列の簡単な質問
- 返信数: 10
- 閲覧数: 4341
Re: 2次元配列の簡単な質問
>あとは正方形のサイズも乱数で決定し
最初はscanf()で指定していたようですが,乱数で決めることにしたのでしょうか.
(まぁ 課題とかでないならば ここらへんのことは別にどちらでもいいのだと思いますが.)
一か所だけを'1'に変えることに関して,座標を決める乱数の範囲としては
>int x = rand()%5+1;
この式で大丈夫なのでしょうか.
(この式の結果の最小値と最大値はいくつになるでしょう?
「配列D[6][6]のどこか一カ所をランダムで選ぶ」という話であれば
xの値(yの値も)は { 0,1,2,3,4,5 } のいずれかになるようにするのが自然じゃないかなと思います)
最初はscanf()で指定していたようですが,乱数で決めることにしたのでしょうか.
(まぁ 課題とかでないならば ここらへんのことは別にどちらでもいいのだと思いますが.)
一か所だけを'1'に変えることに関して,座標を決める乱数の範囲としては
>int x = rand()%5+1;
この式で大丈夫なのでしょうか.
(この式の結果の最小値と最大値はいくつになるでしょう?
「配列D[6][6]のどこか一カ所をランダムで選ぶ」という話であれば
xの値(yの値も)は { 0,1,2,3,4,5 } のいずれかになるようにするのが自然じゃないかなと思います)
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: deleteとNULL初期化
- 返信数: 20
- 閲覧数: 9225
Re: deleteとNULL初期化
こういうことを何度も言われるのは嫌だろうけども,これは文句とかではなく純粋な 助言 です. ちゃんと勉強しませんか? (まぁ,する気は最初からないのだろうな,みたいな邪推もできますけど,一応言ってみる) 少しでもまともにnewとdeleteあたりのことだけでも勉強されたのであれば,そもそも >deleteをせずに(コメントにして)41行目でNULLで初期化 みたいな謎状態には至らないはずです. もし仮に >・newで確保したものはdeleteで解放する >・new[]で確保したものはdelete[]で解放する >・mallocで確保したものはfreeで解放する こういう基本を押さえていないよ...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: 敵の動きの計算方法
- 返信数: 11
- 閲覧数: 5885
Re: 敵の動きの計算方法
やりたいことがわからないですね. 例えば, 「(0,0)から(100,0)に移動しろ,ただし,(100,0)を通過するときの角度は90度(移動方向が真下向き)でな」 と言われたら, どういう軌道をとれば正解なのでしょう? これだけの条件だとパターンは無限に考えられますが,きっと 「そういう場合はこう」っていう考えというか軌跡のイメージがあると思うのです.だとしたら, ・それをいくつかの線分に分解して折れ線で指定してやるという妥協案 があります. そんなのじゃ嫌で,もっと自動でうまいことやってほしいんだ!ということであれば ・パラメトリック曲線とかの話 になるのかもしれません. オフィスの図形で...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: deleteとNULL初期化
- 返信数: 20
- 閲覧数: 9225
Re: deleteとNULL初期化
>delete[] sphere;
これもまずいですよね.
>載せたコードでdeleteしないでnullで初期化(41行目)
これを”初期化”とは呼びません.
これもまずいですよね.
>載せたコードでdeleteしないでnullで初期化(41行目)
これを”初期化”とは呼びません.
オフトピック
>いちどC++の入門書を読むことをお勧めします。
激しく同意です.
基礎的な部分をちゃんとやらずに
断片的な事柄だけを掲示板で訊きまくっていても碌に身につかないのではないかな,と危惧します.
激しく同意です.
基礎的な部分をちゃんとやらずに
断片的な事柄だけを掲示板で訊きまくっていても碌に身につかないのではないかな,と危惧します.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ガウス消去法の射影変換(座標変換の計算について)
- 返信数: 6
- 閲覧数: 3443
Re: ガウス消去法の射影変換(座標変換の計算について)
>これであれば変換前座標に対応した変換後座標が出るようです。 ということは,計算内容はこう >変換後座標(U,V) = f( 変換前座標(X,Y) ) だということですね. (X,Y)が入力で,(U,V)が出力という形. で,少なくとも,最初に指定した対応点については,改善した計算式コードによって (この入出力関係の上での)正しい出力が得られることが確認できた,と. とりあえずsegmentation faultと言われる理由を解明するために, for( Y=0; Y<Y_SIZE; Y++ ){ for( X=0; X<X_SIZE; X++ ){ U = ...; V = ...; ( X...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: デストラクタ、メモリ解放について
- 返信数: 6
- 閲覧数: 4044
Re: デストラクタ、メモリ解放について
>main文を以下のようにした場合はいつデストラクタが呼び出されるのでしょうか? WinMain()を抜けるときです. コンソールアプリでこういうの↓でも作って実験してみてはどうでしょう. class MyClass { public: ~MyClass(){ std::cout << "MyClass::~MyClass" << std::endl; }; }; // void F() { MyClass M; std::cout << "end of f()" << std::endl; } // int main() { std::cout << "before f()" << std:...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: デストラクタ、メモリ解放について
- 返信数: 6
- 閲覧数: 4044
Re: デストラクタ、メモリ解放について
>アプリをプレイ中に終了させる時です(この場合はmainloopが回ってるのにウィンドウの右上の「閉じる」を押してしまうこと) ウィンドウを閉じた瞬間にアプリケーションがぶつっと終了するわけではなく, ウィンドウを閉じたら MainLoop() を抜けてくることになっていると思います. (DXライブラリを知らないので,あくまでも憶測ですが,そのようなときにはおそらく ProcessMessage() あたりが0か何かを返すようになっているのではないでしょうか.) ウィンドウを閉じたら何が起こるのか, Finalize()の行あたりにブレークポイントでも設定して確かめてみるとよいのではないでし...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ガウス消去法の射影変換(座標変換の計算について)
- 返信数: 6
- 閲覧数: 3443
Re: ガウス消去法の射影変換(座標変換の計算について)
>対応点の座標次第では(U,V)が画像領域外になる可能性もある Segmentation faultは, これのせいではなく,ということでしょうか? あと,これって,画像変換の式が 変換後座標(U,V) = f( 変換前座標(X,Y) ) なのではないでしょうか. (あなたのコードをまともに見たわけではないので,ここらへんがどうなっているのかわかりませんが) もし仮にそうだとしたら, >projection_work[Y][X][col]=img_work[V] [col]; これが違うかも. 関連して,この手の画像変換を行う際は,普通は(?)逆方向に 変換前座標(X,Y) = f_in...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ガウス消去法の射影変換(座標変換の計算について)
- 返信数: 6
- 閲覧数: 3443
Re: ガウス消去法の射影変換(座標変換の計算について)
それと,対応点の座標次第では(U,V)が画像領域外になる可能性もあると思うので
ちゃんと判定した方がよいのではないでしょうか.
ちゃんと判定した方がよいのではないでしょうか.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ガウス消去法の射影変換(座標変換の計算について)
- 返信数: 6
- 閲覧数: 3443
Re: ガウス消去法の射影変換(座標変換の計算について)
303,304行を //before U=((int)a[0][8]*X+(int)a[1][8]*Y+(int)a[2][8])/((int)a[6][8]*X+(int)a[7][8]*Y+1); V=((int)a[3][8]*X+(int)a[4][8]*Y+(int)a[5][8])/((int)a[6][8]*X+(int)a[7][8]*Y+1); ↓ //after U=(int)( (a[0][8]*X+a[1][8]*Y+a[2][8]) / (a[6][8]*X+a[7][8]*Y+1) ); V=(int)( (a[3][8]*X+a[4][8]*Y+a[5][8]) ...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: OPENCVで輪郭の輪郭の間を塗りつぶしたいです。
- 返信数: 4
- 閲覧数: 12746
Re: OPENCVで輪郭の輪郭の間を塗りつぶしたいです。
速度とかをあまり気にしなくて良いのであれば,
一旦「塗りつぶす箇所」を示すマスクを作り,それを使って
cvSet( 塗りつぶし対象画像, 塗りつぶす色, 塗りつぶす箇所マスク );
のような形でできそうに思います.
cvFindContours()の結果データに関するまともな情報って見たことないけど,
引数の指定の仕方次第で,階層構造的な情報(輪郭Aの中に輪郭Bがあって…みたいな情報)が
取れるんじゃなかったかな? その情報を使えば
一番外側の輪郭Aの内部領域を白で塗りつぶす→Aの中に存在する輪郭Bの内部領域を黒で塗りつぶす
…みたいな方法でマスクを描画することができるんじゃないでしょうか.
一旦「塗りつぶす箇所」を示すマスクを作り,それを使って
cvSet( 塗りつぶし対象画像, 塗りつぶす色, 塗りつぶす箇所マスク );
のような形でできそうに思います.
cvFindContours()の結果データに関するまともな情報って見たことないけど,
引数の指定の仕方次第で,階層構造的な情報(輪郭Aの中に輪郭Bがあって…みたいな情報)が
取れるんじゃなかったかな? その情報を使えば
一番外側の輪郭Aの内部領域を白で塗りつぶす→Aの中に存在する輪郭Bの内部領域を黒で塗りつぶす
…みたいな方法でマスクを描画することができるんじゃないでしょうか.
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: ボードゲームの一部のマスにデータを持たせる
- 返信数: 7
- 閲覧数: 3432
Re: ボードゲームの一部のマスにデータを持たせる
よくわからないけど 例えば,すごろくみたいなのでキャラクタ(?)がマスに止まった際の処理が そのマスに存在するオブジェクトによって異なるみたいな話であれば… class IEventObject { public: virtual ~IEventObject(); virtual void OnCharactorStop( CPlayer & ) = 0; //止まったときの処理 }; class CTreasureBoxEvent : public IEventObject { public: virtual void OnCharactorStop( CPlayer &rPlayer ) ...
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: VC++のデバッグ時にstd::listのpush_backでセグメンテーション違反が発生します
- 返信数: 5
- 閲覧数: 5723
- 11年前
- フォーラム: C言語何でも質問掲示板
- トピック: VC++のデバッグ時にstd::listのpush_backでセグメンテーション違反が発生します
- 返信数: 5
- 閲覧数: 5723
Re: VC++のデバッグ時にstd::listのpush_backでセグメンテーション違反が発生します
>MainWindow* self = (MainWindow*)GetWindowLong(h_wnd, GWL_USERDATA);
64bit版でビルドされているとかいうことはありませんか?
対してGetWindowLongの戻り値が32bitでポインタを入れるにはどうの,みたいな.
64bit版でビルドされているとかいうことはありませんか?
対してGetWindowLongの戻り値が32bitでポインタを入れるにはどうの,みたいな.