ブログ

iOS University Programの流れ

University Programで取得したライセンスでiPhone/iPod touch上でアプリケーションを動かすまでの大まかな流れ。

  1. Certificates
    • キーチェーンアクセスにPrivate Keyを作成
    • 他のMacに移すにはPrivate Keyを保有し、移行先のキーチェーンアクセスにPrivate Keyを追加
  2. iOS developer
    • iOS Provisioning PortalからCertificatesをダウンロードし、developer_identity.cerをキーチェーンに追加
  3. Devicies
    • DevicesにiPhone/iPod touchを登録
    • App IDsにてApp IDを登録。acjp.tkougei.XX01など
    • ProvisioningにてProfileを作成
    • Provisioningをダウンロード
      • Provisioning名.mobileprovision
    • ProvisioningファイルをXcodeのOrganizerのSummaryのProvisioningに追加
  4. XCode
    • XcodeのプロジェクトのTargets内のアプリケーション名のInfoを表示
    • Build(ビルド)タブのCode Signing(コード署名)のコード署名IDの「Any iOS Device」をiPhone Perpheral:[自分のcertificate名]を選ぶ。
    • プロパティタブの識別子にApp IDを入力。acjp.tkougei.XXXX
    • ビルドと実行でDeviceでアプリケーションが動く
· %2011/%06/%01 %04:%Jun

Windows Vista から NAS接続

LANハードディスクやMacOSXの公開フォルダディスクなどLAN経由のNASディスクにWindows Vistaから接続しようとすると、パスワード認証のところで撥ねられ、接続できません

これはNASのSambaサーバの古いバージョンがVista初期設定の認証方法と異なると生じるようだ。たとえば、LogitecのLHD-LANシリーズのLANハードディスクへVistaから接続しようとするとパスワード認証がうまくいかない。

管理ツールのあるHome Premium以上のVistaでは、ローカルセキュリティーポリシーの設定を変更すれば、アクセスできるようになる。実際、ロジテックのホームページにも、ローカルセキュリティーポリシーの変更が必要であるとの記述があるが、具体的には、以下のとおり。

  1. 「コントロールパネル」→「管理ツール」→「ローカルセキュリティーポリシー」→「ローカルポリシー」→「セキュリティーオプション」を開く。
  2. 「ネットワークセキュリティー:LAN Manager認証レベルのプロパティ」の「ローカルセキュリティの設定」を開く。
  3. デフォルトでは、
[NTLMv2 応答のみを送信する]になっているので、[LMとNTLMを送信する - ネゴシエーションの場合、NTLMv2 セッション セキュリティを使う]へ変更する。

以上の設定でLANハードディスクやMacOSXのディスクなど、NASへ接続できるようになる。 ちなみに、管理ツールがないHome Basicでは、レジストリを書き換えることになる。

· %2010/%03/%07 %09:%Mar

大型ポスター印刷

とあるプロジェクトのお手伝いで大型のポスターの印刷をしたのだが、その手順をメモしておく。

