Source documentation/ja
オンラインのソースドキュメントはhttp://www.freecadweb.org/api/にあります。
FreeCADのソースコードは、Doxygenを使ってHTMLドキュメントを自動生成するようにコメントされています。これは、FreeCADソースコードのC ++部分とPython部分の両方に当てはまります。
FreeCADの最新のSVN版を追従したい人、そしてC ++やPythonの部分を読むことに挑戦する人がソースを読んでまず思うのはまるで強固な要塞でも見ているようだ、ということでしょう。どこから始まってどこで終わっているのか見当もつかないし、どこから手をつけたらいいかもわからないでしょう!
Wikiに加えてソースドキュメントSource Documentationを読むことでその感覚が緩和され、取っ掛かりを見つけて、数十ものファイルやディレクトリを簡単に見通せる様になることを願っています。
ソースドキュメントのビルド
Doxygenをインストールしてあればドキュメントのビルドは非常に簡単です。FreeCADビルド用のディレクトリに移動してCMakeでソースを設定した上で次のコマンドを実行します:
make DevDoc
その後でDoc/SourceDocu/html/index.htmlから始まる結果のhtmlファイルを調べてください。
(注意:DevDocターゲットは自動ツールビルドでは有効になっていません)その性質上、ソースドキュメントは常に作業進行中状態にあります。よく起きることですが必要がある時にはためらわずに再ビルドを行なってください。 それはhttp://www.freecadweb.org/api/で使用されているバージョンも代わりに発行することによって生成することができます:
make WebDoc
元のドキュメントは元々進行中の作業であり、今後もそうなる予定です。必要に応じて頻繁に再構築することを躊躇しないでください。もし明らかな不備を見つけた場合には遠慮無くフォーラムに投稿してください(注意:CMakeビルドプロセスでしか全体のチェックは行われていません)。
またこれとは別にこのドキュメントは折を見て生成されては、sourceforgeのここでアクセス可能な状態で置かれています。
これはFreeCAD Doxygen documentationです qingfeng.xiaによって生成されます。
Coin3Dドキュメントの統合
UNIX系ではCoin3DのソースドキュメントをFreeCADのものとリンクすることが可能です。 これを行うと移動が楽になり、またCoin派生クラスの継承ダイアグラムを作成できます。
- Debianとそこから派生したシステムの場合:
- - パッケージlibcoin60-docをインストール
- - ファイル /usr/share/doc/libcoin60-doc/html/coin.tag.gzを展開
- - ソースドキュメントを再生成
- オフラインでのブラウジングができます。
- もしCoinのドキュメントパッケージをインストールしたくない/できない場合、設定時(wget)にDoxygenタグファイルがダウンロード可能であればdoc.coin3D.orgにあるオンラインのCoinドキュメントへのリンクが生成されます。
How to integrate doxygen in to the FreeCAD source code
Example of a complete doxygen page: (from another project)
doxygen: http://www.vtk.org/doc/nightly/html/classvtkArrayCoordinates.html
source: https://github.com/Kitware/VTK/blob/master/Common/Core/vtkArrayCoordinates.h
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Start, Surface, TechDraw, Test Framework, Web
- Hubs: User hub, Power users hub, Developer hub