Tag: inventor

  • Inventorのアセンブリファイル内の物理的なコンポーネントファイル名の変更

    先回は Inventor製品のアセンブリファイルのフォルダー間コピー操作 として、アセンブリファイルの完全なクローン化を説明させていただきました。 今回は、アセンブリファイル内にコンポーネント配置されたサブアセンブリファイルやパーツファイルの「物理的な各ファイルの名前を変更」する方法を紹介したいと思います。 Inventor製品のアセンブリファイルのフォルダー間コピー操作 でも説明されていますが、Inventorのアセンブリファイルは、パーツファイルや他のアセンブリファイルをサブアセンブリとして、それぞれコンポーネントとして配置しています。 これがトップアセンブリより見た場合、アセンブリ構成として Inventorの画面上に表示されており、Inventor 内の ブラウザ にて ツリー構造で表示されています。 アセンブリファイル内に注目すると、アセンブリファイル内には配置された各コンポーネントの実体は存在していません。 アセンブリ内には、各コンポーネントの「参照先情報」(=リンク情報)のみが存在してファイル内に保存されています。 Inventor内で、トップアセンブリを開いた場合、このテーブルに類似した情報を精査し、コンポーネント(=参照先のファイル)群が定められたフォルダー位置に存在するか否かを確認して開くメカニズムです。 意図的に削除されるなどして、コンポーネントの参照先が見つからない場合は、「リンク先の解決」警告ダイアログの出現と共に、リンク先ファイルの再設定の操作が可能な製品仕様です。 仮に、アセンブリ内に配置されているコンポーネントの物理的なファイル名を変更する事を目的として、我々が通常使用しているWindowsのエクスプローラーなどを使用して、フォルダー上の物理的なファイル名を変更した場合、Inventorのファイル管理構造より、アセンブリファイル内に保存されているテーブルに類似した各コンポーネントの「参照先情報」(=リンク情報)がマッチせず、必ず「リンク先の解決」警告ダイアログが出現する事になります。 コンポーネントで使用されている物理的なファイル名を変更する場合、物理的にクローンファイルを作成しておき、コンポーネントを置き換えする方法は存在します。 必要な場合は 以下の、QA-9520 を参考にしてください。 アセンブリファイル内のコンポーネントファイルの物理的なファイル名を変更する方法 By Shigekazu Saito

  • Inventor製品のアセンブリファイルのフォルダー間コピー操作

    今回は、Inventor製品のファイルをフォルダー間でコピーした後にハンドリングする際の話題を取り上げさせていただきます。 普段私たちはWindowsのエクスプローラ内でテキストファイルやEXCELファイルなどのクローン作成を目的として「コピー(C)」->「貼り付け(P)」の操作をしてクローン化しますが、Inventor製品ではファイルのクローン化は同様の手順では作成する事ができません。 特に気を付けなければならないのは、アセンブリファイルをコピーしようとした時です。 Inventor製品のアセンブリファイルは、「コンポーネント配置」の操作を経て「パーツファイル」や「他のアセンブリファイルをサブアセンブリ」としてトップのアセンブリファイルに配置された関連性を持って構成されています。 これは、トップアセンブリファイル内から見た場合、コンポーネントとして配置した「実際のパーツファイル内部のオブジェクト群」や「他のアセンブリファイルをサブアセンブリとしたオブジェクト群」そのものがトップアセンブリファイル内に複写されているものではありません。 (仮に、実際のモデルのオブジェクト群がトップアセンブリ内にクローンとして存在させるようなメカニズムであれば、1つの工場の全てといった大規模プロジェクトをInventor製品で設計した場合、トップアセンブリのファイルの大きさは想像できませんし、トップのアセンブリファイルを開こうとしてInventor製品内部に読み込むだけでも時間が掛かり、おそらく仕事にはならないでしょう) アセンブリファイル内に配置されたコンポーネントの関連性を制御しているのは、以前の記事 Inventor製品のプロジェクトファイルについて と Inventor製品のファイル検索順序について で紹介しました Inventorのプロジェクトファイル .ipt ファイル が大きな働きをしており、手動操作はもとより Inventor API を使ってアセンブリのハンドリングをする場合にも無視してはならず、APIによるカスタマイズの場合でも意識した状態で Inventor API を使わなければ、設計者が意図に反したフォルダー先の構成ファイルが更新される結果になりますので、注意する必要があります。 以下の説明ビデオは、単純に複写元からファイル群を複写先にコピーして複写先のトップアセンブリを開いて修正し保存した時の振る舞いと、複写元からプロジェクトファイルを含む全てのファイル群を複写先にコピーして複写先のトップアセンブリを開いて修正し保存した時の振る舞いの違いを説明したものです。 YouTube再生はこちら -> Inventor製品のアセンブリファイルのフォルダー間コピー操作 YouTubeイメージ 前者は意図しない振る舞いの結果となり、複写先のトップアセンブリファイルのみ修正され、含まれるコンポーネントファイルは複写元のファイル群が更新されるのに対し、後者は意図した振る舞いの結果であり、複写先のトップアセンブリファイル・コンポーネントファイル群全てが更新される事を説明したものです。 フォルダー内の全てのファイルを新しいフォルダーに全て複写するようなクローン化してハンドリングするようなAPIのカスタマイズを模索される場合は、QA-9485 を参考に くれぐれも必要に応じ適切に切り替えるような考慮を忘れないようにしてください。 QA-9485 Inventorプロジェクト.ipjファイルを変更する方法 By Shigekazu Saito

  • Inventor製品のファイル検索順序について

    Inventor製品ではファイルを探し出すための検索順序が、普段私たちが使っているWindowsのOSの検索動作の順序とは異なります。 Inventor製品においては、以前「Inventor製品のプロジェクトファイルについて」で触れております、プロジェクトファイルの各パス設定も重要になります。 OS側の検索順序は、まず自身のフォルダ内のファイルを最初に検索して見つからなかった場合に限り、他の指定フォルダ(パス)に記述されている文字列群に対し、左より(;)セミコロン で区切られた文字列をフォルダパスとして順に検索する動作です。 一方、Inventor製品は、アクティブ プロジェクトに定義されているオプションとファイルの保存場所を使用して、参照ファイルを自動的に検索します。 Inventorファイルにはライブラリまたは非ライブラリのファイルのいずれかの参照情報が保存されており、「ライブラリ参照」と「非ライブラリ参照」に含まれている情報は以下の内容です。 <ライブラリ参照> ライブラリ名 ファイル名 サブフォルダの位置(存在する場合) <非ライブラリ参照> ファイル名 サブフォルダの位置(存在する場合) Inventorファイルを開くとAutodesk Inventor は、次の順序でコンポーネントを検索します。 ライブラリ検索パス(ライブラリ パーツがロードされている場合)。 それ以外の場合は、ライブラリ パスは検索されません。 作業スペース 作業グループ検索パス プロジェクト ファイルのあるフォルダ Inventorはファイル検索のための独自のルールを持っており、概要からはまずライブラリやワークスペースのホルダー、次にプロジェクトで設定されたホルダー、最後に自身のホルダーを見に行くといった順序になっています。 Inventor製品はファイルが見つからない時の為に、自動解決用のファイルの検索プロセスのルールを持っており、設計を始められる前にプロジェクトファイルの設定の検討をされたり、他の環境で作成されたInventorファイルのやり取りを計画される場合や、APIでファイルの構築や配置されたコンポーネントのハンドリングする際に、構成されるファイルが見つからずに、[リンクを解決]ダイアログ ボックスなどが出現する事の無いように、この検索ルール(メカニズム)を頭の片隅にでも留め置いていただければ幸いです。 1.API のイベントを介して完全な参照情報が取得されます。通常の Autodesk Inventor の動作の代わりに、PDM システムなどの関連のアドイン アプリケーションを使用することもできます。 2.参照にライブラリ名が保存されているか、ソース ファイルをライブラリの場所から開いた場合には、そのライブラリ名に関連付けられたプロジェクトの場所だけが検索されます。 ライブラリ フォルダの検索でライブラリ名を使用する方法は、次の 3 つの条件によって異なります。 (2-1). ソース ファイルがライブラリにないが、参照がライブラリ名を保持している。この場合には、参照のライブラリ名と一致する、プロジェクトのライブラリ位置が検索されます。<br /> (2-2). 参照が非ライブラリ参照で、ライブラリ名の情報は空だが、ソース ファイルがライブラリの場所にある。この場合には、ソース ファイルを含むライブラリの場所が検索されます。 (2-3). 参照がライブラリ参照で、ソース ファイルがライブラリの場所にある。システムは複合的なライブラリ名の候補リストを生成し、プロジェクト内のライブラリ名のうち、一致するライブラリ名を長いものから順に検索します。 3.非ライブラリ参照では、作業スペース、作業グループ検索パスの各フォルダの順に検索が実行されます。作業グループ フォルダは、プロジェクト エディタにリストされている順に検索されます。…

  • Inventor製品のプロジェクトファイルについて

    Inventor製品を使って設計作業をする場合、あまりどのブログでも取り上げられておりませんが Inventorはプロジェクト有きの製品である事を軽視しがちであり、今回は、Inventor製品内で一番地味な存在である「プロジェクトファイル .ipj」について、知られているようで知られていない重要な働きを取り上げたいと思います。 まず、プロジェクトファイルは、.ipjという拡張子のファイルで内部には設計データファイルとライブラリへのアクセスやファイル参照を維持するためのパスが設定されているものです。 通常考えられるプロジェクトは、たとえばプロジェクト固有のパーツやアセンブリ、社内の独自の標準コンポーネント、既製のコンポーネント(締結部品、継ぎ手、電子コンポーネントなど)といったもので構成されて利用されており、一般的には設計データは複数のファイルに分散しており、パーツ、アセンブリ、図面、プレゼンテーションはそれぞれ固有のファイルに保存されますが、これらの各ファイルから 1 つまたは複数のコンポーネントや他のアセンブリを参照していますので、プロジェクトはファイル間参照の従属情報を保持することにより、プロジェクトを定義するファイル セットの移動、Pack and Goなどのアーカイブ、再構築を可能にするために用いられる設計の重要なベース基盤の環境が設定されています。 これらの説明は 製品ヘルプの 「デザイン データを整理するためのプロジェクト」 内の録画を参照してください。 製品ヘルプ内のこのレコード再生です。 無論、Inventor APIでもプロジェクトの制御は可能ですので、Inventorプロジェクト.ipjファイルを変更する方法 を参考にしてください。 By Shigekazu Saito

  • My Take on Vault Data Standard

    Earlier this week I listened in on a webinar on Vault Data Standard. You should check it out if you want an overview of the utility. Coming from a Vault API background a few things caught my eye. So I’d like to provide my thoughts since this is a blog and all….

  • Inventor 2015 の新機能 その4

    先回の「Inventor 2015 新機能 その1」「Inventor 2015 新機能 その2」「Inventor 2015 新機能 その3」に続き、第4回目の今回は昨年(2013/11/15東京・2013/11/19大阪)にて Developer Daysで紹介いたしました Inventor2015製品の図面の新機能についてご紹介させていただきます。 Autodesk Inventor 2015 の新機能 1.Expressグラフィックを用いて ラスタービューによる大規模アセンブリの高速図面ビューの作成 ・ 簡易データでの図面ビューの作成時間が短くなりました。 Expressグラフィックを用いて 図面ビュー(ラスタービュー)の作成時間が短くなりました。 アセンブリ内の簡易モード データは、正確なビューおよびラスター ビューの高速プレビューとビュー配置を生成する目的で使用されます。 注: 旧形式のアセンブリおよびパーツは、Inventor 2015 にマイグレーションする必要があります。 図面ビューを作成する際、[ラスター ビューのみ]オプションを選択すると、簡易モード データを含む大規模アセンブリのビューがすばやく生成されます。 注: モデルのサイズはパフォーマンスに影響を与えます。パフォーマンスを大幅に高めるには、パーツおよびアセンブリをどちらも最新バージョンにマイグレーションする必要があります。 2.図面ファイルを高速で開く 図面の[ファイルを開くオプション]ダイアログ ボックスに新たに導入された[高速オープン]オプションを使用すると、図面をすばやく開くことができます。[高速オープン]を選択した場合、図面の参照先となっているファイルの検索または解決は行われません。開いた図面は、ファイル参照が存在しない図面を開いた場合と同様に動作します。編集内容を入力したり保存することができます。 3.短縮寸法 長さ(Inventor 2014製品でサポート済み)、角度、円弧長の短縮寸法を作成できます。[寸法]コマンドを実行して 2 つの参照線または参照エッジを選択するか、円弧を 1 つ選択し、右クリックしてメニューを表示します。[寸法タイプ]リストで、使用する短縮寸法のタイプを選択し、図面に寸法を配置します。 4. 常にパーツ一覧を自動的に並べ替える [パーツ一覧を並べ替え]ダイアログ ボックスに、[更新時に自動的に並べ替え]オプションが新たに追加されました。このオプションをオンにすると、並べ替え設定が特定のパーツ一覧に継続的に適用されます。このオプションは、ダイアログ ボックスで[OK]をクリックすると実行されます。[更新時に自動的に並べ替え]をオンにすると、パーツを追加または削除した後にテーブルを手動で並べ替える必要がなくなります。 5. ビュー ラベルで図面ビューに関連付けられたシート参照を識別する 断面図(断面/詳細)を別のシートに移動しても、正しいシートを簡単に特定できます。ビュー ラベル…

  • 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…

  • Project Thunderdome 2014

    Wow. I can’t believe I’m on the 4th release of Thunderdome. They grow up so fast. If you are not familiar with the app, Project Thunderdome lets you deploy various Vault settings to all your Vault users. Settings include, shortcuts, saved searches, grid settings, DECO UI, and even Vault plug-ins.

  • 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製品のインストール時にインストールされるほか、ここより別途ダウンロードしインストールする事でご利用できます。