具体的には、与えられた絵を、4m(横)X3m(縦)の大きさの紙のポスターに仕上げる。プリンターは幅がA1ノビサイズ(610mm)のロール紙を印刷できる大判プリンターを使用する。たとえば、CanonのImagePROGRAFやEPSONのMAXARTなど。

  1. 画像サイズを4mX3mに収まるサイズにする。
    • 与えられた絵の画像サイズを実際に印刷するサイズ4mX3mにまで拡大したいのだが、元画像の横:縦が4:3でないことがあるので、元画像の横縦比を保ちつつ、横の4mと縦の3mをどちらも超えないように拡大する。たとえば、幅4000mmにした場合、高さが2811mmになり、3mよりやや短くなる場合がある。
    • このとき、解像度を100pixel/inch程度にまで落とさないと、ファイルサイズが大きくなりすぎて、処理が重くなるので注意。
    • Photoshopの場合、「イメージ」メニューの「画像解像度」の「ドキュメントのサイズ」の幅と高さをmmかcmで指定する。
    • Gimp2の場合、「画像」メニューの「画像の拡大・縮小」の「画像サイズ」の幅と高さをmmで指定する。
  2. キャンパスサイズを4mX3mにする。
    • 上で拡大した画像を実際に印刷するサイズ4mX3mの上に配置する。
    • 上下左右にどれだけマージンをおくかはその画像に応じて考える。
    • Photoshopの場合、「イメージ」メニューの「キャンパスサイズ」で指定する。マージンの位置は「基準位置」で指定する。
    • Gimp2の場合、「画像」メニューの「キャンパスサイズの変更」で指定する。マージンの位置は「オフセット」で指定する。
  3. 4mX3mの画像のキャンパスサイズをプリンタで印刷できる最大幅(610mm)で縦に分割する。細切りされた画像例
    • 上の処理で、横4m縦3mの画像ができたわけだが、これを幅610mm程度の縦長の短冊型に細切りする。(右図参照)
    • 細切りはキャンパスサイズの変更で行うが、縦横比を保たないで変更すると、目的のサイズにスライスできる。
    • 横4mの場合、1つの短冊の幅を570mmにすると、7つの短冊に分割できる。この場合、約40mmのマージン(のりしろ)ができる。
      • 左から1番目の短冊はキャンパスサイズを幅570mm高さ3000mmにして、基準位置を左にして画像をスライスする。
      • 左から2番目の短冊はキャンパスサイズを幅1140(570*2)mm高さ3000mmにして、基準位置を左にして画像をスライスし、次にキャンパスサイズを幅570mm高さ3000mmにして、基準位置を右にして画像をスライスする。
      • 左から3番目の短冊はキャンパスサイズを幅1710(570*3)mm高さ3000mmにして、基準位置を左にして画像をスライスし、次にキャンパスサイズを幅570mm高さ3000mmにして、基準位置を右にして画像をスライスする。
      • 以下、同様にする。
  4. プリンタにて用紙サイズを610mmX3000mmに指定して、上の570mmX3000mmの短冊を配置し、印刷する。
· %2009/%11/%08 %07:%Nov

phpのapc

apcとは、PHPの中間コードをキャッシュして高速化や最適化を行う拡張モジュール。 このようなモジュールはPHPアクセラレータというが、いくつか種類があり、apcはその1つ。

fedraでインストールするには、

yum install php-pecl-apc

その後、/etc/php.d/apc.iniでパラメタを設定。

apc.optimization=2

これは、最適化レベル。デフォルトは0で、最適化を行わない。値が大きいほど最適化のレベルが高くなるらしいが、どの程度の整数値を指定すればいいのか不明。

apc.shm_size=96

apcの共有メモリのサイズで単位はMB。大きめにとらないとGC(ガーベージコレクタ)が正常に動作しないようで、apacheのエラーログに

[apc-warning] GC cache entry 

がでる。

· %2009/%08/%07 %06:%Aug

エクセルのrank,large,smallなどの順位付け関数

表計算ソフトのエクセルには、統計処理関係の関数が数多く用意されている。 たくさんの数字列の順位付けをするには、普通はrank関数を使うのだが、同点の場合、同順位となり、それ以降の順位が繰り下がって割り振られる仕様になっている。 たとえば、以下のような点数の場合、2位が2件、3位が0件、4位が1件ということになる。

85 2位 
85 2位
90 1位
70 4位 

意外と、この仕様は使いにくく、実際には、同点の場合でもとりあえず別の順位をつけたいことがある。 たとえば、同点の場合は、先着順にするとかにして、以下のようにしたいことがある。

85 2位 
85 3位
90 1位
70 4位 

このような順位の振り方はrank関数にはなくて、行番号*0.001などの数値を点数に含めるなど、トリッキーなやり方をしなければならない。

これを解消するのが、large関数やsmall関数で、これは、数字列の中で指定した順位のセルを返してくれる。

たとえば、上記の数値の上位2件の平均を求めたいときなどは、

average( (large(範囲,1) + large(範囲,2) )

とすれば、(90+85)/2 が返ってくる。 smallは小さい値からの順番を持ってくる。

たとえば、オリンピックの体操やフィギュアスケートの点数計算のように、最高点と最低点を除いた平均などは、

( (sum(範囲) - (large(範囲,1) - small(範囲,1) ) / (count(範囲) - 2)

などとしてやればいい。

 
blog.txt · 最終更新: 2007/12/15 09:07 by kuha     文書の先頭へ