まゆたまガジェット開発逆引き辞典

電子工作やプログラミングのHowtoを逆引き形式で掲載しています。作りたいモノを決めて学んでいくスタイル。プログラマではないので、コードの汚さはお許しを

Processingで作った画像をPNGとPDFで書き出す

よく忘れてしまうのでメモです。 redraw(); を使っている場合はredraw();を書いた箇所によってはエラーになったり、何も描画されてないことになったりするので注意です。こちらprince9.hatenablog.com のコードでできた画像をPDF書き出ししてみました。 PDF…

Processingでランダムな個数、かつ特定の色の中からランダムな色で描く

図形をランダムな個数生成して、色もランダムにしたい場合です。 色は特定の色からランダムに選ばれるので、多少の重複はあります。まずはこんな感じで1つのパーツにつき1色の場合。 //最大個数分、または色のパターンの数配列を用意する int[] col1 = new i…

Processingでランダムな回数ぶん繰り返す

Processingでランダムな回数ぶん繰り返し描画します。 マウスをクリックするたびに四角形の個数が変わります。 メモです。 int col; void setup() { size(600,600); noLoop(); } void draw() { background(255); //0から10のランダムな回数ぶん、rectを繰り…

processingで同じ範囲の乱数を複数パターン生成する

0から10までの乱数が欲しいけど、変数を同じにすると同じパターンになっちゃう・・・というときの解決策です。 同じ範囲の乱数を複数パターン生成しています。下記の場合、0と1の乱数を10パターン作っています。重複はしていますが、変化のパターンは異なり…

Processingで特定の色の組み合わせからランダムに色を選ぶ

Processingで特定の色の組み合わせからランダムに色を選ぶ方法です。 4色の中からランダムに選ぶ、みたいなときに使います。基本ですが、私がswitch使ってめんどくさいことをしてたので、違うやり方を忘れないようにメモ。 //ランダム用 int col; //色の配列…

Processingで図形を特定の個数&ランダムな位置に描く、その2

Macのビジュアルプログラミング環境「Quartz Composer」では、図形をグループ化してそれごと動かすというのが簡単にできます。 が、Processingだとfor使って計算しなくちゃアカンからめんどいのーと思ってこのハコの記事 prince9.hatenablog.com を書いてい…

Processingで四角形を3つくっつけてハコをつくる

今度は四角形を3つくっつけて、ハコをつくってみました。 forの使い方がポイントですね。一定間隔で図形を並べる場合はforを使いますが、うちわけは下記のようになります。 これはサイズ100の四角形を50ずつ空けて、3つ描いています。 30は上と左の空き量(描…

Processingで四角形を2つくっつけて、複数ランダムに描く

タイルに色を塗ろうと思ったのですが、配色がメンドくてプログラムに任せた第二弾。 今度は四角形タイルです。書き換えればパズルもいけそうですね。quadを2つくっつけて四角形にしています。例によってマウスクリックでランダムに形が生成されます。 参考に…

Processingで円グラフを描く

半円の向きをランダムにしてくっつけて、1つの円にしようと思っていろいろやってたら、円グラフを描くやり方が公式で解説されていた PieChart \ Examples \ Processing.org のでそちらを参考にしました。こんな感じです。半円の角度と色がマウスボタンを押す…

Processingでクレヨンスクラッチもどきをつくる

先日テレビでクレヨンスクラッチをやっていたので、processingで実装してみました。 実際のクレヨンスクラッチは、1.適当に色つきクレヨンで塗る 2.その上から黒のクレヨンで全体をぬりつぶす 3.クギなどでひっかくという手順ですが、 Processingでは、0.「…

Processingで円が重ならないようにランダムに描く

Processingで円が重ならないようにランダムに描きます。 2点間の距離を出す「dist」を使って、2つの円の半径の合計が2点間の距離より小さくなればOKです。 つまり、cとpの2点間の距離 > cの半径+pの半径の場合に描画されます。 processing本家の掲示板にお世…

Processingで図形の色を特定の色の中からランダムに変える

今回はメモ程度。 例えば、赤・緑・青・黄色の中から1色ランダムに選びます。 条件分岐のswitchと配列を使います。 マウスクリックで色を変更します。 //色ランダム int colrd; void setup() { size(600, 600); background(255); smooth(); noLoop(); } void…

Processingでランダムに記号を描く2

形と色がランダムに変わるようにしました。 ストライプに関してはforで書いていたのですが、色がうまいこといかなかったので、ひとまずは力技の汚いコードです。 //グリッドのサイズ int gridSize = 50; //ランダムの値 int rd1; //色ランダム int colrd; //…

Pressingで水玉模様を描く

水玉とチェック柄をまとめてみました。書き方は同じで、rect/ellipseを変えるだけです。水玉模様 //水玉ひとつのサイズ int rSize = 60; int rnum = 600 / rSize; void setup() { size(600, 600); background(255); smooth(); noLoop(); noStroke(); } void …

Processingでランダムに記号を描く

マウスをクリックすると4つの図形と非表示がランダムに切り替わります。 ellipseModeやrectModeを調整するのがちと大変かもですが、さほど難しくありません。 forの使い方をお勉強するのにいいかもしれません。 //グリッドのサイズ int gridSize = 60; //ラ…

Processingでハコをランダムに複数描く2

前回は色は固定で表示/非表示の切り替えをランダムに行っていましたが、今回は色の切り替えと表示/非表示がランダムに切り替わるようにしました。 色はfill()の色だけでなく、チェック柄も使えます。 模様を色として使う場合、ハコのそれぞれの面の形にマス…

Processingでチェック柄を描く

ハコのテクスチャにするつもりで、Processingで赤と黒のチェック柄を描きました。 条件分岐をもうちょいスマートに書きたいところ。 int rSize = 60; int rnum = 600 / rSize; void setup() { size(600,600); background(255); noLoop(); noStroke(); } void…

Processingでハコをランダムに複数描く

前回のハコを応用して、ハコの面がランダムであったりなかったりなモノを作ってみました。 メモリ的に「描画しない」という方法がちと分からなかったので、noFillとnoStrokeで強引にやってしまいました。 コードを整えてないので、かなり汚いです。 箱シリー…

Processingで特定の個数をランダムな位置に描く

Processingでほとんど使わなかった機能のことがすっかり頭から抜けていて、しばらく格闘してしまったのでメモ。円や四角などの図形を特定の個数ぶんだけ、ランダムな位置に描きます。 noLoop();の存在をすっかり忘れていた・・・マウスボタンを押すと再描画…

Macで初めてのPython!

所用でPythonに触れる必要があったので、インストールから実行までメモめも。■Pythonのインストール 1.こちらからDownloadリンクをクリックして、ダウンロードする www.python.org 2..pkgをダブルクリックして、インストールする(Nextを押していけばOK)■ディ…

マイナスから始める機械学習入門5 Node-REDのノードについて

Node-REDのデフォルトノードについて Node-REDのデフォルトのノードを書き出してみました。私はDB系の処理はあまり行わないので、それらの正確性は保証できかねます。すみません・・・ デフォルトのノード以外のものは、こちら Library - Node-RED を参照す…

マイナスから始める機械学習入門4 Node-REDを使って簡易Botをつくる

Node-REDとWatsonを連携させる際にBotを作りたいので、ひとまずNode-REDで簡単なBotを作りたいと思います。 私のTwitterタイムラインに「ズンドコ」が流れてると、私のアカウント宛に「きよし」と返してくれるものです。 Node-REDで「ズンドコきよし」 ログ…

マイナスから始める機械学習入門3 Node-REDで遊ぶ

Node-REDとは? Node-REDとは、IBMが提供している、ブロックを繋ぐことでコードをあまり書かずにプログラミングができるものです。 Bluemixの機能の一部ですね。node.jsで動いているそうです。コードを書く場合はJavaScriptで記述します。注意点として、 右に…

マイナスから始める機械学習入門2 Bluemixで遊ぶ

WatsonとBluemixとは? ガチでコードを書き始める前に、IBMのWatsonで感覚を掴んでみたいと思います。 Watsonとは、専門家の思考パターンを学習させて意思決定に役立てるものです。 人の脳をコードで再現するAI(人工知能)とは異なるため「人工知能」ではない…

マイナスから始める機械学習入門1 Pythonを使えるようにする

あるプロジェクトで必要にかられて機械学習に手を出すことになりましたので、メモ代わりに。【対象】 ProcessingやoFでコードを書いたことはあるが、ライブラリを自分で作ったことはない 機械学習なにそれおいしいの? 日本人だから英語わからんし 微積?ベク…

wiki系テーマ「WP Knowledge Base Theme」のカスタマイズについて

wordpressでwiki風のデザインテーマである「WP Knowledge Base Theme」を使っていてハマったので、使い方メモです。 そのまま新規投稿したり固定ページを作ったりしても、デモページのような見た目にはなりません。 以下の手順が必要になります。 固定ページ…

近接センサを使う

iPhoneの前カメラ付近にある近接センサに手や顔などを近づけるとアクションが起こるものです。 どうやら近接センサが物体を検知しているときは、デフォルトで画面が真っ暗になるようです。 しかも相当手を近づけないと反応しないので、距離を測ることができ…

配列を検索する

配列にフィルタをかけたい場合は、こうなります。 let array = ["愛知", "北海道", "東京"] //北という文字が該当する場合 let arPredicate = NSPredicate(format: "self contains[c] '北'") //その要素を抜き出しなさい let arArray = (array as NSArray).f…

ランダムなタイミングで何かする・ランダムな間隔で何かする

ランダムなタイミングで何かすることと、ランダムな間隔で何かするというコードを書いてみました。 ランダムな間隔で何かする、のほうはわりと力技で、他に良い方法がある気がします。まずランダムなタイミングで何かする。例えば、ボタンを押してからランダ…

しゃべらせつつ口パクアニメーション

Siriにしゃべらせつつ口パクアニメーションを同期させるのを試してみました。 とはいっても、母音に合わせてアニメーションの口を変える・・・などということはしていません(汗本来はまばたきは目が開いている画像・半目の画像・閉じてる画像の3枚が良いので…

OpenCVを使ってリアルタイムに顔認識

やはりリアルタイムに認識するのは重いですね。そりゃそうですよね、iPhoneだもの。1.いつものようにプロジェクトファイルを作って、いったんXCodeを終了する 2.ターミナルを開き、以下を行う [sudo] gem install cocoapodsと入力してリターンキーを押す pod…

OpenCVを使う

Swift+iOSでOpenCVを使ってみます。 最初はcocoapodsをインストールしていたのですが、どうにもリンクエラーになってしまって opencv2.frameworkを追加する以下のような方法でやることにしました。1.こちらにアクセスし、 新しいバージョン(2015年6月の時点…

追記あり;Bluetoothでデータ送受信

★ func peripheral(peripheral: CBPeripheral!, didWriteValueForCharacteristic characteristic: CBCharacteristic!, error: NSError!) ...と @IBAction func writeBtnTapped(sender: UIButton)...の項目を追加して、セントラル側からペリフェラル側へ デー…

Google検索を使ってTwitter検索してヒット数を表示

以前Objective-C用に書いたモノのSwift移植です。辞書と配列は大変だった・・・ TwitterSearchAPIはヒット数まで出してくれないっぽいので、強引にGoogle検索に突っ込んでます。 println(responseData)とやると検索結果すべてのデータが取れるので、そこから…

スクリーンセーバー・スライドショーもどき:テキストのフェードイン/アウト

以前Objective-c用に書いたもの(テキストアニメーション部分のみ)をSwift用に移植します。 テキストが一定時間ごとにフェードイン/アウトして、これもなんちゃってスクリーンセーバーです。スライドショーかな、むしろ。テキストを絵に変換してあげてもいけ…

Swift目次を作成しました

Swiftも目次を作成しました。ほぼ逆引きですね。随時追加していきます。・タップした座標を獲得し、特定の範囲内かどうか検出する http://d.hatena.ne.jp/prince9/20150517/1431817999・スクリーンセーバー的なものを作る http://d.hatena.ne.jp/prince9/201…

スクリーンセーバー的なものを作る

しばらくプログラミングから離れていたので、これもまた地味に時間かかった・・・ あまりよくない書き方をしているような気がするので、もし訂正箇所があればコメント等でお願いします。NSTimerがもっと正確な時間で作動して欲しいという場合は、 ・var time…

タップした座標を獲得し、特定の範囲内かどうか検出する

地味に大変だった・・・UIImageViewに画像を配置した状態でも検知しました。以下は、 ・UIImageViewに画像を表示、タッチ後一瞬画像が変わる(タッチされたことが分かるように) ・タッチされた座標を取得 ・タッチされた位置が特定の範囲内かどうか検出する →…

GoogleChartのメーター表示で%表示する

GoogleChartのメーター表示、gaugeで%表示をします。 %表示をするにはGoogle Visualization APIのNumberFormatを使います。 var formatter = new google.visualization.NumberFormat( {suffix: '%',pattern:'#'} ); formatter.format(data,1);gaugeで使った…

Google Search APIで検索ヒット数を表示

Google Search APIで検索ヒット数を表示させてみたくて、調べてみました。 その数を%で表示するのも付け足してみました。 こちらとこちら(公式)を参照させて頂きました。 この結果をなんとかしてGoogle Chartに組み込むことはできそうです(が、やれてない)。 <html></html>…

Googleチャートの組織図(Org Chart)の外観を変える

GoogleチャートのOrgチャートの外観をCSSで設定します。 これで影Uzeeee!とかフォント変えたい!とかから解放されますね。 (全体のフォントサイズは変えられないっぽいです。個別には変更可能ですが) 下のテーブルとのリンクをベースにしているため、ややコー…

Googleチャートで組織図とテーブルをリンクさせる

こちらを参照させて頂きました。ありがとうございます。 組織図のサブ項目(以下の図だと「孟徳」)とテーブルのデータにリンクを貼るってのに少し手間取りました・・・ 組織図の色はてきとーです。下のスクショのように図の大きさを設定する場合はの中で。 <html> <head> <meta charset="UTF-8"> <script type='text/javascript' src='https://www.google.com/jsapi'></script></meta></head></html>…

Googleチャートで組織図とテーブルをリンクさせる2

前回の図に引き続き、テーブルのレイアウトをカスタマイズしてみました。 こちらを参照させて頂きました。 配色は分かりやすいように極端にしてあります。 テーブルのレイアウトはCSSで作っておいて、「var table = new google.visualization.Table」〜の前…

GoogleChartでスプレッドシートを使ってグラフを描く

GoogleChartでスプレッドシートを使って動的なグラフを描こうといろいろオベンキョウしてたときにハマったのでメモ。 ドットインストールを見つつやっていたのですが、Googleドライブになっていろいろ設定が変わったようで。 コードはドットインストールと変…

配列をフィルタリングする

配列を検索して、特定の文字列を含むもののみ取り出す方法です。 以下の配列の中から「魔女」を含むもののみ取り出します。 NSArrayのcontainsObjectでは含まれているかいないかの判断だけでしたが、これで取り出すことができます。 //配列 NSArray *ar = [N…

数秒後に特定の処理を実行する

特定の機能を数秒後に実行する等の処理で使えますね。 //1秒後にhogeを実行 [self performSelector:@selector(hoge) withObject:nil afterDelay:1];

カスタムセルにボタンを追加して処理を行う

例えばセルに表示させたツイートにFavボタンをつけたいなど、カスタムセルにボタンを追加したい場合の処理です。 カスタムセルの作り方はこれをベースにして、追加させるところのみ書きました。まず、ボタンを設置してTagを設定します。ここでは7にしてあり…

UILabelを大量に作る

UIImageを大量に作るにはここを改良してファイル名生成のところをfor文で回してあげれば良いのですが、UILabelはちょっとめんどうです。 UILabelを配列の数だけ生成し、位置と角度をランダムにしてみました。※Labelを破棄する場合の処理を追加しました。 以…

Objective-CでYahooテキスト解析APIのキーワード抽出を使う

結果がXMLで出て来るので、それをどう文字列なり配列にするかがキモですね。 didEndElementで出力結果をどう表示させるか設定する場面でミスると、出力結果を最終的に処理する部分で苦労することになるので、そこだけ注意です。流れとしては、 1.ここの「作…

元の文を入れ替えて違う文にする

またテキストネタです。Objective-Cでマルコフ連鎖をやろうと思ったんですが、どうも上手くいかなったので似た感じで「元の文を入れ替えて違う文にする」のをやってみました。 流れとしてはこんな感じ。たぶんコードがめちゃくちゃだと思うので、だめだこり…