YKpages

ロボット分野で勉強したことのまとめ

Rubyの始め方 (Windows, Jupyter notebook)

はじめに

Web関連で話に聞くプログラミング言語Rubyが気になっていたので、使ってみる。

とりあえず、インストールをして、Jupyter notebookで使えるところまでを確認する。

環境

  • Windows10
  • anaconda3 (4.3.8)
  • Ruby 2.4.3(バージョンは最新でもたぶん大丈夫)

参考

公式ページ

github.com

今回参考にしたページ。ありがたい。

qiita.com

Rubyをインストール

以下のページより、Windows用のRubyInstallerをダウンロード

好きなバージョンと、32ビット版か64ビット版を選ぶ

あとは、インストーラの手順に従ってインストール

rubyinstaller.org

Rubyのバージョン2.4からはインストーラがRubyInstaller2に代わったらしい(まだ情報が少ない)

Ruby2.3.3までのインストーラはRubyInstaller(更新が止まったらしい)

公式ページを参考にする場合(未確認)

前提として、gitとAnacondaがインストールされていること

まず、Rubyコマンドプロンプトを開く(Rubyのインストール時に一緒に入っている)

gem install cztop
gem install iruby
iruby register --force

これでJupyter notebookで使えるようになるみたい

公式の方が簡単なので、これで上手くいくならこっちの方がいい

今回参考にしたページの場合

基本的には参考にしたページ通りに進める

以下、再掲

qiita.com

少し詰まったところを書いておく

前述したとおりRuby2.4以降では、インストーラはRubyInstaller2に代わった

違いの一つは、デフォルトのライブラリを追加するツールがDevelopment KitからMSYS2に代わったこと

始めはMSYS2を使っていたが上手くいかなかったので、Development Kitを使うことにした(Rubyインストーラと同じページでダウンロード可能)

あとは、参考にしたページ通りに進めれば上手くいく

Jupyter notebookで確認

Jupyter notebookを起動すると、Rubyが追加されている

f:id:kato_robotics:20180327022901p:plain

恒例として、Hello World!!を出力して確認

f:id:kato_robotics:20180327022912p:plain

結果

Rubyをインストールして、Jupyter notebook上で使えるように環境を作った

おわりに

Rubyは良く話に聞くので、ちょっと触ってみたいと思っていた

おもしろそうなので、暇なのときに勉強してみる

それと、今回の方法では手順が少し長いので、公式の方法も試してみる

色々な言語のまとめ

kato-robotics.hatenablog.com

Jupyter Notebook上で色々な言語を使う

はじめに

Jupyter Notebookが大好きなので、特に使う予定のない言語でも環境を作っていこうと思う

基本的にOSはWindows10を使用(よく使うので)

調べていて思ったことは、MacLinuxの方が情報が多い。あと、Windowsよりも環境構築が比較的楽らしい

参考

とりあえず、公式のWikiにまとめてあった

ここの情報でできそうだったら参考にする

github.com

これまでやったこと(随時更新)

以下にこれまでやったことをまとめたページを貼っていく

kato-robotics.hatenablog.com

kato-robotics.hatenablog.com

kato-robotics.hatenablog.com

kato-robotics.hatenablog.com

Rの始め方 (Windows, Jupyter notebook)

はじめに

プログラミング言語Rが使いやすいという話を聞いたので、使ってみる。

とりあえず、インストールをして、Jupyter notebookで使えるところまでを確認する。

環境

  • Windows10
  • anaconda3 (4.3.8)
  • R 3.4.4

参考

以下のページを参考。ありがたい。

waitingforthesnark.blogspot.jp

R for Windowsをインストール

以下のページより、Windows用のインストーラをダウンロード

https://cran.ism.ac.jp/bin/windows/

手順に沿って、インストールすれば得に何もなく終わる

パッケージをインストール

Rのコンソールを起動(インストールしたフォルダ内の実行ファイル、またはショートカットから)

