iPhone&Androidプログラミング記
英語─上達しないのは努力不足が原因ではなかった!
英語が話せない…を解決する博士開発の噂の英語教材!返品保証付!

2009年03月25日

iPhoneでOpenCVを使えるようにする(3)

前回はOpenCV.frameworkを作成するところまで説明しました。

まずは作成したOpenCV.frameworkを自分のプロジェクトへコピーします。
opencv-1.1.0 → build_i386 → OpenCV.framework をコピーする。

ビルド時にOpenCV.frameworkを読み込ませるための設定をします。

上のメニューから
プロジェクト → 新規ビルドフェーズ → 新規コピーファイル

ピクチャ 7.jpg

デスティネーションをフレームワークにします。

ピクチャ 8.jpg

設定ウィンドウを閉じる。

続きを読む


posted by ラキシス at 00:00 | Comment(0) | TrackBack(0) | OpenCV + iPhone | このブログの読者になる | 更新情報をチェックする

2009年03月24日

アプリをスリープさせたくない

特にゲーム系では気になることだと思うのですが、メニューを見ていたりする時にアプリがスリープ状態になって嫌だという事がないでしょうか。
また、タッチを使わないで傾きだけで遊ぶアプリの場合などは特に問題になるかと思います。

そういった時は下記のように記述することでアプリをスリープしないようにすることが可能です。


[UIApplication sharedApplication].idleTimerDisabled = YES;


アプリがスリープ状態にならないので、電池の消費は激しくなります。
部分的にYes/Noを使い分けるのが良いかもしれません。


icon
icon
posted by ラキシス at 00:00 | Comment(0) | TrackBack(0) | iPhoneプログラミング | このブログの読者になる | 更新情報をチェックする

2009年03月23日

画像の一部分を切り抜く

ゲーム系のアプリを作成していると、画像の部分切り出しをしたい場合があると思います。RPGのマップチップ等・・・
そういった場合は下記のようにすると出来ます。


UIImage *img;
CGImageRef cgImg;
CGImageRef chipImg;
CGRect cutRect;
CGRect dispRect;
CGContextRef context;

img = [UIImage imageNamed:@"hoge.png"];
cgImg = CGImageRetain(img.CGImage);

// 切り抜き座標、幅、高さ
cutRect = CGRectMake(0, 0, 32, 32);

chipImg = CGImageCreateWithImageInRect(cgImg, cutRect);

// 表示座標
dispRect = CGRectMake(100, 100, 32, 32);

context = UIGraphicsGetCurrentContext();
CGContextDrawImage(context, dispRect, chipImg);


ただし、この処理は重いので毎フレーム切り出し処理をするとかなりフレームレートが落ちます。
使用する前に切り出した画像を配列に格納しておいて、その画像を使うようにすれば速度的には大丈夫になります。

icon
icon
posted by ラキシス at 00:00 | Comment(0) | TrackBack(0) | iPhoneプログラミング | このブログの読者になる | 更新情報をチェックする

2009年03月22日

ステータスバーを非表示にする

ゲームの場合、画面上部の電池残量や電波強度表示のバーを非表示にしたいと思う事が多いですよね。

そんな時は下記のようにStatusBarHiddenをYesにする事で消すことが出来ます。

[application setStatusBarHidden:YES animated:YES];


上記のコードをプログラムの任意の場所に記述すると、そのタイミングで非表示に出来ます。

ただしapplicationDidFinishLaunchingに記述しても、起動時に一度表示されてコードが読まれてから非表示になるので、起動直後から非表示にしたい場合は下記のようにします。
続きを読む
posted by ラキシス at 12:13 | Comment(0) | TrackBack(0) | iPhoneプログラミング | このブログの読者になる | 更新情報をチェックする

2009年03月21日

透明なCGImageを作成する

最初にCGBitmapContextCreate()でBitmap Graphics Contextを作る。
Bitmap Graphics Contextに描画する。
CGBitmapContextCreateImage()でBitmap Graphics Contextに描画された内容をコピーした
CGImageを作る。
作成したCGImageをimageViewにsetImageで渡す。



const int height = 480;
const int width = 320;
CGContextRef context = NULL;

CGColorSpaceRef imageColorSpace = CGColorSpaceCreateDeviceRGB();

context = CGBitmapContextCreate (NULL, width, height, 8, width * 4,
imageColorSpace, kCGImageAlphaPremultipliedLast);

CGContextSetRGBFillColor (context, 1.0, 0.8, 0.8, 1);
CGContextFillRect (context, CGRectMake (0, 0, width, height ));

CGContextSetRGBFillColor(context, 0, 0, 1, 1);
CGContextFillRect (context, CGRectMake (80, 80, 40, 30));

CGImageRef image = CGBitmapContextCreateImage(context);

[imageView setImage:image imageProperties:nil];

CGColorSpaceRelease(imageColorSpace);
CGContextRelease(context);
CGImageRelease(image);



posted by ラキシス at 00:00 | Comment(0) | TrackBack(0) | iPhoneプログラミング | このブログの読者になる | 更新情報をチェックする
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。