e-tipsmemo

ごった煮

2018-03-01から1ヶ月間の記事一覧

Rust パーセントエンコーディング

パーセントエンコーディングはabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.~ 以外の文字を{%[hex]}*nの組み合わせに置き換える。 HTTPリクエストなどで送るときに必要。 fn urlencode(my_str: String) -> String { let unreservedcha…

Oscilloscope選定

以前は秋月で買た「秋月3万オシロ」を利用していた www.owonjapan.com が、スペック的にもの足りない気がしてきたので新しく購入するオシロスコープを選定した。 と言っても、Agilentの普通のInfiniiVisionシリーズは高いキーサイト (KEYSIGHT)InfiniiVision…

Rust Build Windows DLL on WSL 2

e-tipsmemo.hatenablog.com このような記事を書いたが、.cargo/configの記述がこのままだと i686-pc-windows-gnuでコンパイルすると、 C:\projects\rust\src/libpanic_unwind/gcc.rs:292: undefined reference to `_Unwind_Resume' collect2: error: ld retu…

Rust Build Windows DLL on WSL

以前にこのような記事を書いたが、 e-tipsmemo.hatenablog.comRustupにformatterが標準機能になったらしいので cargoからインストールするのではなく、 rustup component add rustfmt-previewを行って、.vimrcに let g:rustfmt_autosave = 1だけを書けばよく…

EZ-USB FX2 Device Descriptor

e-tipsmemo.hatenablog.comSlaveFIFOの利用を始める。 ベースはBulkloopサンプルであり、TD_Init、TD_Poll、デバイスディスクリプタを編集することになる。 http://www.cypress.com/file/386321/download のp11から。ここが項目ごとにまとまっている。 EZ−…

rust obj loader

3Dモデルを読み込むのにOBJファイルローダーを作ろうかと思った。 が、優秀なローダーがあるのでそれを利用したほうが良いので tobj crateの紹介 GitHub - Twinklebear/tobj: Tiny OBJ Loader in RustCargo.tomlに追記。OBJファイルを用意する必要がある。 …

Rust レイトレーシング ⑩ 三角形

ポリゴンの衝突判定のためにレイと三角形の衝突を実装した。 球と同様にHITトレイトを実装する。 三角形との交差判定は risalc.info にある通り。 面内のベクトルは、三角形の法線と直行するのでそこからがわかる。 ベクトルを求め、三角形を張る、を基底と…

Ubuntu systemd getty autologin via Serial Console

Ubuntu17あたりでautologinする設定普通のtty([0-9].)なら systemctrl edit --force getty@tty0 (tty0はログインコンソールに変える) [Service] ExecStart= ExecStart=-/sbin/agetty -a <username> --noclear %I $TERMとすると、 /etc/systemd/system/getty@tty0.servi</username>…

Rust レイトレーシング ⑨ 金属・ガラス

金属とガラスを実装した。 それぞれMaterial Traitを実装し、光が当たったときのその光のゆく方向を計算する。 再帰の呼び出しに条件を付けることで、不必要なほどの反射光の計算を適当に減らす。 fuzzは反射時のランダム要素 ガラスの球と屈折率 わかりにく…

Cargo build/update error "no match for id (some hash)"

Updating registry `https://github.com/rust-lang/crates.io-index` error: failed to load source for a dependency on `image`Caused by: Unable to update registry `https://github.com/rust-lang/crates.io-index`Caused by: failed to fetch `https:/…

Rust レイトレーシング ⑧ 素材準備

今更このようなサイトを発見してしまったのでここも参考にしていこうと思う。 レイトレーシング入門1「光線の基本と反射」 - Qiita色々な素材を利用できるようにするために、Material Traitを定義してこれを持つ構造体を各素材とする。 このTraitを実装する…