(57)【要約】【課題】各部品の形状が簡略化された投影図を簡易に作成すること。【解決手段】作成プログラム３３０ａは、コンピュータ３００に、３次元のモデルに含まれる部品の部品単位の情報に基づき、部品単位で、投影方向に、部品の投影を行う処理を実行させる。また、作成プログラム３３０ａは、コンピュータ３００に、部品単位で投影された投影図より輪郭を抽出する処理を実行させる。また、作成プログラム３３０ａは、コンピュータ３００に、輪郭が抽出された投影図に基づき、投影方向の部品の位置関係が規定された３次元のモデルを作成する処理を実行させる。また、作成プログラム３３０ａは、コンピュータ３００に、作成された３次元のモデルを２次元に投影することで、投影図を作成する処理を実行させる。【選択図】図２９
2014130538.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
３次元のモデルに含まれる部品の部品単位の情報に基づき、前記部品単位で、投影方向に、前記部品の投影を行い、
前記部品単位で投影された投影図より輪郭を抽出し、
輪郭が抽出された投影図に基づき、前記投影方向の前記部品の位置関係が規定された３次元のモデルを作成し、
作成された３次元のモデルを２次元に投影することで、投影図を作成する
各処理を実行させることを特徴とする作成プログラム。
【請求項２】
前記３次元のモデルを作成する処理は、前記部品の形状が所定の面として規定された前記３次元のモデルを作成することを特徴とする請求項１に記載の作成プログラム。
【請求項３】
前記輪郭を抽出する処理は、
前記投影図を表す２次元のモデルに基づいて、前記投影図に含まれる部品を構成する複数の線分の中から所定の線分を選択し、
選択した所定の線分の一端に対して一端が接続された線分のうち、前記投影図上での第１の回転方向における前記所定の線分との成す角が最も小さい第１の線分を選択し、
前記所定の線分に他端が接続された線分が選択されるまで、前記第１の線分及び第２の線分のいずれかが選択されるたびに、選択された線分の他端に対して一端が接続された線分のうち、前記投影図上での前記第１の回転方向における選択された線分との成す角が最も小さい線分を前記第２の線分として選択することを繰り返し、
前記所定の線分と前記第１の線分と前記第２の線分とを接続した第１の外形を算出し、
前記所定の線分の前記一端に対して一端が接続された線分のうち、前記投影図上での前記第１の回転方向と逆方向である第２の回転方向における前記所定の線分との成す角が最も小さい第３の線分を選択し、
前記所定の線分に他端が接続された線分が選択されるまで、前記第３の線分及び第４の線分のいずれかが選択されるたびに、選択された線分の他端に対して一端が接続された線分のうち、前記投影図上での前記第２の回転方向における選択された線分との成す角が最も小さい線分を前記第４の線分として選択することを繰り返し、
前記所定の線分と前記第３の線分と前記第４の線分とを接続した第２の外形を算出し、
前記第１の外形及び前記第２の外形のうち、全長が長いほうの外形を前記２次元のモデルの外形として決定する
ことを特徴とする請求項１または２に記載の作成プログラム。
【請求項４】
コンピュータが、
３次元のモデルに含まれる部品の部品単位の情報に基づき、前記部品単位で、投影方向に、前記部品の投影を行い、
前記部品単位で投影された投影図より輪郭を抽出し、
輪郭が抽出された投影図に基づき、前記投影方向の前記部品の位置関係が規定された３次元のモデルを作成し、
作成された３次元のモデルを２次元に投影することで、投影図を作成する
各処理を実行することを特徴とする作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、作成プログラムおよび作成方法に関する。
【背景技術】
【０００２】
仮想の３次元座標空間に、立体形状の３次元モデルを定義する３次元Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ（ＣＡＤ）がある。３次元ＣＡＤは、３次元モデルを平面に投影して２次元の図面（投影図）を作成することができる。３次元ＣＡＤは、３次元モデルの形状を平面に投影して２次元の図面を作成する。図３０は、浴室を示す３次元モデル９０が平面に投影されて作成された上面図及び正面図の一例を示す図である。図３０の例に示すように、上面図９１には、へこみ部分が複数並んだ浴室の浴槽の形状９３や複数の溝が格子状に形成された浴室の床の形状９４などが描画される。また、図３０の例に示すように、正面図９２には、浴室の台の詳細な形状９５や石けん受けの詳細な形状９６などが描画される。
【０００３】
ところで、３次元ＣＡＤにより生成された２次元の図面をカタログなどに載せる場合がある。この場合、２次元の図面に対して、３次元ＣＡＤの機能を利用してユーザが、モデルの各部品の輪郭を示す線を残しつつ、モデルを構成する各部品の輪郭以外の詳細な形状を示す線を削除する修正を行う。図３１は、ユーザによって修正された２次元の図面の一例を示す図である。例えば、図３０の例に示す上面図９１の場合では、浴槽のへこみ部分が複数並んだ形状９３を表す線や、複数の溝が格子状に形成された床の形状９４を表す線をユーザが削除する。また、図３０の例に示す正面図９２の場合では、浴室の台の詳細な形状９５や石けん受けの詳細な形状９６を表す線をユーザが削除する。すると、上面図９１及び正面図９２が図３１の上面図９７及び正面図９８のような簡易な図面に修正される。
【０００４】
ユーザが各部品の輪郭以外の詳細な形状を示す線を削除する理由の一例について説明する。例えば、かかる理由としては、２次元の図面には、部品の詳細な形状を表す多くの線が含まれるため、２次元の図面をそのままカタログに載せてしまうと、カタログに載せられた図面が多くの線のため見づらくなるという理由が挙げられる。また、他の理由としては、次のような理由が挙げられる。例えば、２次元の図面には、部品の形状やレイアウトなどの各種のノウハウが含まれている場合があり、ノウハウを含む２次元の図面をカタログに載せてしまうと、ノウハウが漏れてしまうという理由が挙げられる。また、２次元の図面には、上述したように多くの線が含まれるので、かかる２次元の図面のデータのサイズが大きくなるという理由も挙げられる。
【０００５】
また、３次元グラフィックモデルから、２次元空間における描画領域と非描領域との境界線である外形線を抽出する技術がある。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１２２９９８号公報
【特許文献２】特開２００７−１７９４４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上述した３次元ＣＡＤによって作成された図面の線のうち、どの線が部品の輪郭に対応したものであるのかを把握することは、ユーザにとって困難である。また、部品同士が重なっている場合には、投影方向における部品の位置関係が分からないと、部品の輪郭を示す線であっても、投影方向からは陰になって見えない部分の線を消去するような隠線処理を行うことが困難である。そのため、上述した３次元ＣＡＤによって作成された投影図を修正してユーザが簡易な投影図を作成する場合には、各部品の形状が簡略化された投影図を簡易に作成することが困難であるという問題がある。
【０００８】
なお、上述した外形線を抽出する技術では、各部品の輪郭ではなく、部品全体のモデルの輪郭が外形線として抽出される。このため、抽出された外形線が描画された図面をカタログなどに載せる図面とした場合には、かかる図面から得られる情報量が少ない。このため、カタログなどに載せる図面として適した図面を作成することが困難であるという問題もある。
【０００９】
１つの側面では、本発明は、各部品の形状が簡略化された投影図を簡易に作成することを目的とする。
【課題を解決するための手段】
【００１０】
本願の開示する作成プログラムは、１つの態様において、コンピュータに、３次元のモデルに含まれる部品の部品単位の情報に基づき、部品単位で、投影方向に、部品の投影を行う処理を実行させる。また、作成プログラムは、コンピュータに、部品単位で投影された投影図より輪郭を抽出する処理を実行させる。また、作成プログラムは、コンピュータに、輪郭が抽出された投影図に基づき、投影方向の部品の位置関係が規定された３次元のモデルを作成する処理を実行させる。また、作成プログラムは、コンピュータに、作成された３次元のモデルを２次元に投影することで、投影図を作成する処理を実行させる。
【発明の効果】
【００１１】
各部品の形状が簡略化された投影図を簡易に作成することができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施例に係る作成装置の機能構成の一例を示す図である。
【図２Ａ】図２Ａは、モデルデータが示す浴室の３次元モデルの一例を示す図である。
【図２Ｂ】図２Ｂは、モデルデータのデータ構造の一例を示す図である。
【図３Ａ】図３Ａは、投影図面データが示す投影図の一例を示す図である。
【図３Ｂ】図３Ｂは、投影図面データが示す投影図の一例を示す図である。
【図４】図４は、部品を投影する処理を説明するための図である。
【図５】図５は、外形算出処理の一例を説明するための図である。
【図６】図６は、起点要素の一方の端点と接続する要素の一例を示す図である。
【図７】図７は、角度を算出する処理の一例を説明するための図である。
【図８Ａ】図８Ａは、角度を算出する処理の一例を説明するための図である。
【図８Ｂ】図８Ｂは、角度を算出する処理の一例を説明するための図である。
【図９】図９は、要素を選択する処理の一例を説明するための図である。
【図１０】図１０は、検索の結果得られた要素の一例を示す図である。
【図１１】図１１は、第１の外形の一例を示す図である。
【図１２】図１２は、角度を算出する処理の一例を説明するための図である。
【図１３Ａ】図１３Ａは、角度を算出する処理の一例を説明するための図である。
【図１３Ｂ】図１３Ｂは、角度を算出する処理の一例を説明するための図である。
【図１４】図１４は、要素を選択する処理の一例を説明するための図である。
【図１５】図１５は、検索の結果得られた要素の一例を示す図である。
【図１６】図１６は、第２の外形の一例を示す図である。
【図１７】図１７は、最大外形を算出する処理の一例を説明するための図である。
【図１８】図１８は、３次元モデル全体の最大外形を算出する処理の一例を説明するための図である。
【図１９】図１９は、投影方向のベクトルに対して垂直な面を検索する処理の一例を説明するための図である。
【図２０】図２０は、基準面を検出する処理の一例を説明するための図である。
【図２１】図２１は、各部品の位置を算出する処理の一例を説明するための図である。
【図２２】図２２は、各部品の外形線を、３次元上の対応する投影方向上の位置にワイヤで作成する処理の一例を説明するための図である。
【図２３】図２３は、面を作成する処理の一例を説明するための図である。
【図２４】図２４は、作成された投影図面データが示す投影図面の一例である。
【図２５】図２５は、作成された投影図面データが示す投影図面の一例である。
【図２６】図２６は、実施例に係る作成処理の手順を示すフローチャートである。
【図２７】図２７は、実施例に係る外形算出処理の手順を示すフローチャートである。
【図２８】図２８は、実施例に係る部品位置算出処理の手順を示すフローチャートである。
【図２９】図２９は、作成プログラムを実行するコンピュータを示す図である。
【図３０】図３０は、浴室を示す３次元モデルが平面に投影されて作成された上面図及び正面図の一例を示す図である。
【図３１】図３１は、ユーザによって修正された２次元の図面の一例を示す図である。
【発明を実施するための形態】
【００１３】
以下に、本願の開示する作成プログラムおよび作成方法の実施例を図面に基づいて詳細に説明する。なお、実施例は開示の技術を限定するものではない。
【００１４】
［作成装置の構成］
実施例に係る作成装置について説明する。図１は、実施例に係る作成装置の機能構成の一例を示す図である。図１に示すように、作成装置１０は、入力部１１と、表示部１２と、通信部１３と、記憶部１４と、制御部１５とを有する。
【００１５】
入力部１１は、制御部１５に情報を入力する。例えば、入力部１１は、ユーザからの指示を受け付けて、制御部１５に、後述の作成処理を実行する指示を入力する。また、入力部１１は、ユーザからの指示を受け付けて、制御部１５に、後述の表示処理を実行する指示を入力する。入力部１１のデバイスの一例としては、キーボードやマウスなどが挙げられる。
【００１６】
表示部１２は、各種の情報を表示する。例えば、表示部１２は、後述の表示制御部１５ｄの制御により投影図面データ１４ｂが示す投影図面を表示する。
【００１７】
通信部１３は、他の装置との通信を行うためのインターフェースである。例えば、通信部１３は、他の装置から図示しないネットワークを介して投影図面データ１４ｂを送信する指示を受信した場合には、受信した指示を制御部１５に送信する。なお、かかる指示を受信した制御部１５は、投影図面データ１４ｂを取得し、取得した投影図面データ１４ｂを通信部１５に送信する。通信部１３は、制御部１５から投影図面データ１４ｂを受信した場合には、受信した投影図面データ１４ｂをネットワークを介して他の装置に送信する。
【００１８】
記憶部１４は、制御部１５で実行される各種プログラムを記憶する。また、記憶部１４は、モデルデータ１４ａ及び複数の投影図面データ１４ｂを記憶する。
【００１９】
モデルデータ１４ａについて説明する。モデルデータ１４ａは、３次元モデルを示すＣＡＤデータである。図２Ａは、モデルデータが示す浴室の３次元モデルの一例を示す図である。図２Ａに示すように、３次元モデル２０には、へこみ部分が複数並んだ浴室の浴槽２５の形状２１や複数の溝が格子状に形成された浴室の床の形状２２などが含まれる。また、図２Ａに示すように、浴室の台の詳細な形状２３や石けん受けの詳細な形状２４などが含まれる。また、モデルデータ１４ａには、複数のソリッドモデル（浴槽２５、床、石けん受け、台など）が含まれる。
【００２０】
図２Ｂは、モデルデータのデータ構造の一例を示す図である。図２Ｂに示すように、モデルデータ１４ａは、「ソリッドモデルＩＤ」、「面ＩＤ」、「線分ＩＤ」及び「線分の端点の座標」の各項目を有する。「ソリッドモデルＩＤ」の項目には、モデルデータ１４ａが示す浴室の３次元モデルに含まれる複数のソリッドモデルのそれぞれのＩＤ（ソリッドモデルＩＤ（Identification））が登録される。例えば、図２Ｂの例に示すモデルデータ１４ａは、「ソリッドモデルＩＤ」の項目に、ソリッドモデルＩＤ「１」が登録された場合を示す。また、「面ＩＤ」の項目には、同一のレコードのソリッドモデルを構成する各面のＩＤ（面ＩＤ）が登録される。例えば、図２Ｂの例に示すモデルデータ１４ａは、「面ＩＤ」の項目に、ソリッドモデルＩＤ「１」が示すソリッドモデルを構成する面の面ＩＤ「ＡＡ」、「ＡＢ」・・・「ＡＥ」、「ＡＦ」が登録された場合を示す。また、「線分ＩＤ」の項目には、同一のレコードのソリッドモデルを構成する各面を規定する線分のＩＤ（線分ＩＤ）が登録される。例えば、図２Ｂの例に示すモデルデータ１４ａは、「線分ＩＤ」の項目に、ソリッドモデルＩＤ「１」が示すソリッドモデルを構成する各面のうち面ＩＤ「ＡＡ」が示す面を規定する線分「ＡＢＣ」・・・「ＡＥＦ」が登録された場合を示す。また、「線分の端点の座標」の項目には、同一のレコードの「線分ＩＤ」の項目に登録された線分ＩＤが示す線分の両端の座標が登録される。例えば、図２Ｂの例に示すモデルデータ１４ａは、「線分の端点の座標」の項目に、線分ＩＤ「ＡＢＣ」が示す線分の両端の座標（Ａ、Ｂ、Ｙ）及び（Ｃ、Ｄ、Ｘ）が登録された場合を示す。なお、後述するが、ソリッドモデルは、部品に対応する。また、本実施例の線分は、直線および円弧なども含む。
【００２１】
投影図面データ１４ｂについて説明する。本実施例では、後述の作成部１５ｃにより正面図及び上面図の２つの図面の投影図面データ１４ｂが作成され、作成された投影図面データ１４ｂが記憶部１４に格納される。図３Ａ及び図３Ｂは、投影図面データが示す投影図の一例を示す図である。図２Ａに示す３次元モデル２０には、へこみ部分が複数並んだ浴室の浴槽の形状２１や複数の溝が格子状に形成された浴室の床の形状２２などが含まれていたが、図３Ａに示す上面図３１には、上述した形状２１や形状２２が含まれていない。また、３次元モデル２０には、浴室の台の詳細な形状２３や石けん受けの詳細な形状２４などが含まれていたが、図３Ｂに示す正面図３２には、上述した形状２３や形状２４などが含まれていない。
【００２２】
記憶部１４は、例えば、フラッシュメモリなどの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。なお、記憶部１４は、上記の種類の記憶装置に限定されるものではなく、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read  Only  Memory）であってもよい。
【００２３】
制御部１５は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。図１に示すように、制御部１５は、第１の算出部１５ａと、第２の算出部１５ｂと、作成部１５ｃと、表示制御部１５ｄとを有する。
【００２４】
第１の算出部１５ａは、各部品の外形を算出する。第１の算出部１５ａの一態様について説明する。例えば、第１の算出部１５ａは、入力部１１から後述の作成処理を実行する指示が入力されると、まず、記憶部１４に記憶されたモデルデータ１４ａを取得する。そして、第１の算出部１５ａは、上面図及び正面図の全ての投影図面が作成されたか否かを判定する。なお、本実施例では、第１の算出部１５ａが、上面図及び正面図の２つの投影図面が作成されたか否かを判定するが、これに限られず、任意の種類の投影図面が作成されたか否かを判定することができる。また、第１の算出部１５ａは、後述の作成部１５ｃにより、投影図面データ１４ｂが記憶部１４に格納された場合にも、同様に、上面図及び正面図の全ての投影図面が作成されたか否かを判定する。
【００２５】
全ての投影図面が作成されていない場合には、第１の算出部１５ａは、上面図を作成する場合の投影方向、及び、正面図を作成する場合の投影方向のうち、未選択の投影方向を１つ選択する。そして、第１の算出部１５ａは、モデルデータ１４ａが示す３次元モデル２０に含まれる全ての部品を選択済みであるか否かを判定する。なお、以下の説明では、部品がソリッドモデルである場合について説明するが、部品の単位はこれに限られない。具体例を挙げて説明すると、第１の算出部１５ａは、モデルデータ１４ａの「ソリッドモデルＩＤ」の項目に登録された全てのソリッドモデルＩＤを選択済みであるか否かを判定することで、全ての部品を選択済みであるか否かを判定する。
【００２６】
ここで、全ての部品を選択済みでない場合、すなわち、全てのソリッドモデルＩＤを選択済みでない場合には、第１の算出部１５ａは、未選択の部品を１つ選択する。例えば、図２Ａの例に示す３次元モデル２０において、浴槽２５が未選択である場合には、第１の算出部１５ａは、浴槽２５を選択する。
【００２７】
続いて、第１の算出部１５ａは、選択した部品を選択した投影方向のベクトルに対して垂直な面に投影する。図４は、部品を投影する処理を説明するための図である。例えば、選択した投影方向が、上面図を作成する場合の投影方向であり、選択した部品が浴槽２５である場合には、第１の算出部１５ａは、次の処理を行う。すなわち、第１の算出部１５ａは、図４に示すように、浴槽２５を、上面図を作成する場合の投影方向のベクトルに対して垂直な面に投影して、図形３５が描画された上面図を生成する。そして、第１の算出部１５ａは、外形算出処理を実行する。
【００２８】
外形算出処理について説明する。外形算出処理は、投影図に描画された図形の外形を算出する処理である。具体例を挙げて説明すると、外形算出処理では、第１の算出部１５ａは、まず、投影図に描画された図形の各要素（線分）について、両端の端点の２つの２次元座標からＸ軸方向の最大値および最小値、並びに、Ｙ軸方向の最大値および最小値を取得する。図５は、外形算出処理の一例を説明するための図である。例えば、図５の例では、図形３５の各要素（３５ａ、３５ｂ、・・・・・）のそれぞれについて、両端の端点の２つの２次元座標からＸ軸方向の最大値および最小値、並びに、Ｙ軸方向の最大値および最小値を取得する。なお、図５の例では、図形３５に含まれる全ての要素に符号が付されているわけではなく、一部の要素に数字「３５」にアルファベットの小文字を付けた符号が付されている。
【００２９】
次に、第１の算出部１５ａは、Ｙ座標の最大値が、図形のＹ座標の最大値と一致する要素を取得する。例えば、図５の例では、Ｙ座標の最大値が、図形３５のＹ座標の最大値と一致する要素は、要素３５ａ、３５ｂ、３５ｄ、３５ｅ、３５ｇである。そのため、図５の例では、第１の算出部１５ａは、要素３５ａ、３５ｂ、３５ｄ、３５ｅ、３５ｇを取得する。
【００３０】
続いて、第１の算出部１５ａは、Ｙ座標の最大値が、図形のＹ座標の最大値と一致する要素の数が複数であるか否かを判定する。複数である場合には、第１の算出部１５ａは、取得した要素の中から、Ｘ座標の最大値が、図形のＸ座標の最大値と一致する要素を更に取得する。例えば、図５の例では、要素３５ａ、３５ｂ、３５ｄ、３５ｅ、３５ｇのうち、Ｘ座標の最大値が、図形３５のＸ座標の最大値と一致する要素は、要素３５ａ、３５ｄ、３５ｇである。そのため、図５の例では、第１の算出部１５ａは、要素３５ａ、３５ｄ、３５ｇを取得する。
【００３１】
その後、第１の算出部１５ａは、Ｘ座標の最大値が、図形のＸ座標の最大値と一致する要素の数が複数であるか否かを判定する。複数である場合には、第１の算出部１５ａは、更に取得した要素の中から、Ｙ座標の最小値が、図形のＹ座標の最大値と一致する要素を更に取得する。例えば、図５の例では、要素３５ａ、３５ｄ、３５ｇのうち、Ｙ座標の最小値が、図形３５のＹ座標の最大値と一致する要素は、要素３５ａである。そのため、図５の例では、第１の算出部１５ａは、要素３５ａを取得する。
【００３２】
続いて、第１の算出部１５ａは、最終的に取得した要素を起点要素とする。例えば、最終的に取得した要素が要素３５ａである場合には、第１の算出部１５ａは、要素３５ａを起点要素とする。
【００３３】
そして、第１の算出部１５ａは、起点要素の両端の端点のうち一方の端点と接続する要素を検索する。図６は、起点要素の一方の端点と接続する要素の一例を示す図である。図６の例は、検索の結果、第１の算出部１５ａが、起点要素３５ａの一方の端点３５ａ＿１と接続された要素３５ｂ及び要素３５ｅを得た場合を示す。
【００３４】
続いて、第１の算出部１５ａは、起点要素の第１の方向のベクトルと、検索の結果得られた要素の起点要素に接続された一方の端点から他方の端点へ向かう方向のベクトルとの成す角の角度を算出する。なお、第１の方向は、起点要素の両端の端点のうち、他方の端点から上記一方の端点へ向かう方向である。図７、図８Ａ及び図８Ｂは、角度を算出する処理の一例を説明するための図である。図７に示すように、起点要素３５ａの第１の方向のベクトル４０は、起点要素３５ａの他方の端点（図示せず）から一方の端点３５ａ＿１へ向かう方向のベクトルである。また、図７に示すベクトル４１は、検索の結果得られた要素３５ｂの起点要素３５ａに接続された一方の端点から他方の端点へ向かう方向のベクトルである。同様に、図７に示すベクトル４２は、検索の結果得られた要素３５ｅの起点要素３５ａに接続された一方の端点から他方の端点へ向かう方向のベクトルである。そして、図８Ａに示すように、第１の算出部１５ａは、ベクトル４０と、ベクトル４１との成す角の角度αを算出する。また、図８Ｂに示すように、第１の算出部１５ａは、ベクトル４０と、ベクトル４２との成す角の角度βを算出する。
【００３５】
そして、第１の算出部１５ａは、検索の結果得られた要素のうち、算出した角度が最小となる要素を選択する。図９は、要素を選択する処理の一例を説明するための図である。例えば、角度β及び角度αの中では、角度αが最小であるため、図９に示すように、第１の算出部１５ａは、検索の結果得られた要素３５ｂ及び３５ｅのうち、角度αに対応する要素３５ｂを選択する。すなわち、第１の算出部１５ａは、投影図上で半時計回りの方向における起点要素との成す角が最も小さい線分を選択する。
【００３６】
続いて、第１の算出部１５ａは、選択した要素の他方の端点と接続する要素を検索する。図１０は、検索の結果得られた要素の一例を示す。図１０の例は、検索の結果、選択した要素３５ｂの他方の端点に、一方の端点が接続された要素３５ｃが得られ、かつ、選択した要素３５ｂの他方の端点に、一方の端点が接続された要素３５ｈが得られた場合を示す。
【００３７】
そして、第１の算出部１５ａは、検索の結果得られた要素の中に、起点要素があるか否かを判定する。起点要素がない場合には、第１の算出部１５ａは、選択した要素の一方の端点から他方の端点へと向かう方向のベクトルと、検索の結果得られた要素の一方の端点から他方の端点へと向かう方向のベクトルとの成す角の角度を算出する。第１の算出部１５ａは、角度を算出する処理を、検索の結果得られた全ての要素について行う。そして、第１の算出部１５ａは、算出した角度が最小となる要素を選択する。第１の算出部１５ａは、検索の結果得られた要素の中に、起点要素があると判定するまで、このような要素を選択する処理を繰り返し行う。すなわち、第１の算出部１５ａは、起点要素に他端が接続された線分が選択されるまで、選択された線分の他端に対して一端が接続された線分のうち、投影図面上で半時計回りの方向における選択された線分との成す角が最も小さい線分を繰り返し選択する。
【００３８】
検索の結果得られた要素の中に、起点要素がある場合には、第１の算出部１５ａは、起点要素と選択した要素とを結んで第１の外形を算出する。図１１は、第１の外形の一例を示す図である。例えば、検索の結果得られた要素の中に、起点要素３５ａがあり、起点要素３５ａを起点とし、辿ってきた要素（選択した要素）が要素３５ｂ、３５ｃ、３５ｄである場合には、第１の算出部１５ａは、次の処理を行う。すなわち、第１の算出部１５ａは、図１１に示すように、辿ってきた順に、起点要素３５ａと要素３５ｂ、要素３５ｂと要素３５ｃ、要素３５ｃと要素３５ｄ、要素３５ｄと起点要素３５ａを接続した第１の外形を算出する。
【００３９】
第１の外形が算出された場合には、第１の算出部１５ａは、起点要素の第１の方向とは逆方向の第２の方向のベクトルと、検索の結果得られた要素の起点要素に接続された一方の端点から他方の端点へ向かう方向のベクトルとの成す角の角度を算出する。なお、第２の方向は、起点要素の両端の端点のうち、上記一方の端点から上記他方の端点へ向かう方向である。図１２、図１３Ａ及び図１３Ｂは、角度を算出する処理の一例を説明するための図である。図１２に示すように、起点要素３５ａの第２の方向のベクトル５０は、起点要素３５ａの一方の端点３５ａから他方の端点（図示せず）へ向かう方向のベクトルである。そして、図１３Ａに示すように、第１の算出部１５ａは、ベクトル５０と、ベクトル４１との成す角の角度α´を算出する。また、図１３Ｂに示すように、第１の算出部１５ａは、ベクトル５０と、ベクトル４２との成す角の角度β´を算出する。
【００４０】
そして、第１の算出部１５ａは、検索の結果得られた要素のうち、算出した角度が最小となる要素を選択する。図１４は、要素を選択する処理の一例を説明するための図である。例えば、角度β´及び角度α´の中では、角度β´が最小であるため、図１４に示すように、第１の算出部１５ａは、検索の結果得られた要素３５ｂ及び３５ｅのうち、角度β´に対応する要素３５ｅを選択する。すなわち、第１の算出部１５ａは、投影図上で時計回りの方向における所定の起点要素との成す角が最も小さい線分を選択する。
【００４１】
続いて、第１の算出部１５ａは、選択した要素の他方の端点と接続する要素を検索する。図１５は、検索の結果得られた要素の一例を示す。図１５の例は、検索の結果、選択した要素３５ｅの他方の端点に、一方の端点が接続された要素３５ｆが得られた場合を示す。これに加えて、図１５の例は、選択した要素３５ｅの他方の端点に、一方の端点が接続された要素（符号を付与せず）が得られた場合を示す。
【００４２】
そして、第１の算出部１５ａは、検索の結果得られた要素の中に、起点要素があるか否かを判定する。起点要素がない場合には、第１の算出部１５ａは、選択した要素の他方の端点から一方の端点へと向かう方向のベクトルと、検索の結果得られた要素の一方の端点から他方の端点へと向かう方向のベクトルとの成す角の角度を算出する。第１の算出部１５ａは、角度を算出するこのような処理を、検索の結果得られた全ての要素について行う。そして、第１の算出部１５ａは、算出した角度が最小となる要素を選択する。第１の算出部１５ａは、検索の結果得られた要素の中に、起点要素があると判定するまで、このような要素を選択する処理を繰り返し行う。すなわち、第１の算出部１５ａは、起点要素に他端が接続された線分が選択されるまで、選択された線分の他端に対して一端が接続された線分のうち、投影図面上で時計回りの方向における選択された線分との成す角が最も小さい線分を繰り返し選択する。
【００４３】
検索の結果得られた要素の中に、起点要素がある場合には、第１の算出部１５ａは、起点要素と選択した要素とを結んで第２の外形を算出する。図１６は、第２の外形の一例を示す図である。例えば、検索の結果得られた要素の中に、起点要素３５ａがあり、起点要素３５ａを起点とし、辿ってきた要素（選択した要素）が要素３５ｅ、３５ｆ、３５ｇである場合には、第１の算出部１５ａは、次の処理を行う。すなわち、第１の算出部１５ａは、図１６に示すように、辿ってきた順に、起点要素３５ａと要素３５ｅ、要素３５ｅと要素３５ｆ、要素３５ｆと要素３５ｇ、要素３５ｇと起点要素３５ａを接続した第２の外形を算出する。
【００４４】
第２の外形が算出された場合には、第１の算出部１５ａは、第１の外形及び第２の外形のうち、全長が長いほうの外形を選択した部品の外形に決定する。例えば、第１の算出部１５ａは、図１１に示す第１の外形を、選択した部品の外形に決定する。第１の算出部１５ａは、全ての部品について同様の処理を繰り返し行うことで、全ての部品の外形を決定する。
【００４５】
図１に戻り、第２の算出部１５ｂは、部品の投影方向における位置を算出する。第２の算出部１５ｂの一態様について説明する。第２の算出部１５ｂは、第１の算出部１５ａにより全ての部品を選択済みであると判定された場合に、部品位置算出処理を実行する。部品位置算出処理では、まず、第２の算出部１５ｂは、各部品の外形から各部品の最大外形を算出する。図１７は、最大外形を算出する処理の一例を説明するための図である。図１７に示す３次元モデルは、部品２５、部品５０、部品５１、部品５２を有する。図１７の例に示すように、第２の算出部１５ｂは、部品２５の最大外形２５ａ、部品５０の最大外形５０ａ、部品５１の最大外形５１ａ、部品５２の最大外形５２ａを算出する。
【００４６】
続いて、第２の算出部１５ｂは、各部品の最大外形から、３次元モデル全体の最大外形を算出する。図１８は、３次元モデル全体の最大外形を算出する処理の一例を説明するための図である。図１８の例に示すように、第２の算出部１５ｂは、最大外形２５ａ、最大外形５０ａ、最大外形５１ａ及び最大外形５２ａを含む３次元モデル全体の最大外形５５ａを算出する。
【００４７】
そして、第２の算出部１５ｂは、選択した投影方向のベクトルに対して垂直な面を、３次元モデル全体の最大外形から検索する。図１９は、投影方向のベクトルに対して垂直な面を検索する処理の一例を説明するための図である。図１９の例に示すように、第２の算出部１５ｂは、３次元モデル全体の最大外形５５ａから、選択した投影方向のベクトル６０に対して垂直な面６１、６２を検索する。
【００４８】
続いて、第２の算出部１５ｂは、３次元モデル全体の最大外形の領域内の投影方向の逆方向側の位置に仮想的な視点を設定し、検索の結果得られた面のうち、視点から最も遠い面を基準面として検出する。図２０は、基準面を検出する処理の一例を説明するための図である。図２０の例に示すように、第２の算出部１５ｂは、最大外形５５ａの領域内の投影方向の逆方向側の位置に視点６３を設定する。そして、第２の算出部１５ｂは、検索の結果得られた面のうち、視点６３から最も遠い位置に存在する面６２を基準面として検出する。
【００４９】
そして、第２の算出部１５ｂは、基準面から各部品の最大外形への最長距離を算出して、各部品の位置を算出する。図２１は、各部品の位置を算出する処理の一例を説明するための図である。図２１の例に示すように、第２の算出部１５ｂは、基準面６２から各部品の最大外形２５ａ、５０ａ、５１ａ、５２ａへの最長距離２５ｂ、５０ｂ、５１ｂ、５２ｂを算出して、各部品の高さを算出する。ここで、図２１の例が示す場合では、投影方向が上面図を作成する場合の投影方向であるため、第２の算出部１５ｂは、各部品の高さを算出して、各部品の投影方向上の位置を算出した。しかしながら、例えば、投影方向が正面図を作成する場合の投影方向である場合には、第２の算出部１５ｂは、各部品の奥行きを算出して、各部品の投影方向上の位置を算出する。
【００５０】
図１に戻り、作成部１５ｃは、３次元モデルの投影図面を作成する。作成部１５ｃの一態様について説明する。作成部１５ｃは、各部品の外形の線（外形線）を、３次元上の対応する投影方向上の位置にワイヤ（線）で作成した３次元モデルを作成する。図２２は、各部品の外形線を、３次元上の対応する投影方向上の位置にワイヤで作成する処理の一例を説明するための図である。図２２の例に示すように、作成部１５ｃは、各部品の外形線７０〜７５のそれぞれを、３次元上の対応する投影方向上の位置にワイヤで作成する。
【００５１】
続いて、作成部１５ｃは、各部品ごとに、ワイヤを外形とする面（シート）を作成する。図２３は、面を作成する処理の一例を説明するための図である。図２３の例に示すように、作成部１５ｃは、外形線７０〜７５のそれぞれがワイヤで作成された各部品について、ワイヤを外形とする面を作成する。
【００５２】
そして、作成部１５ｃは、ワイヤを外形として面が作成された３次元モデルを選択した投影方向から投影して投影図面データ１４ｂを作成する。図２４及び図２５は、作成された投影図面データが示す投影図面の一例である。図２４の例は、図２Ａの３次元モデル２０の上面図であり、図２５の例は、３次元モデル２０の正面図である。図２４及び図２５に示すように、本実施例では、各部品を面として作成するため、各部品の詳細な形状を示す線が投影図面には現れない。また、本実施例では、各部品が面として作成され、各部品の投影方向上の位置が規定された３次元モデルを生成し、生成した３次元モデルを投影して投影図面データを作成する。このため、本実施例によれば、作成された投影図面データが示す投影図面は、投影方向に対応する視点から見える部品の輪郭を有し、かかる視点から見えない部品の輪郭を含まない。さらに、本実施例によれば、ユーザが線の削除などをすることなく、各部品の形状が簡略化された投影図面を作成する。したがって、本実施例によれば、各部品の形状が簡略化された投影図を簡易に作成することができる。
【００５３】
続いて、作成部１５ｃは、作成した投影図面データ１４ｂを記憶部１４に格納する。
【００５４】
図１に戻り、表示制御部１５ｄは、投影図面データ１４ｂが示す投影図面を表示するように表示部１２を制御する。例えば、表示制御部１５ｄは、入力部１１から表示処理を実行する指示が入力された場合には、記憶部１４から投影図面データ１４ｂを取得し、投影図面データ１４ｂが示す投影図面を表示するように表示部１２を制御する。
【００５５】
制御部１５は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路またはＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路である。  
【００５６】
［処理の流れ］
次に、本実施例に係る作成装置１０の処理の流れを説明する。図２６は、実施例に係る作成処理の手順を示すフローチャートである。この作成処理の実行タイミングとしては様々なタイミングが考えられる。例えば、作成処理は、作成処理を実行する指示が入力部１１から入力された場合に、制御部１５により実行される。
【００５７】
図２６に示すように、第１の算出部１５ａは、記憶部１４に記憶されたモデルデータ１４ａを取得する（Ｓ１０１）。そして、第１の算出部１５ａは、上面図及び正面図の全ての投影図面が作成されたか否かを判定する（Ｓ１０２）。
【００５８】
全ての投影図面が作成された場合（Ｓ１０２肯定）には、処理を終了する。一方、全ての投影図面が作成されていない場合（Ｓ１０２否定）には、第１の算出部１５ａは、上面図を作成する場合の投影方向、及び、正面図を作成する場合の投影方向のうち、未選択の投影方向を１つ選択する（Ｓ１０３）。そして、第１の算出部１５ａは、モデルデータ１４ａが示す３次元モデルに含まれる全ての部品を選択済みであるか否かを判定する（Ｓ１０４）。
【００５９】
ここで、全ての部品を選択済みでない場合（Ｓ１０４否定）には、第１の算出部１５ａは、未選択の部品を１つ選択する（Ｓ１０５）。続いて、第１の算出部１５ａは、選択した部品を選択した投影方向のベクトルに対して垂直な面に投影する（Ｓ１０６）。そして、第１の算出部１５ａは、外形算出処理を実行し（Ｓ１０７）、Ｓ１０４に戻る。
【００６０】
全ての部品を選択済みである場合（Ｓ１０４肯定）には、第２の算出部１５ｂは、部品位置算出処理を実行する（Ｓ１０８）。そして、作成部１５ｃは、各部品の外形の線（外形線）を、３次元上の対応する投影方向上の位置にワイヤ（線）で作成した３次元モデルを作成する（Ｓ１０９）。
【００６１】
続いて、作成部１５ｃは、各部品ごとに、ワイヤを外形とする面（シート）を作成する（Ｓ１１０）。そして、作成部１５ｃは、ワイヤを外形として面が作成された３次元モデルを、選択した投影方向から投影して投影図面データ１４ｂを作成する（Ｓ１１１）。続いて、作成部１５ｃは、作成した投影図面データ１４ｂを記憶部１４に格納し（Ｓ１１２）、Ｓ１０２に戻る。
【００６２】
図２７は、実施例に係る外形算出処理の手順を示すフローチャートである。図２７に示すように、第１の算出部１５ａは、投影図に描画された図形の各要素（線分）について、両端の端点の２つの２次元座標からＸ軸方向の最大値および最小値、並びに、Ｙ軸方向の最大値および最小値を取得する（Ｓ２０１）。次に、第１の算出部１５ａは、Ｙ座標の最大値が、図形のＹ座標の最大値と一致する要素を取得する（Ｓ２０２）。
【００６３】
続いて、第１の算出部１５ａは、Ｙ座標の最大値が、図形のＹ座標の最大値と一致する要素の数が複数であるか否かを判定する（Ｓ２０３）。複数でない場合（Ｓ２０３否定）には、Ｓ２０７へ進む。一方、複数である場合（Ｓ２０３肯定）には、第１の算出部１５ａは、取得した要素の中から、Ｘ座標の最大値が、図形のＸ座標の最大値と一致する要素を更に取得する（Ｓ２０４）。
【００６４】
その後、第１の算出部１５ａは、Ｘ座標の最大値が、図形のＸ座標の最大値と一致する要素の数が複数であるか否かを判定する（Ｓ２０５）。複数でない場合（Ｓ２０５否定）には、Ｓ２０７へ進む。一方、複数である場合（Ｓ２０５肯定）には、第１の算出部１５ａは、更に取得した要素の中から、Ｙ座標の最小値が、図形のＹ座標の最大値と一致する要素を更に取得する（Ｓ２０６）。
【００６５】
続いて、第１の算出部１５ａは、最終的に取得した要素を起点要素とする（Ｓ２０７）。そして、第１の算出部１５ａは、起点要素の両端の端点のうち一方の端点と接続する要素を検索する（Ｓ２０８）。
【００６６】
続いて、第１の算出部１５ａは、起点要素の第１の方向のベクトルと、検索の結果得られた要素の起点要素に接続された一方の端点から他方の端点へ向かう方向のベクトルとの成す角の角度を算出する（Ｓ２０９）。そして、第１の算出部１５ａは、検索の結果得られた要素のうち、算出した角度が最小となる要素を選択する（Ｓ２１０）。
【００６７】
続いて、第１の算出部１５ａは、選択した要素の他方の端点と接続する要素を検索する（Ｓ２１１）。そして、第１の算出部１５ａは、検索の結果得られた要素の中に、起点要素があるか否かを判定する（Ｓ２１２）。起点要素がない場合（Ｓ２１２否定）には、第１の算出部１５ａは、次の処理を行う。すなわち、第１の算出部１５ａは、選択した要素の一方の端点から他方の端点へと向かう方向のベクトルと、検索の結果得られた要素の一方の端点から他方の端点へと向かう方向のベクトルとの成す角の角度を算出し（Ｓ２１３）、Ｓ２１０へ戻る。
【００６８】
検索の結果得られた要素の中に、起点要素がある場合（Ｓ２１２肯定）には、第１の算出部１５ａは、起点要素と選択した要素とを結んで第１の外形を算出する（Ｓ２１４）。そして、第１の算出部１５ａは、起点要素の第１の方向とは逆方向の第２の方向のベクトルと、検索の結果得られた要素の起点要素に接続された一方の端点から他方の端点へ向かう方向のベクトルとの成す角の角度を算出する（Ｓ２１５）。
【００６９】
そして、第１の算出部１５ａは、検索の結果得られた要素のうち、算出した角度が最小となる要素を選択する（Ｓ２１６）。続いて、第１の算出部１５ａは、選択した要素の他方の端点と接続する要素を検索する（Ｓ２１７）。
【００７０】
そして、第１の算出部１５ａは、検索の結果得られた要素の中に、起点要素があるか否かを判定する（Ｓ２１８）。起点要素がない場合（Ｓ２１８否定）には、第１の算出部１５ａは、次の処理を行う。すなわち、第１の算出部１５ａは、選択した要素の他方の端点から一方の端点へと向かう方向のベクトルと、検索の結果得られた要素の一方の端点から他方の端点へと向かう方向のベクトルとの成す角の角度を算出し（Ｓ２１９）、Ｓ２１６へ戻る。
【００７１】
検索の結果得られた要素の中に、起点要素がある場合（Ｓ２１８肯定）には、第１の算出部１５ａは、起点要素と選択した要素とを結んで第２の外形を算出する（Ｓ２２０）。続いて、第１の算出部１５ａは、第１の外形及び第２の外形のうち、全長が長いほうの外形を選択した部品の外形に決定し（Ｓ２２１）、処理結果を内部メモリに格納し、リターンする。  
【００７２】
図２８は、実施例に係る部品位置算出処理の手順を示すフローチャートである。図２８に示すように、第２の算出部１５ｂは、各部品の外形から各部品の最大外形を算出する（Ｓ３０１）。続いて、第２の算出部１５ｂは、各部品の最大外形から、３次元モデル全体の最大外形を算出する（Ｓ３０２）。そして、第２の算出部１５ｂは、選択した投影方向のベクトルに対して垂直な面を、３次元モデル全体の最大外形から検索する（Ｓ３０３）。
【００７３】
続いて、第２の算出部１５ｂは、３次元モデル全体の最大外形の領域内の投影方向の逆方向側の位置に仮想的な視点を設定し、検索の結果得られた面のうち、視点から最も遠い面を基準面として検出する（Ｓ３０４）。
【００７４】
そして、第２の算出部１５ｂは、基準面から各部品の最大外形への最長距離を算出して、各部品の位置を算出し（Ｓ３０５）、処理結果を内部メモリに格納し、リターンする。
【００７５】
上述してきたように、本実施例に係る作成装置１０は、３次元のモデルに含まれる部品の部品単位の情報に基づき、部品単位で、投影方向に、部品の投影を行う。そして、作成装置１０は、部品単位で投影された投影図より輪郭を抽出する。続いて、作成装置１０は、輪郭が抽出された投影図に基づき、投影方向の部品の位置関係が規定された３次元のモデルを作成する。そして、作成装置１０は、作成された３次元のモデルを２次元に投影することで、投影図を作成する。作成装置１０は、各部品の投影方向上の位置が規定された３次元モデルを生成し、生成した３次元モデルを投影して投影図面データを作成する。このため、作成装置１０によれば、作成された投影図面データが示す投影図面は、投影方向に対応する視点から見える部品の輪郭を有し、かかる視点から見えない部品の輪郭を含まない。さらに、作成装置１０によれば、ユーザが線の削除などをすることなく、カタログなどに搭載される、各部品の形状が簡略化された投影図面を作成する。したがって、作成装置１０によれば、各部品の形状が簡略化された投影図を簡易に作成することができる。
【００７６】
また、本実施例に係る作成装置１０は、部品の形状が所定の面として規定された３次元モデルを作成する。それゆえ、作成装置１０は、形状の詳細を表す線を有しない部品を含む３次元モデルを作成する。そのため、作成装置１０は、部品を面に設定するという簡易な処理で各部品の形状が簡略化された投影図を作成することができる。
【００７７】
また、本実施例に係る作成装置１０は、外回りの方向に要素を辿っていき第１の外形を生成し、内回りの方向に要素を辿っていき第２の外形を生成する。そして、作成装置１０は、第１の外形及び第２の外形のうち、全長が長いほうの外形を選択した部品の外形として決定する。そのため、作成装置１０によれば、簡易な処理で部品の外形を決定することができる。
【００７８】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。
【００７９】
また、実施例などにおいて説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともできる。
【００８０】
また、各種の負荷や使用状況などに応じて、実施例などにおいて説明した各処理の各ステップでの処理を任意に細かくわけたり、あるいはまとめたりすることができる。また、ステップを省略することもできる。
【００８１】
また、各種の負荷や使用状況などに応じて、実施例などにおいて説明した各処理の各ステップでの処理の順番を変更できる。
【００８２】
また、図示した装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、装置の分散・統合の具体的状態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【００８３】
［作成プログラム］
また、上記の作成装置１０の作成処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することもできる。そこで、以下では、図２９を用いて、上記の作成装置１０と同様の機能を有する作成プログラムを実行するコンピュータの一例を説明する。
【００８４】
図２９は、作成プログラムを実行するコンピュータを示す図である。図２９に示すように、コンピュータ３００は、ＣＰＵ（Central  Processing  Unit）３１０、ＲＯＭ（Read  Only  Memory）３２０、ＨＤＤ（Hard  Disk  Drive）３３０、ＲＡＭ（Random  Access  Memory）３４０を有する。これら３００〜３４０の各部は、バス３５０を介して接続される。
【００８５】
ＨＤＤ３３０には、上記の実施例で示す第１の算出部１５ａと、第２の算出部１５ｂと、作成部１５ｃと、表示制御部１５ｄと同様の機能を発揮する作成プログラム３３０ａが予め記憶される。なお、作成プログラム３３０ａについては、適宜分離しても良い。
【００８６】
そして、ＣＰＵ３１０が、作成プログラム３３０ａをＨＤＤ３３０から読み出して実行する。
【００８７】
そして、ＨＤＤ３３０には、モデルデータ及び投影図面データが設けられる。かかるモデルデータは、図１に示すモデルデータ１４ａに対応する。また、かかる投影図面データは、図１に示す投影図面データ１４ｂに対応する。
【００８８】
そして、ＣＰＵ３１０は、モデルデータ及び投影図面データを読み出してＲＡＭ３４０に格納する。さらに、ＣＰＵ３１０は、ＲＡＭ３４０に格納されたモデルデータ及び投影図面データを用いて、作成プログラム３３０ａを実行する。なお、ＲＡＭ３４０に格納される各データは、常に全てのデータがＲＡＭ３４０に格納されなくともよく、全てのデータのうち処理に用いられるデータのみがＲＡＭ３４０に格納されれば良い。
【００８９】
なお、上記した作成プログラム３３０ａについては、必ずしも最初からＨＤＤ３３０に記憶させなくともよい。
【００９０】
例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」にプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。  
【００９１】
さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ３００に接続される「他のコンピュータ（またはサーバ）」などにプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【符号の説明】
【００９２】
１０      作成装置
１４      記憶部
１４ａ    モデルデータ
１４ｂ    投影図面データ
１５      制御部
１５ａ    第１の算出部
１５ｂ    第２の算出部
１５ｃ    作成部
【図１】
2014130538.tif 000003
【図２Ａ】
2014130538.tif 000004
【図２Ｂ】
2014130538.tif 000005
【図３Ａ】
2014130538.tif 000006
【図３Ｂ】
2014130538.tif 000007
【図４】
2014130538.tif 000008
【図５】
2014130538.tif 000009
【図６】
2014130538.tif 000010
【図７】
2014130538.tif 000011
【図８Ａ】
2014130538.tif 000012
【図８Ｂ】
2014130538.tif 000013
【図９】
2014130538.tif 000014
【図１０】
2014130538.tif 000015
【図１１】
2014130538.tif 000016
【図１２】
2014130538.tif 000017
【図１３Ａ】
2014130538.tif 000018
【図１３Ｂ】
2014130538.tif 000019
【図１４】
2014130538.tif 000020
【図１５】
2014130538.tif 000021
【図１６】
2014130538.tif 000022
【図１７】
2014130538.tif 000023
【図１８】
2014130538.tif 000024
【図１９】
2014130538.tif 000025
【図２０】
2014130538.tif 000026
【図２１】
2014130538.tif 000027
【図２２】
2014130538.tif 000028
【図２３】
2014130538.tif 000029
【図２４】
2014130538.tif 000030
【図２５】
2014130538.tif 000031
【図２６】
2014130538.tif 000032
【図２７】
2014130538.tif 000033
【図２８】
2014130538.tif 000034
【図２９】
2014130538.tif 000035
【図３０】
2014130538.tif 000036
【図３１】
2014130538.tif 000037