(57)【要約】【課題】束線または束線に含まれる個々の可撓性線状部材の、断面における変化を反映した情報を提供する。【解決手段】コンピュータは、束線の始点と終点それぞれにおける束線の断面それぞれを表す情報の入力を受け付ける。また、コンピュータは、束線の始点と終点の位置に基づいて、始点と終点を結ぶ経路の３次元形状を表す経路パラメータを計算する。そして、コンピュータは、経路上にある中間点における上記経路の接ベクトルを計算し、上記で受け付けた断面を表す情報と中間点での接ベクトルに基づいて、中間点での接ベクトルに垂直な平面による束線の断面を表す情報を生成する。【選択図】図２
2010231335.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、１本以上の線状可撓性部材を含む束線を含む装置の設計支援を行わせる設計支援プログラムであって、
前記束線の始点と終点の位置に基づいて、前記始点と前記終点を結ぶ経路の３次元形状を表す経路パラメータを計算する経路計算ステップと、
前記束線の前記始点における前記経路の向きを表す第１の接ベクトルに垂直であり前記束線の前記始点を通る第１の平面による、前記束線の第１の断面を表す第１の情報の入力と、前記終点における前記経路の向きを表す第２の接ベクトルに垂直であり前記束線の前記終点を通る第２の平面による、前記束線の第２の断面を表す第２の情報の入力を受け付ける入力ステップと、
前記経路パラメータに基づいて、前記経路上の中間点における前記経路の向きを表す第３の接ベクトルを計算し、前記第１の情報と前記第２の情報と前記第３の接ベクトルに基づいて、前記第３の接ベクトルに垂直であり前記中間点を通る第３の平面による、前記束線の第３の断面を表す第３の情報を生成する情報生成ステップと、
を前記コンピュータに実行させることを特徴とする設計支援プログラム。
【請求項２】
前記第１の情報は、前記第１の平面上に２本の座標軸を有する第１のローカル座標系とワールド座標系との関係を示す第１の座標系情報を含み、
前記第２の情報は、前記第２の平面上に２本の座標軸を有する第２のローカル座標系と前記ワールド座標系との関係を示す第２の座標系情報を含む、
ことを特徴とする請求項１に記載の設計支援プログラム。
【請求項３】
前記情報生成ステップは、
前記第１の接ベクトルと前記第３の接ベクトルが張る平面上での回転により、前記第１の接ベクトルを前記第３の接ベクトルに変換する、第１の変換行列を計算する第１の行列計算ステップと、
前記第３の平面上に２本の座標軸を有する第３のローカル座標系と前記ワールド座標系との関係を示す第３の座標系情報を、前記第１の変換行列を用いて、前記第１の座標系情報から生成する座標系情報生成ステップと、
前記第１の情報と前記第２の情報を用いて、前記始点から前記中間点までの前記経路の長さに応じて補間を行うことで、前記第３のローカル座標系により表される、前記１本以上の線状可撓性部材それぞれが前記第３の平面と交わるそれぞれの交点の座標の値を計算する交点計算ステップを含み、
前記第３の情報は、前記交点それぞれの前記座標の前記値と、前記第３の座標系情報を含む、
ことを特徴とする請求項２に記載の設計支援プログラム。
【請求項４】
前記情報生成ステップはさらに、
前記第１の接ベクトルと前記第２の接ベクトルが張る平面上での回転により、前記第１の接ベクトルを前記第２の接ベクトルに変換する、第２の変換行列を計算する第２の行列計算ステップと、
前記第２の変換行列を用いた変換により、前記第２の座標系情報として前記第１の座標系情報から推測される情報と、実際の前記第２の座標系情報との相違を、前記第２のローカル座標系の前記座標軸の第１のねじれ角として計算するねじれ角計算ステップとを含み、
前記座標系情報生成ステップは、
前記第１のねじれ角を用いて、前記始点から前記中間点までの前記経路の前記長さに応じて補間を行うことで、第２のねじれ角を計算し、前記第３の接ベクトルを回転軸とする前記第２のねじれ角の回転を表す変換によって前記第１の変換行列による変換を補正する変換補正ステップを含む、
ことを特徴とする請求項３に記載の設計支援プログラム。
【請求項５】
前記経路パラメータに基づいて、前記経路の前記中間点における、主法線の方向、従法線の方向および曲率を計算する法線・曲率計算ステップと、
前記１本以上の線状可撓性部材それぞれの前記第３の平面との前記交点の前記座標の前記値の分布を、前記曲率に応じて前記主法線の方向に圧縮するとともに、前記曲率に応じて前記従法線の方向に拡散させることで、前記交点それぞれの前記座標の前記値を補正する座標補正ステップと、
をさらに前記コンピュータに実行させることを特徴とする請求項４に記載の設計支援プログラム。
【請求項６】
前記設計支援プログラムは、
前記１本以上の線状可撓性部材それぞれの断面形状を表す形状パラメータの入力を受け取る形状入力ステップと、
前記形状パラメータと前記曲率に基づいて、前記１本以上の線状可撓性部材それぞれの前記第３の平面における断面形状を、前記主法線の方向に縮小するとともに前記従法線の方向に拡大する補正を行う形状補正ステップを、さらに前記コンピュータに実行させ、
前記第３の情報は、
前記１本以上の線状可撓性部材それぞれの前記第３の平面における補正された前記断面形状を表す情報を含む、
ことを特徴とする請求項５に記載の設計支援プログラム。
【請求項７】
前記束線は、複数の前記線状可撓性部材を含み、
前記設計支援プログラムは、前記複数の線状可撓性部材それぞれの前記第３の平面における補正された前記交点の前記座標の前記値の分布に基づいて、前記束線の前記第３の平面による断面の形状を計算する束線断面計算ステップをさらに前記コンピュータに実行させる、
ことを特徴とする請求項５または６に記載の設計支援プログラム。
【請求項８】
１本以上の線状可撓性部材を含む束線を含む装置の設計支援を行う設計支援装置であって、
前記束線の始点と終点の位置に基づいて、前記始点と前記終点を結ぶ経路の３次元形状を表す経路パラメータを計算する経路計算手段と、
前記束線の前記始点を通り前記束線の前記始点における前記経路の向きに垂直な第１の平面による、前記束線の第１の断面を表す第１の情報の入力と、前記束線の前記終点を通り前記終点における前記経路の向きに垂直な第２の平面による、前記束線の第２の断面を表す第２の情報の入力を受け付ける入力手段と、
前記経路計算手段が計算した前記経路パラメータに基づいて、前記経路上の中間点における前記経路の向きを表す接ベクトルを計算し、前記入力手段が受け付けた前記第１の情報および前記第２の情報ならびに前記接ベクトルに基づいて、前記接ベクトルに垂直であり前記中間点を通る第３の平面による、前記束線の第３の断面を表す第３の情報を生成する情報生成手段と、
を備えることを特徴とする設計支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は可撓性線状部材をモデル化する技術に関する。
【背景技術】
【０００２】
機械装置等の各種工業製品には、ケーブル、ワイヤ、ハーネス等の可撓性線状部材が数多く組み込まれている。また、複数本の可撓性線状部材を結束して束にしたもの（「束線」とも呼ばれる）を引き回すことも一般的に行われている。
【０００３】
製品の設計においては、個々の可撓性線状部材または束線全体を３次元空間内にモデル化し、可撓性線状部材または束線によって占有される空間のシミュレーションを行うことが有用である。シミュレーションには、例えば、３次元ＤＭＵ（Digital Mock-Up）上に仮想的に可撓性線状部材または束線を配線することのできるＣＡＤ（Computer-Aided Design）システムが用いられる。
【０００４】
製品の設計者は、シミュレーションの結果に基づいて、他の部品と干渉せずに束線を引き回すことのできる適切な経路、束線の適切な長さ、束線の適切な結束位置、および束線を引き回すのに必要な部品間の隙間の大きさなどを検討することができる。このように、試作品を製造する前に、束線や可撓性線状部材を含めて適宜シミュレーションを行うことで、製品の開発期間および開発コストを低減させることができる。
【０００５】
例えば、自動車等の適用対象で使われるワイヤハーネスの各電線の径および個数を入力し、経験的に導き出された所定の演算式で電線束をモデル化した仮想電線の径を演算し、演算結果に基づいて仮想電線の屈曲寿命予測を行う技術が開示されている。この技術によれば、容易に屈曲寿命を予測でき、適用対象および適用対象におけるワイヤハーネスの配策の設計構想後、即座に屈曲寿命を予測して結果を得ることができる。したがって、開発期間を短縮することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−１４１９４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来のシミュレーションで用いられる３次元モデルでは、束線の経路の３次元形状に応じて生じる、束線または個々の可撓性線状部材の、断面における変化が十分に考慮に入れられていない。そのため、シミュレーションの精度が不十分な場合がある。
【０００８】
そこで本発明は、より高い精度のシミュレーションを実現するために、断面における変化を反映した情報を提供することを目的とする。
【課題を解決するための手段】
【０００９】
開示の技術の第１の態様によれば、コンピュータに、１本以上の線状可撓性部材を含む束線を含む装置の設計支援を行わせる設計支援プログラムが提供される。前記設計支援プログラムは、下記の経路計算ステップ、入力ステップおよび情報生成ステップを前記コンピュータに実行させる。
【００１０】
前記経路計算ステップは、前記束線の始点と終点の位置に基づいて、前記始点と前記終点を結ぶ経路の３次元形状を表す経路パラメータを計算するステップである。
前記入力ステップは、前記束線の前記始点における前記経路の向きを表す第１の接ベクトルに垂直であり前記束線の前記始点を通る第１の平面による、前記束線の第１の断面を表す第１の情報の入力と、前記終点における前記経路の向きを表す第２の接ベクトルに垂直であり前記束線の前記終点を通る第２の平面による、前記束線の第２の断面を表す第２の情報の入力を受け付けるステップである。
【００１１】
前記情報生成ステップは、前記経路パラメータに基づいて、前記経路上の中間点における前記経路の向きを表す第３の接ベクトルを計算し、前記第１の情報と前記第２の情報と前記第３の接ベクトルに基づいて、前記第３の接ベクトルに垂直であり前記中間点を通る第３の平面による、前記束線の第３の断面を表す第３の情報を生成するステップである。
【００１２】
開示の技術の第２の態様によれば、第１の態様の設計支援プログラムにしたがってコンピュータが実行する設計支援方法が提供される。また、開示の技術の第３の態様によれば、第２の態様の設計支援方法と同様に動作する設計支援装置が提供される。
【発明の効果】
【００１３】
開示の技術によれば、第３の情報の生成は、第１と第２の情報に基づくだけではなく、束線の経路の３次元形状に依存する第３の接ベクトルにも基づいて行われる。したがって、第３の情報は、束線の経路の３次元形状に応じた変化を反映することができる。
【図面の簡単な説明】
【００１４】
【図１Ａ】ハーネス束線を含む装置の例を示す斜視図である。
【図１Ｂ】図１Ａの装置の上面図である。
【図１Ｃ】図１Ａの装置の比較例におけるシミュレーションについて説明する断面図である。
【図１Ｄ】図１Ａの装置の第１実施形態におけるシミュレーションについて説明する断面図である。
【図２】ハーネス束線の３次元モデルを生成する処理を示すフローチャートである。
【図３】各種情報の入力を受け付ける処理を示すフローチャートである。
【図４】各変数について説明する模式図である。
【図５】太さを持たない線状ハーネスのモデルを得る処理を示すフローチャートである。
【図６】曲線を近似する折れ線の一部を示す図である。
【図７】各結束位置の特性を表す情報を求める処理を示すフローチャートである。
【図８】行列ＭＥの計算について説明する図である。
【図９】ｂ番目の結束位置における接ベクトルｔｂの計算について説明する図である。
【図１０】基底の取り替えについて説明する図である。
【図１１】束線ハーネスの変形を考慮した３次元モデルを生成して出力する処理を示すフローチャートである。
【図１２】コンピュータの構成図である。
【発明を実施するための形態】
【００１５】
以下、実施形態について、図面を参照しながら詳細に説明する。なお、以下では１本１本の可撓性線状部材の具体例として「ワイヤ」という名称を用いるが、可撓性線状部材としてケーブルまたはその他の部材を用いてもよいことは無論である。また、複数の可撓性線状部材を束ねたものを以下では「ハーネス束線」という。以下では、図１Ａ〜図１２を参照して第１実施形態について説明し、その後、他の実施形態について説明する。
【００１６】
図１Ａは、ハーネス束線１０４を含む装置１００の例を示す斜視図である。図１Ｂは、装置１００の上面図である。図１Ｃは、装置１００の比較例におけるシミュレーションについて説明する断面図であり、図１Ｄは、装置１００の第１実施形態におけるシミュレーションについて説明する断面図である。
【００１７】
図１Ａに示すように、装置１００は、板状の支持部材１０１を備え、さらに、支持部材１０１の上に設置された部品１０２と１０３を備える。また、装置１００には、複数のワイヤを束ねたハーネス束線１０４も含まれる。ハーネス束線１０４は、部品１０３に２箇所で固定されており、その２箇所の中間において部品１０２に固定されている。なお、図１Ａ〜図１Ｄは、装置１００の一部を示す図であり、図１Ａ〜図１Ｄではハーネス束線１０４の始点と終点は省略されている。
【００１８】
図１Ｂに示すように、ハーネス束線１０４は、２つのクランプ１０５および１０６により、部品１０３に２箇所で固定されている。また、クランプ１０５と１０６の間で、ハーネス束線１０４は、クランプ１０７により部品１０２に固定されている。換言すれば、ハーネス束線１０４は、３つのクランプ１０５〜１０７の箇所で結束されている。なお、図１Ａでは、部品１０３の紙面手前側の側面に取り付けられたクランプ１０５と部品１０２の右側の側面に取り付けられたクランプ１０７が図示されており、部品１０３の左側の側面に取り付けられたクランプ１０６は隠れている。
【００１９】
図１Ｃと図１Ｄは、図１Ｂに示したＡ‐Ｂ線における装置１００の断面図である。図１Ｃは、ハーネス束線１０４の断面における変化が考慮されない３次元モデルを比較例として示した図であり、図１Ｄは、第１実施形態で生成される情報を用いて作られる３次元モデルを示した図である。なお、図１Ａ〜図１Ｄの例では、ハーネス束線１０４は、円形の断面を有する３本のワイヤ１０８〜１１０からなると仮定している。
【００２０】
図１Ｃの比較例においては、ハーネス束線１０４の引き回し方（すなわちハーネス束線１０４の経路の３次元形状）に影響された変形が考慮されていない。すなわち、比較例では、ワイヤ１０８〜１１０それぞれの断面の形状は円形のままであり、歪んでいない。また、比較例では、ハーネス束線１０４上のどの箇所における断面でも常に、ワイヤ１０８〜１１０が図１Ｃに示したのと同じ位置関係に配置されていると仮定されている。
【００２１】
図１Ｃの比較例によれば、ワイヤ１０８〜１１０のいずれも、他の部品（つまり支持部材１０１、部品１０２、部品１０３、およびクランプ１０７）と干渉せず、クランプ１０７内の空洞部を通り抜けている。
【００２２】
しかしながら、実際には、個々のワイヤ１０８〜１１０の断面は、湾曲に応じて変形する。一般には、大きな曲率で曲げられた箇所ほど、断面の形状は大きく歪む。また、ハーネス束線１０４の断面内における、ワイヤ１０８〜１１０同士の相対的な位置関係も、ハーネス束線１０４の経路の形状に応じて変化しうる。
【００２３】
例えば、実際には、各ワイヤ１０８〜１１０の断面形状は扁平化して楕円形となり、ハーネス束線１０４の断面内における、ワイヤ１０８〜１１０同士の相対的な位置関係も、図１Ｃとは違うパターンになってしまうことがある。この場合、断面における変化を考慮に入れて、図１Ｄのように、ハーネス束線１０４または個々のワイヤ１０８〜１１０の３次元モデルを作成することにより、比較例よりも正確なシミュレーションが可能となる。すなわち、図１Ｄの３次元モデルによれば、ワイヤ１０９と部品１０２との干渉、およびワイヤ１１０とクランプ１０７との干渉を検出することが可能である。
【００２４】
近年では、工業製品の小型化にともない、製品に組み込まれているハーネス束線をうまく束ねて、ハーネス束線が占有するスペースを必要最小限にとどめたいという要求がある。そのため、設計者は３次元ＤＭＵ上に仮想的にハーネス束線を配線して、コンピュータにシミュレーションを行わせ、要求を満たすための試行錯誤を行う。その際、例えば図１Ｄのように、ハーネス束線および個々のワイヤをより正確かつ精密に３次元モデル化することで、実物の形状とシミュレーションにおける３次元モデルの形状のずれを少なくすることができる。
【００２５】
そこで、以下では、上記のように変化を考慮したハーネス束線またはワイヤの３次元モデルを生成する処理について、詳しく説明する。なお、以下に説明する処理は、一部または全部が専用ハードウェア回路により実行されてもよい。しかし、説明の便宜上、以下の処理は、プログラムにしたがって動作する汎用のコンピュータにより実行されるものとして説明する。
【００２６】
図２は、ハーネス束線の３次元モデルを生成する処理を示すフローチャートである。なお、以下の説明において、「始点」と「終点」という語を用いるが、ワイヤによる電気的信号の伝達方向とは無関係に、便宜上、２つの端点のうち任意の一方を「始点」と呼び、他方を「終点」と呼んでいるだけである。また、第１実施形態および後述の各実施形態の適用対象は、図１Ａ〜図１Ｄに示した装置１００に限らず、任意の装置でよい。
【００２７】
ステップＳ１００で、コンピュータは、詳しくは図３および図４とともに後述する各種情報の入力を受け付ける。受け付けられる情報の中には、ハーネス束線の１つ以上の結束位置を示す情報が含まれる。なお、以下で「結束」とは、ハーネス束線に含まれる個々のワイヤを束ね、束ねた箇所において、ハーネス束線全体を他の部品等に固定することをいう。また、ハーネス束線は太さを持った３次元形状だが、「結束位置」とは、結束された部位を代表して表す点であり、２次元的または３次元的な広がりを持たないものとする。
【００２８】
続いて、ステップＳ２００で、コンピュータは、ハーネス束線を、太さを持たない曲線としてモデル化し、曲線の形状を計算する。太さを持たない曲線は、ハーネス束線の中心線と見なすことができる。ステップＳ２００の計算では、ステップＳ１００で入力された、各結束位置を示す情報が利用される。
【００２９】
ステップＳ２００は、ハーネス束線の始点と終点の位置に基づいて、始点と終点を結ぶ経路の３次元形状を表す経路パラメータを計算する経路計算ステップの一例であり、ステップＳ２００においてコンピュータは、経路計算手段として機能する。
【００３０】
なお、以下では太さを持たない曲線としてモデル化された仮想的なハーネス束線を、「線状ハーネス」と称する。また、第１実施形態では、曲線の幾何的形状は、折れ線により近似される。折れ線は複数の線分の集合である。つまり、ステップＳ２００においてコンピュータは、曲線を近似するための各線分の端点である、複数の点の位置を計算する。
【００３１】
そして、ステップＳ３００で、コンピュータは、各結束位置における特性を表す情報を求める。上記「特性」の例は、各結束位置における接線の向きや曲率などである。コンピュータは、ステップＳ２００で予備的に求められた線状ハーネスの形状に基づいて、各結束位置における特性を表す情報を求めることができる。
【００３２】
なお、第１実施形態では、ワールド座標系として、固定された３次元直交座標系（以下では「ｘｙｚ座標系」という）を用いる。なお、ｚ座標は高さを表すものとする。
さらに、第１実施形態では、ローカル座標系として、注目している線状ハーネス上の点を原点とする３次元直交座標系（以下では「ｔｕｖ座標系」という）を用いる。例えば、特性の１つとして、ｔ軸の方向を規定するベクトルの形で、線状ハーネスの接線の向きが計算される。なお、複数の結束位置でのそれぞれのローカル座標系を区別するため、以下では、「ｔ」、「ｕ」、および「ｖ」に適宜添え字をつけて、「ベクトルｔｂ」や「ｔｂ軸」のように表記することがある。
【００３３】
最後に、ステップＳ４００で、コンピュータは、ハーネス束線に含まれる各ワイヤの各結束位置における断面レイアウト上の位置と形状を計算し、計算結果からハーネス束線の３次元モデルを生成して出力する。以下、「断面レイアウト」とは、線状ハーネスとしてモデル化されたハーネス束線の接線に垂直な平面による断面において、当該ハーネス束線に含まれる個々のワイヤの、位置および形状を示す２次元の情報のことである。詳しくは図４とともに後述するが、断面レイアウトは、ローカル座標系を用いてｕｖ平面上の情報として表すことができる。
【００３４】
ステップＳ４００では、各ワイヤの断面レイアウト上の位置と形状（つまり断面形状）が、ハーネス束線の経路の形状に応じた変化を考慮して計算される。したがって、出力されるのは、図１Ｃの比較例のようにハーネス束線上の位置やハーネス束線の経路の形状によらない一律な断面を有する３次元モデルではない。すなわち、図１Ｄのように、ハーネス束線の経路の形状に影響されて生じる、ハーネス束線上の位置に応じた変化が考慮された３次元モデルが、ステップＳ４００では出力される。
【００３５】
続いて、図３を参照して、図２のステップＳ１００の詳細を説明する。図３は、各種情報の入力を受け付ける処理を示すフローチャートである。なお、図３の各ステップの実行順は、例えば下記のようないくつかの制約はあるが、適宜入れ替えることができる。
【００３６】
・ステップＳ１０３〜Ｓ１０５がステップＳ１０２の後である。
・ステップＳ１０６がステップＳ１０４の後である。
・ステップＳ１０８がステップＳ１０７の後である。
【００３７】
ステップＳ１０１でコンピュータは、ハーネス束線の全長Ｌの入力を受け付ける。なお、第１実施形態では、ハーネス束線に含まれる個々のワイヤの長さがすべて等しいと仮定している。つまり、各ワイヤの長さは、どれもハーネス束線の全長Ｌに等しい。
【００３８】
また、ステップＳ１０２でコンピュータは、ハーネス束線に含まれるワイヤの本数Ｎの入力を受け付ける（Ｎ≧１）。
そして、ステップＳ１０３でコンピュータは、各ワイヤの半径ｒａの入力を受け付ける（１≦ａ≦Ｎ）。なお、第１実施形態では、各ワイヤの断面は、自然な状態では円形であると仮定している。
【００３９】
また、ステップＳ１０４でコンピュータは、各ワイヤの始点の位置ｐＳａと終点の位置ｐＥａの入力を受け付ける（１≦ａ≦Ｎ）。なお、始点の位置と終点の位置は、それぞれ、ｘｙｚ空間上の位置ベクトルｐＳａとｐＥａにより表されている。
【００４０】
なお、以下では、表記の便宜上、ハーネス束線の始点に関するベクトル等には添え字「Ｓ」を用い、終点に関するベクトル等には添え字「Ｅ」を用いる。また、表記の便宜上、添え字「Ｓ」と「Ｅ」を、それぞれ添え字「０」（ゼロ）と添え字「Ｋ＋１」で置き換える場合がある。
【００４１】
コンピュータはさらにステップＳ１０５で、各ワイヤの始点での接線方向ｔＳａと終点での接線方向ｔＥａの入力を受け付ける（１≦ａ≦Ｎ）。接線方向ｔＳａは、ａ本目のワイヤの始点における接線の方向を、ｘｙｚ座標系によって表した３次元ベクトルである。同様に、接線方向ｔＥａは、ａ本目のワイヤの終点における接線の方向を、ｘｙｚ座標系によって表した３次元ベクトルである。
【００４２】
換言すれば、接線方向ｔＳａとｔＥａは、ａ本目のワイヤの始点と終点それぞれにおける接続の方向である。例えば、ワイヤが始点において、ある構成部品にコネクタにより接続される場合、コネクタの方向が接線方向ｔＳａを規定する。また、後の計算の便宜上、ベクトルｔＳａとｔＥａは、長さが１に正規化されているものとする。
【００４３】
続いて、ステップＳ１０６でコンピュータは、始点と終点での断面レイアウトの入力を受け付ける。上記のように、断面レイアウトは、ローカル座標系を用いてｕｖ平面上の情報として表すことができる。
【００４４】
なお、第１実施形態では、Ｎ本のワイヤそれぞれの始点が同一平面上にあり、かつ、Ｎ本のワイヤそれぞれの終点が同一平面上にあると仮定している。実際の製品の設計においては、この仮定が成立する場合が一般的であり、この仮定により後の計算が単純化されるからである。例えば、ある部品の１つの側面が平面であり、当該側面上にＮ個のコネクタが並んでいる構成において、Ｎ個のコネクタにそれぞれ接続されるワイヤが束ねられてハーネス束線となる場合、上記仮定が成立する。
【００４５】
また、説明の都合上、詳しい計算方法は図１１のステップＳ４０３とともに後述するが、ステップＳ１０６においてコンピュータは、ステップＳ４０３の準備のための計算を行う。具体的には、コンピュータは、始点における各ワイヤのｕＳ座標およびｖＳ座標の値、ならびに終点における各ワイヤのｕＥ座標およびｖＥ座標の値を計算する。
【００４６】
続いて、ステップＳ１０７でコンピュータは、結束位置の個数Ｋの入力を受け付ける（Ｋ≧１）。
その後、ステップＳ１０８でコンピュータは、線状ハーネスにおけるＫ箇所の結束位置ｐｂ（１≦ｂ≦Ｋ）の入力を受け付ける。Ｋ箇所の結束位置ｐｂ（１≦ｂ≦Ｋ）は、ｘｙｚ座標系における位置ベクトルにより表される。
【００４７】
以上で、図２のステップＳ１００に相当する図３の処理は終了する。なお、ステップＳ１０１〜Ｓ１０８における入力は、例えば、キーボードやポインティングデバイスなどの入力装置を介した入力でもよく、ネットワークを介しての他のコンピュータからの入力であってもよい。
【００４８】
続いて、図３で入力された情報および後述の各処理で用いられる情報について図４を参照して説明する。図４は、各変数について説明する模式図である。
図４には、３本のワイヤ１２１〜１２３からなるハーネス束線１２０が例示されている。つまり、図４の例ではＮ＝３である。また、図４は、ハーネス束線１２０が１箇所で束ねられて固定される例、すなわちＫ＝１の例を示している。
【００４９】
ハーネス束線１２０の始点を原点とするローカル座標系であるｔｕｖ座標系の各座標軸は、図４においてそれぞれ「ｔＳ」、「ｕＳ」、および「ｖＳ」と示されている。また、ハーネス束線１２０の終点を原点とするｔｕｖ座標系の各座標軸は、図４においてそれぞれ「ｔＥ」、「ｕＥ」、および「ｖＥ」と示されている。図４のｔｕｖ座標系は右手系である。
【００５０】
なお、図５とともに後述するように、ハーネス束線１２０の始点の位置は、ワイヤ１２１〜１２３の始点の位置の平均である。そして、ハーネス束線１２０の終点の位置は、ワイヤ１２１〜１２３の終点の位置の平均である。
【００５１】
図４における断面レイアウト１３１と１３２は、図３のステップＳ１０６で受け付けられる情報の一例を模式的に表している。始点の断面レイアウト１３１と終点の断面レイアウト１３２の形式は同様なので、断面レイアウト１３１についてのみ以下に詳しく説明する。
【００５２】
図３のステップＳ１０６に関して説明した仮定から、第１実施形態では、３本のワイヤ１２１〜１２３それぞれの始点は同一平面上にある。同様に、３本のワイヤ１２１〜１２３それぞれの終点は同一平面上にある。以下では、ワイヤ１２１〜１２３の始点を通る平面を「平面ξＳ」といい、ワイヤ１２１〜１２３の終点を通る平面を「平面ξＥ」ということにする。
【００５３】
以下では始点に関する断面レイアウト１３１と平面ξＳに注目して説明する。コンピュータは、ワイヤ１２１〜１２３のそれぞれの始点の位置（すなわちｘｙｚ座標）から、平面ξＳをｘｙｚ座標で表す式（１）の係数ξＳ１〜ξＳ４を計算することができる。
【００５４】
ξＳ１ｘ＋ξＳ２ｙ＋ξＳ３ｚ＋ξＳ４＝０        （１）
式（１）により表される平面ξＳの法線ベクトルは（ξＳ１，ξＳ２，ξＳ３）Ｔである。なお、「Ｔ」は転置を表す。ハーネス束線１２０の始点におけるｔ軸の向きを表すベクトルｔＳは、この法線ベクトルを大きさ１に正規化したものであり、式（２）または（３）により計算される。
【００５５】
【数１】
2010231335.tif 000003
【００５６】
【数２】
2010231335.tif 000004
式（２）と（３）は、正負の符号のみが異なる。図７のステップＳ３０１に関して後述するように、コンピュータは、式（２）と（３）のうち、適切な方の式を選ぶことができる。
【００５７】
ここで、ローカル座標系であるｔｕｖ座標系も直交座標系なので、ハーネス束線１２０の始点におけるｕ軸とｖ軸（つまりｕＳ軸とｖＳ軸）は、ベクトルｔＳと垂直な平面ξＳ上にある。ベクトルｔＳは、始点におけるハーネス束線１２０の向きを表すベクトル（すなわち線状ハーネスの始点における接ベクトル）として用いられる。
【００５８】
図４に示した、ハーネス束線１２０の始点における断面レイアウト１３１は、平面ξＳと平行な無数の単位ベクトルの中から、ｕ軸を規定するベクトルｕＳおよびｖ軸を規定するベクトルｖＳを指定する情報でもある。
【００５９】
ところで、断面レイアウト１３１に関わる情報には、ワイヤ１２１〜１２３それぞれの始点の、ｘｙｚ空間における位置ベクトルｐＳａ（１≦ａ≦Ｎ＝３）が含まれる。これらの位置ベクトルｐＳａ（１≦ａ≦Ｎ＝３）は、図３のステップＳ１０４で入力済みである。したがって、コンピュータは、ワイヤ１２１〜１２３の始点間の、ｘｙｚ空間における距離を計算することができる。３つの始点がいずれも平面ξＳ上にあるので、計算される距離は、平面ξＳ上での距離でもある。３つの始点間の距離は、断面レイアウト１３１の入力を受け付けるために用いられてもよい。
【００６０】
コンピュータが断面レイアウト１３１の入力を受け付けるために提供するインタフェイスは任意であるが、コンピュータは、例えば次のようなＧＵＩ（Graphical User Interface）を提供してもよい。
【００６１】
例えば、コンピュータは、図４で断面レイアウト１３１に重ねて示したように、画面内において、左から右へ向かう水平な直線によりｕＳ軸を表し、下から上に向かう垂直な直線によりｖＳ軸を表すことで、ｕＳｖＳ平面を表してもよい。そして、コンピュータは、例えば、ワイヤ１２１の始点がｕＳｖＳ平面の原点に対して位置する方向を指定する入力を、設計者からポインティングデバイス等の入力装置を介して受け取ってもよい。
【００６２】
ここで、上記のとおりハーネス束線１２０の始点の位置は、ワイヤ１２１〜１２３の始点の位置の平均である。換言すれば、ワイヤ１２１〜１２３の３つの始点の位置の平均は、ｕＳｖＳ平面の原点である。
【００６３】
よって、コンピュータは、ｕＳｖＳ平面における各ワイヤ１２１〜１２３の始点と原点との距離を計算することができる。そこで、コンピュータは、例えば、画面上に、原点とワイヤ１２１の始点の間の距離の分だけｕＳｖＳ平面の原点から離して、ワイヤ１２１の始点における断面を表す半径ｒ１の円を原点に対して任意の方向に配置してもよい。
【００６４】
コンピュータは、ワイヤ１２１〜１２３の始点間の距離と、ワイヤ１２２の始点とｕＳｖＳ平面の原点の距離と、ワイヤ１２３の始点とｕＳｖＳ平面の原点の距離から、画面上のワイヤ１２２と１２３の始点の位置を計算することができる。よって、コンピュータは、計算結果にしたがって、画面上に、ワイヤ１２２と１２３の始点における断面を表す半径ｒ２とｒ３の円をそれぞれ配置してもよい。
【００６５】
コンピュータは、例えば、画面上でｕＳ軸とｖＳ軸の線の方向を固定するとともに、上記のようにして配置した３つの円の位置を、画面上でのｕＳｖＳ平面の原点を中心として回転することが可能なＧＵＩを提供してもよい。ＧＵＩを介した回転量の指定は、換言すれば、ワイヤ１２１〜１２３の始点がそれぞれｕＳｖＳ平面の原点に対して位置する方向を指定する入力でもある。つまり、画面内でのｕＳ軸とｖＳ軸の線の向きと、ワイヤ１２１〜１２３の断面の円との相対的な位置関係から、ベクトルｕＳとｖＳをｘｙｚ座標系で表したときのｘ成分、ｙ成分、およびｚ成分の値を、コンピュータは計算することができる。
【００６６】
なお、上記のように、第１実施形態においては、ワイヤ１２１〜１２３の断面は円形であると仮定されており、図３のステップＳ１０３で、ワイヤ１２１〜１２３それぞれの断面の円の半径ｒ１〜ｒ３は入力済みである。
【００６７】
設計者は、画面に表示されているｕＳ軸とｖＳ軸の直線と、ワイヤ１２１〜１２３を示す３つの円との相対位置を見て、必要に応じて、画面上の３つの円の位置を画面上でのｕＳｖＳ平面の原点を中心として回転させることができる。例えば、上記のようなＧＵＩを介して、必要に応じて、回転量の再指定とベクトルｕＳとｖＳの再計算が行われることで、最終的に断面レイアウト１３１が決定されてもよい。
【００６８】
もちろん、コンピュータは、上記に例示したＧＵＩ以外のインタフェイスを介して、断面レイアウト１３１を指定する入力（換言すればベクトルｕＳとｖＳそれぞれのｘｙｚ成分を直接または間接に指定する入力）を受け付けてもよい。
【００６９】
また、コンピュータは、ハーネス束線１２０の終点における断面レイアウト１３２を指定する入力も、断面レイアウト１３１を指定する入力と同様にして受け付けることができる。つまり、コンピュータは、ベクトルｔＳと同様の方法によって、終点におけるハーネス束線１２０の向きを表すベクトル（すなわち線状ハーネスの終点における接ベクトル）としてベクトルｔＥを計算することができる。また、コンピュータは、ベクトルｕＥとｖＥそれぞれのｘｙｚ成分を計算することもできる。
【００７０】
なお、図４において結束点に関する部分と、断面レイアウト１３２の傾きθＥについては図７および図１１とともに後述する。
以上、図４を参照して説明した内容を図３のステップＳ１０６と関連付けて一般化すれば下記のとおりである。
【００７１】
始点での断面レイアウトを指定する入力は、ハーネス束線の始点を通る第１の平面（具体的には平面ξＳ）によるハーネス束線の第１の断面を表す第１の情報の一例にすぎず、入力インタフェイスや情報の形式は上記の例示に限られない。同様に、終点での断面レイアウトを指定する入力は、ハーネス束線の終点を通る第２の平面（具体的には平面ξＥ）によるハーネス束線１２０の第２の断面を表す第２の情報の一例にすぎない。
【００７２】
なお、上記第１の平面は、ハーネス束線の始点と終点を結ぶ経路の、始点における向きを表す第１の接ベクトル（すなわちベクトルｔＳ）に垂直な平面である。また、上記第２の平面は、上記経路の、終点における向きを表す第２の接ベクトル（すなわちベクトルｔＥ）に垂直な平面である。
【００７３】
第１実施形態において、上記第１の情報は、第１の平面上に２本の座標軸を有する第１のローカル座標系とワールド座標系との関係を示す第１の座標系情報を含む。より具体的には、第１の情報は、平面ξＳ上にｕＳ軸とｖＳ軸を有するｕＳｖＳ座標系とｘｙｚ座標系との関係を示す情報として、ベクトルｕＳとｖＳそれぞれのｘｙｚ成分を含む。
【００７４】
同様に、上記第２の情報は、第２の平面上に２本の座標軸を有する第２のローカル座標系とワールド座標系との関係を示す第２の座標系情報を含む。より具体的には、第２の情報は、平面ξＥ上にｕＥ軸とｖＥ軸を有するｕＥｖＥ座標系とｘｙｚ座標系との関係を示す情報として、ベクトルｕＥとｖＥそれぞれのｘｙｚ成分を含む。
【００７５】
図３のステップＳ１０６は、上記のような第１および第２の情報の入力を受け付ける入力ステップの一例であり、ステップＳ１０６においてコンピュータは、第１および第２の情報の入力を受け付ける入力手段として機能する。
【００７６】
続いて、図２のステップＳ２００の詳細を、図５を参照して説明する。図５は、太さを持たない線状ハーネスのモデルを得る処理を示すフローチャートである。
ステップＳ２０１において、コンピュータは、線状ハーネスの始点の位置ｐＳとして、束線ハーネスに含まれるＮ本のワイヤの始点の平均位置を式（４）により計算する。
【００７７】
【数３】
2010231335.tif 000005
また、ステップＳ２０２において、コンピュータは、線状ハーネスの終点の位置ｐＥとして、上記Ｎ本のワイヤの終点の平均位置を式（５）により計算する。
【００７８】
【数４】
2010231335.tif 000006
以上により、線状ハーネスの始点と終点の位置が、ｘｙｚ座標系における位置ベクトルｐＳおよびｐＥにより表される。
【００７９】
さらに、コンピュータは、図３のステップＳ１０８で入力された各結束位置までの、線状ハーネスにそった始点からの長さＬｂ（１≦ｂ≦Ｋ）の入力を受け付ける。ここで、１番目の結束位置の位置ベクトルｐ１と長さＬ１は式（６）を満たすものと仮定する。また、ｂ番目と（ｂ＋１）番目の結束位置それぞれの位置ベクトルｐｂおよびｐｂ＋１、ならびに長さＬｂおよびＬｂ＋１（１≦ｂ≦Ｋ）は式（７）を満たすものと仮定する。なお、｜・｜はベクトルの長さを表す。
【００８０】
【数５】
2010231335.tif 000007
【００８１】
【数６】
2010231335.tif 000008
式（６）と（７）は、線状ハーネス上の２点間の直線距離が、線状ハーネスに沿った当該２点間の道のり以下であるという制約を表している。第１実施形態では、説明の簡略化のため、式（６）と（７）の制約条件が満たされていると仮定するが、制約条件のチェックと再入力を繰り返す実施形態も可能である。
【００８２】
また、上記の長さＬｂ（１≦ｂ≦Ｋ）はいずれも、予め決められた正の整数Ｊを用いて式（８）により定義される長さΔＬの整数倍であると仮定する。この仮定は計算の簡略化と説明の便宜上のものであるが、後述するように、この仮定が成立しない場合にも、計算式を適宜変更することで、第１実施形態と同様の処理をコンピュータが行うことができる。
【００８３】
ΔＬ＝Ｌ／Ｊ        （８）
式（８）の整数Ｊは、例えば数十程度の数でもよい。第１実施形態では整数Ｊの値が予め決められているが、例えば入力されたハーネス束線の全長Ｌに基づいてコンピュータが整数Ｊの値を動的に決定してもよいし、コンピュータが整数Ｊの値の入力を設計者から受け付けてもよい。
【００８４】
そして、ステップＳ２０４でコンピュータは、線状ハーネスの形状を計算する。具体的には、第１実施形態では、コンピュータは、ハーネス束線の曲線の形状を、（Ｊ＋１）個の質点を用いて、隣接する２つの質点間を結ぶＪ本の線分の集合により近似する。Ｊが大きいほど、より高い精度で曲線を近似することができる。すなわち、上記経路パラメータは、第１実施形態では、Ｊ本の線分それぞれの端点の位置を示す情報である。
【００８５】
ステップＳ２０４と類似の計算は、本出願人による特願２００７−３０８０８４号にも開示されているが、具体的に説明すれば下記のとおりである。
図３のステップＳ１０８および図５のステップＳ２０１〜Ｓ２０２により、線状ハーネスのＫ箇所の結束位置、始点の位置、および終点の位置は、それぞれｘｙｚ空間の既知の３次元位置ベクトルで表されている。ステップＳ２０４では、曲線を近似するための（Ｊ＋１）個の質点のうち（Ｋ＋２）個がこれらの既知の位置にあるという制約条件のもとで、コンピュータが、残りの（Ｊ−１−Ｋ）個の質点の未知の位置を計算する。
【００８６】
ここで、全長Ｌの線状ハーネスをＪ等分した各点のｘｙｚ空間の位置ベクトルをｑｃとする（１≦ｃ≦Ｊ−１）。なお、以下では線状ハーネスをＪ等分した各点を、線状ハーネスの始点に近い方から順に、「１番目の質点」、「２番目の質点」、……のように呼ぶ。ｃ番目の質点の位置ベクトルがｑｃである。
【００８７】
また、形式的に式（９）および（１０）のように定義し、始点を「０番目の質点」、終点を「Ｊ番目の質点」とも呼ぶことにする。
【００８８】
【数７】
2010231335.tif 000009
【００８９】
【数８】
2010231335.tif 000010
すると、０≦ｃ≦Ｊ−１を満たす各ｃについて、ｃ番目の質点と（ｃ＋１）番目の質点の間の、線状ハーネスに沿った道のりは、式（８）で定義されるΔＬである。また、上記の「どの長さＬｂ（１≦ｂ≦Ｋ）も長さΔＬの整数倍である」という仮定から、Ｋ個の結束位置のそれぞれに位置させることになる質点が一意に定まる。なお、０≦ｃ≦Ｊを満たす各ｃについて、ベクトルｑｃのｘ成分、ｙ成分、ｚ成分を、それぞれｑｃｘ、ｑｃｙ、およびｑｃｚと表記する。
【００９０】
ここで、ハーネス束線は、始点、終点および結束位置以外では自由に撓むことができるが、ハーネス束線にかかる負荷が最小となる形状で安定すると考えられる。そこで、ステップＳ２０４の処理は、ハーネス束線にかかる負荷すなわち力学的ポテンシャルエネルギーを最小化するように、上記（Ｊ−１−Ｋ）個の質点の未知の位置を計算することを目的とする。
【００９１】
具体的には、力学的ポテンシャルエネルギーＵは、式（１１）により近似される。
【００９２】
【数９】
2010231335.tif 000011
なお、力学的ポテンシャルエネルギーＵの引数は、１番目から（Ｊ−１）番目の質点のうち、既知のＫ個の結束位置に相当するＫ個の質点を除く（Ｊ−１−Ｋ）個の質点の位置ベクトルである。換言すれば、力学的ポテンシャルエネルギーＵの引数は、これら（Ｊ−１−Ｋ）個の質点の位置ベクトルそれぞれのｘ成分、ｙ成分、ｚ成分であるから、Ｕは３（Ｊ−１−Ｋ）個のスカラ変数を引数とする関数であると見なせる。
【００９３】
なお、式（１１）において、Ｒｋは、定数であり質点間の弾性係数を示す。また、Ｒｆは、定数であり質点間の曲げ弾性係数を示す。そして、Ｗは、隣接する２つの質点間の線状ハーネスにそった道のりの長さ（すなわちΔＬ）を持つ、ハーネス束線のセグメントの重量（つまり質量と重力加速度の積）である。なお、Ｊが定数ならば、ΔＬも定数となるので、ΔＬに比例するＷも定数となる。
【００９４】
また、式（１１）におけるψは、隣接する３つの質点の位置の関数として表される角度である。角度ψについて図６を参照して説明する。
図６は、曲線を近似する折れ線の一部を示す図である。図６には模式的に角度ψが示されている。図６に示すように、角度ψは、ｃ番目の質点において線状ハーネスがなす角度である。したがって、角度ψは式（１２）により定義される。
【００９５】
【数１０】
2010231335.tif 000012
なお、（・，・）は２つのベクトルの内積を表す。
【００９６】
ここで図５のステップＳ２０４の説明に戻ると、コンピュータは、力学的ポテンシャルエネルギーＵが最小とする質点の配置を求めるため、（１３）の連立方程式を解く。
【００９７】
【数１１】
2010231335.tif 000013
なお、連立方程式（１３）の表現は、添え字ｃを用いることで簡略化されている。表記の便宜上ここには３つの方程式のみを掲載したが、位置が未知の質点は上記のとおり（Ｊ−１−Ｋ）個あるので、連立方程式（１３）は、実際には３（Ｊ−１−Ｋ）個の方程式を含む。つまり、連立方程式（１３）における添え字ｃは、「１≦ｃ≦Ｊ−１、かつ、位置ベクトルｑｃはＫ個の既知の結束位置のいずれとも異なる位置を表す」という条件を満たす整数である。
【００９８】
連立方程式（１３）に現れる各偏導関数は、式（１１）の力学的ポテンシャルエネルギーＵの定義から明らかに非線形関数だが、公知の数値計算法を利用して、コンピュータは連立方程式（１３）を解くことができる。
【００９９】
具体的には、コンピュータは、例えばニュートン・ラプソン（Newton-Raphson）法を用いて連立方程式（１３）を解くことができる。例えば、コンピュータは、（Ｊ−１−Ｋ）個の質点の未知の位置の初期値として、真の位置に比較的近いと予測される位置を設定し、ニュートン・ラプソン法による反復計算を行う。コンピュータは、解が収束したと判定するか、または反復回数が所定の閾値を超えるまで、変数の値の計算を繰り返す。
【０１００】
ｉ回目の反復において得られるｑｃｘ、ｑｃｙ、およびｑｃｚをそれぞれｑｃｘ（ｉ）、ｑｃｙ（ｉ）、およびｑｃｚ（ｉ）と表記すると、ｉ＝０が初期値に相当する。また、ｉ回目の反復では、下記の３（Ｊ−１−Ｋ）個の変数のセット（Ａ）から３（Ｊ−１−Ｋ）個の変数のセット（Ｂ）が得られる。ただし、１≦ｃ≦Ｊ−１、かつ、位置ベクトルｑｃはＫ個の既知の結束位置のいずれとも異なる位置を表すものとする。
【０１０１】
（Ａ）ｑ１ｘ（ｉ−１），ｑ１ｙ（ｉ−１），ｑ１ｚ（ｉ−１），……，
ｑ（Ｊ−１）ｘ（ｉ−１），ｑ（Ｊ−１）ｙ（ｉ−１），ｑ（Ｊ−１）ｚ（ｉ−１）
（Ｂ）ｑ１ｘ（ｉ），ｑ１ｙ（ｉ），ｑ１ｚ（ｉ），……，
ｑ（Ｊ−１）ｘ（ｉ），ｑ（Ｊ−１）ｙ（ｉ），ｑ（Ｊ−１）ｚ（ｉ）
ニュートン・ラプソン法は周知なので詳しい説明は省略する。
【０１０２】
なお、初期値はコンピュータが任意に設定することができる。例えば、ｃ番目の質点が（ｂ−１）番目の結束位置とｂ番目の結束位置の間の点であるとする。つまり、ｃが式（１４）を満たすとする。
【０１０３】
Ｌｂ−１＜ｃΔＬ＜Ｌｂ        （１４）
この場合、コンピュータは、（ｂ−１）番目の結束位置とｂ番目の結束位置を結ぶ直線上の適切な内分点を、ｃ番目の質点の位置の初期値（つまりｑｃｘ（０）、ｑｃｙ（０）およびｑｃｚ（０））として設定してもよい。
【０１０４】
もちろん、コンピュータは、連立方程式（１３）中の変数の初期値を、上記のように線形補間により計算する代わりに、２次式等を用いて計算してもよい。
以上により、コンピュータは、連立方程式（１３）を解いて（Ｊ−１−Ｋ）個の質点のｘｙｚ空間上の位置ベクトルｑｃ（１≦ｃ≦Ｊ−１、かつ、位置ベクトルｑｃはＫ個の既知の結束位置のいずれとも異なる位置を表す）を取得することができる。したがって、コンピュータは、線状ハーネスの形状を近似する折れ線を表す情報として、既知の始点、終点、およびＫ個の結束位置とあわせて（Ｊ＋１）個の質点の位置を用いることができる。そして、以上のようにして図２のステップＳ２００に相当する図５の処理が終了すると、処理は図２のステップＳ３００に移行する。
【０１０５】
続いて、図７を参照して、図２のステップＳ３００の詳細を説明する。図７は、各結束位置の特性を表す情報を求める処理を示すフローチャートである。
ステップＳ３０１で、コンピュータは、線状ハーネスの始点・終点間での接ベクトルの変換行列ＭＥを計算する。行列ＭＥは、後述する行列Ｍｂ（１≦ｂ≦Ｋ）を補正するための情報であるねじれ角θＥをステップＳ３０２で計算するのに用いられる。
【０１０６】
ステップＳ３０１で、コンピュータは行列ＭＥを計算するために、まず線状ハーネスの始点と終点それぞれにおける接ベクトルｔＳとｔＥを計算する。接ベクトルｔＳの計算方法は図４および式（１）〜（３）を参照して説明したとおりである。なお、コンピュータは、例えば以下のような基準にしたがって、正負の符号のみ異なる式（２）と（３）のいずれを選ぶかを決定することができる。
【０１０７】
例えば、線状ハーネスの分割数を示す整数Ｊが適切であれば、始点における接ベクトルｔＳの方向は、始点から１番目の質点へ向かうベクトルの向きと比較的近いと推測される。したがって、式（２）と（３）の適切さは式（１５）のσＳによって評価可能である。
【０１０８】
【数１２】
2010231335.tif 000014
コンピュータは、式（２）にしたがって接ベクトルｔＳの第１の候補を求め、第１の候補を用いて式（１５）によりσＳの第１の値を計算してもよい。また、コンピュータは、式（３）にしたがって接ベクトルｔＳの第２の候補を求め、第２の候補を用いて式（１５）によりσＳの第２の値を計算してもよい。そして、コンピュータは、σＳの第１と第２の値を比較し、より１に近い値が得られた方の候補を接ベクトルｔＳとして採用してもよい。
【０１０９】
同様にして、終点での断面レイアウトに基づいて、コンピュータは、終点における接ベクトルｔＥの２つの候補を計算することができる。また、終点における接ベクトルｔＥの２つの候補の適切さは式（１６）のσＥによって評価可能である。
【０１１０】
【数１３】
2010231335.tif 000015
コンピュータは、接ベクトルｔＳの場合と同様にして、接ベクトルｔＥの２つの候補をそれぞれ用いて式（１６）に基づいてσＥの２つの値を計算し、２つの値を比較し、より１に近い値が得られた方の候補を接ベクトルｔＥとして採用してもよい。
【０１１１】
ステップＳ３０１において、例えば以上のようにして接ベクトルｔＳとｔＥを計算すると、コンピュータは、続いて行列ＭＥを計算する。行列ＭＥは、線状ハーネスの始点における接ベクトルｔＳを終点における接ベクトルｔＥに変換する行列である。
【０１１２】
図８は、行列ＭＥの計算について説明する図である。図８には、接ベクトルｔＳ、接ベクトルｔＥ、接ベクトルｔＳとｔＥが張る平面γＥ、平面γＥの法線ベクトルｇＥ、および平面γＥ上で接ベクトルｔＳとｔＥがなす角φEが図示してある。
【０１１３】
行列ＭＥは、平面γＥの法線ベクトルｇＥを回転軸として接ベクトルｔＳを回転することにより接ベクトルｔＥを得る回転行列である。行列ＭＥは、直交行列でもある。
ここで、平面γＥの法線の向きは、接ベクトルｔＳとｔＥの外積により表すことができる。よって、式（１７）で定義される単位ベクトルｇＥは、平面γＥに垂直であり、平面γＥの法線ベクトルである。
【０１１４】
【数１４】
2010231335.tif 000016
単位ベクトルｇＥを用いると、行列ＭＥの第ｉ行第ｊ列成分は、ロドリゲス（Rodrigues）の公式より、式（１８）で定義される。
【０１１５】
【数１５】
2010231335.tif 000017
式（１８）における角φEは、図８に示すように接ベクトルｔＳとｔＥがなす角であり、接ベクトルｔＳとｔＥはいずれも単位ベクトルなので、式（１９）により計算することができる。角φEは、行列ＭＥによる回転角を表す。
【０１１６】
【数１６】
2010231335.tif 000018
また、式（１８）におけるδｉｊは、クロネッカのデルタ（Kronecker delta）であり、式（２０）により定義される。
【０１１７】
【数１７】
2010231335.tif 000019
また、式（１８）におけるεｉｋｊは、エディントンのイプシロン（Eddington's epsilon）またはレヴィ＝チヴィタ記号（Levi-Civita symbol）と呼ばれ、式（２１）により定義される。
【０１１８】
【数１８】
2010231335.tif 000020
以上の式を用いて行列ＭＥを計算すると、続いて、コンピュータは、ステップＳ３０２において、ハーネス束線の始点・終点間でのねじれ角θＥを計算する。ねじれ角θＥはハーネス束線が始点Ｓから終点Ｅに到るまでの間にねじれた量を表し、式（２２）で定義される。
【０１１９】
【数１９】
2010231335.tif 000021
ここで、行列ＭＥは直交行列なので、行列ＭＥによる変換はベクトルの長さを変えない。よって、始点におけるｔｕｖ座標系のｕ軸の方向を表す単位ベクトルｕＳを行列ＭＥにより変換したベクトルの長さも１である。つまり、式（２２）は、単位ベクトルｕＥにより表される、終点におけるｔｕｖ座標系の実際のｕ軸の方向と、ねじれがないと仮定したときにベクトルｕＳが終点において向いているはずの方向とのなす角を表している。図４では、模式的にねじれ角θＥを表現されている。
【０１２０】
なお、ねじれ角θＥの直感的な意味を説明すれば次のとおりである。すなわち、接ベクトルｔＳを接ベクトルｔＥに変換する仕方は一意ではないが、最も自然な変換は、接ベクトルｔＳとｔＥが張る平面γＥ内での回転である。行列ＭＥは、そのような自然な変換を表す。しかし、実際にはｔ軸を回転軸とする回転の自由があるため、始点におけるｕ軸の方向を表すベクトルｕＳを行列ＭＥにより変換すると、変換結果のベクトルは、ｔ軸を回転軸とする回転の分だけ、終点におけるｕ軸の方向を表すベクトルｕＥからずれてしまう。ねじれ角θＥは、ｔ軸を回転軸とするこのようなずれを表している。
【０１２１】
以上のようにしてねじれ角θＥが計算されると、処理はステップＳ３０３に移行し、コンピュータは、変数ｂに１を代入する。続くステップＳ３０４〜Ｓ３１５は、Ｋ回（Ｋは結束位置の個数）繰り返される。
【０１２２】
ステップＳ３０４でコンピュータは、ｂ番目の結束位置での線状ハーネスの接ベクトルｔｂを計算する。ここで、線状ハーネスの形状は折れ線により近似されているので、コンピュータは、図９を参照して以下に説明する方法により近似的に接ベクトルｔｂを計算する。
【０１２３】
図９は、ｂ番目の結束位置における接ベクトルｔｂの計算について説明する図である。便宜上、図９の説明においては、ｂ番目の結束位置が、図５のステップＳ２０４に関して説明したｃ番目の質点の位置であるとする。なお、図９には、（ｃ−１）番目から（ｃ＋２）番目までの質点と、それぞれの位置ベクトルが示してある。
【０１２４】
図９において、折れ線がｃ番目の質点において作る角ψは、図６に示した角ψであり、式（１２）により定義される。図９には角ψの２等分線１４１および接ベクトルｔｂの向きを示す矢印１４２が示してある。
【０１２５】
接ベクトルｔｂは、ベクトル（ｑｃ＋１−ｑｃ）とのなす角が（π／２−ψ／２）となる単位ベクトルであり、ベクトル（ｑｃ−１−ｑｃ）とベクトル（ｑｃ＋１−ｑｃ）が張る平面に平行である。したがって、コンピュータは、例えば、（ｃ−１）番目から（ｃ＋１）番目の質点の既知の位置に基づいて連立方程式（２３）を解くことで、接ベクトルｔｂのｘｙｚ成分を計算することができる。
【０１２６】
【数２０】
2010231335.tif 000022
ここで図９から図７の説明に戻ると、以上によりステップＳ３０４の処理が終了し、続いてステップＳ３０５でコンピュータは、始点とｂ番目の結束位置との間の接ベクトルの変換行列Ｍｂを計算する。行列Ｍｂは行列ＭＥと同様にして計算することができる。すなわち、式（１８）は、添え字「Ｅ」を添え字「ｂ」に一般化することで、式（２４）のように拡張される。
【０１２７】
【数２１】
2010231335.tif 000023
式（２４）は、ｂ番目の結束位置に関する行列Ｍｂの第ｉ行第ｊ列成分を表している。また、式（２４）における角度φｂは、式（１９）を一般化した式（２５）により定義される。
【０１２８】
【数２２】
2010231335.tif 000024
また、式（２４）におけるベクトルｇｂは、式（１７）を一般化した式（２６）により定義される。
【０１２９】
【数２３】
2010231335.tif 000025
すなわち、接ベクトルｔＳとｔｂが張る平面を平面γｂと呼ぶことにすると、行列Ｍｂは、平面γｂの法線を回転軸として平面γｂ内で接ベクトルｔＳを回転することにより接ベクトルｔｂを得る回転行列である。回転角はφｂであり、行列Ｍｂは直交行列である。また、単位ベクトルｇｂは平面γｂの法線ベクトルである。
【０１３０】
行列Ｍｂの計算後、コンピュータは、次のステップＳ３０６において、始点とｂ番目の結束位置との間のねじれ角θｂを計算する。ねじれ角θｂは、式（２７）により定義される。
【０１３１】
θｂ＝θＥＬｂ／Ｌ        （２７）
なお、式（２７）におけるＬｂは、上述のように、始点からｂ番目の結束位置までの線状ハーネスの長さである。すなわち、第１実施形態では、ねじれ角は始点からの線状ハーネスの長さに比例するという仮定に基づき、ｂ番目の結束位置におけるねじれ角θｂが推定される。なお、図４では、ｂ＝Ｋ＝１の場合を例として、ｂ番目の結束位置での断面レイアウト１３３が、始点における断面レイアウト１３１に比べてねじれ角θｂの分だけ傾けられて模式的に表されている。
【０１３２】
続いて、ステップＳ３０７においてコンピュータは、推定したねじれ角θｂにしたがって行列Ｍｂを補正するための変換行列Ａｂを計算する。変換行列Ａｂは、ｂ番目の結束位置における接ベクトルｔｂを回転軸として角θｂの回転を与える回転行列であり、直交行列である。式（１８）と同様に、行列Ａｂの第ｉ行第ｊ列成分は、次の式（２８）により定義される。
【０１３３】
【数２４】
2010231335.tif 000026
ただし、式（２８）では、接ベクトルｔｂのｘ成分、ｙ成分、およびｚ成分をそれぞれｔｂ１、ｔｂ２、およびｔｂ３と表記するものとしている。
【０１３４】
続いて、ステップＳ３０８においてコンピュータは、行列Ａｂにより行列Ｍｂを補正した変換行列Ｂｂを、式（２９）にしたがって計算する。
Ｂｂ＝ＡｂＭｂ        （２９）
そして、ステップＳ３０９においてコンピュータは、ｂ番目の結束位置におけるｕ軸とｖ軸をそれぞれ規定するベクトルｕｂとｖｂを、式（３０）と（３１）にしたがって計算する。
【０１３５】
【数２５】
2010231335.tif 000027
【０１３６】
【数２６】
2010231335.tif 000028
ここで、上記のとおり行列Ａｂと行列Ｍｂはともに直交行列なので、その積である行列Ｂｂも直交行列である。よって、行列Ｂｂによる変換も、ベクトルの長さを変えない。また、始点におけるｕ軸とｖ軸をそれぞれ規定するｕＳとｖＳは単位ベクトルである。よって、ベクトルｕｂとｖｂもｘｙｚ空間における単位ベクトルである。
【０１３７】
続いて、ステップＳ３１０においてコンピュータは、線状ハーネスのｂ番目の結束位置における曲がり具合の大きさを示す曲率κｂを計算する。曲率κｂの計算について、再度図９を参照しながら説明する。
【０１３８】
ここで、図９のように、ｂ番目の結束位置にはｃ番目の質点が配置されているとする。すなわち、位置ベクトルｑｃと位置ベクトルｐｂが等しいとする。図５のステップＳ２０４に関する説明から、任意の１≦ｂ≦Ｋに対して、位置ベクトルｑｃと位置ベクトルｐｂが等しくなるｃが１≦ｃ≦Ｊ−１の範囲に存在することが保証され、かつｃは一意に定まる。上記のようにしてｂ番目の結束位置に対して一意に定まるｃによって規定される（ｃ−１）番目の質点を、以下では便宜上「ｂ番目の注目近傍点」とも呼ぶ。
【０１３９】
コンピュータは、曲率κｂの計算のために、まず、ｂ番目の注目近傍点すなわち（ｃ−１）番目の質点における、長さが１に正規化された接ベクトルを、ステップＳ３０４に関して説明したのと同様の方法によって計算する。ｂ番目の注目近傍点における接ベクトルを、ベクトルｔ＊ｂと表すことにする。すると、曲率κｂは式（３２）で定義される。
【０１４０】
【数２７】
2010231335.tif 000029
なお、式（３２）中のｄｂは、ｂ番目の結束位置（すなわちｃ番目の質点の位置）とｂ番目の注目近傍点の位置（すなわち（ｃ−１）番目の質点の位置）の距離であり、式（３３）により計算される。
【０１４１】
【数２８】
2010231335.tif 000030
ここで、線状ハーネスの計算に用いた整数Ｊが十分に大きければ、距離ｄｂは十分に小さいので、式（３４）により曲率κｂを近似することができる。
【０１４２】
【数２９】
2010231335.tif 000031
そこで、コンピュータは、近似式（３４）を用いて曲率κｂを計算する。なお、上記の説明において、整数Ｊが十分に大きい、あるいは距離ｄｂが十分に小さいという意味は、式（３４）の近似に起因する誤差の影響が、無視しても問題がない程度である、ということである。無視しても問題がないレベルは実施形態に応じて異なり、例えば、ハーネス束線のシミュレーションに求められる精度に応じて異なる。以下では、整数Ｊが十分に大きく、適切に設定されているものとして説明する。
【０１４３】
ここで、一般に、曲率κｂが大きいほど、ｂ番目の結束位置において、線状ハーネスの形状を曲線と見なしたときの当該曲線の主法線ベクトルの方向（つまり曲率半径の方向）にハーネス束線にかかる力が大きい。すなわち、曲率κｂが大きいほど、ハーネス束線の断面は主法線ベクトルの方向に大きく扁平化する。
【０１４４】
扁平化の度合いが大きすぎれば、ハーネス束線の耐久性等に影響することもあり、設計者の所望の空間にハーネス束線が収まりきらなくなる可能性もある。そこで、コンピュータは、続くステップＳ３１１〜Ｓ３１４で、扁平化の度合いを計算し、必要に応じて警告を出す。
【０１４５】
まず、ステップＳ３１１においてコンピュータは、線状ハーネスのｂ番目の結束位置での主法線と従法線の向きを表すベクトルｎｂとｍｂを計算する。なお、主法線ベクトルｎｂは、図４に模式的に示したように、ｕｂｖｂ平面上のベクトルであるが、必ずしもｕｂ軸またはｖｂ軸と平行ではない。主法線ベクトルｎｂは、次のような近似を使って計算される。
【０１４６】
線状ハーネスのｂ番目の結束位置における主法線ベクトルｎｂは、式（３５）により表すことができる。
【０１４７】
【数３０】
2010231335.tif 000032
式（３５）により定義される主法線ベクトルｎｂは接ベクトルｔｂと直交し、主法線ベクトルｎｂと接ベクトルｔｂの組は、ｂ番目の結束位置の近傍における線状ハーネスの湾曲に沿った平面の基底をなす。
【０１４８】
コンピュータは、まず式（３６）を使って、主法線ベクトルｎｂを近似するベクトルｎ’ｂを計算する。
【０１４９】
【数３１】
2010231335.tif 000033
式（３５）と式（３６）の比較から、ｂ番目の注目近傍点がｂ番目の結束位置に十分に近ければ（すなわちｄｂが十分に小さければ）、ベクトルｎ’ｂは主法線ベクトルｎｂの良い近似を与える。なお、ここで「十分に近い」とは、ハーネス束線および個々のワイヤの３次元モデルに求められる精度を達成することが可能な程度の近さを意味する。
【０１５０】
こうして計算されたベクトルｎ’ｂは、ｂ番目の結束位置における接ベクトルｔｂにほぼ直交する。換言すれば、ベクトルｎ’ｂをｂ番目の結束位置におけるローカル座標系（つまりｔｂｕｂｖｂ座標系）で表すと、ｔｂ成分の値が０に近い。よって、ベクトルｎ’ｂをｕｖ平面に射影して得られるベクトル（すなわちｔｂ成分の値が０のベクトル）は、ベクトルｎ’ｂと大きく異なるものではない。
【０１５１】
また、ｂ番目の結束位置におけるｔｂ軸の向きは、ｂ番目の結束位置における線状ハーネスの接線の向きであるから、接線と垂直な主法線および従法線は、ｔｂ軸と垂直なｕｂｖｂ平面上の線である。そこで、第１実施形態では、ｕｂｖｂ平面への射影により得られるベクトルによって主法線ベクトルｎｂが近似される。
【０１５２】
すなわち、コンピュータは、ベクトルｎ’ｂのｕｂｖｂ平面への射影を表す式（３７）を用いて、主法線ベクトルｎｂの近似値を計算する。
【０１５３】
【数３２】
2010231335.tif 000034
また、コンピュータは、主法線ベクトルｎｂと直交する従法線ベクトルｍｂを計算する。主法線ベクトルｎｂと従法線ベクトルｍｂは、上記のとおり、ｂ番目の結束位置においてベクトルｕｂとｖｂにより規定されるｕｂｖｂ平面上のベクトルである。
【０１５４】
なお、ベクトルｎｂとｍｂの長さは１である必要はない。また、ｕｂとｖｂが単位ベクトルであり互いに直交することから、コンピュータは、例えば式（３８）を用いて従法線ベクトルｍｂを計算してもよい。式（３７）と式（３８）から、ベクトルｎｂとｍｂの内積は０である。
【０１５５】
【数３３】
2010231335.tif 000035
ところで、ベクトルｕｂとｖｂは線形独立なので、ベクトルｕｂとｖｂの組は、ベクトルｕｂとｖｂにより張られる平面の基底である。また、上記式（３７）と式（３８）より、ベクトルｎｂとｍｂは線形独立であり、かつ、ベクトルｕｂとｖｂにより張られる平面と平行である。
【０１５６】
したがって、線形代数で一般に知られているように、ベクトルｕｂとｖｂにより張られる平面上の任意のベクトルは、ベクトルｎｂとｍｂの線形結合で表すこともできる。つまり、ベクトルｎｂとｍｂの組も、ベクトルｕｂとｖｂにより張られる平面の基底である。ベクトルｎｂとｍｂは、線形代数において「基底の取り替え」として知られる処理を行うために計算される。
【０１５７】
図１０は基底の取り替えについて説明する図である。図１０に示すように、ベクトルｕｂとｖｂにより張られる平面上の任意のベクトルは、ベクトルｕｂとｖｂの線形結合で表すこともでき、ベクトルｎｂとｍｂの線形結合で表すこともできる。すなわち、任意の係数αｂ１とαｂ２に対して、式（３９）が成立するような係数βｂ１とβｂ２が必ず存在し、基底の取り替えにより、係数αｂ１とαｂ２から係数βｂ１とβｂ２を計算することが可能である。
【０１５８】
【数３４】
2010231335.tif 000036
なお、上記のような２次元空間の基底の取り替えは、２×２行列を用いて行うことができる。具体的には、ベクトルｎｂとｍｂが上記の式（３７）と（３８）により定義されている場合、式（４０）〜（４３）に示すように、行列ＦとＦ−１を用いて基底の取り替えを行うことができる。
【０１５９】
【数３５】
2010231335.tif 000037
【０１６０】
【数３６】
2010231335.tif 000038
【０１６１】
【数３７】
2010231335.tif 000039
【０１６２】
【数３８】
2010231335.tif 000040
なお、実際の基底の取り替えの計算は、後述の図１１のステップＳ４０４とＳ４０５で行われるが、ここで先に計算方法を説明した。
【０１６３】
以上のようにして、ベクトルｎｂとｍｂを計算すると、続くステップＳ３１２においてコンピュータは、線状ハーネスのｂ番目の結束位置における上下縮み率ζｂと左右伸び率ηｂを式（４４）と（４５）により計算する。なお、上下縮み率ζｂと左右伸び率ηｂをまとめて「扁平化係数」とも呼ぶことにする。
【０１６４】
ζｂ＝１／（１＋κｂＥ）        （４４）
ηｂ＝１／ζｂ                  （４５）
ここで、式（４４）におけるＥは、ハーネス束線に含まれる個々のワイヤの材質などに応じた正の定数である。定数Ｅの適切な値は、予備実験などから決定することが好ましい。定数Ｅの値を適切に定めることにより、曲率κｂに応じた扁平化係数の変化の度合いを調節することができる。「上下縮み率」と「左右伸び率」という名称は、直感的な理解を助けるために便宜的に主法線と従法線の方向をそれぞれ「上下方向」および「左右方向」と見なしてつけた名称である。
【０１６５】
扁平化係数は、以下のような仮定に基づいて変形を表すパラメータである。
・ｂ番目の結束位置において、主法線の方向に力がかかる。
・その力により、ハーネス束線の断面の形状は、主法線の方向の長さが短くなるとともに、従法線の方向の長さが長くなり、扁平化する。
【０１６６】
・ハーネス束線の断面内における、ハーネス束線に含まれる個々のワイヤの位置も、ハーネス束線の断面の扁平化に応じて移動する。
・主法線の方向の変化率と従法線の方向の変化率の積は１である。
【０１６７】
ここで、曲率κｂは０以上の数である。また、曲率κｂが０に近づくと（すなわちｂ番目の結束位置における線状ハーネスが直線に近づくと）、上下縮み率ζｂは１に近づく。このとき、左右伸び率ηｂも１に近づく。逆に、曲率κｂが無限大に近づくと（すなわちｂ番目の結束位置における線状ハーネスの湾曲が非常にきつくなると）、上下縮み率ζｂは０に近づき、左右伸び率ηｂは無限大に近づく。
【０１６８】
なお、上下縮み率ζｂの定義は、式（４４）でなくてもよい。０≦κｂの範囲で定義され、κｂ＝０のとき値が１となり、κｂが無限大に近づくとき値が０に近づく任意の単調減少関数を、上下縮み率ζｂの定義に用いることができる。
【０１６９】
続いて、コンピュータはステップＳ３１３において、上下縮み率ζｂが予め決められた閾値ζＴより小さいか否かを判断する。そして、ζｂ＜ζＴならば処理はステップＳ３１４に移行し、ζｂ≧ζＴならば処理はステップＳ３１５に移行する。
【０１７０】
ステップＳ３１４でコンピュータは、ｂ番目の結束位置における線状ハーネスの湾曲が予め決められた基準よりもきついことを警告する。換言すれば、上下縮み率ζｂと左右伸び率ηｂにより表される断面形状のアスペクト比が、基準よりも扁平なことを表しており、扁平化の度合いが基準を超えている場合に、警告が発せられる。警告は、例えば、コンピュータが備えるディスプレイへの文字、図形、画像の出力、またはコンピュータが備えるスピーカへの音声出力によりなされる。
【０１７１】
上記のとおりｂ番目の結束位置における線状ハーネスの湾曲がきつくなるほど、上下縮み率ζｂは小さくなる。設計者は、警告を受けることにより、装置の耐久性などから予め決められた基準よりもきつい湾曲が生じることを認識することができる。つまり、ステップＳ３１４における警告は、装置の設計を再検討した方が好ましいことを設計者に助言する役割がある。
【０１７２】
なお、上記「予め決められた基準」とは、第１実施形態では、具体的には閾値ζＴにより表されているが、換言すれば、「曲率κｂが所定の値（（１−ζＴ）／（ζＴＥ））より大きいか否か」という基準である。
【０１７３】
ステップＳ３１３でζｂ≧ζＴと判断した後、またはステップＳ３１４の実行後、コンピュータは、ステップＳ３１５においてｂ＜Ｋか否かを判断する。ｂ＜Ｋの場合は、未処理の他の結束位置が残っているので、処理はステップＳ３１６に移行し、ｂ≧Ｋの場合は、すべての結束位置について処理が完了したので、図７の処理全体も完了する。
【０１７４】
ステップＳ３１５でｂ＜Ｋの場合、ステップＳ３１６においてコンピュータは、変数ｂに１を足す。そして、処理はステップＳ３０４に戻る。
続いて、図１１を参照して図２のステップＳ４００の詳細について説明する。図１１は、変形を考慮した束線ハーネスの３次元モデルを生成して出力する処理を示すフローチャートである。
【０１７５】
ステップＳ４０１でコンピュータは、変数ａに１を代入する。続くステップＳ４０２〜Ｓ４１０は繰り返しループを形成している。
ステップＳ４０２においてコンピュータは、変数ｂに１を代入する。続くステップＳ４０３〜Ｓ４０７は繰り返しループを形成しており、ステップＳ４０３〜Ｓ４０５はｂ番目の結束位置におけるａ本目のワイヤに関する処理である。
【０１７６】
ステップＳ４０３でコンピュータは、ｂ番目の結束位置におけるａ本目のワイヤの非弾性断面レイアウト上の位置を計算する。なお、ｂ番目の結束位置における「非弾性断面レイアウト」とは、ｂ番目の結束位置におけるｕｂｖｂ平面上での、曲げによる扁平化を考慮しない断面レイアウトのことである。
【０１７７】
ここで、ステップＳ４０３における具体的な計算を説明する前に、図３のステップＳ１０６に関して説明を省略した、始点と終点における各ワイヤのｕｖ座標の計算方法について説明する。
【０１７８】
線状ハーネスの始点の位置を示す位置ベクトルｐＳは、始点におけるｔＳｕＳｖＳ座標系の原点の位置をｘｙｚ座標系で表している。よって、始点の断面レイアウトにおけるａ本目のワイヤのｕＳ座標とｖＳ座標の値をそれぞれαＳａ１およびαＳａ２とすると、式（４６）が成立する。
【０１７９】
【数３９】
2010231335.tif 000041
式（４６）において、ａ本目のワイヤの始点の位置を示す位置ベクトルｐＳａは既に図３のステップＳ１０４で得られている。よって、コンピュータは、式（４６）を解くことでｕＳ座標の値αＳａ１およびｖＳ座標の値αＳａ２を計算することができる。
【０１８０】
同様に、ａ本目のワイヤの終点の位置を示す位置ベクトルｐＥａは既にステップＳ１０４で得られている。よって、終点の断面レイアウトにおけるａ本目のワイヤのｕＥ座標とｖＥ座標の値をそれぞれαＥａ１およびαＥａ２とすると、式（４７）が成立する。したがって、コンピュータは式（４７）を解くことでｕＥ座標の値αＥａ１およびｖＥ座標の値αＥａ２を計算することができる。
【０１８１】
【数４０】
2010231335.tif 000042
以上のようにして計算済みのｕＳ座標の値αＳａ１、ｖＳ座標の値αＳａ２、ｕＥ座標の値αＥａ１、およびｖＥ座標の値αＥａ２を用いて、コンピュータは、ステップＳ４０３で、非弾性断面レイアウトにおけるａ本目のワイヤの位置を計算する。曲げによる扁平化の方向を考慮しない非弾性断面レイアウトにおける位置は、始点からの長さに応じた線形補間により求めることができる。すなわち、コンピュータは、式（４８）と（４９）によって、ｂ番目の結束位置におけるａ本目のワイヤの非弾性断面レイアウトでのｕｂ座標の値αｂａ１とｖｂ座標の値αｂａ２を計算する。
【０１８２】
【数４１】
2010231335.tif 000043
【０１８３】
【数４２】
2010231335.tif 000044
続いてステップＳ４０４でコンピュータは、断面レイアウト上の位置を表すための基底をベクトルｕｂとｖｂの組からベクトルｎｂとｍｂの組に取り替えて、ｂ番目の結束位置におけるａ本目のワイヤの非弾性断面レイアウト上の位置を表す係数を計算する。すなわち、コンピュータは、式（４１）の行列Ｆを用いて式（５０）にしたがって基底の取り替えを行うことで、係数αｂａ１とαｂａ２から係数βｂａ１とβｂａ２を計算する。
【０１８４】
【数４３】
2010231335.tif 000045
そしてステップＳ４０５でコンピュータは、計算した係数βｂａ１とβｂａ２、上下縮み率ζｂ、および左右伸び率ηｂを用いて、ａ本目のワイヤの位置および形状を扁平化する。なお、位置の扁平化とは次のような意味である。
【０１８５】
ハーネス束線全体として、ｂ番目の結束位置では主法線ベクトルｎｂの方向に力を受ける。よって、ハーネス束線全体の断面の形状も、主法線ベクトルｎｂの方向にζｂ倍になり（０＜ζｂ≦１）、従法線ベクトルｍｂの方向にηｂ倍になる（１≦ηｂ）と見なせる。
【０１８６】
ここで、ハーネス束線に含まれる個々のワイヤの位置は、ハーネス束線全体の断面形状の内部にあるので、ハーネス束線の断面の形状の扁平化にともなって個々のワイヤの位置も変化すると考えられる。
【０１８７】
具体的には、各ワイヤの位置は、主法線ベクトルｎｂの方向の係数が非弾性断面レイアウトにおける係数のζｂ倍で、従法線ベクトルｍｂの方向の係数が非弾性断面レイアウトにおける係数のηｂ倍であるような位置に変化すると考えられる。つまり、ｂ番目の結束位置におけるａ本目のワイヤの、扁平化を考慮に入れた位置は、式（５１）の位置ベクトルｐｂａにより表される。
【０１８８】
【数４４】
2010231335.tif 000046
そこで、コンピュータは、式（４３）の行列Ｆ−１を用いて基底をベクトルｎｂとｍｂの組からベクトルｕｂとｖｂの組に取り替えて、ｂ番目の結束位置におけるａ本目のワイヤの、扁平化を考慮に入れたｕｂ座標の値α’ｂａ１とｖｂ座標の値α’ｂａ２を計算する。すなわち、コンピュータは、式（５２）にしたがって行列Ｆ−１を用いて基底を取り替えることにより、係数（ζｂβｂａ１）と（ηｂβｂａ２）から係数α’ｂａ１とα’ｂａ２を計算する。
【０１８９】
【数４５】
2010231335.tif 000047
また、第１実施形態では、ａ本目のワイヤの断面形状は円であり、円の半径はｒａである。よって、扁平化によりａ本目のワイヤの断面形状は、ｂ番目の結束箇所において、短径が２ζｂｒａで長径が２ηｂｒａの楕円になると見なせる。なお、楕円の重心は、式（５１）の位置ベクトルｐｂａにより表される位置である。
【０１９０】
したがって、扁平化されたａ本目のワイヤの断面形状を示す楕円は、ベクトルｎｂとｍｂにより座標軸が規定されるｎｂｍｂ座標系においてｎｂ座標とｍｂ座標の値がそれぞれ式（５３）を満たすχ１とχ２となる点の集合である。
【０１９１】
【数４６】
2010231335.tif 000048
なお、ベクトルｎｂとｍｂは上記のとおり単位ベクトルとは限らないので、式（５３）はベクトルｎｂとｍｂの長さを含む形となっている。コンピュータは、基底の取り替えのための式（４１）の行列Ｆと式（５３）から、ｕｂｖｂ座標系におけるａ本目のワイヤの断面形状を表す楕円の方程式を得ることができる。
【０１９２】
以上のようにして、ステップＳ４０５で扁平化に応じて変化したａ本目のワイヤの位置と形状を求めると、次にステップＳ４０６において、コンピュータは、ｂ＜Ｋか否かを判断する。ｂ＜Ｋの場合、処理はステップＳ４０７に移行し、ｂ≧Ｋの場合、処理はステップＳ４０８に移行する。
【０１９３】
ステップＳ４０７でコンピュータは変数ｂに１を足し、処理はステップＳ４０３に戻る。
ステップＳ４０８でコンピュータは、太さを持たない曲線にモデル化してａ本目のワイヤの形状を計算する。ステップＳ４０８の具体的な計算方法は、図５と類似である。
【０１９４】
ここで、ａ本目のワイヤについて、始点と終点の位置は図３のステップＳ１０４で入力された位置ベクトルｐＳａとｐＥａによりそれぞれ表されている。また、線状ハーネスのＫ箇所の結束位置にそれぞれ対応する、ａ本目のワイヤのＫ箇所の通過点の位置は、ステップＳ４０５のＫ回の繰り返しにより、式（５１）の位置ベクトルｐｂａ（１≦ｂ≦Ｋ）として得られている。そこで、上記の既知の（２＋Ｋ）個の位置ベクトルを制約条件として用い、コンピュータは、図４のステップＳ２０４と同様の方法により、ａ本目のワイヤの形状を近似する折れ線を決定する。なお、ステップＳ４０８で折れ線の計算を行うための分割数は、線状ハーネスの形状を求めるための整数Ｊと同じでもよいし、整数Ｊと違っていてもよい。
【０１９５】
その後、ステップＳ４０９でコンピュータはａ＜Ｎか否かを判断し、ａ＜Ｎならば処理はステップＳ４１０に移行し、ａ≧Ｎならば処理はステップＳ４１１に移行する。
ステップＳ４１０でコンピュータは変数ａに１を足し、処理はステップＳ４０２に戻る。
【０１９６】
ステップＳ４０９でａ≧Ｎと判断すると、コンピュータはステップＳ４１１において、ハーネス束線の３次元モデルを生成し、出力する。ハーネス束線をどのように３次元モデル化するかは、実施形態によって任意である。
【０１９７】
例えば、コンピュータは、Ｎ本のワイヤそれぞれについて、始点と終点とＫ箇所の通過点における断面同士の間を適宜補間することで、始点から終点に至る全範囲で太さを持った３次元モデルを作成してもよい。あるいは、コンピュータは、始点、終点、およびＫ箇所の結束位置でのみ断面に関する情報を有し、それ以外の部分では太さを持たない折れ線で各ワイヤを表現する３次元モデルを採用し、出力してもよい。
【０１９８】
また、コンピュータは、各ワイヤを個別にモデル化しなくてもよい。例えば、コンピュータは、始点、終点、およびＫ箇所の結束位置の各々で、Ｎ本のワイヤの断面形状を包含する図形をハーネス束線の断面形状として求めてもよい。ハーネス束線の断面形状は、円、楕円、多角形など所定の形状で近似されてもよく、その他の任意の形状でもよい。コンピュータは、求めたハーネス束線の断面形状を用いて、断面同士の間を適宜補間することで、始点から終点に至る全範囲で太さを持った、ハーネス束線全体の３次元モデルを作成してもよい。または、コンピュータは、始点、終点、およびＫ箇所の結束位置でのみ断面に関する情報を有し、それ以外の部分では線状ハーネスの折れ線によりハーネス束線を表現する３次元モデルを採用し、出力してもよい。
【０１９９】
以上により図１１の処理は終了する。出力された３次元モデルは、例えば、周知の干渉チェックシステムに入力され、ハーネス束線または個々のワイヤが他の部品と干渉しないか否かの検証に用いられてもよい。例えば、干渉チェックシステムは、複数の機械部品間の隙間をハーネス束線が通過することが可能であるか否かといったチェックを行うことができる。
【０２００】
また、コンピュータは、他の部品の３次元モデルとともに、図１１の処理により生成したハーネス束線または個々のワイヤの３次元モデルを、画面に表示してもよい。ハーネス束線により充填される空間の検証など、任意の用途に３次元モデルを利用することができる。
【０２０１】
第１実施形態によれば、ハーネス束線の経路の３次元形状に応じて生じる、ハーネス束線または個々のワイヤの、断面における変化が考慮された情報が得られ、３次元モデルの生成に使われる。よって、第１実施形態によれば、干渉チェックシステムなどによる形状のシミュレーションの精度が向上する。そのため、ハーネス束線の配線を含めた装置の設計も効率化し、試作機の製造前に行う設計の妥当性についての検証結果の信頼性も向上する。
【０２０２】
なお、上記の「断面における変化」は、間接的にはｂ番目の結束位置での接ベクトルｔｂに基づいている。また、「断面における変化」とは、図１１のステップＳ４０５で説明した位置および形状の扁平化だけではなく、行列Ｍｂにより表される、ｔＳｕＳｖＳ座標系からｔｂｕｂｖｂ座標系への変化や、行列Ａｂにより表される、ねじれ角ｂに応じた変化も含む。
【０２０３】
図１２はコンピュータの構成図である。上記で説明した処理は、例えば図１２のコンピュータ２００がプログラムにしたがって実行することができる。
コンピュータ２００は、例えば、ＣＰＵ（Central Processing Unit）２０１、ＲＯＭ（Read Only Memory）２０２等の不揮発性メモリ、ワークエリア用のＲＡＭ（Random Access Memory）２０３等のメモリを備える。コンピュータ２００は、さらに、ネットワーク２０５を介して情報提供者２０６などと通信を行うためのインタフェイス２０４を備えていてもよい。情報提供者２０６は、例えば他のコンピュータである。また、コンピュータ２００は、ＨＤＤ（Hard Disk Drive）等の記憶装置２０７、可搬型記憶媒体２０９のためのディスクドライブ２０８、および入出力装置２１０を備える。
【０２０４】
設計者からの入力や設計者への出力は、入出力装置２１０を介して行われる。あるいは、不図示の他のコンピュータとのデータ入出力が、インタフェイス２０４およびネットワーク２０５を介して行われてもよい。入出力装置２１０の例は、キーボード、マウス等の入力装置や、ディスプレイスクリーン、プリンタ等の出力装置である。ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、インタフェイス２０４、記憶装置２０７、ディスクドライブ２０８、および入出力装置２１０は、バス２１１で互いに接続されている。
【０２０５】
上記で説明した処理をコンピュータ２００に行わせるためのプログラムは、例えば、記憶装置２０７に格納され、ＲＡＭ２０３に読み込まれ、ＣＰＵ２０１によって実行されてもよい。あるいは、上記プログラムは、可搬型記憶媒体２０９に格納され、ディスクドライブ２０８を介して読み取られ、ＲＡＭ２０３に展開され、ＣＰＵ２０１により実行されてもよい。可搬型記憶媒体２０９の例は、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Compact Disc Recordable）、ＤＶＤ（Digital Versatile Disc）、光磁気ディスク、磁気ディスク、半導体メモリカード等である。また、上記プログラムは、情報提供者２０６からネットワーク２０５とインタフェイス２０４を介してコンピュータ２００にダウンロードされてもよい。
【０２０６】
プログラムを実行するＣＰＵ２０１は、上記の経路計算手段および後述の情報生成手段として機能する。また、入出力装置２１０とＣＰＵ２０１は、協働して、上記の入力手段として機能する。
【０２０７】
ところで、上記第１実施形態では、ハーネス束線の３次元モデルを精密化するための様々な処理が行われるが、下記の第２および第３実施形態のように一部の処理を省略することもできる。以下、第１実施形態との違いについて主に説明する。
【０２０８】
第２実施形態は、扁平化を考慮しない実施形態である。第２実施形態は、扁平化の影響がわずかであって、無視しても実用上問題がない場合などに好適である。
すなわち、第２実施形態では、扁平化に関する図７のステップＳ３１０〜Ｓ３１４および図１１のステップＳ４０４〜Ｓ４０５が省略される。第２実施形態では、扁平化の影響は考慮されないが、ねじれの影響はねじれ角θｂの利用を介して考慮されるので、例えば始点でのコネクタの向きと終点でのコネクタの向きからねじれが生じてしまう場合などにも精密なモデル化が可能であるという利点がある。
【０２０９】
第３実施形態は、ねじれ角θｂを考慮せず、曲率κｂに応じた扁平化も考慮しない実施形態である。第３実施形態は、ねじれ角θｂや扁平化の影響がわずかであって、無視しても実用上問題がない場合などに好適である。
【０２１０】
すなわち、第３実施形態では、図７のステップＳ３０１、Ｓ３０２およびＳ３０６〜Ｓ３０８が省略される。また、ステップＳ３０９は、次の式（５４）と（５５）による計算に置き換えられる。
【０２１１】
【数４７】
2010231335.tif 000049
【０２１２】
【数４８】
2010231335.tif 000050
ねじれ角θｂを考慮して補正された行列Ｂｂの代わりに、第３実施形態のステップＳ３０９では、補正されていない行列Ｍｂが用いられる。また、第３実施形態では、扁平化に関するステップＳ３１０〜Ｓ３１４が省略される。そして、図１１の処理では、ステップＳ４０４〜Ｓ４０５が省略される。
【０２１３】
第３実施形態では以上のように簡略化された処理が行われるが、第３実施形態においても、行列Ｍｂを用いて各結束位置における断面レイアウト（より正確には非弾性断面レイアウト）上の各ワイヤの位置を計算することによる効果が得られる。例えば、断面レイアウト上で複数のワイヤが非等方的に配置されるハーネス束線においては、行列Ｍｂによる変換を利用することは、３次元モデルの精密化に有効である。
【０２１４】
以上の第１〜第３実施形態に関して、まとめて図７と図１１に相当する処理を概観すれば次のとおりである。
図７の処理は、ステップＳ３０４に示すように、経路パラメータに基づいてハーネス束線の経路上の中間点における経路の向きを表す第３の接ベクトルを計算することを含む。より具体的には、第１〜第３実施形態において、経路パラメータは図５のステップＳ２０４で計算された各質点の位置であり、中間点はＫ個の結束位置のそれぞれであり、第３の接ベクトルはベクトルｔｂである。
【０２１５】
また、図２のステップＳ３００とＳ４００に相当する図７と図１１の処理は、第３の接ベクトルに垂直であり上記中間点としての結束位置を通る第３の平面による、ハーネス束線の第３の断面を表す第３の情報を生成する情報生成ステップの一例である。コンピュータは、ステップＳ３００とＳ４００において、第３の情報を生成する情報生成手段として機能する。
【０２１６】
なお、第３の情報は、図４に関して説明した第１の情報（例えばベクトルｕＳとｖＳそれぞれのｘｙｚ成分）および第２の情報（例えばベクトルｕＥとｖＥそれぞれのｘｙｚ成分）、ならびに第３の接ベクトル（例えばベクトルｔｂ）に基づいて生成される。
【０２１７】
第３の情報の内容と生成方法に関しての、第１〜第３実施形態での共通点および相違点についてまとめれば下記のとおりである。
第１〜第３実施形態では、第１と第３の接ベクトル（ベクトルｔＳとｔｂ）が張る平面上での回転により第１の接ベクトルを第３の接ベクトルに変換する第１の変換行列（行列Ｍｂ）を計算する、図７のステップＳ３０５が共通している。また、第３の平面上に２本の座標軸（ｕｂ軸とｖｂ軸）を有する第３のローカル座標系（ｕｂｖｂ座標系）とワールド座標系（ｘｙｚ座標系）との関係を示す第３の座標系情報として、ベクトルｕｂとｖｂそれぞれのｘｙｚ成分が計算されるのも、第１〜第３実施形態で共通している。また、第３の座標系情報は、第１の変換行列（行列Ｍｂ）を用いて、第１の座標系情報（ベクトルｕＳとｖＳそれぞれのｘｙｚ成分）から計算されるという点も共通である。
【０２１８】
ただし、第３実施形態では、式（５４）と（５５）に示すように、第３の座標系情報が第１の変換行列と第１の座標系情報だけから生成されるのに対し、第１〜第２実施形態では、第３の座標系情報の生成に他の情報も用いられる。
【０２１９】
具体的には、第１〜第２実施形態では、図７のステップＳ３０１に示すとおり、第１と第２の接ベクトル（ベクトルｔＳとｔＥ）が張る平面上での回転により、第１の接ベクトルを第２の接ベクトルに変換する、第２の変換行列（行列ＭＥ）が計算される。
【０２２０】
そして、第１〜第２実施形態では、第２の変換行列を用いた変換により、上記第２の座標系情報として上記第１の座標系情報から推測される情報と実際の第２の座標系情報との相違が、第２のローカル座標系の座標軸の第１のねじれ角として計算される。具体的には、ステップＳ３０２に示すとおり、ベクトルｕＳを行列ＭＥで変換して得られるｘｙｚ空間上の３次元ベクトルと、実際のベクトルｕＥとの相違が、ねじれ角θＥとして計算される。
【０２２１】
こうして計算されたねじれ角θＥを用いることで、第１〜第２実施形態では、第３の座標系情報の生成において、第１の変換行列（行列ＭＥ）による変換の補正（すなわち行列Ａｂによる補正）が行われる。具体的には、始点から中間点までの経路の長さ（すなわちＬｂ）に応じて補間を行うことで、第２のねじれ角（ねじれ角θｂ）が計算される。そして、第３の接ベクトル（つまりベクトルｔｂ）を回転軸とする第２のねじれ角の回転を表す変換（行列Ａｂによる変換）による補正が行われる。よって、第１〜第２実施形態では、補正の結果として、第３の座標系情報が得られる。
【０２２２】
上記のように、補正の有無の違いはあるが、第１〜第３実施形態では、第３の座標系情報として、ベクトルｕｂとｖｂそれぞれのｘｙｚ成分が計算される点は共通である。
さらに、第３のローカル座標系により表される、個々のワイヤが上記第３の平面と交わるそれぞれの交点の座標の値が計算される点も第１〜第３実施形態に共通である。
【０２２３】
この座標の値の計算においては、図１１のステップＳ４０３に示すように、上記第１と第２の情報を用いて、始点から中間点（具体的にはｂ番目の結束位置）までの経路上の長さ（すなわちＬｂ）に応じた補間が行われる。
【０２２４】
なお、第２〜第３実施形態では、個々のワイヤと第３の平面（例えばｂ番目の結束位置を原点とするローカル座標系におけるｕｂｖｂ平面）との交点の座標の値として、図１１のステップＳ４０３で計算される値αｂａ１とαｂａ２が得られる。そして、上記第３の情報には、第３の座標系情報と座標の値αｂａ１とαｂａ２が含まれる。
【０２２５】
それに対し、第１実施形態では、上記第３の情報には、第３の座標系情報と、図１１のステップＳ４０４とＳ４０５によって補正された座標の値α’ｂａ１とα’ｂａ２が含まれる。
【０２２６】
座標の値の補正のため、第１実施形態では、図７のステップＳ３１０とＳ３１１に示すように、コンピュータが、経路の中間点（具体的にはｂ番目の結束位置）における曲率、主法線の方向、および従法線の方向を計算する。そして、図１１のステップＳ４０４とＳ４０５に示すように、コンピュータは、Ｎ本のワイヤそれぞれの第３の平面との交点の座標の値αｂａ１とαｂａ２の分布を、曲率に応じて主法線の方向に圧縮するとともに曲率に応じて従法線の方向に拡散させる。
【０２２７】
この圧縮と拡散は、第１実施形態では、具体的には、基底の取り替え、上下縮み率ζｂを用いた乗算、左右伸び率ηｂを用いた乗算、および再度の基底の取り替えにより実現されている。圧縮と拡散の結果、各交点の座標の値はα’ｂａ１とα’ｂａ２に補正される。
【０２２８】
また、第１実施形態では、各ワイヤの断面形状を表す形状パラメータの一例として、円の半径ｒａが図３のステップＳ１０３で入力される。そして、図１１のステップＳ４０５に示すように、コンピュータは、形状パラメータと曲率に基づいて、各ワイヤの上記第３の平面における断面形状を、主法線の方向に縮小するとともに従法線の方向に拡大する補正を行う。その結果、例えば円は楕円に変形される。そして、第１実施形態では、上記第３の情報が、さらに、各ワイヤの第３の平面における補正された断面形状を表す情報（例えば楕円の方程式）を含んでいる。
【０２２９】
また、第１〜第３実施形態のいずれにおいても、図１１のステップＳ４１１における具体的な３次元モデルの形式は特に限定されない。
一例として、図１１のステップＳ４０８に示すように、コンピュータが、Ｎ本のワイヤそれぞれの経路の３次元形状を表す第２の経路パラメータとして、折れ線を構成する線分の端点の位置を計算してもよい。第２の経路パラメータの計算は、上記第３の情報に基づいて行われ、具体的には、ベクトルｕｂとｖｂそれぞれのｘｙｚ成分およびｕｂｖｂ座標の値が計算に用いられる。なお、ｕｂｖｂ座標の値としては、上記のとおり、第１実施形態では補正された値が用いられ、第２〜第３実施形態では補正されていない値が用いられる。
【０２３０】
そして、コンピュータは、図１１のステップＳ４１１において、第２の経路パラメータに基づいて、Ｎ本のワイヤそれぞれの経路を包含する３次元形状を、ハーネス束線の形状として計算してもよい。
【０２３１】
または、第１実施形態では、コンピュータが、Ｎ本のワイヤそれぞれの上記第３の平面における補正された交点の座標の値の分布（例えば１≦ａ≦Ｎとして値α’ｂａ１とα’ｂａ２の分布）に基づいて、ハーネス束線の第３の平面による断面の形状を計算してもよい。
【０２３２】
なお、本発明は上記の第１〜第３実施形態に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べる。
第１実施形態において、特に警告の必要がなければ図７のステップＳ３１３とＳ３１４を省略してもよい。また、図１１のステップＳ４０５において、扁平化により変化したａ本目のワイヤの位置のみを計算し、断面形状の扁平化に関する処理を省略することもできる。例えば、「ａ本目のワイヤの断面は場所によらず一定の半径ｒａの円である」という仮定を採用する実施形態では、ステップＳ４１１で出力する３次元モデルが、折れ線と半径ｒａを表す情報によりａ本目のワイヤを表す形式でもよい。この場合、ステップＳ４０５において断面形状の扁平化に関する処理を省略することができる。
【０２３３】
また、上記では各ワイヤの元の断面形状を円と仮定しているが、楕円や多角形など、円以外の断面形状でもよい。また、各ワイヤの断面形状が円の場合でも、始点と終点においては、例えばワイヤの先端のコネクタの形状によって定義される方向性を持つ場合もある。その場合、例えば図４の断面レイアウト１３１や１３２の指定のためのＧＵＩとして、コンピュータは、ディスプレイ上にワイヤ１２１〜１２３をそれぞれ表す円とともにそれぞれの円の方向性を示すマーカを表示してもよい。
【０２３４】
また、ハーネス束線に含まれるワイヤの本数Ｎは、複数でもよいが１でもよい。なお、Ｎ＝１の場合は、ワイヤの始点を示す位置ベクトルｐＳ１が線状ハーネスの始点を示す位置ベクトルｐＳと等しく、ワイヤの終点を示す位置ベクトルｐＥ１が線状ハーネスの終点を示す位置ベクトルｐＥと等しいことは明らかである。よって図５のステップＳ２０１とＳ２０２は省略することができる。
【０２３５】
ただし、Ｎ＝１の場合でも、ステップＳ１０６で入力される断面レイアウトは、ワイヤが持つ方向性と、ｕ軸およびｖ軸との関係を示す意味を持っている。
また、Ｎ＝１の場合、唯一のワイヤの中心は、始点、終点、およびＫ箇所の結束位置のいずれにおいても、ｔｕｖ座標系の原点であり、ｘｙｚ座標系による位置ベクトルｐｂで表される位置にある。つまり、位置ベクトルｐｂ１は位置ベクトルｐｂに等しい。したがって、位置ベクトルｐｂ１を計算するための図１１のステップＳ４０３とＳ４０５の処理は省略することができる。同じ理由から、唯一のワイヤを、太さを持たない曲線としてモデル化し、折れ線で曲線を近似すると、線状ハーネスの形状と一致するので、図１１のステップＳ４０８は省略することができる。
【０２３６】
ただし、Ｎ＝１の場合であっても、ステップＳ４０５の処理のうち断面形状を扁平化する処理を行うことで、第１実施形態による利益を享受することができる。すなわち、扁平化された断面形状を利用した３次元モデルをコンピュータが出力することで、従来よりも精密な干渉チェックが可能となる。
【０２３７】
逆に、Ｎ＞１のとき、ステップＳ４０５のうち、形状の扁平化のみを行って位置の扁平化を行わない実施形態も可能である。その場合も、個々のワイヤの断面形状の歪みが、ステップＳ４１１で出力される３次元モデルに反映されるので、シミュレーションの精度が向上する。
【０２３８】
また、図５のステップＳ２０４に関する「長さＬｂ（１≦ｂ≦Ｋ）はいずれも長さΔＬの整数倍である」という仮定が成立しない場合もありうる。例えば、ハーネス束線の任意の位置を結束位置として指定することを許す実施形態が考えられる。
【０２３９】
その場合、ステップＳ２０４でコンピュータは、ｂ番目の結束位置から（ｂ＋１）番目の結束位置までの間に対して適切な正整数Ｊｂを選んで線状ハーネスをＪｂ等分してもよい。なお、ここで０≦ｂ≦Ｋとし、便宜的に「０番目の結束位置」とは始点のことであり、「（Ｋ＋１）番目の結束位置」とは終点のことであるとする。また、正整数Ｊｂは、ｂによって（Ｌｂ＋１−Ｌｂ）／Ｊｂが大きく変化しないように適切に選ばれるものとする。
【０２４０】
この場合、式（１１）において定数ΔＬとＷはｃによって異なる値を取りうるが、正整数Ｊｂから決定することができる。よって、「長さＬｂ（１≦ｂ≦Ｋ）はいずれも長さΔＬの整数倍である」という仮定が成立しなくても、コンピュータは、式（１１）を適宜変更したうえで連立方程式（１３）を上記と同様に解くことができる。
【０２４１】
ところで、第１実施形態では、図３のステップＳ１０７でＫの値が入力され、ステップＳ１０８でＫ箇所の結束位置が指定される。ここで、Ｋの値およびＫ箇所の結束位置は、例えば装置の設計者によって任意に指定されてもよいが、コンピュータによって、例えばシミュレーションの結果に基づいて指定されてもよい。例えば、前述の特願２００７−３０８０８４号には、実施形態に応じた様々な拘束条件に基づいて適切な結束位置をコンピュータが決定する方法が記載されている。
【０２４２】
また、図５のステップＳ２０４では、線状ハーネスの形状を折れ線で近似する方法の代わりに、２次曲線などの曲線で線状ハーネスの形状を表す方法を採用してもよい。
また、図１１のステップＳ４０３〜Ｓ４０５は、Ｋ箇所の結束位置に対してのみ行われるが、コンピュータは、ステップＳ４１１で出力するモデルをより精密化するために、結束位置以外に対してもステップＳ４０３〜ステップＳ４０５の処理を行ってもよい。例えば、コンピュータは、線状ハーネスの折れ線を求めるのに用いた（Ｊ−１）個の質点のそれぞれに対して、ステップＳ４０３〜Ｓ４０５の処理を行い、ステップＳ４１１でのモデルの生成に処理結果を利用してもよい。
【０２４３】
最後に、さらに下記の付記を開示する。
（付記１）
コンピュータに、１本以上の線状可撓性部材を含む束線を含む装置の設計支援を行わせる設計支援プログラムであって、
前記束線の始点と終点の位置に基づいて、前記始点と前記終点を結ぶ経路の３次元形状を表す経路パラメータを計算する経路計算ステップと、
前記束線の前記始点における前記経路の向きを表す第１の接ベクトルに垂直であり前記束線の前記始点を通る第１の平面による、前記束線の第１の断面を表す第１の情報の入力と、前記終点における前記経路の向きを表す第２の接ベクトルに垂直であり前記束線の前記終点を通る第２の平面による、前記束線の第２の断面を表す第２の情報の入力を受け付ける入力ステップと、
前記経路パラメータに基づいて、前記経路上の中間点における前記経路の向きを表す第３の接ベクトルを計算し、前記第１の情報と前記第２の情報と前記第３の接ベクトルに基づいて、前記第３の接ベクトルに垂直であり前記中間点を通る第３の平面による、前記束線の第３の断面を表す第３の情報を生成する情報生成ステップと、
を前記コンピュータに実行させることを特徴とする設計支援プログラム。
（付記２）
前記第１の情報は、前記第１の平面上に２本の座標軸を有する第１のローカル座標系とワールド座標系との関係を示す第１の座標系情報を含み、
前記第２の情報は、前記第２の平面上に２本の座標軸を有する第２のローカル座標系と前記ワールド座標系との関係を示す第２の座標系情報を含む、
ことを特徴とする付記１に記載の設計支援プログラム。
（付記３）
前記情報生成ステップは、
前記第１の接ベクトルと前記第３の接ベクトルが張る平面上での回転により、前記第１の接ベクトルを前記第３の接ベクトルに変換する、第１の変換行列を計算する第１の行列計算ステップと、
前記第３の平面上に２本の座標軸を有する第３のローカル座標系と前記ワールド座標系との関係を示す第３の座標系情報を、前記第１の変換行列を用いて、前記第１の座標系情報から生成する座標系情報生成ステップと、
前記第１の情報と前記第２の情報を用いて、前記始点から前記中間点までの前記経路の長さに応じて補間を行うことで、前記第３のローカル座標系により表される、前記１本以上の線状可撓性部材それぞれが前記第３の平面と交わるそれぞれの交点の座標の値を計算する交点計算ステップを含み、
前記第３の情報は、前記交点それぞれの前記座標の前記値と、前記第３の座標系情報を含む、
ことを特徴とする付記２に記載の設計支援プログラム。
（付記４）
前記情報生成ステップはさらに、
前記第１の接ベクトルと前記第２の接ベクトルが張る平面上での回転により、前記第１の接ベクトルを前記第２の接ベクトルに変換する、第２の変換行列を計算する第２の行列計算ステップと、
前記第２の変換行列を用いた変換により、前記第２の座標系情報として前記第１の座標系情報から推測される情報と、実際の前記第２の座標系情報との相違を、前記第２のローカル座標系の前記座標軸の第１のねじれ角として計算するねじれ角計算ステップとを含み、
前記座標系情報生成ステップは、
前記第１のねじれ角を用いて、前記始点から前記中間点までの前記経路の前記長さに応じて補間を行うことで、第２のねじれ角を計算し、前記第３の接ベクトルを回転軸とする前記第２のねじれ角の回転を表す変換によって前記第１の変換行列による変換を補正する変換補正ステップを含む、
ことを特徴とする付記３に記載の設計支援プログラム。
（付記５）
前記経路パラメータに基づいて、前記経路の前記中間点における、主法線の方向、従法線の方向および曲率を計算する法線・曲率計算ステップと、
前記１本以上の線状可撓性部材それぞれの前記第３の平面との前記交点の前記座標の前記値の分布を、前記曲率に応じて前記主法線の方向に圧縮するとともに、前記曲率に応じて前記従法線の方向に拡散させることで、前記交点それぞれの前記座標の前記値を補正する座標補正ステップと、
をさらに前記コンピュータに実行させることを特徴とする付記４に記載の設計支援プログラム。
（付記６）
前記設計支援プログラムは、
前記１本以上の線状可撓性部材それぞれの断面形状を表す形状パラメータの入力を受け取る形状入力ステップと、
前記形状パラメータと前記曲率に基づいて、前記１本以上の線状可撓性部材それぞれの前記第３の平面における断面形状を、前記主法線の方向に縮小するとともに前記従法線の方向に拡大する補正を行う形状補正ステップを、さらに前記コンピュータに実行させ、
前記第３の情報は、
前記１本以上の線状可撓性部材それぞれの前記第３の平面における補正された前記断面形状を表す情報を含む、
ことを特徴とする付記５に記載の設計支援プログラム。
（付記７）
前記形状パラメータは円の半径であり、
前記形状補正ステップは、前記円を、前記主法線の方向の短軸を有する楕円に変形することを含む、
ことを特徴とする付記６に記載の設計支援プログラム。
（付記８）
前記束線は、複数の前記線状可撓性部材を含み、
前記設計支援プログラムは、前記複数の線状可撓性部材それぞれの前記第３の平面における補正された前記交点の前記座標の前記値の分布に基づいて、前記束線の前記第３の平面による断面の形状を計算する束線断面計算ステップをさらに前記コンピュータに実行させる、
ことを特徴とする付記５から７のいずれか１項に記載の設計支援プログラム。
（付記９）
前記曲率が指定された基準よりも大きい場合に警告を発する警告ステップをさらに前記コンピュータに実行させることを特徴とする付記５から８のいずれか１項に記載の設計支援プログラム。
（付記１０）
前記始点と前記終点の間にある、前記経路上の複数の中間点について、それぞれ前記コンピュータに前記情報生成ステップを実行させることを特徴とする付記１から９のいずれか１項に記載の設計支援プログラム。
（付記１１）
前記経路の前記形状は複数の線分の集合により表され、
前記経路パラメータは、各線分の端点の位置を示す情報である、
ことを特徴とする付記１から１０のいずれか１項に記載の設計支援プログラム。
（付記１２）
前記束線は、複数の前記線状可撓性部材を含み、
前記設計支援プログラムは、
前記中間点について生成された前記第３の情報に基づいて、前記複数の線状可撓性部材それぞれの経路の３次元形状を表す第２の経路パラメータを計算する第２の経路計算ステップと、
前記第２の経路パラメータに基づいて、前記複数の線状可撓性部材それぞれの前記経路を包含する３次元形状を、前記束線の形状として計算する束線形状計算ステップを、さらに前記コンピュータに実行させる、
ことを特徴とする付記１から付記１１のいずれか１項に記載のプログラム。
（付記１３）
コンピュータが、１本以上の線状可撓性部材を含む束線を含む装置の設計支援を行う設計支援方法であって、
前記束線の始点と終点の位置に基づいて、前記始点と前記終点を結ぶ経路の３次元形状を表す経路パラメータを計算し、
前記束線の前記始点を通り前記束線の前記始点における前記経路の向きに垂直な第１の平面による、前記束線の第１の断面を表す第１の情報の入力と、前記束線の前記終点を通り前記終点における前記経路の向きに垂直な第２の平面による、前記束線の第２の断面を表す第２の情報の入力を受け付け、
前記経路パラメータに基づいて、前記経路上の中間点における前記経路の向きを表す接ベクトルを計算し、前記第１の情報と前記第２の情報と前記接ベクトルに基づいて、前記接ベクトルに垂直であり前記中間点を通る第３の平面による、前記束線の第３の断面を表す第３の情報を生成する、
ことを特徴とする設計支援方法。
（付記１４）
１本以上の線状可撓性部材を含む束線を含む装置の設計支援を行う設計支援装置であって、
前記束線の始点と終点の位置に基づいて、前記始点と前記終点を結ぶ経路の３次元形状を表す経路パラメータを計算する経路計算手段と、
前記束線の前記始点を通り前記束線の前記始点における前記経路の向きに垂直な第１の平面による、前記束線の第１の断面を表す第１の情報の入力と、前記束線の前記終点を通り前記終点における前記経路の向きに垂直な第２の平面による、前記束線の第２の断面を表す第２の情報の入力を受け付ける入力手段と、
前記経路計算手段が計算した前記経路パラメータに基づいて、前記経路上の中間点における前記経路の向きを表す接ベクトルを計算し、前記入力手段が受け付けた前記第１の情報および前記第２の情報ならびに前記接ベクトルに基づいて、前記接ベクトルに垂直であり前記中間点を通る第３の平面による、前記束線の第３の断面を表す第３の情報を生成する情報生成手段と、
を備えることを特徴とする設計支援装置。
【符号の説明】
【０２４４】
１００  装置
１０１  支持部材
１０２、１０３  部品
１０４、１２０  ハーネス束線
１０５〜１０７  クランプ
１０８〜１１０、１２１〜１２３  ワイヤ
１３１〜１３３  断面レイアウト
１４１  角ψの２等分線
１４２  矢印
２００  コンピュータ
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  インタフェイス
２０５  ネットワーク
２０６  情報提供者
２０７  記憶装置
２０８  ディスクドライブ
２０９  可搬型記憶媒体
２１０  入出力装置
２１１  バス
【図１Ｂ】
2010231335.tif 000051
【図１Ｃ】
2010231335.tif 000052
【図１Ｄ】
2010231335.tif 000053
【図２】
2010231335.tif 000054
【図３】
2010231335.tif 000055
【図４】
2010231335.tif 000056
【図５】
2010231335.tif 000057
【図６】
2010231335.tif 000058
【図７】
2010231335.tif 000059
【図８】
2010231335.tif 000060
【図９】
2010231335.tif 000061
【図１０】
2010231335.tif 000062
【図１１】
2010231335.tif 000063
【図１２】
2010231335.tif 000064
【図１Ａ】
2010231335.tif 000065