以下のコマンドを打つ

install.packages(c('repr', 'IRdisplay', 'evaluate', 'crayon', 'pbdZMQ', 'devtools', 'uuid', 'digest'))
devtools::install_github('IRkernel/IRkernel')
IRkernel::installspec()

しばらく待つと、インストールが完了して、Jupyter notebookで使えるようになる

Jupyter notebookで確認

Jupyter notebook起動すると、Rが追加されている

f:id:kato_robotics:20180326171316p:plain

恒例として、Hello World!!を出力して確認

f:id:kato_robotics:20180326171340p:plain

結果

Rをインストールして、Jupyter notebook上で使えるように環境を作った

おわりに

Rは統計解析に特化しているらしい

おもしろそうなので、暇なのときに勉強してみる

色々な言語のまとめ

kato-robotics.hatenablog.com

Juliaの始め方 (Windows, Jupyter notebook)

はじめに

プログラミング言語Juliaが使いやすいという話を聞いたので、使ってみる。

とりあえず、インストールをして、Jupyter notebookで使えるところまでを確認する。

環境

  • Windows10
  • anaconda3 (4.3.8)
  • Julia 0.6.2

参考

以下のページを参考。ありがたい。

WindowsでJuliaをJupyterから使う

公式

github.com

Juliaをダウンロード

以下のページより、Windows用のインストーラをダウンロード

https://julialang.org/downloads/

後で環境変数を設定するため、ダウンロード先を覚えておく(分かりやすくC:など)

環境変数を設定

コントロールパネル > システムとセキュリティ > システム > システムの詳細設定 > 環境変数

  • PATH=C:\Julia-0.6.2\bin

  • JULIA_HOME=C:\Julia-0.6.2\bin

  • JULIA_PKGDIR=C:\Julia-0.6.2\Pkg
  • JC=C:\Julia-0.6.2\Pkg\v0.6\Conda\deps\usr

以上のように設定。Juliaのバージョンに合わせて書き換える

IJuliaをインストール

コマンドプロンプトを開く

Julia

とコマンドを打つと、Juliaが起動(起動しない場合はPATHの設定が間違っているなどが考えられる)

次に以下のコマンドを打つ

Pkg.init()
Pkg.add("IJulia")

しばらく待つと、インストールが完了して、Jupyter notebookで使えるようになる

インストール時のエラー

エラーが出た場合は、各自で対処

「ZMQ had build errors.」というエラーが出た場合は

Pkg.build("ZMQ")

を実行する

Jupyter notebookで確認

Jupyter notebook起動すると、Julia 0.6.2が追加されている

f:id:kato_robotics:20180326154712p:plain

恒例として、Hello World!!を出力して確認

f:id:kato_robotics:20180326154721p:plain

結果

Juliaをインストールして、Jupyter notebook上で使えるように環境を作った

おわりに

Juliaは数学で使うような計算を得意としつつ、スクリプト言語のように書きやすく、スピードもある、という良いところ取りな言語らしい

おもしろそうなので、これから暇な時間に勉強していきたい

色々な言語のまとめ

kato-robotics.hatenablog.com

Unityの始め方

はじめに

Unityの始め方もとりあえず書いておく。(UE4も書いたから)

と言っても、公式のウェブサイトにチュートリアルがたくさんあるので、それを見た方がいい。

unity3d.com

Unity2017.3からはチュートリアルが簡単にダウンロードできるようになったみたい。

f:id:kato_robotics:20180318214828p:plain

この記事では、とりあえずスクリプトを書いて、オブジェクトを動かしてみるところまでを書いていく。

環境

  • OS : Windows10
  • Version : Unity 2017.3.1f1

UnityはWindowsMac OS上で動くので、自分の環境に合わせてインストールする。

バージョンは、とりあえず最新を入れておけばいいと思う。

インストール

