kabe64 の回答履歴

全26件中1~20件表示
  • OpenGLのプログラムについて

    OpenGLで立方体にサイコロの目のテクスチャを貼り付けて 立方体を回転させて止めてサイコロの目を表示させたいのですが うまい具合に面で止まってくれません どのような工夫をすればよいでしょうか

  • こういうアプリを作りたい

    ソニーのデジカメ管理ソフトなのですが、 こういった画面を自分で作るにはどうすれば良いのでしょうか? VC++2008 MFCで作る予定です。(C#かVBの方が良いですか?) (1)上はメニューの下にボタンが並びます(これはツールバー?) (2)左は画像のサムネイル、クリックしたら中央に表示(リストコントロール?選択すると周囲がほんのり青くなります) (3)中央は画像表示 (4)右は編集ボタンが並びます(フォームビュー?)(非表示にもできる) (5)下は次へボタン、ズームのスライダーなどがあります(これもフォームビュー?) どこから手を付ければよいかわかりません。 どういうものをベースに作れば良いのでしょうか。 オリジナルのコントロールを作ることでしょうか? よろしくお願いします。

  • HTMLは必ず使われてるのでしょうか?

    どのサイトやホームページもHTMLは必ず使われてるのでしょうか? JavaScriptやPHPやCGIで書かれているページも HTMLは必ず使われてるのでしょうか?

  • じゃんけんアプリの不具合について

    こんばんは。 もとまかさんの日記でじゃんけんアプリ作成に挑戦しています。 http://d.hatena.ne.jp/moto_maka/20081115/1226692706 まともかさんのチュートリアル通りに進めるため、プロジェクトの設定の際に【use storyboard】のチェックを外してstoryboardを使わずに作成しています。 #4のXcode編まで進み、シミュレーターで動作を確認したところでつまづきました。 まともかさんのチュートリアルに、勝敗が着いた後に【もう一回】のボタンが表示されるよう、「self.btn_again.hidden = NO;」というコードを加えました。  self.lbl_kekka.text = @"あなたの勝ち!"; self.btn_gu.enabled = NO; self.btn_again.hidden = NO;       //追加 上記以外は、まともかさんのチュートリアル通りのはずですが、下記の不具合があります。 1,自分が【ぱー】で相手がが【ぱー】の場合 【あいこ】になるのはよいのですが、「あいこで・・・」とラベルに表示された後にもう一度【ぱー】のボタンを押しても反応しない。 その後、【ぱー】を連打すると反応するが、相手は【ぱー】のままの状態で「あなたの勝ち」となります(あいこのはずですが)。 Xcodeでエラーは出ていません。 2、勝敗が着いた後の初期画面表示 勝敗が着いた後に【もう一回】のボタンを押しても初期画面(「じゃんけん・・・」というラベル文字と、ぐー・ちょき・ぱーのボタンが表示される画面)に移動しません。 Xcodeでエラーは出ていません。 どこに不具合があるのかわからず、困っております。 どうか解決方法を教えてください。 今回作成したコードは下記のリンク先にあります。 よろしくお願い致します。 ●作成したコードのリンク http://6794d9a43e1a2e43.lolipop.jp/jyanken

  • opencv c++についての質問です

    int main (int argc, char **argv){ int i, c, counter; int INIT_TIME = 100; int w = 0, h = 0; char *FileName = "動画名"; if((capture = cvCaptureFromFile(FileName)) == NULL){ printf("指定された動画がみつかりません\n"); return -1; } CvCapture *capture = 0; IplImage *frame; IplImage *av_img, *sgm_img; IplImage *lower_img, *upper_img, *tmp_img; IplImage *dst_img, *msk_img; CvFont font; capture = cvCreateFileCapture (FileName); // (2)1フレームキャプチャし,キャプチャサイズを取得する. frame = cvQueryFrame (capture); w = frame->width; h = frame->height; // (3)作業用の領域を生成する av_img = cvCreateImage (cvSize (w, h), IPL_DEPTH_32F, 3); sgm_img = cvCreateImage (cvSize (w, h), IPL_DEPTH_32F, 3); tmp_img = cvCreateImage (cvSize (w, h), IPL_DEPTH_32F, 3); lower_img = cvCreateImage (cvSize (w, h), IPL_DEPTH_32F, 3); upper_img = cvCreateImage (cvSize (w, h), IPL_DEPTH_32F, 3); dst_img = cvCreateImage (cvSize (w, h), IPL_DEPTH_8U, 3); msk_img = cvCreateImage (cvSize (w, h), IPL_DEPTH_8U, 1); // (4)背景の輝度平均の初期値を計算する printf ("Background statistics initialization start\n"); cvSetZero (av_img); for (i = 0; i < INIT_TIME; i++) { frame = cvQueryFrame (capture); cvAcc (frame, av_img); } cvConvertScale (av_img, av_img, 1.0 / INIT_TIME); // (5)背景の輝度振幅の初期値を計算する cvSetZero (sgm_img); for (i = 0; i < INIT_TIME; i++) { frame = cvQueryFrame (capture); cvConvert (frame, tmp_img); cvSub (tmp_img, av_img, tmp_img); cvPow (tmp_img, tmp_img, 2.0); cvConvertScale (tmp_img, tmp_img, 2.0); cvPow (tmp_img, tmp_img, 0.5); cvAcc (tmp_img, sgm_img); } cvConvertScale (sgm_img, sgm_img, 1.0 / INIT_TIME); printf ("Background statistics initialization finish\n"); // (6)表示用ウィンドウを生成する cvInitFont (&font, CV_FONT_HERSHEY_COMPLEX, 0.7, 0.7); cvNamedWindow ("Input", CV_WINDOW_AUTOSIZE); cvNamedWindow ("Substraction", CV_WINDOW_AUTOSIZE); // (7)取得画像から背景を分離するループ counter = 0; while (1) { frame = cvQueryFrame (capture); cvConvert (frame, tmp_img); // (8)背景となりうる画素の輝度値の範囲をチェックする cvSub (av_img, sgm_img, lower_img); cvSubS (lower_img, cvScalarAll (Zeta), lower_img); cvAdd (av_img, sgm_img, upper_img); cvAddS (upper_img, cvScalarAll (Zeta), upper_img); cvInRange (tmp_img, lower_img, upper_img, msk_img); // (9)輝度振幅を再計算する cvSub (tmp_img, av_img, tmp_img); cvPow (tmp_img, tmp_img, 2.0); cvConvertScale (tmp_img, tmp_img, 2.0); cvPow (tmp_img, tmp_img, 0.5); // (10)背景と判断された領域の背景の輝度平均と輝度振幅を更新する cvRunningAvg (frame, av_img, B_PARAM, msk_img); cvRunningAvg (tmp_img, sgm_img, B_PARAM, msk_img); // (11)物体領域と判断された領域では輝度振幅のみを(背景領域よりも遅い速度で)更新する cvNot (msk_img, msk_img); cvRunningAvg (tmp_img, sgm_img, T_PARAM, msk_img); // (12)物体領域のみを出力画像にコピーする(背景領域は黒) cvSetZero (dst_img); cvCopy (frame, dst_img, msk_img); // メディアンフィルタでノイズを除去する cvSmooth( dst_img, dst_img, CV_MEDIAN ); cvMoments( frame, &moment, 0 ); m_00 = cvGetSpatialMoment( &moment, 0, 0 ); m_10 = cvGetSpatialMoment( &moment, 1, 0 ); m_01 = cvGetSpatialMoment( &moment, 0, 1 ); gravityX = m_10 / m_00; gravityY = m_01 / m_00; if (frame->nChannels == 3 && cvGetImageCOI (frame) == 0) cvSetImageCOI (frame, 1); cvSetImageCOI (frame, 0); cvCircle( dst_img, cvPoint( gravityX, gravityY ), CIRCLE_RADIUS,CV_RGB( 255, 0, 0 ), LINE_THICKNESS, LINE_TYPE, 0 ); // (13)処理結果を表示する cvShowImage ("Input", frame); cvShowImage ("Substraction", dst_img); counter++; c = cvWaitKey (10); if (c == '\x1b') break; } cvDestroyWindow ("Input"); cvDestroyWindow ("Substraction"); cvReleaseImage (&frame); cvReleaseImage (&dst_img); cvReleaseImage (&av_img); cvReleaseImage (&sgm_img); cvReleaseImage (&lower_img); cvReleaseImage (&upper_img); cvReleaseImage (&tmp_img); cvReleaseImage (&msk_img); return 0; } 動画を指定して背景差分を行い、動画内の物体の重心を求めて円を描きたいのですがcvMoments()とcvCircle()関数を入れてコンパイルしたところウィンドウが出て動画が始まる前に終了してしまいます。 どのようにすれば正常に動くようになるのでしょうか?

  • 文字列を分解して特定の項目を別の変数に

    文字列を分解して特定の項目を別の変数に入れたいのですが、条件式を満たさないので別の変数に入れれません 下にソースを書くのですが age の項目だけ別の変数に入れたいのです どのようにすれば入れれますか? #include <stdio.h> #include <string.h> char *nameset[12],*valueset[12]; char *nameset3[12],*valueset3[12]; void main(void){ int c=0; int i=0,cn=0,dn=0; char *tm=NULL; char *han; char *a="name=miku&age=15&like=momo"; int b=strlen(a); nameset[0]=a; while((a[++i]!=NULL)&&(i<b)){ /* 項目の分解 */ if(a[i]=='='){ a[i]=NULL; if(c!=1){ valueset[cn]=a+i+1; cn++; } else{ valueset3[dn]=a+i+1; dn++; c=0; } } /* データ項目で分解 */ else if(a[i]=='&'){ a[i]=NULL; han=a+i+1; if(strcmp(han,"age")==0){ nameset3[dn]=han; c=1; } else{ nameset[cn]=han; } } } printf("%s\n", nameset[0]); printf("%s\n", valueset[0]); printf("%s\n", nameset[1]); printf("%s\n", valueset[1]); printf("%s\n", nameset[2]); printf("%s\n\n", valueset[2]); printf("%s\n", nameset3[0]); printf("%s\n", valueset3[0]); }

  • SQLエラー

    検索システムの検索結果の分割をしようとしています。 しかしどうしてもSQL文にエラーがでてしまいます。 SELECT * FROM shops where (area='◯◯◯') ORDER BY id DESC limit0, 10 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'limit0, 10' at line 1 該当するSQL文は以下になります。 $query = "SELECT * FROM shops"; $where = array(); if (isset($_GET['area'])and($_GET['area'] !== '')) { $where[] = sprintf("(area='%s')", mysql_real_escape_string($_GET['area'])); } if (count($where) <> 0) { $query .= ' where ' . implode(' and ', $where) . ' ORDER BY id DESC '; }   $query .= "limit" . $page_num*10 . ", 10" ; limit句の使い方等間違いはないのかなと思うのですが、いかがでしょうか? アドバイスご教示いただけないでしょうか。 よろしくお願いします。

    • ベストアンサー
    • lolololol
    • PHP
    • 回答数2
  • エディットコントロールのイベントハンドラ

    開発環境 ・Windows XP (32bit) ・Visual C++ 2005 以下内容でCEditの派生クラスを作成したところ、 その派生クラスを使用するダイアログで EN_CHANGEイベントがキャッチ出来ませんでした。 どうすればキャッチ出来るようになるでしょうか? アドバイス頂けると大変ありがたいです。 ※エディットコントロールに文字を入力すると  以下(1)の処理には来るのですが、  以下(2)の処理には来ませんでした。 //------------------------------------------------ // EditEx.h //------------------------------------------------ // CEditの派生クラス class CEditEx : public CEdit { public:     CEditEx(void);     virtual ~CEditEx(void); //------------------------------------------------ // EditEx.cpp //------------------------------------------------ // CEditExクラス内でEN_CHANGEイベントを処理 BEGIN_MESSAGE_MAP(CEditEx, CEdit)     ON_CONTROL_REFLECT(EN_CHANGE, &CEditEx::OnEnChange) END_MESSAGE_MAP() // EN_CHANGEイベントハンドラ void CEditEx::OnEnChange(void) {     // (1) } //------------------------------------------------ // DialogEx.h //------------------------------------------------ // CEditExクラスをメンバに持つダイアログ class CDialogEx : public CDialog { private:     CEditEx m_Edit1; //------------------------------------------------ // DialogEx.cpp //------------------------------------------------ // CDialogExクラス内でもEN_CHANGEイベントを処理したい BEGIN_MESSAGE_MAP(CDialogEx, CDialog)     ON_EN_CHANGE(IDC_EDIT1, &CDialogEx::OnEnChangeEdit1) END_MESSAGE_MAP() // EN_CHANGEイベントハンドラ void CDialogEx::OnEnChangeEdit1(void) {     // (2) }

  • ページを読み込まなくても動作するものについて

    ページを一度読み込んで動作可能なものにCGIやHTMLがあるじゃないですか それに対してフラッシュやジャバスクリプトはページを読み込まなくても動作するじゃありませんか フラッシュやジャバスクリプト以外でページを読み込まなくても動作する物はありますか?

  • ファイルの読み書き

    ファイルに文字列を追加したいのですがファイルの開き方が "a" モードで開くと当然文章の最後に文字列が書き込まれることになります。 ですが、最後ではなく最初に文字列を追加したいためにファイルを2回づつ読み込んだり書いたりしたら2回目の読み込み時にバグが出ました どうしたらファイルの文字列を最後ではなく最初に追加できますか? 追加したい文字が: もも 今までのデーターが オレンジ みかん なら、 もも オレンジ みかん のようにしたい。 以下ソース ---ソース--- #include <stdio.h> void main(void){ FILE *fp; char *tm[1000]; char buf[400]; int i=1,sei; fp= fopen("now.txt","w+"); fprintf(fp,"もも"); fclose(fp); //何で最初に書き込んでるんだ? //という突っ込みがあるでしょうが本当に作りたいプログラムは最初にファイルに書き込まないといけないためです。 fp= fopen("now.txt","r"); while( fgets( buf, 400, fp ) != NULL ){ tm[0]=buf; } fclose(fp); printf("%s<br>",tm[0]); //確認用 この時点ではtm[0]に"もも"が入っている fp =fopen("moto.txt","r"); while( fgets( buf, 400, fp ) != NULL ){ tm[i]=buf; printf("%s<br>",tm[i]); //確認 この時点ではtm[1]に"オレンジ" tm[2]にみかんが入っている i++; } printf("%s<br>",tm[0]); //確認用 バグったtm[2]のみかんが入っている printf("%s<br>",tm[1]); //確認用 バグったtm[2]のみかんが入っている printf("%s<br>",tm[2]); //確認用 バグじゃない? fclose(fp); if(i<=1000){ sei=i; } else{ sei=1000; } fp =fopen("chat_deta.txt","w+"); for(i=0;i<sei;i++){ fprintf(fp,"%s\n",tm[i]); //バグった内容が書き込まれるためみかんが3列かきこまれる } fclose(fp); } } ---now.txt--- もも ---moto.txt--- オレンジ みかん 結果として みかん みかん みかん っとなっていますね。

  • プログラミング

    プログラミングについて質問です(JAVA)コード書きすぎエラーというものは存在するのでしょうか?一つのメモ帳に約一万行近く書きました。またはグラフィックスなので要領がデカすぎてエラーがでるのでしょうか? エラーは実行した時にNULLポインターが発生した時爆発するあれです。 NULLポインターじゃないのにNULLポインターエラーが発生する理由どなたか分かりませんか?

    • ベストアンサー
    • jgpt0756
    • Java
    • 回答数3
  • _TCHAR*での引数の読み込み

    VC++2010での、通常の #include "stdafx.h" int _tmain(int argc, _TCHAR* argv[]) { return 0; } のウィザードを使って、arvg[1]やargv[2]に引数を与えて、本体内で通常のCで使う printf("%s\n", argv[1]); や fopen(argv[1], "r"); を使いたいのですが、引数の型が_TCHAR*になっているため文字がそのまま使えません。 int main(int argc, char *argv[]) で使えば問題なく使えるのですが、デフォルトのウィザードを使った時の使い方を知っておきたいのです。 御経験のある方、御教示お願い致します。

  • _TCHAR*での引数の読み込み

    VC++2010での、通常の #include "stdafx.h" int _tmain(int argc, _TCHAR* argv[]) { return 0; } のウィザードを使って、arvg[1]やargv[2]に引数を与えて、本体内で通常のCで使う printf("%s\n", argv[1]); や fopen(argv[1], "r"); を使いたいのですが、引数の型が_TCHAR*になっているため文字がそのまま使えません。 int main(int argc, char *argv[]) で使えば問題なく使えるのですが、デフォルトのウィザードを使った時の使い方を知っておきたいのです。 御経験のある方、御教示お願い致します。

  • VC++のデータとクラス

    C++/CLIで、 クラス名をTestResultにして TestResult(char name,int student_ID,int Language_result,int Mass_result,English_result)の形でメンバ関数を定義して データ入れて data[0]=TestResult(小林,001,65,75,66); data[1]=TestResult(高橋,002,84,97,91); data[2]=TestResult(加藤,003,43,55,71); data[3]=TestResult(田中,004,76,68,81); のようにしてインスタンス化して、他のクラスからdata[1].Language_result のように参照したいのです。 このようになるヘッダーファイル(.h)とソースファイル(.cpp)を教えてください。 c++の理解が浅く、的を得ない質問かと思いますが、お答えお願いします。

  • バッチファイルにて連番付きフォルダの作成

    今、このようにして、日付のフォルダを作って、画像を整理しています。 今日でしたら、121128というフォルダが出来ます。 set ymdtmp=%DATE:/=% set yyyymmdd=%ymdtmp:~2% cd /d E:\AA"\BB md %yyyymmdd% move e:\AA"\*.jpg E:\AA"\BB\%yyyymmdd%\ これを121128_0というフォルダを作るようにしたいのです。 そして、今日、もう一度実行すると、既に、121128_0があれば、121128_1というフォルダを作るようにするには、どうすればよいのか教えてください。 その後、実行する毎に、 121128_2 121128_3 というように、最後が連番になるようにしたいのです。

  • WORDで図形処理中、入力方式が変わってしまう

    XP,OFFFICE2007ユーザーです。 ◇WORDでポスターを作っていますが、図形・テキストボックス・画像などを切り抜いて文面に貼り付けています。 ◇WORDはローマ字入力ですが、「図形処理」の最中に、突如として平仮名入力に変わってします。 ◇MICROSOFT IME2007プロパティを開くと、「かな入力」に変わっておりますので修正しますが、何回も「かな入力」に戻ってしまうのです。 ◇このWORD作業を中止して、他のPC操作をすると、ちゃんとローマ字入力です。このOKWAVEへの質問もローマ字で問題はありません。 ◇してみると、WORDの図形処理の際に限って、かな入力化が発生すると思われます。 この現象が見られたのは、2週間前からです。 そこで、このような現象が起こる原因と対策を教えてください。とても困っております!

  • プログラマーの適正検査落ちまくり、僕は向いてない?

    iqテストのような規則性を見出す問題と算数の問題がセットになった適正検査落ちまくり。 10社は落ちた 向いてないのかな、、、 もうやだ、、、、 僕は要らない人間なんだ、、、

  • ニコニコ動画が緑画面

    ニコニコ動画を見ていると、急に緑色の画面になり動画が早送り?されます。 調べてみたところ、 ・Windows更新ファイル:KB2735855を消す ・グラフィックドライバーの更新 この2つの改善策を見つけられ、2つとも試しましたが改善はしませんでした。 ※作業後、同じ動画を見たところ、症状は現れませんでしたが、別の動画で症状が出ました。 何か解決方法はありませんか? <使用PC> OS:Windows7 64bit ブラウザ:IE9 ディスプレイアダプター:Intel(R) HD Graphics 3000、NVIDIA GeForce GT 540M

  • 右クリック拡張ツール

    Windowsの右クリックを拡張するフリーソフトが結構あると思います。 【質問1】 私も右クリック拡張するフリーソフトの作成に挑戦したいと思うのですが CやC++で作るのがいいのでしょうか? 【質問2】 ただ、無作為に勉強してもゴールにたどり着けないと思うのですが 本格的に、このようなアプリを作成したいと思った場合 どんな本を参考にするとよいのでしょうか? 基本については、基本の参考書を読んで理解しています。 ご教授お願いします。

  • 中置記法の問題なのですが…

    中置記法でかかれたもの後置記法に直してから計算するプログラムをつくったのですが、atoi関数のところで、うまく数字が渡されず、0となってします。これらの原因と解決方法、また解決したプログラムを教えてください。 #include<stdio.h> #include<string.h> #include<stdlib.h> #include"Item1.h" #include"Stack1.h" #include"Item2.h" #include"Stack2.h" int main(int argc, char *argv[]) { char *a = argv[1]; int i; int N = strlen(a); char r; int s; STACKinit1(N);STACKinit2(N); for(i=0;i<N;i++) { if(a[i] == ')') { r = STACKpop1(); if(r == '+') { STACKpush2(STACKpop2() + STACKpop2()); } else if(r == '*') { STACKpush2(STACKpop2() * STACKpop2()); } } if(a[i] == '+' || a[i] == '*') { STACKpush1(a[i]); } if ((a[i] >= '0') && (a[i] <= '9')) { s = atoi("a[i]"); STACKpush2(s); } } printf("%d \n",s); printf("%d \n",STACKpop2()); return 0; }