OSDN Ticket Archive


Ticket #36984

iOS版 背景画像表示機能追加

登録: 2017-02-12 03:04 最終更新: 2017-02-12 03:08

報告者:
yknk
担当者:
yknk
チケットの種類:
機能リクエスト
状況:
完了
コンポーネント:
MIDITrail Ver.1.1.x for iOS
マイルストーン:
Version 1.1.0 for iOS (完了済み)
優先度:
5 - 中
重要度:
5 - 中
解決法:
修正済み
ファイル:
なし

詳細

iOS版に背景画像を表示する機能を追加する。 Windows版対応時のチケットは「#36845 背景画像表示機能追加」。

チケットの履歴

2017-02-12 03:04 更新者: yknk
  • 新しいチケット "iOS版 背景画像表示機能追加" が作成されました
2017-02-12 03:04 更新者: yknk
コメント

仕様変更

  • 設定画面に背景画像の選択機能を追加する。
  • 設定画面に背景画像の表示ON/OFF切り替え機能を追加する。
  • 画像が選択されている場合は、画像を描画領域に内接表示する。
  • 拡張子が *.jpg *.png のファイルを画像ファイルとして認識する。
  • 他アプリからの画像ファイル受け取りに対応する。
2017-02-12 03:05 更新者: yknk
コメント

設定画面変更点

  • "Display Item"セクションに"Background Image"を追加
  • "Background Image"セクションを追加
  • "Background Image"セクションに"Image File"を追加
2017-02-12 03:05 更新者: yknk
コメント

ユーザ設定値変更点

カテゴリ:"Graphic"
セクション:"Background-image"  ←新規追加
値:"ImageFileName" 背景画像ファイル名  ←新規追加
2017-02-12 03:06 更新者: yknk
コメント

対策:描画処理関連

MTBackgroundImage

背景画像描画クラスを新規作成。

MTScenePianoRoll3D, MTScenePianoRoll3DLive, MTScenePianoRollRain, MTScenePianoRollRainLive

メンバに背景画像描画オブジェクトを追加。 オブジェクト生成、描画、リリース、表示設定メソッドを修正。(Create,Draw,Release,SetEffect)

MIDITrailApp::updateEffect

シーンオブジェクトへの背景画像表示設定反映処理を追加。

OGLTexture.h

テクスチャ画像の読み込み処理(OGLTexture::LoadBitmap)で、画像が最大サイズを超える場合は エラーにしている。

ユーザが取り込んだ画像をなるべくエラーにしないようにするため、 テクスチャ画像最大サイズの定義を2048x2048から4096x4096に変更する。

iPhone 4S以降、iPad 2以降、テクスチャ画像の最大サイズは4096x4096。

#define OGL_TEXTURE_IMAGE_MAX_WIDTH   (4096)
#define OGL_TEXTURE_IMAGE_MAX_HEIGHT  (4096)

2017-02-12 03:07 更新者: yknk
コメント

対策:設定画面関連

MTScene.h

エフェクト種別のenumに"EffectBackgroundImage"を追加。

MTSettingBGIMGViewCtrl

背景画像選択ビュークラスを新規作成。 画像ファイル一覧作成時に、拡張子が*.jpg,*.pngのファイルのみを抽出する。

MTSettingViewCtrl

背景画像選択ビュークラスのメンバオブジェクトを追加。

MTSettingViewCtrl::initWithNibName: bundle:

背景画像選択ビュークラスのメンバオブジェクト生成処理を追加。

MTSettingViewCtrl::tableView: titleForHeaderInSection:

"Background Image"セクションヘッダ表示処理を追加。

MTSettingViewCtrl::tableView: titleForHeaderInSection:

"Display Item"セクションの表示項目数を5から6に変更。 "Background Image"セクションの表示項目数1の設定を追加。

MTSettingViewCtrl::tableView: cellForRowAtIndexPath:

"Background Image"セクションのセル作成処理呼び出しを追加。

MTSettingViewCtrl::makeDisplayItemCellForIndexPath

"Display Item"セクションの表示項目に"Background Image"を追加。

MTSettingViewCtrl::makeBackgroundImageCellForIndexPath

"Background Image"セクションのセル作成メソッドを追加。

MTSettingViewCtrl::tableView didSelectRowAtIndexPath:

"Background Image"セクションのセル選択処理呼び出しを追加。

MTSettingViewCtrl::onSelectDisplayItemCellForIndexPath

"Display Item"セクションのセル選択処理に"Background Image"選択時の処理を追加。

MTSettingViewCtrl::onSelectBackgroundImageCellForIndexPath

"Background Image"セクションのセル選択処理メソッドを追加。

背景画像選択ビュークラス用xibファイル追加

  • MTSettingBGIMGView_iPhone.xib
  • MTSettingBGIMGView_iPad.xib
2017-02-12 03:07 更新者: yknk
コメント

対策:その他

MTFileViewCtrl::makeFileList

MIDIファイル一覧作成時に、画像ファイル(*.jpg,*.png)を除外する。

2017-02-12 03:08 更新者: yknk
コメント

他アプリからの画像ファイル受け取り対応

他アプリから画像ファイルを受け取れるようにするため、Document Typeを登録する。 (参考:Ticket #32916 他アプリからのMIDIファイル受け取り対応)

下記の手順でDocument Type を登録する。

TARGETSでMIDITrailを選択
Infoタブを選択
Document Typesを開いて下記項目を記入
Name: Image File
Types: public.jpeg, public.png

2017-02-12 03:08 更新者: yknk
  • 解決法なし から 修正済み に更新されました
  • 状況オープン から 完了 に更新されました
  • チケット完了時刻2017-02-12 03:08 に更新されました

添付ファイルリスト

添付ファイルはありません