So-net無料ブログ作成

タッチパネル操作時のゆらぎ [iphone]

iPhone のスクリーンを、指でまっすぐ上から下になぞって、ぱっと離す。
頭ではぱっと離しているつもりでも、実は少しだけ思いもよらぬ方向に移動しています。
ぱっと離す瞬間の座標をグラフにしてみました。

ぱっと離したときの最後に取得できる座標
result.png

縦がY, 横がXです。iPhone 5s のタッチイベントの最後から2番目と、一番最後の座標(CGPoint)をプロットしました。iPhone の画面上の座標なのでYが大きい方が下向きです。

右に偏っているのはたぶん右手で操作したから。意外とまっすぐにはなっておらず、ほとんどがあさっての方向に向いています。

物体を指で動かして離すと、ある方向にアクションするというゲームを考えたとき、乱数で方向を揺らがせるのではなく、この座標から計算すればよさそうです。

データ取得に使ったものたちは Github においてあります。

iPhone アプリの LaunchImage 作成もめんどくさすぎて死にそう [Imagemagick]

LaunchImage は横着して、真ん中にアイコンをおいて、"Loading ..." という文字をつけたものにしたいが、これも何種類ものサイズを作らなければならない。ちょっと複雑なので、rmagick というのを使ってみた。

使い方は mac のターミナルで、真ん中におく icon.png を指定するだけ。
ruby ./makelaunchimage.rb icon.png

できた画像はこんな感じ。
Default-Portrait.png
Default.png

---以下 makelaunchimage.rb --
# -*- coding: utf-8 -*-
require 'RMagick'
include Magick

DEFAULT_FONT="/Library/Fonts/ヒラギノ丸ゴ\ Pro\ W4.otf"
DEFAULT_TEXT_COLOR="DodgerBlue"
DEFAULT_FONT_SIZE=20

def draw_text(draw, x, y, text, size=DEFAULT_FONT_SIZE, color=DEFAULT_TEXT_COLOR, font=DEFAULT_FONT)
  draw.font = font 
  draw.stroke = color
  draw.text(x, y, text)
  draw.pointsize=size
  draw.text_antialias = true
  draw.fill = color
end

def create_launch_image(w, h, iconfilename, outfilename)
  #load icon
  logo = Magick::Image.read(iconfilename).first

  #create base image
  image = ImageList.new
  image.new_image(w, h) {
    self.background_color = "black"
  }

  #place icon in center of base image
  x = (image.columns-logo.columns)/2  
  y = (image.rows-logo.rows)/2
  image.composite!(logo, x, y, Magick::OverCompositeOp)

  #write text
  pen = Draw.new
  draw_text(pen, x, y+logo.rows+25, "loading ...")
  pen.draw(image)

  image.write(outfilename)
end

if ARGV.length == 0 then
  printf("need to specify icon file\n")
  exit 1
end

iconfilename=ARGV[0]
if !File.exist?(iconfilename) then
  puts "#{iconfilename} does not exist"
  exit 1
end

create_launch_image(640,1136,iconfilename,"Default-568@2x.png")
create_launch_image(768,1024,iconfilename,"Default-Portrait.png")
create_launch_image(1536,2048,iconfilename,"Default-Portrait@2x.png")
create_launch_image(640,960,iconfilename,"Default.png")

---

参考
日々是鍛錬
山本隆の開発日誌

iPhone アプリのアイコン作成がめんどくさすぎて死にそう [Imagemagick]

いままでいちいち gimp を使って手でリサイズしていたが、めんどくさすぎるので ImageMagick で処理することにした。リサイズの際にシャープにしたりできるようだが、違和感なかったのでので、そこまでは対応していない。

iOS7 以降アプリのアイコンを一括生成するシェルスクリプト。
第一引数にもとになる一番大きい画像を指定します。
makeicons.sh ./src.png

---- 以下 makeicons.sh ----
#!/bin/sh

if [ $# -ne 1 ]; then
    echo "need to give a source png path" 1>&2
    exit 1
fi

if ! type convert > /dev/null; then
    echo "need to install ImageMagic" 1>&2
    exit 1
fi

#Icons for Universal Apps(iOS7)
convert -resize 512x512 $1 iTunesArtwork.png
convert -resize 1024x1024 $1 iTunesArtwork@2x.png
convert -resize 120x120 $1 Icon-60@2x.png
convert -resize 76x76 $1 Icon-76.png
convert -resize 152x152 $1 Icon-76@2x.png
convert -resize 40x40 $1 Icon-Small-40.png
convert -resize 80x80 $1 Icon-Small-40@2x.png
convert -resize 29x29 $1 Icon-Small.png
convert -resize 58x58 $1 Icon-Small@2x.png

exit 0


Mavericks に imagemagick と rmagick をインストールする [Imagemagick]

使っている OS X は 10.9.2
ImageMagick と RMagick をインストールしようとしたがいろいろトラブったのでメモ。

brew で ImageMagick をインストール
brew update
brew install imagemagick

これは普通にできた。

次は rmagick をインストール。
gem install rmagick

上のコマンドで permission がないって怒られた。

sudo install rmagick

でいれたら今度はエラーが。。。
clang: error: unknown argument: '-multiply_definedsuppress' [-Wunused-command-line-argument-hard-error-in-future]

困ったときの google 頼み。

Ruby Gem install Json fails on Mavericks and Xcode 5.1 - unknown argument: '-multiply_definedsuppress'
を参考に
sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future gem install rmagick

でインストールできた。OS X の ruby のコンパイル時の問題だとか書いてあり、
ruby のバージョンをあげるか、修正されるまでこの方法で回避するしかないという。
一応動いているので、今回はこれでOKとする。


この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。