サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大谷翔平
www.rainorshine.asia
こちらに載っているようにコアとなる以下の重み付け関数が3次式となっているため「Cubic」と呼ばれているそうです。 bicubic_weight( d ) = 1 - 2*d^2 + d^3 (d < 1.0 ) 4 - 8*d + 5*d^2 - d^3 (1.0 ≦ d ≦ 2.0 ) 0 (d > 2.0 ) 実は上記式にはαという係数が含まれていて、その値をいじるとシャープさが変わるらしいとのこと。(以下参照) ちなみにwikipediaにはこのαの値は-0.5~-0.75程度と書かれていますが、一般的には-1が使われるとのこと。 上記の式はまさにα=-1が適用された状態のようです。 プログラム実装 最近はDelphiだとコストが嵩むようになったので、もっぱらC#でプログラミングするようになりました。 インラインアセンブラも骨が折れるのでやってません。 ということで、C#によるお手
久々に正月に仕事が無いので、ゆっくり自宅サーバーのリフレッシュをしました。 今回は結構ちゃんとやったのでメモ。 使用しているマシンについて うちのサーバはマウスコンピュータの「Lm-mini20」です。コレ↓ ウルトラスモールPC新登場! | BTOパソコンの通販ショップ マウスコンピューター いわゆるネットトップ機でLCDの背面にマウントできるので省スペース。ION搭載なのでGPUもそこそこ使えます。 現在はもう販売してませんが、購入当時OS無しで25000円くらいとすごくお得でした。 今回は今まで載せていたCentOS 5から6へとバージョンアップする作業をしました。 とりあえずダダーっと手順を載せていきます。詳しくは説明しません。なお最後のシステム再起動を持って完結するので、サービスの起動は手順に含んでいません。 OSのインストール 普通にCentOS 6.2をDVDからインストール
現在docomoが優遇販売している『GALAXY S4』と『Xperia A』ですが、GALAXY S4(SC-04E)の標準ブラウザのUAに『Chrome』の文字が入っていてあたふたしたのでメモ。 まずSC-04EでChromeのUA。 Mozilla/5.0 (Linux; Android 4.2.2; SC-04E Build/JDQ39) AppleWebkit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.90 Mobile Safari/537.36 んで標準ブラウザのUA。 Mozilla/5.0 (Linux; Android 4.2.2; ja-jp; SC-04E Build/JDQ39) AppleWebkit/535.19 (KHTML,like Gecko) Version/1.0 Chrome/18.0.1025.308
スマホ(スマートフォン)ではWebページのリンクがタップしてからページ移動を開始するまでやや遅く感じることが多い。 調べてみるとスマホ上では、タップしてからクリックイベントが発生するまで約300msの遅延が発生しているとのこと。 Remove onClick delay on webkit for iPhone うのらぼ。 – 【JS】iPhoneでタップの反応が遅いと感じたら そこでtouchstart/touchendイベントを利用してシングルタップを高速に判定するjQueryプラグインを作ってみた。 実装概要 まずタップ検出対象に対して、touchstartが呼ばれたらtouchmoveおよびtouchendにリスナを設定。 タッチしてから指を離すまでに移動が無ければタップと判定し、カスタムイベントのtapを発火します。 それから従来のクリックイベントも同時に発火させるようにしました
約一年ぶりに画像の補間手法について語ります。 前回はニアレストネイバー(最近傍)法について語りましたが、今回は一歩進んでバイリニア(線形または1次補間)法のプログラムを紹介します。 まぁ、今更って感じですが。 概要 ニアレストネイバーでは画像を拡大・縮小したときのジャギーやモアレが目立ちます。そこで画像を滑らかにする効果を持つ補間方法の一つとしてバイリニアがあります。 他にもよく用いられる補間方法としてBicubic(バイキュービック)法やLanczos(ランチョス)法が有名ですが、特にバイリニアは処理に掛かる計算量が比較的少なく、軽量の補間フィルタとしてポピュラーな存在となっています。 バイリニアはニアレストネイバーと違い、元画像のピクセルの色をそのまま採用するのではなく、隣接するピクセルの色データを混ぜ合わせて新しいピクセルの色を決定します。 詳しくはWikipediaあたりを参照して
CPIの「シェアードプラン ZZ-01」についての話。 他のサーバーでもだいたい同じかと。 前置きとして、MovableType5には標準で自動的に再構築する機能はありません。 公開予約をした記事を公開日時が過ぎたら公開するという処理をcronによって実行することはできます。 なのでcronから叩いてサイト全体を再構築を出来るようにするのが今回の目的です。 再構築スクリプトの入手 MTのtoolディレクトリになにやら「rebuild-pages」というファイルがあるのですが、サーバの制限上モジュール不足などでちょっと使えそうにありません… ですので、定番の「mt-rebuild.pl」を下記のリンクから入手します。 TypePadへのサインインが必要です。 mt-rebuild / Code / The Appnel Group そしたら、mt-rebuild.plをmtディレクトリにコピ
クリッカブルマップの画像をエリア設定している部分だけロールオーバー表示したいな。。。なんて思わなくてもいいことをやってしまったので思いで程度にメモ。但し、四角形のエリア限定。 [例] 不動産・住宅 物件検索 – BIGLOBE住まい ぶっちゃけクリッカブルマップをロールオーバーなんて馬鹿だと思うので、普通はCSSのpositionプロパティでAタグなんかをブロック表示で設置すればいいと思います。 だけど、どうしてもマップじゃないと駄目な理由がある場合は参考にしてください。jQueryを駆使してかなり強引にやってるので誰得な感じですけど。 まずは通常時とロールオーバー時の2枚の画像を用意します。今回例として使うのは下の二つ。ロールオーバー時の画像ファイル名は拡張子の前に_overを付け加えたものとします。 で、次にクリッカブルマップを設置します。こんな感じで、idを振ったdivでimgとma
俺がCakePHPの開発では最近は必ずというほど実装しているAppModelの機能をなんとなく紹介してみる。 だいたいはどこかのサイトに載っていたものを使っていますが、出所は覚えてなかったり。。。 CakePHP 1.2.7対応(おそらく1.2共通) 開発環境と本番環境でDB切り替え 開発環境では開発用のDB、本番では本番用DBを自動で切り替える機能。 これやっとけば設定の書き換えなしで、本番アップ可能。 // app_model.php function __construct($id = false, $table = null, $ds = null) { $this->useDbConfig = !IS_DEVELOP ? 'default' : $_SERVER['CAKE_DB_CONFIG']; parent::__construct($id, $table, $ds); }
Linux上のPHPでは問題なく使えるんですが、XAMPPで動かしているPHPだとフォーマット文字列の解釈が上手くいかないんです。。。 その原因を探ってみたのでメモ。 例えば下記のようなコードを書きます。 [php] echo strftime(‘%Y年%m月%d日 %H時%M分’); [/php] Linux環境だと期待通りに下記のように出力されます。 [text]2010年02月27日 10時00分[/text] しかしWindows上のXAMPPで試すと。。。 [text]2010年02月%d日 10時%M分[/text] 日本語の部分を抜けば問題ないのですが、フォーマット文字に日本語を使うと特定の組み合わせでこのように変換指定子が解釈されない事がある上、おまけに場合によっては化けた文字がくっついてくるという悲惨なことになります。 原因はどうもLC_CTYPEのロケール設定がWind
日付選択のプルダウンに対してjQuery Uに含まれるdatepickerを使う方法をメモついでに紹介。 CakePHP 1.2.6 + jQuery 1.3.2 + jQuery UI 1.7.2で確認。 Formヘルパーでは、タイムスタンプ系のフィールドを持つカラムに対してinput()を使ったり、date()やdateTime()といったメソッドでプルダウンによる日付選択を表示させるのはごく一般的だと思いますが、これを発展させてカレンダーから日付を選択することもできるように簡単に機能を追加する方法をご紹介します。 jQueryに含まれるdatepickerは便利な機能でして、オプション次第でいろいろな表示ができます。しかし、このカレンダーはinputに対してしか発動させられません。よって今回のようなプルダウン(selectタグ)には直接結びつけることはできないのです。そこで下記のよう
指定の条件に一致したレコードを一掃するのに便利なModel::deleteAll()。 公式のマニュアルを見ると第1引数に削除対象のレコードの条件、第2引数には関連モデルの削除をするか否かの真偽値となっています。 The Cookbook :: 1.2 Collection :: The Manual :: Developing with CakePHP :: Models :: Deleting Data ですが、1.2.0.7296 RC2で確認したところ第3の引数が存在しました。 その第3の引数はコールバックメソッドの実行をするか否かの真偽値です。 メソッドの定義部分を見れば一目瞭然です。 ソース解析 cake/libs/model/model.php /** * Allows model records to be deleted based on a set of conditi
世間ではGumblar攻撃による被害が後を絶ちませんです。 これを機に今まで暗号化機能の無いFFFTPを使用していた方々はSFTPやFTPSなどを利用するようにするとよいと思います。 そんなそんなで、最近WinSCPがFTPSの機能を実装したようなので、CORESERVER.JPでFTPS通信してみまんた。 サーバ自体は結構前から対応していたし、XREAも多分同じと思われ。
いろいろと無料のWEBサイトのレンタルサービスをしているアットフリークスですが、 そのなかに『@PAGES』というフリーのサイトスペースを提供するサービスがあります。 他に『@WORD』という広告無しでWordPressが使えるサービスや『@CMS』なるものもありますが、あえて@PAGESでWordPressをインストールしてみました。 @PAGESの概要 @PAGESの特徴は以下のようになっています。 容量1GB PHP、CGI(Perl、ruby、python、C、C++)が使える 商用利用可能 ブラウザからファイルアップロード可能 MySQL、SQLite 広告付きという制限はあれど、これだけあればいろいろできます。 PHPのバージョンも比較的新しく(現在5.2.4)、多くのフリーウェアが利用可能と思います。 ちなみにMySQLはphpMyAdminがデフォルトで使えるので、管理が容
たまにdtとddを横に並べたいときがあります。 色々方法はあると思いますが、dtとddそれぞれ一個ずつの組に対して毎回下線を付けたいときはどうするか考えてみました。 よく見かけるのは一個ずつdlを閉じてしまうやりかた。 <dl> <dt>定義語</dt> <dd>説明文説明文説明文説明文説明文</dd> </dl> <dl> <dt>定義語</dt> <dd>説明文説明文説明文説明文説明文</dd> </dl> <dl> <dt>定義語</dt> <dd>説明文説明文説明文説明文説明文</dd> </dl> 意味的にスマートではありませんね。 やっぱり一個のdlでひとまとめにしてみたいです。 <dl> <dt>定義語</dt> <dd>説明文説明文説明文説明文説明文</dd> <dt>定義語</dt> <dd>説明文説明文説明文説明文説明文</dd> <dt>定義語</dt> <dd>説明
以前にブログで表示する大きな画像を縮小してサムネイル表示する事を検討した。 従来使用していたGDによるキャッシュ作成方法を改め、epegを利用した動的生成を試みた。 (この記事は2007年10月頃に書いたものです。) (当時はBlogn+を使っていて画像ファイルの管理が面倒だった) 従来もブログ用画像のサムネイル化は行っていた。しかし動的な縮小処理ではなく、最初の一回目のアクセス時のみ縮小処理を行いファイルにキャッシュし、2回目以降のアクセスではそのキャッシュファイルを読み込ますというPHPスクリプトを用いていた。 従来はGDを用いたサムネイル生成をしていたが、結構処理が重くて遅い。その為キャッシュを作っていた訳だがファイルが増えてかさばり容量も増え、管理が面倒になる。そこでこの度仕組みを一新し、動的なサムネイル生成を試みた。 手頃な物としてサムネイル生成ライブラリのEpegを使ってみるこ
仕事で未だにPHPのバージョンが4のサーバ上で動かすシステムの開発の案件がちらほらあります。そんでDBサーバーも搭載してないとかでSQLiteを使ったりします。 PHP4ではSQLiteの3が使えないということで2を使うんですが、古くて機能不足なのでいろいろ不便です。 たとえば ALTER TABLE が使えないのでテーブルのカラム追加ができません。なので代用手段を用いてやります。 例としてhogeというテーブルにカラム追加したいときの手順。 hogeテーブルと同じ構成のテンポラリテーブルを作成 テンポラリテーブルにhogeテーブルのレコードを全コピー hogeテーブルを削除する 新しいカラム構成でhogeテーブルを作成 hogeテーブルにテンポラリテーブルのレコードを全コピー テンポラリテーブルを削除 結構面倒です。カラムa,bをもつhogeテーブルにカラムcを追加する場合は以下のような
ダウンロードする 上記のURLから最新のソースとパッチファイルをダウンロードします。 PHP5とPDO関数の導入が必要のようです。まぁそれは当たり前でしょうな。 dbo_sqlite3.5.php correct_resultset.dbo_sqlite3.patch ダウンロードしたファイルはどこか同じディレクトリ内に置いておきます。dbo_sqlite3.5.phpはdbo_sqlite3.phpにリネームします。 パッチを当てる Linuxの方はダウンロードしたファイルがあるディレクトリをカレントにして下記のコマンドを実行してください。Windowsでは。。。ググってください。 # patch > correct_resultset.dbo_sqlite3.patch 組み込む パッチを当てたらapp/models/datasources/dboに放り込みます。(ディレクトリが無かっ
TeraTermはポピュラーな端末です。 Linuxサーバ、アライドテレシスのルータや秋月電子の電光掲示板キットに繋ぐときに重宝します。 主にLinuxサーバとの通信が多いので、たまにファイルの送受信がしたいときがあります。そんな時にTeraTerm上でZMODEMを用いたファイル転送が便利です。 導入 まず、Linuxマシンにlrzszなるパッケージをインストールします。 会社ではCentOSのサーバをいじったので、yumコマンドを実行してみました。 # yum install lrzsz とりあえず、あっさりインストールできました。 使い方 さて使い方ですが、ホストサーバにファイルを送信したい時は # rz と打ち込むことで rz waiting to receive.**B0100000023be50 てな具合に受信待機になるのでTeraTermでZMODEM転送の送信から送信ファイ
Linux+PHPで携帯向けの動画配信のスクリプトを作りました。 docomo,au,softbankの3社の3G携帯に対応しました。 結構苦戦したのでメモっておきます。 構築環境 CentOS 5 PHP 5.1.6 Apache 2.2.3 ちなみに動画はffmpegでエンコードしてます。 3キャリアの動画形式 2008年11月現在で調査した内容です。 フォーマットに関してはどのキャリアもMP4系で似たり寄ったり。 docomo [参考]コンテンツ仕様 | サービス・機能 | NTTドコモ コンテナ形式は3gppでMIMEタイプはvideo/3gpp。 容量は多くの機種で500KBまで。最近の機種は10MBまで対応。 au [参考] KDDI au: 技術情報 > EZムービー コンテナ形式は3gpp2でMIMEタイプはvideo/3gpp2。 容量は1.5MBまで。 softbank
さて、前記事ではキャリアごとのダウンロード方法の特徴をつかむことができました。 今回はそれを元にスクリプトを修正します。 スクリプトの改良 docomoのサイトによると、RangeRequest(部分リクエスト)に対応するにはLast-Modified、Accept-Ranges、Content-Type、Content-Rangeの各ヘッダが必須となっています。 念のためですが、ApacheはE-Tagも吐き出しているのを確認したので、それも追加することにします。 auも部分リクエストに対応する必要がありますが、docomoの対応と同じだと思うので、docomoが出来ればauも一緒に対応できそうです。 If-Unmodified-Sinceヘッダに対する振る舞いは良く知らないので適当にあしらっておきました。 そんなわけで改良版のスクリプトは以下のような感じ。($file_path, $m
解決した後に見つけたのですが、少し前にも俺と同じ理由で同じくらいの時間ハマってた人がいたようです。。。 崖っぷちWEBデザイナーブログ | CSS「ul li」IE Firefox ズレ解消メモ ul,li要素のpaddingとmarginを共に0にしているにも関わらず、IEではli要素の左側にマージンが取られてしまう現象に2時間くらい悩まされました。 この問題はlist-style-position: insideが設定されている場合に発生します。 これはバグではなくIEとその他のブラウザでの実装の違いによるものと思われます。list-style-type: noneを指定してもIEではマーカーの分のマージンが確保されます。 以下に例を示します。 <ul style="border: solid 1px #000; margin-left: 0; padding-left: 0; lis
でも、なんかうまくいかない・・・ぞ? CakePHP 1.2.0.7296 RC2において。 どちらのリンク先もbeforeFilter()で出力バッファリングを仕掛けて、afterFilter()で回収した後にmb_convert_encoding()で変換としていますが、ob_get_clean()で何も入ってきません。。。 試しにob_start()の直後にechoしてみるとその内容はちゃんと回収できます。 つまり、その間なにも出力されてないわけですね。 そこでソースコードをさらっと読んでみたんですが、Controllerクラスではなにやら$this->outputに出力内容を押し込んでいるのが見受けられました。またViewクラスでも同様のことをやっていました。 どうも出力する内容は全部$this->outputに収められるようです。 試しにこんな感じにしてみました。 functio
このページを最初にブックマークしてみませんか?
『Rain or Shine』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く