たれぱんのびぼーろく

わたしの備忘録、生物学とプログラミングが多いかも

プログラミング

d3.jsとデータの書き換え

入力値やインタラクションの結果をデータとグラフに反映する仕組みはd3.jsに備わっているのか否か 結論 d3.jsには双方向バインディングに該当する仕組みがない. dataの取得・更新とrebinding、rebinding後の更新が必要. うーむ There’s no data-binding magi…

SVGのtextをその場で書き換える

下のtext要素をクリックしてごらん、なんと編集できるよ!! 私はtext要素。でも編集できるよ! (クリックしてみ) わかる人向け: 仕組みを一言でいうと contentEditableなHTML要素の下にtext要素を配置し、このセットをforeignObjectへ入れてSVG要素下に吊るす…

Javascriptの日時 (date & time)

Javascript標準で日時を扱うにはDateオブジェクトを使う. 使い方は割と簡単で、いくつか問題点はあるけどとりあえず使う分にはまぁ 概要 こんな風になっている inputはローカル時間 (日本時間とかアメリカ時間とか。時差のようなもの) の情報を持っているが…

JavaScriptのgenerator入門

generatorの概念 generator(という概念)とは、繰り返しを簡単に・見通し良く記述する仕組みである. generatorの利用 generatorを利用することによって 繰り返しオブジェクト(イテレータ)の容易な作製 見通しの良い非同期処理コード記述 が可能になる. gene…

Node.js プロジェクト開始手引き

git init npm init gitは.git directory, npmはpackage.json が命 これさえあればgitとnpmが消えても大丈夫(のはず) でもコード自体が吹き飛ぶと元も子もない. なのでGitHubのプライベートリポジトリをリモート. これで万事オッケー! 復旧したいときはGitHu…

再代入できる世界とできない世界の違い

今、数学の世界にいます x = 1 y = x + 2 yは? => 3 (当然だろ) ----------------------- 今、プログラミングの世界にいます x = 1 x = x + 2 xは? => 3 (当然だね) 相変わらず、プログラミングの世界にいます x = 1 ■■■■ x = x + 2 xは? => …確定しない…

Node.js stream

内部バッファ internal buffer, internal queue internal-bufferにデータがたまっていく. highWaterMark以下の場合、内部的にstream.read()がcallされる. 新しいstreamを作る際、read()をoverrideし、_read()内でstream.push(chunk)をcallすれば、internal-b…

amazon pay

改名 2017-02-22~ Amazon Payに改名しました (元は Amazon ログインアンド ペイメント) 最短2クリックでオンラインショッピングが完了できる決済サービス「Amazonログイン&ペイメント」の名称が、「Amazon Pay」に変更されることとなった。 Amazon動き着々…

アップロードしたファイルの破損

ネットワークを介してファイルをアップロードする. この時、ファイルは破損しうるのではないか? バックアップのためにアップロードしたのに、壊れてたら何の意味もない! これを防ぐ(破損に備える)ための仕組み色々ある MD5 ハッシュ値によるチェック. MD…

Bluetooth LEを各種OS, マイコンで使う

Windows UWP(Universal Windows Platform)がBLEに対応、さすがU!W!P! また、Bluetooth GATT API で Bluetooth LE デバイスと連携することによって、次のことが可能となります。 * サービス/特性/記述子の探索 * 特性/記述子の値の読み取りと書き込み * 特性…

ESP32の静電容量式touch sensor with esp-idf

ヘッダーファイル github.com 実体(.c) github.com 例1. github.com 例2. github.com ESP32datasheet appendix https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf#page44 自分でドライバー書いちゃいなYo! ドライバーが…

HoloToolkitのシェーダーたち

HoloToolkitにはシェーダーも含まれている. こいつらはなんだ? 解説記事が日英ともに全然ないぞ? では調べるしかあるまい… 現時点での結論 Fast Configurable shaderを使えばええんでない? 以上. 状況 階層は Utilitiesの下. HoloToolkit-Unity/Assets/Ho…

HoloLensでUnityちゃんに歌の口パクしてもらった

HoloLensでキャラクターに口パクさせてみた 歌に合わせた口パクのさせ方 調べる前に私が思っていた素朴なイメージ: 音源に合わせてミクさんの口を引っ張り、パラパラ漫画みたいに編集してく. 技術の進歩は素晴らしいもので… 音源から発音を抜き出す仕組みが…

unity

ぽちぽちしながら3Dアニメーション/ゲームが作れる. 開発言語 事実上、2種類. 哀しきBoo BooというPython likeな言語があった. 2017-02-01現在、deprecatedではない. しかし、消えつつある言語のよう. Documentation Default language for code snippets in …

HoloLensの開発 with javascript

