2015-01-01から1年間の記事一覧

関数だけで四則演算をやってみた (後編)

前回の続き 乗法演算 さて、掛け算はMultiply関数を使います。 var Multiply = function (m) { return function (n) { return function (f) { return m( n(f) ); }; }; }; 二つの数値の積を求めるには、次のようにすればいいです。 ToNumber(Multiply(_0)(_1…

関数だけで四則演算をやってみた (前編)

前回 http://d.hatena.ne.jp/dhrname/20151216 四則演算について 今回の記事では、小学校で習った算数を思い出しながら、単純な四則計算をJavaScriptのコードで書いていきたいと思います。もちろん、+や-などの演算子を使わず、関数だけで実装します。 数値…

関数だけで論理演算をやってみた

ビット演算や演算子を使わずに関数のみの論理演算 前回は、JavaScript を使って、True 関数とFalse 関数を作りましたので、今回はAnd 関数などを作っていきます。ビット演算子などは使わずに、関数だけで、論理の演算をやってみましょう。 まずは、前回「Jav…

SIE 23 の公開について

最新版のSIE 23 を公開 本日、SIEプロジェクトから、SIE 23 がリリースされました。新しく、accumulate属性とadditive属性が実装されています 無償ダウンロード sie23.zipをダウンロードして、解凍か展開した後、sie.jsをお使いください。なお、中に入ってい…

SIE 23 betaの公開

ベータ版のSIE 23 betaを公開 本日、SIE 23のベータ版として、SIE 23 betaを公開しました。今回は主に、新しい属性などをサポートしています。 無償ダウンロード 以下から、ダウンロードしてください。http://osdn.jp/projects/sie/downloads/64133/sie23.zi…

accumulate属性とadditive属性のサポート

新しい属性 開発中のコードで、二つの新しい属性をサポートしました。これは、それぞれ、アニメーションがリピートされるたびに、属性値を蓄積していくaccumulate属性と、アニメーションが開始されるたびに、現在の属性値を加算していくadditive属性です。 …

JavaScriptの関数だけで、データ構造を書いたみた

データ構造と関数 今回は、タイトルのとおり、データ構造を関数だけで書いてみたというお話です。この記事では、リスト構造を書くことを目指します。ついでに、条件分岐と繰り返しも関数だけで書いてみましょう。 http://jwodder.freeshell.org/lambda.html…

SIE の計画について

SIE プロジェクトのマイルストーン作成 SIE プロジェクトで、新しいマイルストーンを作りました。詳しくはマイルストーン一覧をご覧ください 目標をしぼりこむ マイルストーンごとに、一つ目標をしぼり込んで立てています。これは目標を小さく分割して、短期…

SIE 22 の公開

最新バージョンの SIE 22 本日、SIE の最新バージョンとなる SIE 22 を公開しました。バグの修正や、repeatEventのサポートが主な修正点です ダウンロード こちらから、sie22.zip(506.7KB)をダウンロードしてください。その後、圧縮ファイルを展開しますと、…

プロジェクトの計画について

SIE プロジェクトの計画はマイルストーンで SIE プロジェクトでは、約2ヶ月前から、チケットでマイルストーンの管理をしています。これは、プロジェクトの計画を立てるためのものです。マイルストーンという単位で、計画を区切っています。 たとえば、「バー…

SIE 22 betaの公開

ベータ版であるSIE 22 beta 本日、ベータ版としてSIE 22 betaを公開しました。このバージョンは不安定かもしれませんので、ご注意ください。 repeatEventの実装などが大きな変更点です。 ダウンロード https://osdn.jp/projects/sie/downloads/63998/sie22.z…

by属性に関する不具合の修正

from属性なしでby属性を使ったときに不具合 from属性の規定値に不具合があったため、fromなしのby属性使用時に、問題が起きました。そこで、規定値を見直して修正しました。 https://osdn.jp/ticket/browse.php?group_id=3313&tid=35626 この修正は次回のリ…

repeatEventの調整

repeatEventの実装について repeatEventの実装について、調整が済みました。これで、repeatEventが使えるようになるはずです。 この修正は、次回のリリースで反映されます 今後の予定 by属性の不具合を修正します

SIE 21を公開

SVG Eventに対応したSIE 21 本日、新しいバージョンとして、SIE 21 を公開しました。beginEventなどSVG Eventをサポートしました ダウンロード sie21.zipのZIPファイルをダウンロードした後、展開して、sie.jsを手に入れてください リリースノート 詳しくは…

SIE 21 betaを公開

ベータ版のバージョン21 betaのリリース さきほど、SIE 21 betaを公開しました。ベータ版ですので、不安定になるかもしれません。 もし、問題が起きたら、コメントでもかまいませんので、ご報告ください。 なお、Readme.htmlを見たとき、リンク切れで画像が…

SVGEventの実装について

アニメの開始イベント察知するbeginEventやendEventのサポート アニメーションが開始したときに発火するイベント、beginEventや、終わったときに発火するイベント、endEventの実装をしました。 また、同期ベースの文法を使ったbegin属性などもサポートしてい…

SIE 20 の公開

SIEのバージョン20が公開 本日、SIE 20 をOSDNにて、公開しました。set要素の不具合などを修正しています。 ダウンロード 以下からsie.zipファイルを手に入れて解凍してください。sie.jsが本体です sie20.zip (498.8KB) リリースノート 変更履歴などを書いて…

SIE 20 betaの公開

ベータ版のSIE 20 beta 本日、SIE 20 betaを公開しました。ベータ版ですので、不安定かもしれません。前のバージョンに比べて、イベント関連を修正しています。 SIE 20 betaをダウンロード https://osdn.jp/projects/sie/downloads/63783/sie20.zip/ からダ…

イベントのバグの修正

修正が終わりました さきほど、イベントのバグについて、不具合を修正しておきました。アニメーション要素のbegin属性などでイベントを指定できるようになります。 この修正は次回のリリースで反映される予定です。 今後の予定 リリースのため、圧縮の作業を…

getErrorTimeメソッドの代わりにcurrentFrameプロパティの実装

getErrorTimeメソッドを使わずに Jasmineを使ったスペックにおいて、getErrorTimeメソッドをイベントに使うと通らなかったため、代わりにcurrentFrameプロパティを活用することにしました。 つまり、問題が起きたので、getErrorTimeメソッドを一度、削除して…

getErrorTimeメソッドの実装について

イベントを実装するために イベント同期を実装するためには、フレーム進行と現実時間の流れの誤差を検出する必要があります。 たとえば、今、フレームが早く進みすぎていて、実際の時間とズレがあったとします。イベントのtimeStampプロパティを参照すると、…

SIE 19 の公開

IE11 に対応したバージョン19を正式に公開しました 本日、SIEプロジェクトにおいて、最新版のSIE 19を公開しました。今まで未実装だったIE11でのset要素と、animate要素をサポートしています。 無償ダウンロード ダウンロードは「sie19.zip」で、できます (4…

SIE 19 betaを公開

バージョン 19 のベータ版を公開しました 本日、SIE のバージョン19のベータ版にあたる、SIE 19 beta を公開しました。 IE11でのアニメーションがサポートされています。たとえば、モーフィング風のアニメーションができるようになります。 ダウンロード OSD…

テストスイートのチェックと調整

チェックして調整 テストスイートで、アニメーションがうまくいくかどうかのチェックをしています。ほぼ、targetElement属性やxlink:href属性の実装も含めて、調整が済みましたので、本格的な試験に取り掛かります。 最初の段階で、私がチェックします。これ…

animateColor要素の実装など

今日までにやってきたこと animateColor要素を実装しました。現在は、テストスイートで、animate要素とanimateColor要素のテストをやっています。 ひとまず、discreteモードでバグを見つけましたので、それを修正しておきました。 今後の予定 テストスイート…

今日やったことなど

animate要素で色の処理 animate要素で色の変化ができるように、処理を付け加えました。これをanimateColor要素の代わりとして使えるようにします。 animateColor要素の実装について animateColor要素は、animate要素で代替となるので、W3Cの仕様によれば、今…

サイト名のドメイン変更

sourceforge.jpからosdn.jpへ SIEプロジェクトでは、OSDNさんのサイトを利用させてもらってますが、5月からは、sourceforge.jpというドメイン名から、osdn.jpに変わったそうです。 詳しくは以下のページをご覧ください。 サイト名称変更に伴うURL、ドメイン…

Durationの翻訳表記を、「継続時間」に変更

SIEのソースコードのコメント表記を「継続時間」で統一 今まで、durationの訳として、「持続時間」を使ってきたのですが、JISの規格(注1)を見ると、「duration (継続時間)」という言葉を見つけました。 そこで、ソースコードのコメントを、「継続時間」と…

values属性の実装

SIEでvalues属性の実装 現在、SIEでは、values属性の実装をしています。この実装が済めば、具体的に要素の実装に取り掛かりたいと思っています。 属性の規定値については、対策を考えているところです。おそらく、オブジェクトに、属性の規定値を指定する方…

呈示値関連の実装をしました

keyTimes属性などの実装 今のところ、ニュートン法を使って、calcMode属性のスプラインを開発しました。 これで、keyTimes属性とkeySplines属性とcalcMode属性の実装について、ほとんどが済みました。 これらの属性を使えば、キーフレームアニメーションの速…