2016-09-27 13 views
1

.netアプリケーションのAutocadパラメトリックブロックにパラメータ値を渡したいと思います。 単純なパラメータは "d1"(距離)です。.netからオートキャドパラメトリックブロックのパラメータを変更する

私は、ユーザー入力に基づいて2D dxfファイルを生成する複雑なasp.net製品のComfiguratorアプリケーションの一種を作成しています。 Unity webglを使用してWebページの3Dをレンダリングしますが、AutoCAD互換の2Dセクションが要件に含まれているため、実行時にdxfファイルを作成する必要もあります。

セクションをゼロから作成しないようにするために、私はパラメトリックブロックが解決策になりうることを発見しました。デザイナーは私に非常に複雑なパラメトリックブロックを提供し、実行時にパラメーターを渡して出力ファイルを読み込めません。

どういうわけか二つのタスクが必要です。

1)パラメトリックブロック

2にパラメータを渡す)シンプルDXFに保存します(私はパラメータが渡された後、パラメトリックブロックで興味がありません)

私はこれをネットで実行することができませんでした。

+0

ブロックスケールなどのプロパティを編集できましたが、最終的にはAPIのパラメトリックブロックでは機能しませんでした。 https://stackoverflow.com/questions/19290030/is-it-possible-to-edit-block-attributes-in-autocad-using-autodesk-autocad-intero – reckface

+0

@reckfaceをご覧ください。私はAPIにpoitnerを教えてください?彼らは正確に何ですか?パラメトリックブロックを使用できない理由をリンクした質問から理解できません。ありがとう。 – LaBracca

+0

私はblock.GetDynamicBlockProperties()を使用してプロパティを反復して値を設定しようとしましたが、ブロックには何の影響もありませんでした。私は_document.ModelSpace.InsertBlock(coordinate.Point、name、scale、yScale、scale、angleInRadians)を作成してからスケールすることができます – reckface

答えて

0

ダイナミックブロックのパラメータを変更するには、GetDynamicBlockPropertiesを使用してプロパティを取得し、各プロパティの値を変更できます。

ここにVBAの例があります:http://visiblevisual.com/jupgrade/index.php/autocad-vb-vba/9-insert-dynamic-block。あなたがウェブサイトを構築している場合は、あなたがForge Design Automation APIを使用する必要がありますDocument.SaveAs(fileName, AcSaveAsType.ac2000dxf)

を使用することができ、DXFファイルに図面を保存するには

(旧AutoCADのI/OのAPIとして知られている)の代わりに運転のAutoCADインスタンス(これは信頼できず、AutoCAD EULAはこれを許可していません)。 Teighaも使用できます。

関連する問題