仕事で設計している基板はPICマイコンを搭載していて、中国のPCBCartに製造(基板製造、部品購買、実装)をお願いしているんだけれど、納品された状態ではファームウェアが書き込まれていません。
なのでこちらで書き込む必要があるのですが、ICD3を使うにせよPICkit3を使うにせよ、数をこなすとなるとなかなか面倒です。アダプタつないで書き込みケーブルつないで、と。
そこで、アクリル板と金属スペーサーを使って書き込み用のステージを作ることにしました。
まず基板のサイズとアダプタのプラグ固定のためのスペースを見繕って、FreeCADで3Dモデルを作ってみます。
こんな感じ。
仕様は3mm厚のアクリル板で、サイズは80x120mm。下の板は金属スペーサー用の3.2φのキリ穴が4つのみで、四方の面取りだけしています。上の板はDCジャックを通す穴と、基板固定用の3つのピン。あとはサブ基板を裏に貼り付けてテスト用の金属プレートを貼り付けます。3つのピンは3.2φで深さ2mmの止まり穴をあけておいて、そこに3φのアクリル棒を5mm程度の長さに切ったものを接着剤で固定しようと考えています。
一応3D図面はできました。FreeCADではここから三面図などの2D図面に落とすのは少々手間がかかるのですが、今回は作るのは1台だけなので余計なことはしたくありません。アクリル板を買ってきて、ノコで切ってドリルで穴あけ…すればできるのはわかっているのですが、どうせならきれいに作ってみたい。
そこで、カインズホームのデジタル工房でレーザー加工機があったのを思い出しました。
データを持ち込めば20分1500円でやってくれるようです。さらにレーザー加工ならば、元データが正確ならばきちんときれいに加工できそうです。
利用方法を調べてみると、カインズで材料を購入してからデータをSDカードかUSBメモリで持ち込み、Adobe Illustrator CCを使ってデータ読み込み、線に色を付けてから色データと加工種類を関連付けて「印刷」とすればいいようです。
さらに調べてみると、ここで使っているレーザー加工機はtrotec Speedy300とのこと。彫刻、カット、マーキングができるようです。彫刻ができるなら止まり穴も開けられるかも。
ということで手持ちのツールでデータを作成できるかどうかを調べてみました。Illustratorはいわゆるドローツールなので、Inkscapeで同じことができるかもしれません。Inkscapeのデフォルトのファイル形式はSVGです。一方、FreeCADもSVGへのエクスポートは可能です。そしてIllustrator CCは体験版をダウンロードしてみるとSVG形式は読み込めるようです。こちらにも扱えるファイル形式の一蘭がありました。
つまり、こちらサイドではFreeCAD→Inkscapeでデータを作成しておいて、それをカインズに持ち込んでIllustratorで読み込めばうまくいきそうです。
まずはFreeCADで作成したプレートをSVGでエクスポートします。
部品はひとつずつ処理したほうが間違いがないので、まずは上プレートをやります。
Part ワークベンチで加工面を正面にして表示し、モデルを選択します。
その状態で "File" → "Export" → "Flattened SVG" を選択して出力します。同じことを下プレートでも行います。
次にInkscapeを起動します。
用紙サイズを設定しますが、カインズのオンラインストアで調べてみるとアクリル板のサイズは180x320mmが標準のようです。3mm厚ということだと、アクリルEX板001透明180x320x3ミリがよさそうです。ちょっと高い気もしますが。
Inkscapeで用紙サイズを320x180(横長)に設定し、先程出力したSVGファイルを並べます。ワークサイズが大きいので、ついでに下プレートをもう2枚取ることにします。何かで使えるかもしれないので。
上プレートはピンを立てるための止まり穴が3つあり、マニュアルでは彫刻部分の線の色を変えるように書かれています。なので上プレートを選択してグループ解除し、止まり穴の色を変えました。"ストロークの塗り"を選択して、RGB=255:0:0の赤を選択。
マニュアルではベクターデータにしろとあるので、一応すべてのオブジェクトのグループを解除しておきます。そうしたらこれを「アクリル板カット用.svg」という名称で保存しました。
次にこれをAdobe Illustrator CC体験版で読み込んでみます。
ちゃんと読み込めているようです。ただ、オブジェクトをクリックすると全部まとめて「パス」ということになっているようなので、右側のクイックメニューから「グループ解除」してみました。その状態で各パスの長さを見てみるときちんと設計通りになっているようなので、色を付けるところまでやっておけばあとはデータを持ち込んで読み込み→グループ解除でいけそうです。
早速明日やってみます。
Bloggerの投稿日付の扱い。
このブログを見れば一目瞭然なんですが、各投稿記事のところ、日付はなくてなぜか時刻のみになっています。
自分的感覚としては、投稿した時刻よりも投稿した日付のほうが重要だと思うんですが…なんでこうなっているのか。
ちなみに投稿時刻の上にマウスカーソルをホバーすると投稿日時がチップしますので、確認手段さえ知っていれば投稿日時を知ることはできますが、そこまでできるなら素直に表示してほしいところ。
ところがこれを表示するための設定項目というのがなくて、表示するためにはHTMLテンプレートをいじらないといけないようです。
ということでググって見るわけですが、引っかかってくるのは "data:post.dateHeader" を判定している部分を、判定をなくして "data:post.timestamp"を表示させればいいよ、というものばかり。ところがなぜか自分の使っているテーマではそもそも "data:post.dateHeader" を判定している部分がありません。
おそらくこちらの Show Date For All Posts in Blogger とか Bloggerで記事の公開日/最終更新日を表示してみた などがたぶん正解を示してくれているんだと思うんですが、なんか変。特に後者は2018年の記事なのに。
テーマを変更すると出てくるのかしら。
自分的感覚としては、投稿した時刻よりも投稿した日付のほうが重要だと思うんですが…なんでこうなっているのか。
ちなみに投稿時刻の上にマウスカーソルをホバーすると投稿日時がチップしますので、確認手段さえ知っていれば投稿日時を知ることはできますが、そこまでできるなら素直に表示してほしいところ。
ところがこれを表示するための設定項目というのがなくて、表示するためにはHTMLテンプレートをいじらないといけないようです。
ということでググって見るわけですが、引っかかってくるのは "data:post.dateHeader" を判定している部分を、判定をなくして "data:post.timestamp"を表示させればいいよ、というものばかり。ところがなぜか自分の使っているテーマではそもそも "data:post.dateHeader" を判定している部分がありません。
おそらくこちらの Show Date For All Posts in Blogger とか Bloggerで記事の公開日/最終更新日を表示してみた などがたぶん正解を示してくれているんだと思うんですが、なんか変。特に後者は2018年の記事なのに。
テーマを変更すると出てくるのかしら。
鉄製品の錆落とし。
錆びた鉄製品をサンポールに浸しておくと、赤錆がきれいに落ちる、という記事がけっこうあります。
ちょっとHTML記法的にどこまで表現できるかも含めて、化学式で表現してみます。
まず酸化鉄は酸化第一鉄(酸化鉄(Ⅱ))と酸化第二鉄(酸化鉄(Ⅲ))、それに四酸化三鉄(酸化鉄(Ⅱ,Ⅲ))などがあります。化学式はそれぞれ、FeO、Fe2O3、Fe3O4となります。
このうち、赤錆は酸化第二鉄、黒錆は四酸化三鉄が主成分です。錆びた鉄、という場合にはたいてい赤錆を指します。
産業的には赤錆はフロッピーディスクの磁性面に利用されたり、微粒子を装飾品やガラスレンズの研磨剤としても利用していたようです。現在でも研磨剤として使われていて、グラインダーなどで使用する赤棒は酸化鉄を使用しています。
余談ですが研磨棒は赤→白→青の順に粒度が上がり、白は酸化アルミニウム、青は酸化クロムが主成分になります(https://jp.misumi-ec.com/tech-info/categories/surface_treatment_technology/st01/c1981.html - MiSUMi-VONA 技術情報から)。
閑話休題。
赤錆は酸化第二鉄 Fe2O3 が主成分なのでこれをターゲットとします。一方サンポールは塩酸 HClが主成分です。なので、
Fe2O3 + 6HCl → 2FeCl3 + 3H2O
となるかと思いきやさにあらず。
実は赤錆はその主成分は酸化第二鉄ですが、実際には水和物として存在しているらしく、FeOOH(オキシ水酸化鉄)をもとに考えないといけないようです。別の書き方としては、Fe2O3・H2O となります。そのため、反応式は以下のようになるようです。
2FeOOH + 6HCl → 2FeCl3 + 4H2O
ですがこのとき水中では塩化鉄() FeCl3 はイオンとして遊離しているため、Fe3+ + 3Cl- となっているようです。
赤錆が溶け出した状態では主にこの Fe3+ が水中にありますが、ここに炭酸ナトリウム Na2CO3 を投入します。
すると鉄とナトリウムのイオン化傾向の差によって、
2FeCl3 + 3Na2CO3 → 2Fe↓ + 6NaCl + 3CO2↑
となって、二酸化炭素の泡が出て、溶けていた鉄が沈殿し、水溶液は食塩水になる、はずです。たぶん。なるといいな。
実際には赤錆以外の鉄も塩酸中に溶け出しているでしょうし、酸化第三鉄なども含まれているでしょうから、必ずしもこの通りになるとは限りませんが、大筋としての理解はこれでいいのではないかな、と思います。
ただし実際に実験する場合、サンポールを使うと塩酸以外の成分も含まれているので、ちょっと舐めてみるというのはやめたほうがいいでしょう。
それにしても、高校のときにも思ったけれど、鉄イオンは2価と3価があり、さらに水和してみたりα、γ、δなどの相に化けてみたり、身近なのに分かりづらすぎ…。
そういえばセスキ炭酸ナトリウムが最近キッチンや洗濯用に出ていて結構な人気だけれど、これは炭酸ナトリウムと炭酸水素ナトリウムを1:1で混合したもので、弱酸性ではあるけれどタンパク質や脂質を溶かすので衣類の汚れ落としなんかに重宝してるんですが、そろそろパナマ風帽子がひと夏過ぎてちょっとニオイがしてるので洗濯しようと思ってます。
ちょっとHTML記法的にどこまで表現できるかも含めて、化学式で表現してみます。
まず酸化鉄は酸化第一鉄(酸化鉄(Ⅱ))と酸化第二鉄(酸化鉄(Ⅲ))、それに四酸化三鉄(酸化鉄(Ⅱ,Ⅲ))などがあります。化学式はそれぞれ、FeO、Fe2O3、Fe3O4となります。
このうち、赤錆は酸化第二鉄、黒錆は四酸化三鉄が主成分です。錆びた鉄、という場合にはたいてい赤錆を指します。
産業的には赤錆はフロッピーディスクの磁性面に利用されたり、微粒子を装飾品やガラスレンズの研磨剤としても利用していたようです。現在でも研磨剤として使われていて、グラインダーなどで使用する赤棒は酸化鉄を使用しています。
余談ですが研磨棒は赤→白→青の順に粒度が上がり、白は酸化アルミニウム、青は酸化クロムが主成分になります(https://jp.misumi-ec.com/tech-info/categories/surface_treatment_technology/st01/c1981.html - MiSUMi-VONA 技術情報から)。
閑話休題。
赤錆は酸化第二鉄 Fe2O3 が主成分なのでこれをターゲットとします。一方サンポールは塩酸 HClが主成分です。なので、
Fe2O3 + 6HCl → 2FeCl3 + 3H2O
となるかと思いきやさにあらず。
実は赤錆はその主成分は酸化第二鉄ですが、実際には水和物として存在しているらしく、FeOOH(オキシ水酸化鉄)をもとに考えないといけないようです。別の書き方としては、Fe2O3・H2O となります。そのため、反応式は以下のようになるようです。
2FeOOH + 6HCl → 2FeCl3 + 4H2O
ですがこのとき水中では塩化鉄() FeCl3 はイオンとして遊離しているため、Fe3+ + 3Cl- となっているようです。
赤錆が溶け出した状態では主にこの Fe3+ が水中にありますが、ここに炭酸ナトリウム Na2CO3 を投入します。
すると鉄とナトリウムのイオン化傾向の差によって、
2FeCl3 + 3Na2CO3 → 2Fe↓ + 6NaCl + 3CO2↑
となって、二酸化炭素の泡が出て、溶けていた鉄が沈殿し、水溶液は食塩水になる、はずです。たぶん。なるといいな。
実際には赤錆以外の鉄も塩酸中に溶け出しているでしょうし、酸化第三鉄なども含まれているでしょうから、必ずしもこの通りになるとは限りませんが、大筋としての理解はこれでいいのではないかな、と思います。
ただし実際に実験する場合、サンポールを使うと塩酸以外の成分も含まれているので、ちょっと舐めてみるというのはやめたほうがいいでしょう。
それにしても、高校のときにも思ったけれど、鉄イオンは2価と3価があり、さらに水和してみたりα、γ、δなどの相に化けてみたり、身近なのに分かりづらすぎ…。
そういえばセスキ炭酸ナトリウムが最近キッチンや洗濯用に出ていて結構な人気だけれど、これは炭酸ナトリウムと炭酸水素ナトリウムを1:1で混合したもので、弱酸性ではあるけれどタンパク質や脂質を溶かすので衣類の汚れ落としなんかに重宝してるんですが、そろそろパナマ風帽子がひと夏過ぎてちょっとニオイがしてるので洗濯しようと思ってます。
いろんなtailユーティリティ。
Apacheとかその他のサーバ類でログを見ながら設定ファイルをいじったりするときに、重宝するのはやっぱりtail系のユーティリティです。
NetBSDでは標準のtailは '-f' オプションを付けると1つのファイルしか受け取りません。
Apacheではリクエストのログ (access_log) とエラーのログ (error_log) の2つのファイルを設定していますが、
NetBSDでは標準のtailは '-f' オプションを付けると1つのファイルしか受け取りません。
Apacheではリクエストのログ (access_log) とエラーのログ (error_log) の2つのファイルを設定していますが、
- まとめて1つのスクリーンで見たい
- さらに特定のURLへのアクセスのみ見たい
- あるいはgrep的にフィルタしたログのみを見たい
などという場合が多々あります。
そこでちょっとpkgsrcを覗いてみました。
locate tail | grep pkgsrcなどとするといくつかあるようです。
- misc/colortail: 出力をカラー化してくれるtail。別途色設定ファイルも必要。複数のファイルには対応していないっぽい。C++で書かれている。
- misc/mtail: 出力をカラー化してくれるtail。Python2で書かれている。http://matt.immute.net/src/mtail/
- misc/multitail: 複数のファイルをスクリーンを分割して出力してくれるtail。
- misc/xtail: 複数のファイルあるいはディレクトリ以下の全ファイルを同時にtailする。
- sysutils/wtail: multitailと同様に複数のファイルをスクリーンを分割して出力してくれる。
- colortail: 複数ファイルに対応しているけれど、そのファイルを出力する際にファイル名を別途出力するのでけっこう見づらい。カラー化自体は好みかも。
- mtail: colortail同様、ファイル名は別途出力されるので、どのファイルの出力家を見るのが辛い。
ちなみにファイル名はこんな感じで表示される。
==> /var/log/httpd/access_log <== - multitail: RLoginで表示しているときにマウスでスクリーンをクリックすると、なぜかバッファが動いてしまう場合があるけど、オプションも豊富で、正規表現でのパターン指定('-e'オプション)ができるし、排除パターンの指定('-ev'オプション)もできるので便利。
- xtail: pkgsrcで利用しているソースのREADMEには、"1989年7月にcomp.sources.miscに投稿された"とあって、めちゃくちゃ古い。平成元年。"XコンソーシアムとかSGIとかが "xtail" という名前を盗もうとした、騙されるな、オリジナルはこっちだ"とも書いてある。
'-f' オプションはないので、xtail起動以降にファイルに追加された部分を随時表示していくけど、パターン指定ができないのでそういう用途には不向き。
あと、終了時はESCや'q'ではなく、CTR+CやCTRL+DですらないCTRL+'\'という変則的なものなので、知らずに起動すると別のコンソールからkillしなくてはならない。 - wtail: オプションはないらしく、 xtail /var/log/httpd/*log したらログを全部表示してから '-f' オプション相当の動きになって、大変なことに。
BlenderからFreeCADのファイルを読み込む。
objフォーマットとかstlフォーマットとか、受け渡しに使えるファイル形式はあるんだけれど。
もうちょっとなんとかならんかいなと思ったらこんなのを見つけました。
Blender FreeCAD importer updated
ずばり、BlenderからFreeCADのFCStd形式のファイルを読み込むためのアドオン…なんですが…。
詳細はこちら。yorikvanhavre/io_import_fcstd.py。
なんでいきなりシオシオなのかというと、これを使うためには "Python3でコンパイルされたFreeCAD" が必要だからです。
なんてことがファイルの中に書かれてまして。
確かに、BlenderはPython3 (しかもいささか古いPython 3.5.3…)でコンパイルされており、一方のFreeCADはPython2 (Python 2.7.14)でコンパイルされています。
Python2とPython3の間にはふかーい溝があるので使えないんですよ、使いたければFreeCADを自分でコンパイルしてね、ということです。
ところで、FreeCADをPython3でコンパイルする方法は、FreeCAD WikiのPython 3のページに書いてあります…Ubuntu用ですが。
そしてさらにPivyとPySideのPython3.5版が必要になります。が、pivyはプロジェクトのページが応答しないし、PySide (Qt for Python)はpipでインストールしようとするとPython3.4までしかサポートしてないのよ、といわれます。
Pivy自体はcoin3d.orgから外に出て https://github.com/FreeCAD/pivy にリポジトリがあるようですが。Coin3D自体も https://github.com/Alexpux/Coin3D にあるようです。
これは茨の道ですね。茨の道なので後回しです。
もうちょっとなんとかならんかいなと思ったらこんなのを見つけました。
Blender FreeCAD importer updated
ずばり、BlenderからFreeCADのFCStd形式のファイルを読み込むためのアドオン…なんですが…。
詳細はこちら。yorikvanhavre/io_import_fcstd.py。
なんでいきなりシオシオなのかというと、これを使うためには "Python3でコンパイルされたFreeCAD" が必要だからです。
# WARNING # This addon requires FreeCAD to be installed on your system. # The default versions of FreeCAD that you can download from the FreeCAD # website or from your distribution's repositories is usually compiled # with Python2. However, Blender supporting only Python3, this addon # requires a version of FreeCAD that is compiled with Python3. This might # require you to compile FreeCAD yourself at the moment, or find a kind # soul (maybe on the FreeCAD forum above...) who will be willing to # compile a Python3 version for your system.
なんてことがファイルの中に書かれてまして。
確かに、BlenderはPython3 (しかもいささか古いPython 3.5.3…)でコンパイルされており、一方のFreeCADはPython2 (Python 2.7.14)でコンパイルされています。
Python2とPython3の間にはふかーい溝があるので使えないんですよ、使いたければFreeCADを自分でコンパイルしてね、ということです。
ところで、FreeCADをPython3でコンパイルする方法は、FreeCAD WikiのPython 3のページに書いてあります…Ubuntu用ですが。
そしてさらにPivyとPySideのPython3.5版が必要になります。が、pivyはプロジェクトのページが応答しないし、PySide (Qt for Python)はpipでインストールしようとするとPython3.4までしかサポートしてないのよ、といわれます。
Pivy自体はcoin3d.orgから外に出て https://github.com/FreeCAD/pivy にリポジトリがあるようですが。Coin3D自体も https://github.com/Alexpux/Coin3D にあるようです。
これは茨の道ですね。茨の道なので後回しです。
FreeCADでレイトレーシング。
今のところちゃんと動いていないため、とりあえず状況の整理を。
OS: Windows10 Pro
FreeCAD 0.17.13541 (2018.8.16)
FreeCADから利用できると書かれているOSSのレイトレーシングソフトは、POV-rayとLuxRenderとなっていますが、LuxRenderは2017年末に再起動し、2018年4月にLuxCoreRender V2.0beta2として最初の公式リリースを出しています。
レイトレーシングは正直これまでアプリのデモ程度でしか触ったことがないため、よくわからないわけですが…。
ちょっと調べてみたところ、POV-rayはGPUを使用せずにCPUのみでゴリゴリやるため、たいへん時間がかかるようです。
LuxCoreRenderはOpenCLを使ってGPUを利用し、さらにCPUも使い倒しているようです。
ためしにLuxCoreRenderのダウンロードページから壁紙をダウンロードし、描画させながらタスクマネージャーのパフォーマンスグラフを見ると、内蔵GPUを5割ほど使用している様子がわかります。
また、GTX960mを組み込んだCore i7のノートPCでは、GTXも内蔵GPUも両方使い、さらにCPUも使って計算しているようです。
実際のところ、本気の映像クリエイターでもない限りは可能な限り計算時間は短いほうがいいでしょうから、LuxCoreRenderを使用することにしようと思います。
ちなみに現在使用しているCPUは第4世代Core i7プロセッサーの4790K(オーバークロックなし)です。2014年のCPUなのですが、これ以降では劇的に性能が上がっているとかいうことはないので、まあこれでいいやという感じになっています。そうは言っても近いうちに8700Kにしたいなぁなどとは思っているんですが。
ともあれ、LuxCoreRenderのダウンロードページを見ると "BlendLuxCore v2.0" というのが目に入ります。これはLuxCoreRenderをBlenderのアドオンにするためのビルドのようです。その下には "Standalone release v2.0" と、 "LuxCore API SDK release v2.0" というのがあります。3種類もあってどれを使えばいいのか、FreeCADのところにも書いてません。
わからないときはソースを読めという格言の通り、関係ありそうなソースを探してみます。
幸い、FreeCADのgitリポジトリにそれらしきものがありました。
https://github.com/FreeCAD/FreeCAD-render/blob/master/renderers/Luxrender.py
render()関数の引数で external にTrue (デフォルト)がセットされると LuxRenderを呼び出し、Falseなら LuxConsoleが呼び出される、ということらしいです。
余談ですがこのgitリポジトリにはAppleseed.pyなんてのもあって、これはAppleseedというレンダラを使うためのファイルのようですね。たぶんFreeCAD 0.18? いずれにしろこちらはメニューには出てこないようです。
閑話休題、上記の3つのダウンロードのうち、FreeCADから呼び出して使うのは "luxcoreui.exe" のようです。なので "Standalone" を使うことにします。
とりあえず部品作成はFreeCADで、シーン合成などはBlenderを使って、レイトレーシングをLuxCoreRenderで進めてみようかなと考えていますが、とりあえず使えるかどうかの確認です。
FreeCADでワイングラスを作ってみました。
これをレンダリングしてみますと…。
なんか違う感がハンパない…。
OS: Windows10 Pro
FreeCAD 0.17.13541 (2018.8.16)
FreeCADから利用できると書かれているOSSのレイトレーシングソフトは、POV-rayとLuxRenderとなっていますが、LuxRenderは2017年末に再起動し、2018年4月にLuxCoreRender V2.0beta2として最初の公式リリースを出しています。
レイトレーシングは正直これまでアプリのデモ程度でしか触ったことがないため、よくわからないわけですが…。
ちょっと調べてみたところ、POV-rayはGPUを使用せずにCPUのみでゴリゴリやるため、たいへん時間がかかるようです。
LuxCoreRenderはOpenCLを使ってGPUを利用し、さらにCPUも使い倒しているようです。
ためしにLuxCoreRenderのダウンロードページから壁紙をダウンロードし、描画させながらタスクマネージャーのパフォーマンスグラフを見ると、内蔵GPUを5割ほど使用している様子がわかります。
また、GTX960mを組み込んだCore i7のノートPCでは、GTXも内蔵GPUも両方使い、さらにCPUも使って計算しているようです。
実際のところ、本気の映像クリエイターでもない限りは可能な限り計算時間は短いほうがいいでしょうから、LuxCoreRenderを使用することにしようと思います。
ちなみに現在使用しているCPUは第4世代Core i7プロセッサーの4790K(オーバークロックなし)です。2014年のCPUなのですが、これ以降では劇的に性能が上がっているとかいうことはないので、まあこれでいいやという感じになっています。そうは言っても近いうちに8700Kにしたいなぁなどとは思っているんですが。
ともあれ、LuxCoreRenderのダウンロードページを見ると "BlendLuxCore v2.0" というのが目に入ります。これはLuxCoreRenderをBlenderのアドオンにするためのビルドのようです。その下には "Standalone release v2.0" と、 "LuxCore API SDK release v2.0" というのがあります。3種類もあってどれを使えばいいのか、FreeCADのところにも書いてません。
わからないときはソースを読めという格言の通り、関係ありそうなソースを探してみます。
幸い、FreeCADのgitリポジトリにそれらしきものがありました。
https://github.com/FreeCAD/FreeCAD-render/blob/master/renderers/Luxrender.py
def render(project,external=True):
if not project.PageResult:
return
p = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Mod/Render")
if external:
rpath = p.GetString("LuxRenderPath","")
args = ""
else:
rpath = p.GetString("LuxConsolePath","")
args = p.GetString("LuxParameters","")
render()関数の引数で external にTrue (デフォルト)がセットされると LuxRenderを呼び出し、Falseなら LuxConsoleが呼び出される、ということらしいです。
余談ですがこのgitリポジトリにはAppleseed.pyなんてのもあって、これはAppleseedというレンダラを使うためのファイルのようですね。たぶんFreeCAD 0.18? いずれにしろこちらはメニューには出てこないようです。
閑話休題、上記の3つのダウンロードのうち、FreeCADから呼び出して使うのは "luxcoreui.exe" のようです。なので "Standalone" を使うことにします。
とりあえず部品作成はFreeCADで、シーン合成などはBlenderを使って、レイトレーシングをLuxCoreRenderで進めてみようかなと考えていますが、とりあえず使えるかどうかの確認です。
FreeCADでワイングラスを作ってみました。
これをレンダリングしてみますと…。
なんか違う感がハンパない…。
Cygwinのsetup.exeまで含めたアップデート方法。
Cygwinが、たとえばpacmanやrpmのようなパッケージマネージャを使わずにsetup.exeを使わせるのは、Windowsの仕組みとして「開いているファイルは上書きができない」というのが根底にあって、そのためにpacman自身やそれを実行しているshellなどのアップデートがうまくいかないから、らしいです。
なのでsetup.exeを使うわけですが、setup.exeを実行すると「新しいバージョンがあるのでそっちを使って」とかメッセージが出てきて、けっこう煩わしい。setup.exe自身も同様の理由で自分をアップデートできない、ということなんですが…。
じゃあpipはどうなのよ、という話もありますが、Windows環境でpipをアップデートするときには "python -m pip install pip --upgrade" という形で実行するので、pythonがpipを読み込んだあとでcloseしてしまえばできるんだよ、ということですね。きっと。
で、setup.exeのほうは煩わしいので以下のようなバッチファイルを書いてみました。
cygupdate.bat:
こうしておくと、setup.exeが更新されていた場合にはwgetがリトリーブしてきて、署名も確認してくれて、よければそのまま実行されます。
わりと楽ちん。
なのでsetup.exeを使うわけですが、setup.exeを実行すると「新しいバージョンがあるのでそっちを使って」とかメッセージが出てきて、けっこう煩わしい。setup.exe自身も同様の理由で自分をアップデートできない、ということなんですが…。
じゃあpipはどうなのよ、という話もありますが、Windows環境でpipをアップデートするときには "python -m pip install pip --upgrade" という形で実行するので、pythonがpipを読み込んだあとでcloseしてしまえばできるんだよ、ということですね。きっと。
で、setup.exeのほうは煩わしいので以下のようなバッチファイルを書いてみました。
cygupdate.bat:
wget -N https://cygwin.com/setup-x86_64.exe.sig wget -N https://cygwin.com/setup-x86_64.exe gpg2 --verify setup-x86_64.exe.sig setup-x86_64.exe pause if not %ERRORLEVEL% == 0 ( echo BAD Signature!! pause ) else ( setup-x86_64.exe )
こうしておくと、setup.exeが更新されていた場合にはwgetがリトリーブしてきて、署名も確認してくれて、よければそのまま実行されます。
わりと楽ちん。
登録:
投稿 (Atom)
SWDなら3線でいいとはいうものの。
安価で優秀なデバッグプローブはないかしら、と探したら、 Raspberry Pi Debug Probe というのがあったんですが、これは3線がにゅるんと出てるだけです。 もちろんSWDなら3線を繋げばいいのではありますが、汎用的に考えるなら5x2のリボンケーブルコネクタが欲し...
-
ノートPCでMP4動画を再生するのに、VLCメディアプレーヤーは使いやすいし何も設定しなくてもインストールしただけで使えるので便利ですが、画質・再生品質的には今一つの印象があります。印象なので、ここから先は単なる自己満足の世界で、定量的な評価などはありません。動画を見ていて、再生...
-
年明け早々あれですが。 昨年末から、うちのLIXILのシャワートイレの電源ランプが、チカチカと鬱陶しい点滅を始めました。型番はDV-E116Hで2015年製。LIXILの取説では点検サービスを受けてくださいと書いてあり、この電源ランプの点滅をやめさせる方法はありません。ちなみに出...
-
現在のメインPCはCore i9-9900Kなので、すでにWindows11にアップグレード済なのですが、以前使っていた2台のPCはどちらもCore i7-4790Kで、Windows11の対象外になってしまっています。 2015年に購入したものですが、4790Kは今でも十分に...