JSでホログラムは創れる (我ながらキャッチーな言葉) HoloLensを始めとした、Windows Holographicでアプリを作成する. 嬉しいことに、javascriptでそれが可能なんです。 Windows Holographic Windows Holographicsにおけるアプリ Windows Holographicのアプ…

プログラムを改修する

思いつきでガリガリ書いていたプログラムが、案外いい感じになり、リファクタリングしたくなった. 保守という概念を覚える前に書いたコードを、保守出来るようにしたい. こんなとき、どうすりゃいいのだろう. リファクタリング コードの保守・機能追加をする…

配列から特定の要素を取り除く ―ver. ES2016―

配列から特定の要素を乗り除く (例. [a, b, X, d] -> [a, b, d]) 方法を複数紹介する。 一覧 Array.filter (ES2016) Array.indexOf + Array.splice 詳細 Array.filter (ES2016) EcmaScript2016で新登場した、Array.filterメソッドを利用する方法. // ary配列…

d3.js version 4

モジュール Arrays (Statistics, Search, Transformations, Histograms) Axes Brushes Chords Collections (Objects, Maps, Sets, Nests) Colors Dispatches Dragging Delimiter-Separated Values Easings Forces Number Formats Geographies (Paths, Projec…

プログラミング言語を学ぶ

より深い言語学習のコツ 言語の実装に目を向ける なんの言語で実装されているか / written in ソースコードを見る /

cognitoでログイン/セッション管理

ユーザーを限定するwebサイト・webアプリはログインの仕組みが必要になる. AWS cognito, 特にUser Poolsの機能でこれが実装できる. Cognitoとは何ぞ?という方はこちら一読を推奨. tarepan.hatenablog.com Cognitoを用いたセッション管理の大枠 インターネッ…

AWS Cognito 入門 -概要と詳細へのリンク-

Amazon CognitoとはIDサービスとデータ同期を提供する. Amazon Cognitoの機能 いくつかのサービスが関わりあって存在. 機能をジャンジャン追加するので名前の整合性が(ry Amazon Cognito Cognito User Pools (Your User Pools) Cognito Identity (Federated …

Cognito User Poolsの機能と使い所

Amazon Cognito User Poolsとはユーザー名簿管理サービスである. User Poolsの機能 User Pools単体を用いることで 名簿の作成・管理 ユーザーの追加・メール認証・削除 password管理 ユーザー属性の管理・呼び出し ログイン/セッション管理 などが出来る. 他…

AWS(クラウド)で手軽にwebアプリを作る

概要 webアプリ(ブラウザで動くアプリ)を思いついた、作ろう。 ブラウザで全部の処理させるのって、すごい大変そう。 サーバーを借りて色々する…のかな、難しそう。 →クラウド(AWS)で手軽にwebアプリが作れる! 具体的に アマゾン ウェブサービス / AWSを使…

Node.jsとAWS Elastic Beanstalk

パッケージのインストール package.jsonのdependencyに書いておけばEB側で勝手にインストール、すごいぞEB package.json ファイルがある場合は、Elastic Beanstalk では依存関係をインストールするために npm install が実行されます。 link アプリの起動 特…

javascriptと最大値 ver. 2016 - オブジェクトの配列も -

Math.max()が基本 最近増えた便利記法: スプレッド演算子 (...) Math.max() 引数の最大値を返します. 引数: 数字 (カンマ区切り, 配列不可) Math.max(1,2,4,7,3) == 7 配列の最大値 新しい方法 スプレッド演算子 (...) を利用. ES6から登場したスプレッド演…

データの更新・遷移・引き出し/D3.js

データの更新 Data(data, key)のkey指定を利用 nebuta.hatenablog.com データの遷移 transition treeの遷移 Interactive d3.js tree diagram - bl.ocks.org データの引き出し data() 引数無しでselectionの第1groupからjoinされたdatum配列を返してくれる. h…

ファイル操作 / PowerShell

こっちみれば十分 codezine.jp ディレクトリの操作 ディレクトリの変更 ファイルの操作 新規ファイルの作成 空っぽのファイル New-Item 中身アリのファイル

有向非循環グラフの可視化

概要 有向非循環グラフの可視化(visualization)について手法と記事のまとめ。 有向非循環グラフ Directed Acyclic Graph architecture topolodical sort layer assignment vertex ordering within layers median vertex positioning within layers Sugiyama …

Node.jsとは

固いまとめ Node.jsとはJavaScript実行環境である。 Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. https://nodejs.org/en/ Node.jsはgoogle Chrome (webブラウザ)にも搭載されているV8エンジンを採用. Node.js自体は何の言語…

webと3D

webにおける3D表現を扱う仕様・ライブラリについて 概要と詳細へのリンク X3D関連 X3D X3DOM webGL関連 webGL : webGLとは - ぱんだのびぼーろく openGL openGL ES Three.js webVR関連 webVR A-Frame 3D"モデル"に関わる仕様 どのような仕様・表記法で複雑な…