公式サイトより、Unity2017.3.1f1のインストーラをダウンロード(Personalが無料版)

ちなみに、β版ならUnity2018がある。(2018/03/19時点)

そろそろ、Unity2018も正式にリリースされるのかな。

store.unity.com

ダウンロードしたら、インストーラに従ってインストールを行う。

インストールは、とりあえず標準の設定のままでいいと思う。

追加でインストールしたいものがあれば選択。(AndroidiOSアプリ作りたいなど)

インストールする場所を変えたい人は変える。(複数のバージョンをインストールしたいときなど)

Unityを起動

インストールしたUnityを起動。

Project選択画面で右上の「New」をクリック。新規でProjectを作成する。

名前は適当に付ける。3Dにチェック。「Create Project」ボタンを押す。

エディタの説明

Unityエディタの各Viewの説明。

  • Scene View : そのシーンに置いてあるオブジェクトを表示
  • Game View : 実際のゲーム画面
  • Hierarchy View : そのシーンにおいてあるオブジェクトの一覧
  • Project View : Projectの中身の一覧
  • Inspector View : それぞれのオブジェクトの状態などの確認、操作

f:id:kato_robotics:20180319001655p:plain
about_editor

オブジェクトを作成

Hierarchy ViewのCreateボタンを押して、3D Obejct > Cubeを選択。Cubeが作成される。

Hierarchy ViewにCubeが追加される。Scene ViewとGame ViewにもCubeが表示される。

スクリプトを記述

UnityではC#JavaScriptが使える。今回はC#を使用する。

Project ViewのCreateボタンを押して、C# Scriptを選択。C#スクリプトが作成されるので、適当に名前を付ける。

作成したスクリプトを開く。(ダブルクリックとか)

エディタがVisual Studioではないなら、変更しておくといい。Visual Studioが使いやすいと思う。

スクリプトが開けたら、すでにあるClass内に以下のようなコードを記述。

このスクリプトは、オブジェクトがx軸方向に移動するだけ。

float point = 0.01f;
    
void Update () {
        Vector3 NewPosition = transform.position;
        if(NewPosition.x > 1.0f)
        {
                point = -0.01f;
        }
        else if(NewPosition.x < -1.0f)
        {
                point = 0.01f;
        }
        NewPosition.x += point;
        transform.position = NewPosition;
}

書き換えたら、ちゃんとセーブ。

オブジェクトにスクリプトを付ける

Hierarchy ViewでCubeを選択。Inspector Viewの一番下の「Add Component」ボタンを押す。 上の検索窓でスクリプトを検索するか、Scriptsを選択すると、作成したスクリプトが見つかるので選択。

これでオブジェクトにスクリプトが付く。(ドラッグ&ドロップでもできる)

シーンのセーブをしておく。適当に名前を付ける。

テスト

エディタ上部真ん中にある実行ボタン(三角マーク)を押す。すると、Game ViewでCubeが左右に動くはず。

これで一通りの流れが終了。

f:id:kato_robotics:20180319001709p:plain
play

まとめ

Unityのインストールからスクリプトを書いて、実行するまでやってみた。

おわりに

最初に書いた通り、公式のチュートリアルやドキュメントが豊富なので、それをみれば大体わかる。

書籍もたくさんでているので、一冊買ってみてもいいと思う。

あと、ググればたくさん情報出てくるので、分からないことはとりあえずググる

UE4の始め方

はじめに

いつもはUnityを使っていて、あんまりUE4(Unreal Engine 4)は触れてこなかったので、ちょっと使ってみる。

この記事ではUE4の使い方の流れを書いていくが、公式のチュートリアルが分かりやすいので、そっちを見た方が良い。

