広告
新規作成日 2017-08-16
最終更新日
Fusion360では、スクリプトとアドインが使用できます。スクリプトやアドインは、プログラミングの技能があれば、自分でプログラムすることが可能です。プログラミングできなくても、公開されているスクリプトやアドインを利用することができます。
スクリプトやアドインは、定形機能をスクリプトで記述し、複数の操作をまとめて実行する機能です。ほとんどのCADでは、UIで提供されるコマンドは、APIと呼ばれる基本機能を組み合わせたスクリプトで作成されています。スクリプトとアドインが作成できれば、自分の必要な機能を自分で用意することができます。
このAPIサンプルは、Fusion360のドキュメント内で紹介されています。
Create sketch lines in various ways API Sample
長方形を作成する結果を含む、スケッチの線を作成する、いくつかの方法を説明します。
スクリプトとアドインをクリックします。
作成をクリックします。
「プログラミング言語」にPythonを選択し、「スクリプト名またはアドイン名」と「説明」を入力し、「作成」をクリックします。スクリプト名に日本語が利用できないことに注意して下さい。
マイスクリプトに入力した内容で項目が追加されます。項目を選択し、編集をクリックします。
Spyderが起動するので、サンプルコードをコピーして、Editペイン貼り付けます。後から確認し易いように、日本語のコメントを追加します。図のペインの配置は、初期状態から変更しています。
#Author-
#Description-APIサンプル内のさまざまな方法で、スケッチの線を作成します。
import adsk.core, adsk.fusion, traceback
def run(context):
ui = None
try:
app = adsk.core.Application.get()
ui = app.userInterface
doc = app.documents.add(adsk.core.DocumentTypes.FusionDesignDocumentType)
design = app.activeProduct
# Get the root component of the active design.
# アクティブ・デザインのルート・コンポーネントを取得します。
rootComp = design.rootComponent
# Create a new sketch on the xy plane.
# xy平面上に、スケッチを新規作成します。
sketches = rootComp.sketches;
xyPlane = rootComp.xYConstructionPlane
sketch = sketches.add(xyPlane)
# Draw two connected lines.
# 2本の接続した線を描画します。
lines = sketch.sketchCurves.sketchLines;
line1 = lines.addByTwoPoints(adsk.core.Point3D.create(0, 0, 0), adsk.core.Point3D.create(3, 1, 0))
line2 = lines.addByTwoPoints(line1.endSketchPoint, adsk.core.Point3D.create(1, 4, 0))
# Draw a rectangle by two points.
# 2つの点で矩形を描きます。
recLines = lines.addTwoPointRectangle(adsk.core.Point3D.create(4, 0, 0), adsk.core.Point3D.create(7, 2, 0))
# Use the returned lines to add some constraints.
# いくつかの拘束を追加するために、返された線を使用します。
sketch.geometricConstraints.addHorizontal(recLines.item(0))
sketch.geometricConstraints.addHorizontal(recLines.item(2))
sketch.geometricConstraints.addVertical(recLines.item(1))
sketch.geometricConstraints.addVertical(recLines.item(3))
sketch.sketchDimensions.addDistanceDimension(recLines.item(0).startSketchPoint, recLines.item(0).endSketchPoint,
adsk.fusion.DimensionOrientations.HorizontalDimensionOrientation,
adsk.core.Point3D.create(5.5, -1, 0));
# Draw a rectangle by three points.
# 3点で長方形を描きます。
recLines = lines.addThreePointRectangle(adsk.core.Point3D.create(8, 0, 0), adsk.core.Point3D.create(11, 1, 0), adsk.core.Point3D.create(9, 3, 0))
# Draw a rectangle by a center point.
# 中心点で長方形を描画します。
recLines = lines.addCenterPointRectangle(adsk.core.Point3D.create(14, 3, 0), adsk.core.Point3D.create(16, 4, 0))
except:
if ui:
ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))
実行します。
新しいデザインが追加され、直線と矩形が追加されます。
このような図形が描かれます。
Tweet
広告