断面形状からの面作成

Japanese forum
opabinia
Posts: 3
Joined: Sun Sep 10, 2017 4:20 am

断面形状からの面作成

Postby opabinia » Sun Sep 10, 2017 4:58 am

Freecadは使い始の初心者です。断面形状の面積を求めくて、STLをsolidに変換して断面形状の輪郭線を作成しました。
高度な図形変換ユーティリティで面にしようとしたのですが、輪郭線が選択できません。
図形の選択でできないので、編集の短径選択で範囲をしても、頂点から面へでは 3つ以上の頂点を選択のメッセージが表示されます。

輪郭線の要素は、compound とでますが、これから線または直線の要素を取得するにはどうしたらいいでしょうyか?
App.ActiveDocument.getObject("hand_top5K001_solid_cs").Shape.ShapeType
'Compound'
User avatar
h.tsubota
Posts: 38
Joined: Mon Mar 21, 2016 2:09 pm

Re: 断面形状からの面作成

Postby h.tsubota » Mon Sep 11, 2017 6:03 am

高度な図形変換ユーティリティのダイアログを表示した後、「エッジから面へ」を選んでいますか?

・輪郭線が選択できない
・「頂点から面へでは3つ以上の頂点を選択」というエラーメッセージ

という状況を見るとエッジ選択ができないのは「エッジから面へ」を選択していないからではないかと思います。
opabinia
Posts: 3
Joined: Sun Sep 10, 2017 4:20 am

Re: 断面形状からの面作成

Postby opabinia » Mon Sep 18, 2017 6:54 am

返信ありがとうございます。
エッジから面を選択しても、エッジ自体が選択できない状態です。
断面形状から面を作成する手順をしらべています。
マニュある入力で3角形をつくり、点から線、線からエッジは成功しますが、STLからsolidに変換した立体から断面形状を作成したものからは
作成出来ていません。エッジの線が100個程度あるので3個づつではなく、短形で範囲していで選択しましが、選択されんないです。
User avatar
h.tsubota
Posts: 38
Joined: Mon Mar 21, 2016 2:09 pm

Re: 断面形状からの面作成

Postby h.tsubota » Mon Sep 18, 2017 10:56 am

問題は「断面形状がなぜか作成できない」ではなく、100個程度あるエッジを簡単に選択できない(矩形選択しても選択が外れる・選択できない)ということですね。

現状のバージョン0.16の図形変換ユーティリティでは対応できないと思います(ソースコードを自分で書き換えればできますが)。

「断面を面として取り出せればいい」ということであれば別の方法があるので参考になるかわかりませんが以下に手順を書いておきます。

1.建築ワークベンチ(Archワークベンチ)を起動
2.建築ワークベンチの切断ツールでソリッドを切断
 (参照 http://open-shelf.appspot.com/FreeCAD/34.html
3.取り出したい面をクリック選択してフェイスバインダーツールを実行し、断面を取り出し
 (参照 https://www.freecadweb.org/wiki/Draft_Facebinder
4.(取り出された断面はドラフトオブジェクトなので)必要であればアップグレードツールで面オブジェクトまでアップグレード
 (参照 https://www.freecadweb.org/wiki/Draft_Upgrade/jp

以上で断面を取り出せるのではないかと思います。
opabinia
Posts: 3
Joined: Sun Sep 10, 2017 4:20 am

Re: 断面形状からの面作成

Postby opabinia » Tue Sep 19, 2017 12:59 am

ありがとうございました。
提示された方法で、モデルツリーの左に立体マークのついた面は出来ました。

ここで面積は計測したいので、パイソンコンソールで
area = 0.0
for o in Gui.Selection.getSelectionEx() :
for s in o.SubObjects:
area = s.Area
print "Area of selected face:" ,area
とすると2回目のリターンで
Area of selected face:1913.95998697 
と表示されました。
ありがとうございました。