(57)【特許請求の範囲】
【請求項１】
線状の柔軟物を含む設計対象装置の三次元ソリッドモデルの形状データを記憶するメモリを有するコンピュータに、
該メモリに記憶された該形状データを読み出す手順、
読み出した該形状データから該線状の柔軟物の断面を構成するデータを特定する手順、
特定された該断面上の基準位置を決定する手順、
読み出した該形状データから該線状の柔軟物の該断面間を結ぶ側面を構成するデータを特定する手順、
特定された該側面を構成するデータから、該断面間を結ぶ該側面上を通過する曲線を抽出する手順、
抽出した該曲線が通過する該断面の外縁から基準位置までの距離を特定する手順、
特定された該曲線の位置の該側面の法線方向を特定する手順、
特定された該側面の法線方向とは逆方向に、特定された該距離だけ該曲線が通過する点を移動させることにより、該断面の基準位置間を結ぶ経路を特定する手順、
該断面の形状、基準位置、および該経路から、該線状の柔軟物の柔軟体モデルを特定する手順、
を実行させることを特徴とする三次元ＣＡＤプログラム。
【請求項２】
該形状データは頂点および頂点の法線方向を含む複数のポリゴンデータによって構成されており、
ポリゴンデータの頂点の法線方向から該側面の法線方向を特定する
ことを特徴とする請求項１に記載の三次元ＣＡＤプログラム。
【請求項３】
該ポリゴンデータの頂点の法線方向が一致し、かつ隣接する別のポリゴンデータを順に抽出し、
抽出されたポリゴンデータから該線状の柔軟な部品の該断面を特定する
ことを特徴とする請求項２に記載の三次元ＣＡＤプログラム。
【請求項４】
該線形の柔軟物の断面が円形である場合、特定された該断面を構成するポリゴンデータ間を結ぶポリラインを抽出し、
抽出された該ポリラインに含まれる各ポリゴンデータの頂点の法線方向の逆方向に、特定された断面の半径の長さ分だけ該ポリラインを移動することにより、該線状の柔軟な部品の経路を特定する
ことを特徴とする請求項２に記載の三次元ＣＡＤプログラム。
【請求項５】
該形状データは、部品のサーフェースを定義する曲面上の法線を特定可能な複数のサーフェースデータからなり、
該サーフェースデータの内、平面をなすサーフェースデータを抽出することにより、該線状の柔軟な部品の断面を特定する
ことを特徴とする請求項１に記載の三次元ＣＡＤプログラム。
【請求項６】
該線形の柔軟物の断面が円形である場合、該断面間を結ぶ該側面上を通過する曲線を該曲線の法線方向とは逆方向に該断面の半径の長さだけ移動させる
ことを特徴とする請求項１に記載の三次元ＣＡＤプログラム。
【請求項７】
三次元ＣＡＤ装置であって、
線状の柔軟物を含む設計対象装置の三次元ソリッドモデルの形状データを記憶するメモリと、
該メモリに記憶された該形状データを読み出し、読み出した該形状データから該線状の柔軟物の断面を構成するデータを特定し、特定された該断面上の基準位置を決定し、読み出した該形状データから該線状の柔軟物の該断面間を結ぶ側面を構成するデータを特定し、特定された該側面を構成するデータから、該断面間を結ぶ該側面上を通過する曲線を抽出し、抽出した該曲線が通過する該断面の外縁から基準位置までの距離を特定し、特定された該曲線の位置の該側面の法線方向を特定し、特定された該側面の法線方向とは逆方向に、特定された該距離だけ該曲線が通過する点を移動させることにより、該断面の基準位置間を結ぶ経路を特定し、該断面の形状、基準位置、および該経路から、該線状の柔軟物の柔軟体モデルを特定する処理部とを有する
ことを特徴とする三次元ＣＡＤ装置。
【請求項８】
コンピュータによって実行される三次元ＣＡＤの処理方法であって、
予め記憶された線状の柔軟物を含む設計対象装置の三次元ソリッドモデルの形状データを読み出し、
読み出した該形状データから該線状の柔軟物の断面を構成するデータを特定し、
特定された該断面上の基準位置を決定し、
読み出した該形状データから該線状の柔軟物の該断面間を結ぶ側面を構成するデータを特定し、
特定された該側面を構成するデータから、該断面間を結ぶ該側面上を通過する曲線を抽出し、
抽出した該曲線が通過する該断面の外縁から基準位置までの距離を特定し、
特定された該曲線の位置の該側面の法線方向を特定し、
特定された該側面の法線方向とは逆方向に、特定された該距離だけ該曲線が通過する点を移動させることにより、該断面の基準位置間を結ぶ経路を特定し、
該断面の形状、基準位置、および該経路から、該線状の柔軟物の柔軟体モデルを特定する
ことを特徴とする三次元ＣＡＤの処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
以下に開示された実施形態は三次元ＣＡＤ技術に関する。
【背景技術】
【０００２】
三次元ＣＡＤは、複数の部品を含む様々な製品の開発に使用される。三次元ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）は、コンピュータの演算により、仮想の三次元空間上に複数の部品の三次元の形状データからなる製品モデルを構築し、製品を設計する技術である。
【０００３】
三次元ＣＡＤでは、物体を立体で表現する手法の一つであるソリッドモデル（剛体）により製品を表示する場合がある。ソリッドモデルは、製品に含まれる部品の形状を数学的に厳密に定義して、製品をモデル化するため、製品の静的な組立状態を正確に表現することができる。
【０００４】
製品の組み立て作業では、例えば作業員の手によって、部品は移動される。また製品が機械製品の場合、可動部がある場合がある。製品を問題なく組み立てることができること、あるいは、製品の可動部が正常に機能することを検証することは、設計時において行われることが望ましい。しかし、ソリッドモデルは、数学的に厳密に部品の形状を定義するため、部品の動作のような動的な状態を表現する場合、演算量が膨大になる。
【０００５】
そこで、三次元ＣＡＤでは、デジタルモックアップ（以下、ＤＭＵとする。）などのシミュレーションソフトウェアがある。ＤＭＵは、コンピュータの演算により、仮想の三次元空間上に製品モデルを構築し、製品の機能や組立性、操作性などをシミュレートするシステムである。ＤＭＵは、例えば、製品モデルや作業員モデルの挙動、製品の組み立て作業やメンテナンス作業のシミュレーションを行うことができる。ＤＭＵはソリッドモデルによる表現と比較してシステムの操作性を大幅に高めることによって、部品の移動を伴う動的な検証を容易に行うことができる。ＤＭＵを使用することにより、試作品を作成しなければ分からなかったような不具合を、より早い段階で発見できるようになってきている。
【０００６】
製品は、部品の一部に、柔軟性があり変形可能な線状の柔軟物を含む場合がある。線状の柔軟物は、例えば糸、紐、綱、ケーブル、電線、電線やケーブルを加工したハーネスなどである。例えば、線状の柔軟物の一つであるハーネスの配線を決定するためには機械系の設計と電気系の設計の双方がある程度完了していることが必要であった。そのため、ハーネスの設計は後回しされていた。例えば、製品の試作品が出来上がってから、現物のハーネスを試作品に組み込んで長さを調節することが行われる。このため、ハーネスに関する不具合の発見は遅れてしまう場合があった。高密度に部品が実装された製品の場合、ハーネスを無理に曲げなくてはならない、取り付け作業性が悪い、ハーネスが他の部品やユニットに干渉するなど、様々な不具合によって大きな手戻りが発生する場合がある。そのため、製品の設計の比較的早い段階からハーネスの設計・検証を開始することが望ましい。
【０００７】
ハーネスを組み込まれた設計対象装置におけるハーネスの配置設計を支援する技術はある（例えば、特許文献１）。三次元ＣＡＤにおいて、ハーネス設計を支援する機能を持つものはある（例えば、非特許文献１、非特許文献２）。ハーネスを検証する機能を有するＤＭＵの技術はある（例えば、非特許文献３、非特許文献４）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特許第４０８４８００号
【非特許文献】
【０００９】
【非特許文献１】”Ｉ−ＤＥＡＳ  Ｈａｒｎｅｓｓ  Ｄｅｓｉｇｎ”：シーメンスＰＬＭソフトウェア  ｈｔｔｐ：／／ｗｗｗ．ｕｇｓ．ｊｐ／ｐｒｏｄｕｃｔ／ｎｘ／ｈａｒｎｅｓｓ．ｈｔｍｌ
【非特許文献２】”Ｐｒｏ／ＥＮＧＩＮＥＥＲ  Ｐｉｐｉｎｇ  ａｎｄ  Ｃａｂｌｉｎｇ  Ｅｘｔｅｎｓｉｏｎ”：ＰＴＣ  ｈｔｔｐ：／／ｗｗｗ．ｐｔｃ．ｃｏｍ／ｐｒｏｄｕｃｔｓ／ｐｒｏｅｎｇｉｎｅｅｒ／ｐｉｐｉｎｇ−ａｎｄ−ｃａｂｌｉｎｇ−ｅｘｔｅｎｓｉｏｎ
【非特許文献３】”ＶＰＳ／Ｈａｒｎｅｓｓ”：富士通  ｈｔｔｐ：／／ｊｐ．ｆｕｊｉｔｓｕ．ｃｏｍ／ｓｏｌｕｔｉｏｎｓ／ｐｌｍ／ｖｉｒｔｕａｌ／ｖｐｓ／ｈａｒｎｅｓｓ．ｈｔｍｌ
【非特許文献４】”Ｌａｎｄｍａｒｋ  Ｖｉｅｗ  ハーネスデザイナー”：ランドマークテクノロジー  ｈｔｔｐ：／／ｗｗｗ．ｌａｎｄｍａｒｋ．ｊｐ／ｐｒｏｄｕｃｔｓ／ｈａｒｎｅｓｓ／ｈａｒｎｅｓｓ１．ｈｔｍｌ
【発明の概要】
【発明が解決しようとする課題】
【００１０】
ソリッドモデルで表現された製品のモデルでは組み立て時や可動部を移動した時のハーネスの動きを動的に検証することは、演算量が多くなるため、時間が掛かる。ソリッドモデルで表現されたハーネスの形状モデルをＤＭＵにて検証する場合、ハーネスは剛体であるソリッドモデルとしてＤＭＵに取り込まれる。このため、ＤＭＵに取り込まれたハーネスを線状の柔軟物として検証することはできなかった。したがって、設計者はＤＭＵ上でハーネスを改めて定義しており、製品設計の工数が増大する問題があった。
【００１１】
そこで、本発明は、三次元ＣＡＤでソリッドモデル（剛体）として作成された線状の柔軟物の形状モデルから、ＤＭＵで線状の柔軟物としてシミュレーションが可能な柔軟物モデルを算出する方式を提供することを目的とする。
【課題を解決するための手段】
【００１２】
開示の三次元ＣＡＤプログラムは、コンピュータに、線状の柔軟物を含む設計対象装置の三次元ソリッドモデルの形状データを保持する手順、該形状データから該線状の柔軟物の断面を特定する手順、特定された該断面上の基準位置を決定する手順、該線状の柔軟物の該断面間を結ぶ曲面を構成するデータを特定する手順、特定された該曲面を構成するデータから、該断面間を結ぶ曲線を抽出する手順、特定された該線の法線方向を特定する手順、特定された該曲面の法線方向とは逆方向に、該断面の該基準位置間に合うように該曲線が通過する点を移動させることにより、該断面間を結ぶ経路を特定する手順、該断面の形状および基準位置と、該経路から、該線状の柔軟物の柔軟体モデルを特定する手順、を実行させる。
【発明の効果】
【００１３】
開示の三次元ＣＡＤプログラムは、三次元ＣＡＤでソリッドモデル（剛体）として作成された線状の柔軟物の形状モデルから、ＤＭＵで線状の柔軟物としてシミュレーションが可能な柔軟物モデルを算出する方式を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】図１は本実施例の三次元ＣＡＤ装置の機能ブロック図である。
【図２】図２は本発明の一実施形態としての三次元ＣＡＤ装置を実現するためのコンピュータシステム（三次元ＣＡＤ装置）のハードウェア構成図である。
【図３】図３は本実施例のワイヤハーネスである。
【図４】図４はポリゴンデータで作成された本実施例のハーネス１００のソリッドモデルである。
【図５】図５は本実施例のハーネスのソリッドモデルのデータ形式である。
【図６】図６はポリゴンで表現されたハーネスのソリッドモデルからＤＭＵのデータを算出する処理のフローチャートである。
【図７】図７はポリゴンで作成されたハーネスの第一の断面を示す図である。
【図８】図８はポリゴンで作成されたハーネスの第二の断面図である。
【図９】図９は、ポリラインの特定処理のフローチャートである。
【図１０】図１０はハーネスの断面間を結ぶポリラインを示す図である。
【図１１】図１１はハーネスの各断面の通過点間を結ぶ経路を示す図である。
【図１２】図１２は本実施例のハーネスのＤＭＵのデータ形式である。
【図１３】図１３は複数の曲面データの組み合わせで作成された本実施例のハーネスの形状を表すサーフェースデータである。
【図１４】図１４はハーネスのソリッドモデルからＤＭＵのデータを算出する処理のフローチャートである。
【図１５】図１５は複数の曲面データの組み合わせで作成された本実施例のハーネスの第一の断面である。
【図１６】図１６は複数の曲面データの組み合わせで作成された本実施例のハーネスの第二の断面である。
【図１７】図１７はフラットハーネスの例である。
【図１８】図１８はフラットハーネスの剛体モデルからＤＭＵでシミュレーション可能な柔軟体モデルのデータを算出する処理のフローチャートである。
【図１９】図１９はフラットハーネスのサーフェースデータの法線を説明する図である。
【図２０】図２０はフラットケーブルの場合のポリラインの算出処理のフローチャートである。
【図２１】図２１はポリゴンで作成された断面形状が四辺形のハーネスのソリッドモデルである。
【図２２】図２２はポリゴンで作成された断面形状が四辺形のハーネスの拡大図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【００１６】
（１）本実施形態の三次元ＣＡＤ装置
図１は本実施例の三次元ＣＡＤ装置の機能ブロック図である。
【００１７】
三次元ＣＡＤ装置は、制御部１１、三次元モデルデータ記憶部２１、線状柔軟物作成部１２、断面形状・通過点算出部１３、経路算出部１４を含む。また、三次元ＣＡＤ装置は、更に、表示部３１、入力部５１を含む場合もある。
【００１８】
制御部１１は三次元ＣＡＤ装置の全体を制御する。
【００１９】
三次元モデルデータ記憶部２１は、設計対象装置の三次元モデルの形状データを記憶する。設計対象装置（以下、単に製品という場合もある）は、コンピュータの演算により３ＤＣＡＤの仮想三次元空間上で設計、シミュレーションの対象となる装置であり、例えば工業製品である。本実施例の設計対象装置は複数の部品から構成されているものとする。三次元モデルデータ記憶部２１は複数の部品の形状データも記憶する。本実施例の設計対象装置に含まれる複数の部品には、線状の柔軟物が含まれるものとする。
【００２０】
線状柔軟物作成部１２は、線形の柔軟物を表現するデータ（以下、剛体モデルとする）から線状の柔軟物の動作をシミュレーションするためのデータ（以下、柔軟体モデルとする）を作成する。本実施例では、線形の柔軟物の剛体モデルはソリッドモデルで表現するときに使用され、線状の柔軟物の柔軟体モデルはＤＭＵでシミュレーションするときに使用されるものとする。
【００２１】
断面形状・通過点算出部１３は、線状柔軟物作成部１２により線状の柔軟物の柔軟体モデルを作成する処理において、線状の柔軟物の剛体モデルから線状の柔軟物の断面を特定し、特定された断面上の基準位置を決定する処理を実行する。
【００２２】
経路算出部１４は、線状柔軟物作成部１２により線状の柔軟物の柔軟体モデルを作成する処理において、断面形状・通過点算出部１３にて算出された線状の柔軟物の断面間を結ぶ曲面を構成するデータを特定し、特定された曲面を構成するデータから、断面間を結ぶ曲線を抽出し、特定された線の法線方向を特定し、特定された曲面の法線方向とは逆方向に、断面の基準位置間に合うように移動させることにより、断面間を結ぶ経路を特定する処理を実行する。
【００２３】
線状柔軟物作成部１２は、断面形状・通過点算出部１３および経路算出部１４にて特定された断面の形状および基準位置と経路とから、線状の柔軟物の柔軟体モデルを特定する処理を実行する。
【００２４】
線状柔軟物作成部１２、断面形状・通過点算出部１３および経路算出部１４は、三次元モデルデータ記憶部２１が保持する三次元モデルの線形の柔軟物の剛体モデルから、柔軟体モデルを構成し、線形の柔軟物の動的な検証を可能とする。
【００２５】
表示部３１は三次元モデルを表示する。入力部５１は利用者から三次元ＣＡＤ装置に対する指示を受け付ける。入力部５１は例えば、利用者から、設計対象装置に含まれる部品データから線形の柔軟物の剛体モデルの選択指示を受け付けると制御部１１に送信する。制御部１１は入力部５１から受信した選択指示に対応する剛体モデルを三次元モデルデータ記憶部２１から特定する。線状柔軟物作成部１２、断面形状・通過点算出部１３および経路算出部１４は、特定された部品の剛体モデルから線形の柔軟物の柔軟体モデルを算出する。
【００２６】
なお、線形の柔軟物は特徴的な形状であるため、制御部１１は、三次元モデルデータ記憶部２１が記憶する製品に含まれる部品の三次元モデルデータから、特徴的な形状を有する部品の三次元モデルデータを検索することで線形の柔軟物の部品データを特定することも可能である。
【００２７】
また、各部品データ毎に部品の名前、識別情報などの属性情報が含まれている場合、属性情報を利用して、線状の柔軟物の部品データを特定することも可能である。
【００２８】
また、利用者は、表示部３１に表示された剛体モデルの中の処理の対象とする線形の柔軟物を、入力部５１により指定することにより、選択することも可能である。
【００２９】
図２は本発明の一実施形態としての三次元ＣＡＤ装置を実現するためのコンピュータシステム（三次元ＣＡＤ装置）のハードウェア構成図である。図２に示す本実施形態の三次元ＣＡＤ装置１は、例えばパーソナルコンピュータである。三次元ＣＡＤ装置１は、仮想的な三次元の形状を製図するため製図処理、およびコンピュータの演算によって構成された仮想的な三次元の形状が受ける実際の物理現象を演算によってシミュレーションする三次元シミュレーション処理を実行可能な装置である。
【００３０】
図２の三次元ＣＡＤ装置１は、プロセッサ（ＣＰＵ）１０、メモリ（ＲＯＭ，ＲＡＭ、ＨＤＤ等）２０、入出力インタフェース３０を有し、それらはバス９０により接続される。入出力インタフェース３０はディスプレイ（例えばＣＲＴ，ＬＣＤ，ＰＤＰ等）４０、キーボード５０、マウス５５、および記憶装置７０に、バスを介して接続する。
【００３１】
メモリ２０は、三次元ＣＡＤプログラムおよび三次元ＣＡＤの設計対象装置のモデルに関する各種データが格納されるとともに、プロセッサ１０が三次元ＣＡＤプログラムを実行する際のワーキングメモリとしても機能する。本実施例では、メモリ２０は図１の三次元モデルデータ記憶部２１に対応する。
【００３２】
プロセッサ（ＣＰＵ）１０は、三次元ＣＡＤ装置１の全体の処理を制御する。プロセッサ１０はメモリ２０に格納された三次元ＣＡＤプログラムを実行することで、図１の線状柔軟物作成部１２、断面形状・通過点算出部１３、経路算出部１４として機能する。
【００３３】
記憶装置７０は、コンピュータが読取り可能な記録媒体８０に格納された三次元ＣＡＤプログラムを読み出す。記録媒体８０は、フレキシブルディスク，ＣＤ−ＲＯＭ，ＤＶＤ，磁気ディスク，光ディスク，光磁気ディスクのほか、ＩＣカード，ＲＯＭカートリッジ，磁気テープ，パンチカード、バーコードなどの符号が印刷された印刷物等のコンピュータ読取可能な種々の媒体を含む。記憶装置７０は、製品モデルに含まれる部品モデルをライブラリに予め格納しておくことも可能である。コンピュータシステム１は、例えば、記憶装置７０が読み出した記憶媒体８０に格納された三次元ＣＡＤプログラムを、入出力インタフェース３０を介して、メモリ２０に読み出す。
【００３４】
本実施例の三次元ＣＡＤ装置１の処理の対象となる設計対象装置は複数の部品を含む。製品に含まれる部品の中には線状の柔軟物がある。線状の柔軟物は、例えば、ケーブル、ワイヤハーネス、糸、紐、綱等である。本実施例では、ワイヤハーネスを線状の部品の例として説明する。ワイヤハーネスは、製品に取り付け易い長さおよび形状にされた複数の電線の束である。
【００３５】
（２）ワイヤハーネス
図３は本実施例のワイヤハーネス（以下、単にハーネスと記載する場合もある。）である。ワイヤハーネス１００は線状の柔軟物である。ワイヤハーネスの外形は、端子部分あるいは分岐部分に相当するワイヤハーネスの断面と、電線部分に相当するワイヤハーネスの被覆面（側面）とから構成される。三次元ＣＡＤ上のハーネス１００において、製品に含まれる他の部品に接続される両端の断面は、平面である。両端の断面間に位置する側面は、平面もしくは曲面で接続される。ハーネスは複数のケーブルの組み合わせである。よって、三次元ＣＡＤ上のハーネスに含まれるそれぞれのケーブルの両端は平面であるものとする。ハーネスが複数のケーブルに分岐する位置は、それぞれの複数のケーブルの端であると考えることができる。そこで、分岐の位置は平面であるものとする。
【００３６】
図３のハーネス１００は、長手方向に太い一本の電線１１０と電線１１０から枝分かれした３本の細い電線１３０、電線１４０、および電線１５０とを含む形状である。電線１１０の端は、断面１６０および断面１７０である。また、電線１３０、電線１４０、および電線１５０の一方の断面は、ハーネス１００の端に対応し、それぞれ断面１３５、断面１４５、および断面１５５である。電線１３０、電線１４０、および電線１５０の他方の端は、電線１１０の断面１７０となる。本実施例では、ハーネス１００の断面１６０、１７０、１３５、１４５および１５５の法線方向は、電線を直線にした場合、電線の長手方向に一致するものとする。
【００３７】
三次元ＣＡＤ装置のソリッドモデルで製品を表示する場合、三次元モデルの剛体モデルは、一般的に、三次元モデルの表面形状を複数の多角形で近似したポリゴンデータ、あるいは三次元モデルの表面形状を表す複数の平面および曲面によって構成されるサーフェースデータで表現される。
【００３８】
まず、剛体モデルがポリゴンデータである場合について、説明する。
【００３９】
（３）ポリゴンデータで作成されたハーネス
図４はポリゴンデータで作成された本実施例のハーネス１００のソリッドモデルである。ポリゴンは剛体モデルの表面を表現する際のひとつの多角形（本実施例では三角形とする）を示す。ポリゴンデータは、剛体モデルを表現する複数のポリゴンの集合を示す。
【００４０】
図４のハーネス２００の形状は、図３のハーネス１００の形状に対応する。ハーネス２００は、ハーネス２００の表面を複数のポリゴンによって隙間なく覆うことで構成される。ハーネス２００は、複数のポリゴンの組み合わせで構成されるため、ハーネス１００の円や曲面を正確に表現できない。ハーネス２００は、ハーネス１００の形状との誤差が予め定義された一定の範囲に収まるように作成される。
【００４１】
ハーネスの断面を表現するポリゴン群２６０、２７０、２３５、２４５、および２５５は平面をなしており、ハーネス１００の断面１６０、１７０、１３５、１４５、および１５５にそれぞれ対応する。ハーネスの側面を表現するポリゴン群２１０、２３０、２４０、および２５０は円筒状の曲面をなしており、ハーネス１００の電線１１０、１３０、１４０、および１５０にそれぞれ対応する。
【００４２】
図５は本実施例のハーネスのソリッドモデルのデータ形式である。
【００４３】
三次元ＣＡＤでは、断面形状と軌跡によって形状を定義することで、ハーネスを作成する。三次元ＣＡＤのソリッドモデルは、形状データで表示される。形状データは複数のポリゴンで構成される。各ポリゴンは、３つの頂点座標と各頂点における法線ベクトルとを含む。各ポリゴン、各ポリゴンの各頂点、あるいは各ポリゴンおよび各ポリゴンの各頂点は、それぞれ法線ベクトルが定義されている。図５の７００はポリゴンを定義するコードの例である。
【００４４】
（４）ＤＭＵのデータを算出する処理
次に、三次元モデルデータ記憶部２１に記憶されている三次元モデルの剛体モデルのうち、三次元ＣＡＤ装置あるいは利用者によって選択された部品の三次元モデルの剛体モデルについて、ＤＭＵのシミュレーションに使用可能な柔軟体モデルを作成する処理を説明する。
【００４５】
図６はポリゴンで表現されたハーネスのソリッドモデルからＤＭＵのデータを算出する処理のフローチャートである。
【００４６】
断面形状・通過点算出部１３は、処理対象の部品の三次元の剛体モデルであるポリゴンデータから、ハーネス２００の断面形状を表示するポリゴン群を特定する（Ｓ０１）。本実施例では断面は平面であるものとしている。断面形状・通過点算出部１３は、一つのポリゴンに含まれる法線ベクトルの方向と隣接するポリゴンに含まれる法線ベクトルの方向が一致しないときは、二つのポリゴンは平面をなさないと判定する。一方、断面形状・通過点算出部１３は、一つのポリゴンに含まれる法線ベクトルの方向と隣接するポリゴンに含まれる法線ベクトルの方向が一致するときに、二つのポリゴンは平面をなすと判定する。断面形状・通過点算出部１３は、一つの平面をなす全てのポリゴンを検出することで断面形状を表示するポリゴン群を検出することができる。断面形状・通過点算出部１３は、上記の処理を、平面をなすポリゴン群がなくなるまで繰り返し、ハーネス２００に含まれる全ての平面を検出する。この結果、断面形状・通過点算出部１３は、ポリゴン群の組み合わせにより平面の形状を検出し、各ポリゴンの法線方向により平面の向きを検出する。
【００４７】
本実施例では、断面形状・通過点算出部１３は、平面の中心の位置を特定し、基準位置（通過点）の位置として記憶する。通過点はＤＭＵで使用するハーネスの経路情報が通過する位置を示す情報であり、経路上のいずれかの点の座標は三次元空間上の通過点の座標に合致する。
【００４８】
また、断面形状・通過点算出部１３は、例えば、ハーネスの断面の外縁の一つの頂点の座標とハーネスの断面の中心の座標から、ハーネスの断面の外縁から中心までの距離を算出する。
【００４９】
図７はポリゴンで作成されたハーネスの第一の断面を示す図である。
【００５０】
第一の断面２６０は、ハーネス１００の断面１６０の形状を表示するポリゴン群である。第一の断面２６０は、ポリゴン２６３、２６４、２６５、２６６からなる。２６１は、第一の断面２６０の通過点である。ハーネスの断面は円になることが多い。そこで、本実施例では、断面形状・通過点算出部１３は断面の中心を通過点とする。なお、他の基準により、通過点を決定することも可能である。
【００５１】
図８はポリゴンで作成されたハーネスの第二の断面図である。
【００５２】
第二の断面を表現するポリゴン群２７０は、ハーネス１００の断面１７０の形状を表示するポリゴン群である。２７１は、第二の断面を表現するポリゴン群２７０を構成するポリゴン群の一つである。第二の断面を表現するポリゴン群２７０に対応するハーネス１００の断面１７０では、電線１１０が３本の電線１３０、１４０、および１５０に分岐する。このため第二の断面を表現するポリゴン群２７０は、３本の電線１３０、１４０、および１５０が配置可能なように複雑な形状となり、この結果、第一の断面を表現するポリゴン群２６０に比較して多くの数のポリゴンを含む。
【００５３】
２７２はハーネス１００の断面１７０の外縁端に対応する。２７４、２７５、および２７６は、ハーネス１００の電線１３０、電線１４０、および電線１５０の他方の端に対応する。本実施例では、電線１３０、電線１４０、および電線１５０の他方の端はハーネスの表面からは見えないため、ポリゴンを作成していない。ハーネス１００の断面１７０は複数の電線の端に相当する。よって、平面の端、平面上の穴などの境界は電線につながる。そこで、平面上の境界に相当するポリゴンに隣接し、かつ平面を構成しないポリゴンは電線を表現するポリゴンであると推定することができる。
【００５４】
２７７、２７８、２７９は、ハーネス１００の３本の電線１３０、１４０、および１５０に対する通過点である。電線の断面は円になることが多い。そこで、本実施例では、断面形状・通過点算出部１３は、平面上の穴などの境界が円の形状である場合、穴を構成する各ポリゴンの頂点から距離が等しく、かつ平面の延長上にある点を通過点とする。なお、他の基準により、通過点を決定することも可能である。
【００５５】
図１４のフローチャートの説明に戻る。次に、経路算出部１４は、断面形状・通過点算出部１３が取得した各平面について、平面間の経路が作成済みか否かを判定する（Ｓ０２）。作成済みの場合（Ｓ０２：Ｙｅｓ）、経路算出部１４はＳ０８以降の処理を実行する。一方、未作成の場合（Ｓ０２：Ｎｏ）、経路算出部１４はＳ０３以降の処理を実行する。
【００５６】
（５）ポリラインの特定処理
次に、経路算出部１４は、各平面間を結ぶポリラインを特定する（Ｓ０３）。経路算出部１４は、Ｓ０１において、断面形状・通過点算出部１３が抽出した複数の断面を接続する電線部分を表現するポリゴン群の頂点および辺を使用して、断面間のポリラインを特定する。
【００５７】
経路算出部１４は、例えば、Ａ−ｓｔａｒ探索アルゴリズム（Ａ＊探索アルゴリズム）、ダイクストラ法などを使用して、ポリラインを特定する。ここではＡ＊探索アルゴリズムを使用した処理について説明する。
【００５８】
図９は、ポリラインの特定処理のフローチャートである。
【００５９】
Ａ＊探索アルゴリズムでは、以下のパラメータおよびリストを使用する。一方の断面の外縁端を形成するポリゴンの頂点をＳとする。なお、Ｓは複数存在する。他方の断面の中央の座標をＧとする。最短経路に含まれる頂点を記憶するための経路確定リストおよび最短経路を算出するための頂点の情報を記憶するための経路未確定リストを準備する。
【００６０】
経路確定リストおよび経路未確定リストの各レコードは、ＩＤ，ｇ、ｈ、Ｐのデータを含む。ＩＤは頂点を識別する情報である。ｇはＳからレコードのＩＤに対応する頂点（以下、該当頂点とする）までの道のりである。ｈは該当頂点からＧまでの距離である。ＰはＳから該当頂点までの経路である。
【００６１】
経路算出部１４は、複数のＳを取得する（Ｓ１１）。例えば、経路算出部１４は、ハーネス２００の端に位置する断面から処理を実施する。経路算出部１４は、Ｇを特定する（Ｓ１２）。経路算出部１４は、経路確定リストと、経路未確定リストを格納する領域を設定する（Ｓ１３）。経路算出部１４は、Ｓ１１で取得した複数のＳを経路未確定リストに登録する（Ｓ１４）。経路算出部１４は、ｇを０、ｈをＳからＧまでの直線距離として経路未確定リストに登録する。
【００６２】
経路算出部１４は、経路未確定リストからｇ＋ｈが最小のレコードを抽出する（Ｓ１５）。経路算出部１４は、抽出したレコードを未確定リストから確定リストに移動する（Ｓ１６）。
【００６３】
経路算出部１４は、抽出したレコードに含まれるＩＤの頂点が他方の断面上に位置する頂点であるか否かを判別する（Ｓ１７）。レコードに含まれるＩＤの頂点が他方の断面上に位置する頂点である場合（Ｓ１７：Ｙｅｓ）、経路算出部１４は、抽出したレコードに含まれるＰを最短経路とし（Ｓ１８）、処理を終了する。
【００６４】
一方、レコードに含まれる頂点のＩＤが他方の断面上に位置する頂点ではない場合（Ｓ１７：Ｎｏ）、経路算出部１４は、レコードに含まれる頂点のＩＤに対して、ポリゴンの辺によって直接つながっている他の頂点を抽出する（Ｓ１９）。ただし、経路算出部１４は、すでに経路確定リストに登録されている頂点のＩＤは除外する。
【００６５】
経路算出部１４は、抽出した頂点のＩＤのそれぞれに対して、ｇ，ｈ，Ｐを算出する（Ｓ２０）。経路算出部１４は、Ｓ２０で算出した（ｇ，ｈ，Ｐ）をＩＤに関連づけて未確定リストに登録する（Ｓ２１）。経路算出部１４は、既に同頂点のＩＤのレコードが登録されていた場合は、ｇの値がより小さいレコードを選択して登録する。その後、経路算出部１４は、Ｓ１５の処理を再度実行する。
【００６６】
図１０はハーネスの断面間を結ぶポリラインを示す図である。図１０の２９０はハーネス２００の電線２１０についてのポリラインである。ポリライン２９０は、電線２１０を表示するためのポリゴン群の一部の中の一部のポリゴンの辺、頂点を通過する線である。２９１はポリラインの探索の最初の対象となる頂点である。頂点２９１は断面を表現するポリゴンの外縁上にある。２９２はハーネスの側面を表現するポリゴンの頂点の一つであり、ポリライン上の頂点である。２９３はポリラインの他方の断面の外縁にあるポリゴンの頂点であり。ポリライン２９０の端である。なお、本実施例の各ポリゴンの法線ベクトルは、部品の剛体モデルの内部から外側の方向であるとする。
【００６７】
次に、経路算出部１４は、Ｓ０３で特定したポリラインから、柔軟体モデルの一部であるハーネスの中央を通過する経路を特定する。Ｓ０３で特定したポリラインは、ハーネスの側面を表現するポリゴンから特定されているため、ハーネスの表面に沿っている。経路算出部１４は、Ｓ０３で取得したポリラインをハーネスの中央に移動させることにより、ハーネスの中央を通過する経路を特定する。
【００６８】
本実施例では、経路算出部１４は、ポリラインが通過する各ポリゴンの頂点のベクトルを利用して、ポリラインをハーネスの中央に移動させる。ハーネス１００の断面の形状は円である。このような丸ハーネスの場合、ハーネス１００の中央は、円形の断面の中心になる。よってハーネスの断面の外縁すなわちハーネスの側面の表面からハーネスの中央までの距離は、断面の半径になる。また、ハーネス１００の中心は、ハーネス１００の側面のどの点においても、側面の法線の逆方向にある。丸ハーネスの電線部のポリラインの場合、ポリラインからハーネスの中央への方向は、ポリラインが通過するポリゴンの頂点の法線ベクトルの逆方向に一致する。
【００６９】
そこで、経路算出部１４は、特定されたポリラインに重なるポリゴン群を特定する（Ｓ０４）。経路算出部１４は、特定したポリゴン群のそれぞれのポリゴンの頂点を抽出する（Ｓ０５）。経路算出部１４は、抽出した頂点の法線ベクトルを特定する（Ｓ０６）。以上によって、経路算出部１４は、ポリラインが通過する頂点毎に、ハーネスの中央に移動させるための方向を特定することができる。
【００７０】
なお、丸ハーネスの場合、電線を表示するポリゴンの頂点はハーネスの中央とは逆の方向の法線ベクトルになるため、ポリラインの特定に制限はない。よって、経路算出部１４は、一方の断面から他方の断面までの最短経路をポリラインとして特定すればよい。
【００７１】
経路算出部１４は、ポリラインが通過する各頂点を、法線ベクトルの逆の方向に、断面形状・通過点算出部が算出した断面の外縁から断面の中心（通過点）までの距離だけ移動する（Ｓ０７）ことによって、ハーネスの中央を通過するポリラインを特定する。
【００７２】
経路算出部１４は、特定したハーネスの中央を通過するポリラインを近似する曲線を算出し、ハーネスの経路として特定する（Ｓ０８）。
【００７３】
図１１はハーネスの各断面の通過点間を結ぶ経路を示す図である。２９５、２９６、２９７、２９８はそれぞれ、抽出した経路である。各経路はハーネスの中央を通過する。また各経路は断面の中心を通過する。電線が分岐する部分の断面では、各ケーブル毎に対応付けられた断面の中心を通過する。
【００７４】
経路算出部１４は、Ｓ０５で特定したハーネスの経路を記憶する。
【００７５】
経路算出部１４は、ハーネスのすべての電線について処理ずみか否かを判定する（Ｓ０９）。経路算出部１４は、例えば、ハーネスのすべての電線について処理ずみか否かを、断面間をつなぐ経路が存在するか否かによって判断する。すべての電線が処理ずみでない場合（Ｓ０９：Ｎｏ）、経路算出部１４はＳ０１からの処理を実行する。すべての電線が処理ずみである場合（Ｓ０９：Ｙｅｓ）、経路算出部１４は処理を終了する。
【００７６】
線状柔軟物作成部１２は、断面形状・通過点算出部１３が算出したハーネスの断面形状および通過点と、経路算出部１４が算出した経路によって、ＤＭＵのシミュレーションで使用するハーネスデータの柔軟体モデルを構築する。
【００７７】
図１２は本実施例のハーネスのＤＭＵのデータ形式である。ＤＭＵで使用されるハーネスの柔軟体モデルは、ハーネスの断面形状、断面間の経路を表す曲線の制御点、制御点の位置、制御点での断面の方向、画面表示のための外形形状を含む。ハーネスの断面形状は例えば、円や長方形などの断面の形状と、断面の向きを特定する情報を含む。
【００７８】
表示部３１は線状柔軟物作成部１２が構築したハーネスデータを表示し、入力部５１は利用者からの指示を受信し、制御部１１は受信した指示に従って検証処理を実施する。制御部１１は断面形状、通過点、経路によって柔軟物として定義されたハーネスデータを用いて、ＤＭＵにて動的な検証を行うことが可能となる。
【００７９】
（６）複数の曲面データの組み合わせで作成されたハーネス
次に、三次元モデルの表面形状を表す複数の平面および曲面によって構成されるサーフェースデータによるソリッドモデルから、ＤＭＵで使用する柔軟体モデルデータを取得する処理を説明する。
【００８０】
図１３は複数の曲面データの組み合わせで作成された本実施例のハーネスの形状を表すサーフェースデータである。本実施例のサーフェースデータは、それぞれ、平面か曲面かを定義する情報を有する。また、サーフェースデータは、輪郭線の情報を有する。図１３のハーネス３００は図３のハーネス１００に対応する。ハーネス３００は複数の平面の形状データおよび曲面の形状部品を含む。ハーネス３００は、ハーネスの端に位置する円形の断面３１０、３８０、３８１、３８２と、ハーネスが分岐する部分に位置する内部に穴が開いた円形の断面３４０を有する。本実施例のハーネスの断面形状は、端面あるいは分岐面である平面の輪郭を表す形状である。本実施例ではハーネスの通過点は断面形状の中心であるものとする。
【００８１】
ハーネスの側面（被覆面）は、ハーネスの区間ごとに何枚かのサーフェースによって構成される。ハーネスの側面（被覆面）を表す曲面のサーフェース３２０、３３０はハーネス１００の電線１１０に相当し、曲面のサーフェース３５０、３５５はハーネス１００の電線１３０に相当し、曲面のサーフェース３６０、３６５はハーネス１００の電線１４０に相当し、曲面のサーフェース３７０、３７５はハーネス１００の電線１３０に相当する。
【００８２】
図１４はハーネスのソリッドモデルからＤＭＵのデータを算出する処理のフローチャートである。
【００８３】
断面形状・通過点算出部１３は、選択された部品に対して以下の処理を実行する。
【００８４】
断面形状・通過点算出部１３は三次元モデルデータ記憶部２１から選択された部品に関するサーフェースデータを読み出す。断面形状・通過点算出部１３はサーフェースデータの内、２つの平面のサーフェースデータと、２つの平面を接続するサーフェースデータとを抽出する（Ｓ３１）。断面形状・通過点算出部１３は、サーフェースが平面か曲面かを判定することは可能であり、サーフェースデータに隣接するサーフェースを取得することも可能であるとする。
【００８５】
断面形状・通過点算出部１３は、ハーネスを表現するための複数のサーフェースデータから、平面であるサーフェースデータを抽出する。図１３においては、断面３１０、３４０、３８０、３８１、および３８２が該当する。図１５は複数の曲面データの組み合わせで作成された本実施例のハーネスの第一の断面である。第一の断面である断面３１０は円形であるとする。本実施例では、断面の中心に通過点を配置するものとする。よって、断面の外縁端３１１から断面の中心３１２までは、断面の円形状の半径となる。図１６は複数の曲面データの組み合わせで作成された本実施例のハーネスの第二の断面である。第二の断面である断面３４０は円形であるとする。また断面３４０は一本の電線１１０が３本の電線１３０、１４０、１５０に分岐する場所に相当する。本実施例では、電線１１０に対応する通過点を断面３４０の中心に配置する。３４６、３４７、３４８は、電線１３０、１４０、１５０が接続する場所である。断面３４０の電線１３０、１４０、１５０が接続する部分は、穴である。断面の外縁端３１１から断面の中心３１２までの距離は、断面の円形状の半径となる。また、穴３４６の淵から穴３４６の中心３４３までの距離は、穴３４６の半径となる。同様に、穴３４７の淵から穴３４７の中心３４５までの距離は、穴３４７の半径となる。穴３４８の淵から穴３４８の中心３４４までの距離は、穴３４８の半径となる。
【００８６】
断面形状・通過点算出部１３は、平面のサーフェースデータの外縁の形状と、外縁の中心である通過点とを算出する。なお、断面形状・通過点算出部１３は、円形以外の断面の場合、例えば、平面の重心を特定する手法を用いることにより中心を特定する。
【００８７】
経路算出部１４は、取得した２平面間の経路を作成済みであるかを判定する（Ｓ３２）。作成済みの場合（Ｓ３２：Ｙｅｓ）、経路算出部１４は、はＳ３８以降の処理を実行する。作成済みではない場合（Ｓ３２：Ｎｏ）、はＳ３３以降の処理を実行する。
【００８８】
経路算出部１４は、Ｓ３１で抽出した２つの平面間を接続するサーフェース上を通る２つの平面間を接続する曲線を抽出する（Ｓ３３）。Ｓ３３で抽出された曲線は経路を表す曲線を算出する基準となる。なお、経路算出部１４は、断面間を繋ぐ曲線をサーフェースデータの外縁から取得することができる。例えば図１４のサーフェースデータ３２０の外縁である３２１は断面３１０と断面３４０の間を結ぶ曲線である。
【００８９】
経路算出部１４は、Ｓ３３で抽出した曲線が接続する平面の輪郭線上の点から、断面形状・通過点算出部３３が算出した通過点へのベクトルを算出する（Ｓ３４）。なお、本実施例では、Ｓ３４で算出されるベクトルは三次元シミュレーション空間における絶対的なベクトルではなく、ハーネスの側面であるサーフェースにおける法線を基準として算出する。ハーネスの側面のサーフェースの法線を基準とすることによって、湾曲した側面からも正しくハーネスの中心を通過する経路を作成することができる。本実施例では、断面の中心とハーネスの側面との間の距離は断面の半径の長さに対応する。
【００９０】
経路算出部１４は、Ｓ３３で抽出した曲線の法線を取得する（Ｓ３５）。Ｓ３３で抽出した曲線は三次元空間上の曲線であるため、位置によって法線が異なる。そこで、本実施例では、経路算出部１４は、曲線の曲率などを利用して、離散的に法線を算出する。
【００９１】
経路算出部１４は、Ｓ３３で抽出した曲線を、Ｓ３５で取得した法線を基準とし、Ｓ３４で算出したベクトル分だけ移動する（Ｓ３６）。Ｓ３３で抽出された曲線はハーネス３００の表面を通過する曲線である。ハーネス３００の経路は、ハーネス３００の電線の中央を通過する曲線が望ましい。そこで、曲線の法線を基準として断面の中心に曲線を移動することによって、ハーネスの中央を通過する曲線を算出する。
【００９２】
経路算出部１４は、Ｓ３６で算出した曲線を、Ｓ３１で取得した２平面間の経路、すなわちハーネスの経路として記録する（Ｓ３７）。
【００９３】
経路算出部１４は、未処理の曲面が存在するかを判定する（Ｓ３８）。未処理の曲面が存在する場合（Ｓ３８：Ｙｅｓ）、経路算出部１４はＳ３１に戻り処理を継続する。未処理の曲面が存在しない場合（Ｓ３８：Ｎｏ）、ハーネス部品のすべての曲面が処理ずみであれば、経路算出部１４は処理を終了する。
【００９４】
線状柔軟物作成部１２は、断面形状・通過点算出部１３が算出した断面形状および通過点と、経路算出部１４が算出した経路によって、ハーネス３００についてＤＭＵでシミュレーション可能な柔軟体モデルを作成する。
【００９５】
（７）多角形の断面形状のハーネス
次にハーネスの断面形状が多角形の場合を説明する。断面形状が多角形のハーネスは、例えば、断面が四角形のフラットハーネスがある。
【００９６】
図１７はフラットハーネスの例である。本実施例のフラットハーネス４００は、ハーネスを伸ばした場合に断面、側面ともに長方形の平面であるとする。よって、フラットハーネスのサーフェースデータの断面（端面）は、形状は変化しないものとするため、長方形の平面になる。一方、フラットハーネスのサーフェースデータの側面は、形状は変化し得るため、長方形の平面、平面、あるいは曲面のいずれかの形状になる。フラットハーネス４００のサーフェースデータは、断面４１０および４４０と、幅の広い第一の側面である４３０および側面４３０に対向する側面４５０と、幅の狭い第二の側面である４２０および側面４２０に対向する側面のデータとを含む。
【００９７】
次に、ハーネスの断面形状が四角形の場合のデータ算出処理について説明する。
【００９８】
図１８はフラットハーネスの剛体モデルからＤＭＵでシミュレーション可能な柔軟体モデルのデータを算出する処理のフローチャートである。
【００９９】
断面形状・通過点算出部１３は、選択されたフラットケーブル部品の三次元モデルの形状データに含まれる複数のサーフェースデータから断面部分のサーフェースデータを抽出する（Ｓ４１）。なお、フラットハーネスでは、断面が円形の丸ハーネスとは異なり、側面が平面になっている場合がある。断面形状・通過点算出部１３は、平面であることのみを断面の条件としてサーフェースデータを抽出すると、断面だけでなく側面も抽出してしまう場合がある。よって、断面形状・通過点算出部１３は、例えば、側面を検出してしまった場合、面積が小さな１対を選択することによって確実に端面となる平面を抽出する。なお、断面形状・通過点算出部１３は、例えば、隣接するサーフェースデータで平面を検出した場合に、断面と側面とを検出したと判定する。
【０１００】
次に、断面形状・通過点算出部１３は、Ｓ４１で抽出した断面であるサーフェースデータから、フラットハーネスの断面形状および通過点位置を算出する（Ｓ４２）。フラットハーネスの断面形状はＳ４１で抽出した平面の輪郭である。なお、本実施例では、フラットハーネスの断面形状の中心を通過点とする。本実施例のフラットハーネスの断面形状は長方形であるため、断面形状・通過点算出部１３は、２本の対角線の交点を求めることによって通過点を算出できる。また、断面形状・通過点算出部１３は、断面の形状の重心位置を通過点とすることも可能である。
【０１０１】
次に、経路算出部１４は、Ｓ４１で抽出したフラットハーネスの断面間を繋ぐ側面のサーフェースデータを抽出する（Ｓ４３）。図１８では、経路算出部１４は、側面４２０、側面４３０、側面４５０、および側面４２０に対向する位置のサーフェースデータを抽出する。
【０１０２】
経路算出部１４は、Ｓ４３で抽出したフラットハーネスの断面間を繋ぐ側面の表面上の曲線を特定する（Ｓ４４）。経路算出部１４は、例えば、フラットハーネスの側面、すなわち被覆面に相当する部分のサーフェースデータの外縁から、フラットケーブルの断面間を繋ぐ曲線を特定する。
【０１０３】
次に、経路算出部１４は、Ｓ４４で特定した曲線を通過点の位置に移動させるための方向を特定する（Ｓ４５）。
【０１０４】
ハーネスの断面が円形である丸ハーネスの場合、側面が円筒状であるため、曲面の法線は円筒の中心と逆の方向を向くため、曲線の法線は一意に定まる。経路算出部１４は、丸ハーネスの場合、側面のサーフェースデータの法線の逆方向に、断面形状を表す円の半径分だけ曲線を移動することによって、ハーネスの中心を通過する曲線を算出できる。一方、フラットハーネスの側面の形状を特定する一つの曲線は、隣接する２つの側面のサーフェースデータの形状を特定する。このため、基準とする面によって法線の方向が異なる。
【０１０５】
図１９はフラットハーネスのサーフェースデータの法線を説明する図である。フラットハーネス６００の形状データは、複数のサーフェースデータをふくむ。図１９のフラットハーネス６００は、図１７のフラットハーネス４００をサーフェースデータで表現したデータであり、フラットハーネス４００の一部を拡大した図である。
【０１０６】
図１９では、断面６１０、第一の側面６３０、第二の側面６２０のサーフェースデータがある。第一の側面６３０の６０３と第二の側面６２０の６０２は共通する曲線である。第一の側面６３０のサーフェースの点６３３および６３４での法線は６３１あるいは６３２の方向となる。第二の側面６２０のサーフェースの点６２３および６２４での法線は６２１あるいは６２２の方向となる。したがって、側面のサーフェースの法線の逆方向に移動しただけでは、経路算出部１４は、断面積の中心にサーフェース表面の曲線を移動させることはできない。
【０１０７】
よって、本実施例では、経路算出部１４は、平面の輪郭線上の点から断面形状・通過点算出部が算出した通過点へのベクトルを、第一の側面６３０および第二の側面６２０の法線ベクトルの合成ベクトルによって表現する。
【０１０８】
図１９において、断面６１０のサーフェースの点６０１において、点６０１に接する第一の側面６３０の点６３３での法線ベクトルは６３１である。また、点６０１に接する第二の側面６２０の点６２３での法線ベクトルは６２１である。
【０１０９】
第一の側面６３０のベクトルをＶ１とし、第二の側面６２０のベクトルをＶ２とし、断面６１０の中心方向へのベクトルをＶ０とすると、Ｖ０＝ｓ＊Ｖ１＋ｔ＊Ｖ２の関係を満たす。よって、経路算出部１４は、Ｖ０＝ｓ＊Ｖ１＋ｔ＊Ｖ２の関係を満たすｓ，ｔの値を算出すればよい。以上により、経路算出部１４は、Ｓ４４で特定した曲線を通過点の位置に移動させるための方向を特定する。
【０１１０】
なお、断面形状・通過点算出部１３は、断面の外縁上にあるＳ４４で特定した曲線が通過する点から断面の中心までの距離を算出する（Ｓ４６）。
【０１１１】
次に、経路算出部１４は、Ｓ４４で特定した曲線を通過点の位置に移動させる（Ｓ４７）。
【０１１２】
三次元ＣＡＤ装置は、上記の処理を全ての断面間で実行することで、ＤＭＵにおいて使用する部品の動作のシミュレーションが可能な柔軟体モデルを作成する。
【０１１３】
次に、フラットハーネスがポリゴンで表現されているソリッドモデルから、ＤＭＵでシミュレーション可能なデータを特定する例を説明する。
【０１１４】
図２０はフラットケーブルの場合のポリラインの算出処理のフローチャートである。
【０１１５】
図２１はポリゴンで作成された断面形状が四辺形のハーネスのソリッドモデルである。
【０１１６】
図２１のフラットハーネス５００の形状は、図１７のフラットハーネス４００の形状に対応する。フラットハーネス５００は、フラットハーネス４００の表面を複数のポリゴンによって隙間なく覆うことで構成される。フラットハーネス５００は、複数のポリゴンの組み合わせで構成されるため、フラットハーネス４００の曲面を正確に表現できない。フラットハーネス５００は、フラットハーネス４００の形状をポリゴンデータにて作成する際に、予め定義された一定の誤差範囲に収まるように作成される。各ポリゴン、各ポリゴンの各頂点、あるいは各ポリゴンおよび各ポリゴンの各頂点で法線が定義されている。５１０はフラットハーネス５００に含まれる一つのポリゴンである。
【０１１７】
図２２はポリゴンで作成された断面形状が四辺形のハーネスの拡大図である。
【０１１８】
ポリゴン５１１、５１２は平面をなしており、フラットハーネス４００の断面４１０に対応する。ポリゴン群５１３は曲面を表現しており、フラットハーネス４００の第一の側面４３０に対応する。ポリゴン群５１４も曲面を表現しており、フラットハーネス４００の第二の側面４２０に対応する。
【０１１９】
フラットハーネスの場合、ポリラインをハーネスの中央へ移動するベクトルを、２つの法線ベクトルの合成ベクトルによって表現する。このため、ポリラインの選択に制限が加わる。なお、フラットケーブルの断面の中心は、例えば長方形の重心に対応させればよい。
【０１２０】
経路算出部１４は、断面上の外縁に位置する頂点の中から、ポリラインの始点としてＰ０を選択する（Ｓ５１）。ポリラインとなるのはＰ０につながるポリゴンの辺である。よって、経路算出部１４は、フラットハーネスの断面以外のポリゴンで頂点Ｐ０を含むポリゴンを抽出する（Ｓ５２）。図２２では、経路算出部１４は、第二の側面のポリゴン群５１４の一部のポリゴンＴ０，Ｔ１、および第一の側面のポリゴン群５１３の一部のポリゴンＴ２，Ｔ３の４つのポリゴンを抽出する。
【０１２１】
経路算出部１４は、Ｓ５２で抽出したポリゴンから、ポリゴンの法線ベクトルの方向がほぼ直交し、ポリゴンの辺を共有する１組のポリゴンを抽出する（Ｓ５３）。抽出されたポリゴンが共有する辺はポリラインを構成する線分となる。図２２のＬ０は、法線ベクトルの方向がほぼ直行するポリゴンＴ１とＴ２が共有する辺である。
【０１２２】
また、経路算出部１４は、Ｓ５３で抽出された一組のポリゴンの法線から合成ベクトルを算出する（Ｓ５４）。合成ベクトルの方向は、フラットケーブルの表面上を通過する曲線をフラットケーブルの通過点に移動させる際の方向に対応する。
経路算出部１４は、Ｓ５３で抽出された一組のポリゴンの辺の他端の頂点が、フラットケーブルの他端の断面上の頂点か否かを判別する（Ｓ５５）。
一組のポリゴンの辺の他端の頂点がフラットケーブルの他端の断面上の頂点である場合（Ｓ５５：Ｙｅｓ）、処理を終了する。一方、一組のポリゴンの辺の他端の頂点がフラットケーブルの他端の断面上の頂点でない場合（Ｓ５５：Ｎｏ）、経路算出部１４は、Ｓ５３で抽出された一組のポリゴンの辺の他端の頂点をＰ０として（Ｓ５６）、Ｓ５１からの処理を実行する。経路算出部１４は、上記の処理を他の端面に達するまで繰り返す。この結果、フラットハーネスの表面を通過するポリラインを取得することができる。また、ポリラインを構成する辺あるいは頂点ごとに、フラットハーネスの断面上の通過点に移動させるためのベクトルの方向を特定することができる。
【０１２３】
以上に開示した三次元ＣＡＤ装置は、三次元の剛体モデルで表現された線状の部品から、線状の部品の動作のシミュレーションに使用可能な柔軟体モデルを算出することができる。
【産業上の利用可能性】
【０１２４】
本発明は三次元ＣＡＤによる製品の設計に利用できる。
【符号の説明】
【０１２５】
１  三次元ＣＡＤ装置
１０  プロセッサ
２０  メモリ
３０  入出力インタフェース
４０  ディスプレイ
５０  キーボード
５５  マウス
７０  記憶装置
８０  記録媒体
【図１】
0005625700.tif 000002
【図２】
0005625700.tif 000003
【図５】
0005625700.tif 000004
【図６】
0005625700.tif 000005
【図７】
0005625700.tif 000006
【図８】
0005625700.tif 000007
【図９】
0005625700.tif 000008
【図１２】
0005625700.tif 000009
【図１３】
0005625700.tif 000010
【図１４】
0005625700.tif 000011
【図１５】
0005625700.tif 000012
【図１６】
0005625700.tif 000013
【図１８】
0005625700.tif 000014
【図２０】
0005625700.tif 000015
【図３】
0005625700.tif 000016
【図４】
0005625700.tif 000017
【図１０】
0005625700.tif 000018
【図１１】
0005625700.tif 000019
【図１７】
0005625700.tif 000020
【図１９】
0005625700.tif 000021
【図２１】
0005625700.tif 000022
【図２２】
0005625700.tif 000023