UE4とUnityを比較

  • UE4ではC++が使える。(UnityではC#JavaScript
  • WindowsMac OSLinux上で動く。(Unityも同じ)
  • GUI上でスクリプト処理の流れを可視化し、操作できるシステムがある。(UnityでもできるがUE4の方がかっこいい) --> 「Blueprints Visual Scripting System」

では公式のチュートリアルに沿って、実際にやってみる。

ちなみにチュートリアルは、デザイナー向け、アーティスト向け、プログラマ向けのように分かれているが、 この記事ではプログラマ向けのチュートリアルを参考にする。

api.unrealengine.com

また、コードを書く場合は、Visual Studio(エディタ)があった方がいいということなので、 もしインストールしていない人は、Microsoft公式よりダウンロードをしておくと良い。

Visual Studio Community 2017が無料版。(UE4.15以降はVS2017らしい)

www.visualstudio.com

環境

  • OS : Windows10
  • Version : UE 4.19.0(2018/03/16時点の最新)

UE4のインストール

公式のサイトからダウンロードして、手順通りにいけばインストール完了。

途中にEpic Gamesのアカウント登録があるから適当に登録する。

インストールには結構時間がかかる。(ネットワーク環境にもよるけど)

www.unrealengine.com

起動

Epic Games LauncherからUE4を起動。

プロジェクト作成

起動後のプロジェクトブラウザで、新規プロジェクト タブから、空のオブジェクトを選択。

プロジェクトの保存場所と名前を決定して、プロジェクト作成ボタンを押す。

C++クラスの作成

UE4エディタのファイルタブから「新規C++クラス」を選択。

親クラスは「Actor」を選択。

これにより、プロジェクトにC++ファイルとヘッダファイルが追加される。 (UE4エディタ下部にあるコンテンツブラウザから、作成したC++クラスを確認できる)

コードの記述

ヘッダファイル内のクラスの一番最後に以下のコードを追加

float point;

C++ファイルのBeginPlay関数に以下のコードを追加

point = 1.0f;

C++ファイルの一番下のTich関数に以下のコードを追加

FVector NewLocation = GetActorLocation();
if (NewLocation.Y > 100.0f) {
    point = -1.0f;
}
else if (NewLocation.Y < -100.0f) {
    point = 1.0f;
}
NewLocation.Y += point;
SetActorLocation(NewLocation);

最後に、UE4エディタの上部にある「コンパイル」ボタンで押す。(または、VSエディタ上でビルド)

コードのテスト

実際に実行して、ちゃんと動くか確認。

まず、UE4エディタ下部のコンテンツブラウザ > C++クラス > 作成したプロジェクト > 作成したActorを選択。

そのActorをレベルエディタ(ゲーム画面みたいなところ)へドラッグ&ドロップ。

これにより、右上のアウトライナに作成したActorが追加される。

アウトライナ上で作成したActorを選択し、コンポーネントを追加 > キューブを選択。

すると、レベルエディタ内にキューブが現れる。(見えないときはカメラを引く)

Actorのトランスフォームでキューブの位置を変更してみても良い。

これで準備完了。UE4エディタ上部にある「プレイ」ボタンを押す。

作成したキューブが左右にゆっくり動いていれば成功。

f:id:kato_robotics:20180316225731p:plain
UE4_TestImage

まとめ

今回はUE4の簡単な導入を行った。

ゲーム作成の流れは何となくわかった。

おわりに

大体はUnityと同じようなものだけど、UE4独特なところ(BluePrintなど)もある。

コードの書き方で分からないところをググってみると、BluePrintの情報がたくさん出てくるから、そっちも覚えた方が良さそう。

Blueprints Visual Scripting Systemってなんかかっこいいし。(見た目もかっこいい)

PDFファイルを倍率を変えて印刷

やること

ARマーカを印刷するとき、倍率を変更して印刷したかった。

方法はいくらでもあるし、調べるまでもないことだと思いながらも一応書いておく。

方法

  1. Google ChromeでPDFファイルを開く

  2. 印刷の設定画面を開く

  3. 詳細設定で倍率を入力

  4. 印刷

まとめ

たいした話じゃなかった。