投稿

3月, 2015の投稿を表示しています

VS Codeでvenvがうまく動作しなくなった話

結論 venvをあきらめて、Pipenvを導入すればなぜか解決した。 経緯 Pythonの開発環境にVS Codeを使っていましたが、ある日突然、venvで作った環境が見えなくなりました。 PowerShellからは切り替えができるので、venv自体は正しく動いているようでした。 PythonとVS Codeをクリーンインストールしても状況は変わりませんでした[1]。 Pipenvの使い方 最近はPipenvというものがあるらしいので、それを導入することとしました[2][3]。 pip install pipenv 以下のように環境変数を設定することで、プロジェクトのフォルダ直下に仮想環境を構築してくれます。 PIPENV_VENV_IN_PROJECT=true VS Code上にフォルダを作成し、その直下で仮想環境を作成します。 コマンドはVS Code上のPowerShellで行いました。 例えば以下のようになります。パスやPythonのバージョンはご自身の環境に合わせてください。 *pythonの後に半角スペースがあるのでうっかり詰めないでください。 *venvファイルが作成されるという情報もありますが、私の場合はPipfileのみ作られました。 PS PS C:\Users\User Name\Documents\CODE\Python\Test> pipenv install --python 3.8 VS Code上でF1キーを押して、「reload」を検索して実行します。 これで左下のPythonのバージョンセレクトから環境選択できるはずです。 仮想環境から抜けるときは以下のコマンドを使います。 deactivate 参考文献 [1] sota0726 「VScodeを完全にアンインストールする方法(windows10)「拡張機能のホストが予期せずに終了しました。」を改善するために」閲覧日:2020/09/13 https://www.atmarkit.co.jp/ait/articles/1810/12/news026.html [2] KRiver1 「pyenv、pyenv-virtualenv、venv、Anaconda、Pipenv。私はPipenvを使う。」閲覧日:2020/09/13 h

RICHO THETAの簡単なAndroidアプリ

イメージ
RICHO THETA を最初見たときは,あんまりピンと来なかったのですが使ってみると便利で面白いですね. そんなTHETAをいじる機会があったので,簡単なAndroid用のプログラムを作ってみました. SDKは下記のサイトからDLできます. RICHO THETA Developpers https://developers.theta360.com/ja/ SDKに付属しているサンプルプログラムは私にとって複雑で,何をしているのかわかりにくいものでした. そこで,SDKのサンプルとリファレンスを頼りに,以下のようなシャッターを切るだけの簡単なサンプルを作りました. このサンプルはCONNECT Buttonを押してTHETAに接続し,SHOOT Buttonを押してシャッターを切るというプログラムです. 切断するときはDISCONNECT Buttonを押します. THETAのステイタスからGUIを動かすサンプルとして,各操作の状況をTHETA statusというtextviewに描画しています. それではこのプログラムの説明を行います. まずは,以下のように,インターネットのpermissionを取ります. この記述は,AndroidManifest.xmlに記述します. <uses-permission android:name="android.permission.INTERNET"/> つぎに,GUIのレイアウトを設定します.デフォルトではactivity_main.xmlに記述します. <LinearLayout android:id="@+id/linearLayout1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginL

Raspberry Pi 2のケースを自作する

イメージ
Raspberry Pi 2を手に入れたのでケースを作ってみました. 市販のケースを買うのもいいですが,ケースを自作するのも楽しさの一つだと思います. 調べてみるとケースは3Dプリンタやレーザーカッターで作っるのがメジャーなようです. 3Dプリンタで作ると市販の射出成形のケースに見劣りしそうだったので,レーザーカッターをメインに使いました. レーザーカッターは基本的に板を切るものなので,積層や箱組で立体的にケースを作るという手法が多く見られました. 今回,私は板を金属の支柱で支えることでケースを作ることにしました. シンプルですが,各コネクタやIOへのアクセスを考えると悪くない選択だと思います. Raspberry Pi2とケースの部品は以下のようになります. 各部品は,自作品や在庫品を使用しています. ここを見てくれた方の参考になるよう,同等の市販品を参考に載せました. もっと安いものもありますが,趣味に使うものなので良い物を選んでいます. 天板 個数 1 アクリル t3 下板 個数1 アクリル t3 Raspberry Pi2支え用中空スペーサ 個数 4 プラスティック φ5 長さ5 mm 参考: wilco製 CPE-2605 スペーサー 丸型中空 Raspberry Pi2固定用プラネジ 個数4 M2.6 長さ8 mm 参考: wilco製 PE-0308 なべ小ねじ 下板-天板支え用両メネジ  x 4 M3 φ6 長さ25 mm 参考: wilco製 ARU-325 スペーサー 丸型両メネジ 下板-天板接続用ネジ  x 8 M3 長さ 8 mm 参考: wilco製 USLC-0308 六角穴付きスーパーローヘッドボルト 天板と下板のデータは ここ からDLできます. DXF,ISG,STLで用意したので興味のある方は是非使ってみてください. 下板のパーツのRaspberry Pi2固定用の穴はM2.6のタップでメネジをたてて下さい. それができない場合は,φ2.6の穴に拡張して,ナットで固定してください. その場合は,ナットの厚み分,プラネジを長くしてください. また,下板-天板接続用ネジの下面側のネジはナットよりも背の高いものを使用し