FreeCADを使い始める理由
CADの勉強を自習したいが、プロフェッショナル仕様な有料ソフトは、高価なので手を出せない。
しょうがないので、「Free CAD」とかで、検索かけたら、そのまんま、FreeCADが出てきた。
やる。
インストーラーが222MB位で、インストールすると548MBになる。
初見、ツール系がどこにもなく、「ただのビューワーなのか!?」と思ってしまった。
スタートしたときに表示される画面は、ウェブページのようなデザインで、リンクがたくさん貼ってある文字が、箇条書きになっている。「説明書きは見ないでいじる」派(そして、「苦労する」派…)なので、無視して、手を動かし始める。
「ワクワク感で、失読症になってしまう」派ともいう。自分は。
この画面のままじゃ、操作できないのは、分かり切っている。
「新しいファイル」系のボタンでどうせはじまるんだろ?おりゃ。
…
え。なにコレ、ビューワー?どうやったらモデリングできんの?
いや、ポイントが打てるぞ!
あんまりにも機能が多すぎるために、ドロップリストで、ツールを切り替えながら進める仕様なようです。
この選択肢の事を、ワークベンチと呼ぶそうな。
とりあえずワークベンチは、Draftとか、arch(建築?)とかを選んだ。
Pathを選ぶと、電気回路のパスを描いてくれそうだし、
何か色々付いてる。
SketchとDraftの違いが分かっていない。
どっちとも、点、線が描ける。
とりあえず、Draftで試した。
とりあえず、原点座標(0,0,0)を打つ。
点が打てる!
単位はmm
基本も分からないまま、マクロに手を出す。
マクロの記録機能がついてる。
マクロというか、スクリプトというか、何の言語なのか分からないし、FreeCAD固有の言語かもしれないが…
自分の推測が正しければ、これは、Shadeのスクリプトの「記憶」と、同じ機能なはず…
つまり、GUIのボタンをおしたりして操作した内容を、エディタか何かに自動記録してくれる。
「マクロを記録するためのダイアログを開く」ボタンで、記録開始。
保存する場所が悪いのか、
「最初に保存する場所を選んでください」と表示される。
こういう時は、経験上、とりあえず、デスクトップが権限的にも大丈夫なはず。
このエラーに引っかかって、「FreeCADつかえねぇー」と諦めた人もいるのではないだろうか。
というか、これは、FreeCADのGUIのデザインが悪い。
もし、保存する場所を選んで欲しいのであれば、最初にファイルダイアログを出現させるべき。
もしくは、ファイル名よりも上に、フォルダ選択ダイアログを用意して、フォルダ選択するまで、非アクティブにするべき。
githubにあったら、自分でやってみようかとまで、思い悩む。
コマンドを知りたい機能のボタンを押し終わったら、緑の四角ボタンを押すと、記録を終了する。
記録されたマクロを編集したり、実行したりするためには、メモ帳みたいなボタンを押す。
この画面から、マクロの実行もできるそうな。今はまだ実行はしない。今は、「編集ボタン」を押す。
すると、こんな感じの画面が出たはず。
スクリプトの記録の何がいいのか。
コマンドを知らなくても、その機能をスクリプトで使うためのコマンドがピロっと出てくる。
↓
APIリファレンス(無数にあるコマンドをアルファベット順に集めただけの、プログラマ向けの取説)を読む必要がない。
↓
GUIの操作では実現しにくい煩雑な動作を、for構文とかと組み合わせて自動化できる。
たとえば、forで決まった回数繰り返すには…後述。
特に、「座標は数式で表せるんはずなんだけど、ツールが無い」「開発者も、わざわざこの動作をするためだけにツールを準備してくれないんだろうなぁ」というようなタイプのスクリプトを準備できる。
FreeCADのスクリプトは、拡張子は”*.FCMacro”だけど、中身はpythonだった。
やっぱりShadeと同じ要領でできました。
python勉強していてよかった。動くぞ!
マクロの記録で排出されるデータはこんな感じ。
# -*- coding: utf-8 -*-
# Macro Begin: C:\Users\yusuke\Desktop\aaa.FCMacro +++++++++++++++++++++++++++++++++++++++++++++++++
import FreeCAD
Draft.makePoint(0.0,1.0,3.0)
# Macro End: C:\Users\yusuke\Desktop\aaa.FCMacro +++++++++++++++++++++++++++++++++++++++++++++++++
拡張子は”.FCMacro”でしたが、むしろ”.py”の方が分かりやすい。
丁寧にも、UTF-8文字コードの指定
# -*- coding: utf-8 -*-
とかつけてくれてるし。
改行コードはLF。
Windoowsは、CR+LF。
Linuxは、LF。
ここはちょっと気を付けたい。
# は、その行のコメントアウトを意味する。
例外として、一行目の# の場合は、文字コードの指定の時に、こういう書き方ができる。
要点だけ書くと、
import FreeCAD
Draft.makePoint(0.0,1.0,3.0)
とあるが…
import…
import FreeCADというのは、
python言語で、ライブラリ(python流にいう所のモジュール)を読み込む。
Cでいうインクルードの事だと思う。
FreeCADを読んだので、FreeCAD特有のコマンドが使えるようになる。Draft.makePoint(…,)
FreeCADのコマンドの、点を打つ機能として、Draft.makePoint(0.0,1.0,3.0)がある。
()の中身の数字として、座標xyzを(mm単位で)指定する。
コンマで区切って使ってね。ただし、
引数が一つならxのみ、
引数が二つなら、x,yのみとしても使える。
引数(英語で、argとか、argumentとか)っていうのは、()の中に入れる変数の事で、
変数っていうのは、場合によっては「数」ではなくて文字列(英語でいうstring(”abc”)とか)だったりする。
もちろん、関数Draft.makePointは、数字を引数として受け取るから、文字列を入れると、
>>> Draft.makePoint("aa")
Traceback (most recent call last): File "<input>", line 1, in <module>
File "X:\ProgramData\FreeCAD 0.16\Mod\Draft\Draft.py", line 2420, in makePoint
_Point(obj,X,Y,Z) File "X:\ProgramData\FreeCAD 0.16\Mod\Draft\Draft.py", line 5168, in __init__
obj.addProperty("App::PropertyDistance","X","Draft","Location").X = xBase.FreeCADError: FreeCAD exception thrown (syntax error)
とか、エラーが返ってきたりする。
このサイトでは、シンタックスハイライトの独特の内容になっているが、FreeCADでは、エラーは、全て赤で表示される。
コマンドって書いたけど、まぁ…よくは知らないんだけど、引数を受け取って何か返すので、コマンドの事を、関数(英語でいうfunction)と読んだりしますよ。
マクロの実行の仕方は三つ
マクロとスクリプトをごちゃ混ぜにして使ってます。
もちろん両者の区別がついてません。
同じ意味でしょ?
知恵袋とかありましたが…どうでもいいと思って読んでない。
マクロの実行の仕方は、三つ見つけました。
ミドリの再生ボタン
ちなみに、このボタンは、モデリング画面では非アクティブ(グレーアウト)したまま。スクリプトのエディタ画面にしないと、アクティブにならない。pythonインタプリタに直接入力
pythonインタープリターは、表示>パネル>python コンソールにチェックで出せる。
pythonユーザーとしては、初めから出しておいてほしい気もする。マクロの実行ダイアログ()
もしかすると、FreeCAD自体を、
Windowsのコマンドライン→pythonインタプリタ
から操作できるかもしれないが、試してない。
例えば、for構文で、無数の点を、一定条件で打つ。
# -*- coding: utf-8 -*-
import FreeCAD
for a in [0,1,2,3,4,5]:
Draft.makePoint(a,0,0.)
点が出て来おった…!
この程度なら、機能としてついているけど、もっと細かい条件でも、自分で設定できる。
オイラーやる。
馬鹿の一つ覚えですが、「オイラーで書いたサイン、コサインの複素数を3Dで…」ってのをやる。
# -*- coding: utf-8 -*-
import math
import FreeCAD
euler = lambda n, k, N: math.e**(-1j*n*k*2.0*math.pi/float(N))
N = 64
k = 3
for i in range(N):
b = euler(i,k,N)
Draft.makePoint(i, b.real, b.imag)
面を張ってみる。
画像のようにやったらできた。
ワークベンチpartの中にあるツールを使った。
FreeCADのインストールは、できればローカルにしたい
FreeCADをインストールするときは、ローカルに保存した方がいい。
自分は、ローカルのスペースが狭い都合上、外部HDDにFreeCADをインストールしたんだけど、いちいち遅い。
ツールを選択したり、点を打ったりするたびに、ワンテンポ遅れる。
長時間使うのであれば、このタイムラグは、かなり苦痛。
できれば、ローカルディスクに保存されたし。
「ノートPC、マウス無し」で操作するなら、マウス設定必須
ノートPCというか、ラップトップとも言いますが…。
マウス無しでやるなら、必要になるかもしれない。画面の回転、スクロール等ができないので、モデリングしにくい。(只、上面、底面、正面などのショートカットを身に着けるために、敢えてマウスを封じるのも一つの手かもしれない。)
マウスも、二ボタンのではだめ。
右と左の間に、中央のスクロールのやつがついてないとだめ。
マウスの設定は、ここを参照したが、
こうやった。
「なぜか、”FreeCAD”が繰り返しダウンロードされる」と思ったら…
webブラウザの、タブを消さないクセがあって、ダウンロードサイトのページを開いたタブが、ずっと残ってたせいだった。今後は、こういうことが無いように致しまして候…
今月は色々あったで候…
新しい事だらけで、胃薬をたくさん飲んだで候…。予め、予防線を張っていたおかげで、胃的には、何ともなく過ごせた。
これからも、何とかやっていけそうな気がしていまして候。
https://eswasilcoacransoi.wixsite.com/specunarer/post/sony-vaio-torrent-keygen-activation-pc
https://wakelet.com/wake/WOV8BdGbaZ0ipRm2UXX03
https://wakelet.com/wake/xRXgBuMTpd6hHdcVAlfcC
https://trello.com/c/wNe8wGQh/5-sex-s-rip-free-watch-online-1080
https://chrispesucbe.amebaownd.com/posts/23886108
https://www.linkspreed.com/read-blog/2894
https://seesaawiki.jp/lentgachingco/d/Lazy Nezumi Pro 17.3.25.1950 Download Exe Patch Final Activator 32bit NEW!
https://wakelet.com/wake/CqOm2xSojTwBUxF4pew29
https://ulhanmiaco1987.wixsite.com/bungcewrlinkdrip/post/guru-full-movie-720p-download
https://www.kingdomportal.com/post/1592_las-formulas-de-la-redaccion-jose-raul-feliciano-rivera-pdf-18-las-formulas-de-l.html
https://ajorsisdo.weebly.com/mechanical-response-of-engineering-materials-second-edition-solution-manual-queeney-segall.html
https://access360.africa/post/2149_gram-of-crack-cocaine-price-cocaine-price-per-gram-in-india-cocaine-price-per-gr.html
https://kit.co/ozinadep/epub-talvar-full-edition-ebook-download-rar
https://artihigalwind.wixsite.com/ordoeseefe/post/call-of-duty-advanced-warfare-v-1-18-1281374-0-pc-rip-decepticon-version-download
https://trello.com/c/V5pziDun/22-video-of-old-people-having-sex
https://cdn.thingiverse.com/assets/7b/dc/12/51/25/glainniss529.html
https://docs.google.com/viewerng/viewer?url=goodforfans.com/upload/files/2021/11/GpVAkTf6BxExl4Tq1yum_29_bf5228a16889f7faddd6fe18b5d684eb_file.pdf
https://rhonavh4npalka.wixsite.com/clungolfsangso/post/dvdrip-bhaag-johnny-watch-online-torrents-movies-avi
https://trello.com/c/fsKiz6U3/29-porno-de-alejandra-guzman
https://uploads.strikinglycdn.com/files/1a0463e1-e964-4dc5-8eee-e135599b960f/HACK-Plextools-Professional-Xl-V305.pdf
https://wakelet.com/wake/L7Fa6FWwkYqfZpZcj_xOm
https://trello.com/c/QsMtI7fN/20-film-emile-pandolfi-time-1080p-film-kickass-subtitles-dubbed-blu-ray
https://www.cloudschool.org/activities/ahFzfmNsb3Vkc2Nob29sLWFwcHI5CxIEVXNlchiAgID_hrTACAwLEgZDb3Vyc2UYgIDAgL-KmQkMCxIIQWN0aXZpdHkYgICAv8GY3AoMogEQNTcyODg4NTg4Mjc0ODkyOA
http://telegra.ph/Exercice-Corrige-Plsql-Pdf-12-01
https://wakelet.com/wake/RmyU-i1z-0Al5TpdsvgnP
https://wakelet.com/wake/9fPBzwcjWzJl4wm2iVYTO
https://wakelet.com/wake/hDVlfppRmjkpHhSt56GMc
https://wakelet.com/wake/UeQGfvVqBr5jSn7NlLVMz
https://coub.com/stories/2897897-autodata-3-38-romana-lazdaw
https://coub.com/stories/2897895-free-alcpt-form-36-100-40
https://coub.com/stories/2897891-ogm-jaf-pkey-emulator-v5-for-windows-7-link
https://coub.com/stories/2897883-envoyfilmedublado-full
https://wakelet.com/wake/qxk7oQcKLodg2lNNP-mVw
https://wakelet.com/wake/HV5nVF5AQxI_5lRCEIlbm
https://wakelet.com/wake/ilAkXUngtUl-PT69jCvo3
https://wakelet.com/wake/DLS2V1A7lrxyVZZNm-CJT
https://wakelet.com/wake/oubH0X_ehPIUJf0m15GTQ
https://wakelet.com/wake/5_3q_JLEjJu3_HjhYIDsM
https://wakelet.com/wake/BbyElL5ctvtJ09DEQrNnp
https://wakelet.com/wake/PZa3pcQHZ7HXPApeNFt2z
https://wakelet.com/wake/nPpkSLsgjS7HBaU1H-qIk
https://wakelet.com/wake/Uk_QB1K9Si3qHyFCiqgKA
https://wakelet.com/wake/P9LyZuUPv9IZo6pcXtqV-
https://wakelet.com/wake/OZshwXtmU2BQUZTY1ycIe
https://wakelet.com/wake/ZYBhOTK_fPTyCPafqij-8
https://wakelet.com/wake/0m9ZrpNN9Ya381bc5LdTN
https://wakelet.com/wake/Ipae_ROTzjKTLABFHSRok
https://wakelet.com/wake/woLaPFJkmCGVuI1HSIrUA
https://wakelet.com/wake/x-mKHPVP_r7_QWlQV0ZBQ
https://wakelet.com/wake/grn-rIbSFimyy5c1ElIL0