Tag: API
-
Autodesk Inventor 2016 の APIトレーニングマテリアルの公開
Autodesk Inventor 2016 の日本語バージョンの発表に伴い、Autodesk Inventor 2016 APIトレーニング教材一式「APIトレーニングテキスト」「APIトレーニング実習ガイドと演習&回答」及び 「演習と実習用ファイル」を公開いたします。 公開されるコンテンツは、Autodesk Inventor 2016 APIトレーニングテキスト(.ppt P.368)を pdf ファイルに変換した “Inventor2016API .Net Training_J.pdf”、テキスト内の演習問題と各開発ガイド(実習)を説明した「演習と実習ヘルプファイル」の”Inventor2016API Exercise.chm”、「演習と各開発ガイド(実習)の回答」( 14の演習回答 と 80の実習の回答) をそれぞれVBAマクロファイルとVisual Studio 2012(VB.Net)のプロジェクトとしたファイル群、また「演習と各開発ガイド(実習)で使用するInventorファイル群」の公開となります。 ・Autodesk Inventor 2016 の APIトレーニングテキスト ・Autodesk Inventor 2016 の APIトレーニングテキスト(実習ガイドと演習&回答) ・Autodesk Inventor 2016 の APIトレーニングテキスト(演習と実習用ファイル) 関連ファイルのダウンロード先: 1. Autodesk Inventor 2016 の APIトレーニングテキストは、 Autodesk Inventor 2016 の APIトレーニングテキスト よりダウンロードいただけます。 2. 演習と実習のヘルプファイルと回答は、…
-
Inventor製品のプロジェクトファイルについて
Inventor製品を使って設計作業をする場合、あまりどのブログでも取り上げられておりませんが Inventorはプロジェクト有きの製品である事を軽視しがちであり、今回は、Inventor製品内で一番地味な存在である「プロジェクトファイル .ipj」について、知られているようで知られていない重要な働きを取り上げたいと思います。 まず、プロジェクトファイルは、.ipjという拡張子のファイルで内部には設計データファイルとライブラリへのアクセスやファイル参照を維持するためのパスが設定されているものです。 通常考えられるプロジェクトは、たとえばプロジェクト固有のパーツやアセンブリ、社内の独自の標準コンポーネント、既製のコンポーネント(締結部品、継ぎ手、電子コンポーネントなど)といったもので構成されて利用されており、一般的には設計データは複数のファイルに分散しており、パーツ、アセンブリ、図面、プレゼンテーションはそれぞれ固有のファイルに保存されますが、これらの各ファイルから 1 つまたは複数のコンポーネントや他のアセンブリを参照していますので、プロジェクトはファイル間参照の従属情報を保持することにより、プロジェクトを定義するファイル セットの移動、Pack and Goなどのアーカイブ、再構築を可能にするために用いられる設計の重要なベース基盤の環境が設定されています。 これらの説明は 製品ヘルプの 「デザイン データを整理するためのプロジェクト」 内の録画を参照してください。 製品ヘルプ内のこのレコード再生です。 無論、Inventor APIでもプロジェクトの制御は可能ですので、Inventorプロジェクト.ipjファイルを変更する方法 を参考にしてください。 By Shigekazu Saito
-
Autodesk Inventor 2015 の APIトレーニングマテリアルの公開
今回は、Autodesk Inventor 2015 製品の新機能のご紹介をいったん中断し、Autodesk Inventor 2015 の日本語による APIトレーニング教材一式「APIトレーニングテキスト」「APIトレーニング実習ガイドと演習&回答」及び 「演習と実習用ファイル」を公開いたします。 公開されるコンテンツは、Autodesk Inventor 2015 APIトレーニングテキスト(.ppt P.368)を pdf ファイルに変換した “Inventor2015API .Net Training_J.pdf”、テキスト内の演習問題と各開発ガイド(実習)を説明した「演習と実習ヘルプファイル」の”Inventor2015API Exercise.chm”、「演習と各開発ガイド(実習)の回答」( 14の演習回答 と 80の実習の回答) をそれぞれVBAマクロファイルとVisual Studio 2012(VB.Net)のプロジェクトとしたファイル群、また「演習と各開発ガイド(実習)で使用するInventorファイル群」の公開となります。 ・Autodesk Inventor 2015 の APIトレーニングテキスト ・Autodesk Inventor 2015 の APIトレーニングテキスト(実習ガイドと演習&回答) ・Autodesk Inventor 2015 の APIトレーニングテキスト(演習と実習用ファイル) 関連ファイルのダウンロード先: 1. Autodesk Inventor 2015 の APIトレーニングテキストは、Autodesk Inventor 2015 の APIトレーニングテキスト よりダウンロードできます。 2. 演習と実習のヘルプファイルと回答は、Autodesk…
-
Inventor2014 APIで「親アセンブリ原点からの現在のオフセット」の情報を取り出す方法
アセンブリファイルに配置されたオカレンスの位置情報は、QA-8359 「アセンブリファイルに配置されたオカレンスの位置情報を取得する方法」で紹介されている通りで、本来ComponentOccurrenceのTransformationであるマトリクスオブジェクトに格納されているTranslationプロパティ情報は、トップアセンブリから見ての相対座標が格納されています。 しかし、サブアセンブリなどにポジションリプリゼンテーション”が設定されている場合は、サブアセンブリのオカレンス情報「oSubAsmOccur.Definition.Occurrence.Item()」でオカレンスの位置を取得した場合、現在の位置ではなく、サブアセンブリドキュメント内の位置(ポジションリプリゼンテーションのマスター位置)を返し、同時にリプレゼンテーションでポジションが移動している場合のサブアセンブリパーツ位置(相対座標)を取得できず、この場合は、絶対座標になってしまいます。 ポジションリプリゼンテーションが設定されている場合では、直接オカレンス側ではなくサブオカレンス側のマトリクスを使い、更に移動後に反転などの計算に用いなければ求められません。 (計算後のマトリクスを与える必要があります。) 一方、”iPropart”の”オカレンス”タブ内に表示される”親アセンブリ原点からの現在のオフセット”内の「角度」情報は、Inventor製品側のオカレンスタブ内の「コアプログラム内」でこのComponentOccurrenceのTransformationであるマトリクスオブジェクト内のベクトルオブジェクト(Vector)を用いて「内積」による角度計算をして表示しています。 APIでは以下のサンプルコードのようにMatrixから角度計算にて求められます。 注意しなければならないのは、角度の計算に伴う符号検査の中で、値の符号を取り出すための Sgn 関数の取り扱いに注意が必要です。 number > 0 1 number = 0 0 number < 0 -1 つまり、検査したMatrixの値が”0″の場合、戻りが0となり、直後に乗算に用いていますので、2π(=180度)の値も、結果として “0”ラジアンにして デグリ変換しているので 0 度として現れますので、判定が必要となります。 Public Function Acos(value) As Double Acos = Math.Atn(-value / Math.Sqr(-value * value + 1)) + 2 * Math.Atn(1) End Function Sub CalculateRotationAngles(ByVal oMatrix As Inventor.Matrix, ByRef aRotAngles() As Double) Const…
-
Inventor2014 APIで「断面」と「レール」を使って「ロフトフィーチャー」を作成する方法
Inventor2014製品の「ロフト」コマンドでは「断面」と「レール」を指定して「ロフトフィーチャー」が作成できますが、APIを使って「断面」と「レール」が一緒のプロファイル化ではエラーとなり「ロフトフィーチャー」が作成できません。 これはAPIの内部動作仕様から、Profile3Dを作成するために3Dスケッチでスケッチエンティティを指定しても、プロファイル作成時のProfiles3D.AddOpenは常に最初のスケッチ曲線を使用している振る舞いにありますので、一旦ロフトフィーチャーを作成する際に「更新用のスケッチ3D」を準備した状態で「断面」だけの情報で作成し、その後に一旦作成したロフトフィーチャーを用いて「レール」のプロファイル情報を指定し、「断面」+「レール」情報によるロフトフィーチャーを作成する方法になります。 Public Sub CreateLoftFeature() Dim oDoc As PartDocument Set oDoc = ThisApplication.ActiveDocument ‘ 「断面」のスケッチ3Dの確保<br /> Dim oSk3dCrossSectionOrg As Sketch3D Set oSk3dCrossSectionOrg = oDoc.ComponentDefinition.Sketches3D.Item(2) ‘ 「断面」のプロファイル化 Dim oProfile1 As Profile3D Set oProfile1 = oSk3dCrossSectionOrg.Profiles3D.AddOpen ‘ スケッチ3Dの作成<br /> Dim oSk3dCrossSectionOrg1 As Sketch3D Set oSk3dCrossSectionOrg1 = oDoc.ComponentDefinition.Sketches3D.Add ‘ 更新用のスケッチ3Dとして準備 Call oSk3dCrossSectionOrg1.Include(oSk3dCrossSectionOrg.SketchLines3D.Item(3)) ‘ 更新用のスケッチをプロファイル化 Dim oProfile2 As Profile3D…
-
JavaScript API と .Net Managed API 間の 連動カスタマイズ
先回お知らせした「AutoCAD 2014 JavaScript APIと既存APIとの連携の開発環境」を使い、JavaScript API と .Net Managed APIによる以下の連動したカスタマイズと、htmlとJavaScript APIによるデータベースI/O処理について掲載させていただきます。 これは、dotNetカスタムコマンド内より、JavaScript APIでコーディングされた html ファイルと jsファイルをAPIによってロードするカスタマイズの方法を理解していただくと共に、パレットとしてhtmlファイルを表示させ、パレット上の各ボタンからは、dotNetカスタムコマンド環境内のdotNetManagedクラス(dotNet API)を使い、データベースアクセス処理およびJavaScriptからの引数情報でオブジェクトの追加処理を実行させる(既存のdotNetAPIで作成されたカスタムコマンド処理を動作させることをイメージとしたサンプル)のほか、パレット上のボタンから直接JavaScript( js )ファイル内にコーディングされたJavaScript APIを使って JavaScriptファイルとhtml間のオブジェクト情報のI/O の動作の理解を目的としています。 今回の処理の内容: 1. Netカスタムコマンドを使ってhtmlとJavaScriptファイルをロードしツールパレットにhtmlを表示 2. htmlのボタン1 -> JavaScript -> .Netマネージコードでデータベースへ追加処理の呼び出し (呼び出された.Netカスタムコマンド内で、Json.Netを使いJavaScriptから引数の引き渡しデータを使ってデータベースへ線分とテキストオブジェクトの追加処理) 3. htmlのボタン2-> JavaScript -> .Netマネージコードでデータベースクエリー処理の呼び出し (呼び出された.Netカスタムコマンド内で、データベースのクエリー処理) 4. htmlのボタン3 -> JavaScript -> JavaScript APIでリアクタ処理の追加 (JavaScript API を使ってオブジェクトにリアクタをセットし、Object ID一覧をhtml上に表示) 5. htmlのボタン4 -> JavaScript -> JavaScript APIでリアクタ処理の解除…
-
Zoom & Center to a Lat / Lon location using Autodesk Design Review API
By Partha Sarkar In Autodesk Design Review using the “Center to Coordinates” UI tool we can set the center for a Map to a specific coordinate value entered through the User Interface as seen in the screenshot below – Using ECompositeViewer.centerToCoordinates(coordType, x, y) we can replicate the above mentioned UI tool command. You…
-
Inventor API 入門 その5 Inventor製品の未インストールPC環境で Inventorファイルを読む方法
Autodesk Inventor View 2013 製品(無償)により、Autodesk Inventor 2013 がインストールされていないPC環境で、ネイティブの Autodesk Inventor 2013 CAD データを表示することができます。 Inventor API では 本体のInventor オブジェクトモデルの サブセットAPIとしてApprentice Serverオブジェクトモデル(アペレンテス サーバー)がリリースされています。 これは、Autodesk Inventor View 2013 製品同様 PC内にAutodesk Inventor 2013製品がインストールされていない環境で、一般のCOM/ActiveXメカニズムが使える外部の実行環境内に 無償のサブセットの Apprentice Serverタイプライブラリを参照する事により 「Apprentice Serverオブジェクトモデル」を使って、Inventorのファイルを 読み込み専用(一部R/W可能なデータ有り)で操作できるプログラムの作成が可能です。 今回は、単独で「Windowsフォームアプリケーション」をVisualStudio2010で作成し、外部の実行Exeプログラム内から Inventorのアセンブリファイルを開き ファイル内のサムネイルとオカレンスの構成情報にアクセスし、フォームに表現する方法と、デバックの仕方をお見せします。 (画質は”HD”でご覧いただけます) Autodesk Inventor View 2013は、Autodesk Inventor 2013製品のインストール時にインストールされるほか、ここより別途ダウンロードしインストールする事でご利用できます。
-
Creating COGO Point and updating its Elevation
By Partha Sarkar This AutoLISP code snippet demonstrates how to create a COGO Point in AutoCAD Civil 3D and update it's elevation property. (defun c:CreateCOGO () (vl-load-com) ;; Change ProgID per Traget Civil 3D version ;; This code sample is meant for Civil 3D 2013 (setq aeccApp (vla-getinterfaceobject (vlax-get-acad-object) …
-
Create a custom Query with Boundary Type as ‘Point’ using Map 3D .NET API
By Partha Sarkar Presume you have some DWG files attached to your project in AutoCAD Map 3D and you want to run a Query with Boundary Type as 'Point'. What you do in Map 3D? You bring up the 'Define Query of Attached Drawing(s)' dialog box and select the 'Location' button. In 'Location Condition' dialog…

You must be logged in to post a comment.