(57)【特許請求の範囲】
【請求項１】
展開図作成装置における立体の展開図作成方法であって、
前記展開図作成装置の座標抽出手段が、対象となる立体を構成する頂点の座標を抽出する第１の過程と、
前記展開図作成装置の面抽出手段が、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、
前記展開図作成装置の稜線抽出手段が、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、
前記展開図作成装置の展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、
前記展開図作成装置の決定手段が、前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とを有し、
前記展開図作成装置において、展開可能なすべての面が展開されるまで、前記展開手段による第４の過程乃び前記決定手段による第５の過程をこの順に繰り返して行い、
前記展開図作成装置は、展開を行うと仮に定めた面と、該面にそれぞれ隣接する２つ以上の面が同一平面上にある場合には、当該仮に定めた面を前記第４又は第５の過程における展開を行う面としない
ことを特徴とする立体の展開図作成方法。
【請求項２】
展開図作成装置における立体の展開図作成方法であって、
前記展開図作成装置の座標抽出手段が、対象となる立体を構成する頂点の座標を抽出する第１の過程と、
前記展開図作成装置の面抽出手段が、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、
前記展開図作成装置の稜線抽出手段が、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、
前記展開図作成装置の展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、
前記展開図作成装置の決定手段が、前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とを有し、
前記展開図作成装置において、展開可能なすべての面が展開されるまで、前記展開手段による第４の過程乃び前記決定手段による第５の過程をこの順に繰り返して行い、
前記展開図作成装置は、前記第４の過程で展開された面に隣接する面のうち、該展開された面とのなす角が最も大きくなる面を、前記第５の過程における展開を行う面として決定する
ことを特徴とする立体の展開図作成方法。
【請求項３】
展開図作成装置における立体の展開図作成方法であって、
前記展開図作成装置の座標抽出手段が、対象となる立体を構成する頂点の座標を抽出する第１の過程と、
前記展開図作成装置の面抽出手段が、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、
前記展開図作成装置の稜線抽出手段が、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、
前記展開図作成装置の展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、
前記展開図作成装置の決定手段が、前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とを有し、
前記展開図作成装置において、展開可能なすべての面が展開されるまで、前記展開手段による第４の過程乃び前記決定手段による第５の過程をこの順に繰り返して行い、
前記展開図作成装置は、前記第４の過程で展開された面に隣接する面のうち、該展開された面との境界となる稜線の長さが最も大きくなる面を、前記第５の過程における展開を行う面として決定する
ことを特徴とする立体の展開図作成方法。
【請求項４】
前記展開図作成装置の展開不能面抽出手段が、展開不能な面を抽出する第６の過程を有し、
前記展開図作成装置は、前記第６の過程で抽出した面のみについて、前記展開手段による第４の過程乃び前記決定手段による第５の過程をこの順に繰り返して行うことを特徴とする請求項１から請求項３のいずれかに記載の立体の展開図作成方法。
【請求項５】
前記展開図作成装置の展開不能面抽出手段は、展開不能な面を、次に展開を行う面を２次元に変換した場合に該面の端縁を形成する稜線と、既に展開された面の端縁を形成する稜線とが交差するか否かによって判別する第７の過程を有することを特徴とする請求項１から請求項４のいずれかに記載の立体の展開図作成方法。
【請求項６】
前記展開図作成装置の展開手段は、展開前に予め指定された稜線を、前記第４の過程において展開された場合に切り離される面同士の境界にある稜線、又は展開された場合に切り離されない面同士の境界にある稜線とすることを特徴とする請求項１から請求項５のいずれかに記載の立体の展開図作成方法。
【請求項７】
前記展開図作成装置の対応情報表示手段が、隣接する面のうち展開された場合に切り離される面同士の対応する端縁位置に、所定の対応情報を表示する第８の過程を有することを特徴とする請求項１から請求項６のいずれかに記載の立体の展開図作成方法。
【請求項８】
前記展開図作成装置ののりしろ領域形成手段が、前記対応情報が表示された一対の面のいずれかの端縁位置に、のりしろ領域を形成する第９の過程を有することを特徴とする請求項７に記載の立体の展開図作成方法。
【請求項９】
対象となる立体を構成する頂点座標を抽出する座標抽出手段と、
３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する面抽出手段と、
隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する稜線抽出手段と、
前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する展開手段と、
前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する決定手段とを備え、
展開可能なすべての面が展開されるまで、前記展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開し、前記決定手段が、前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する処理をこの順に繰り返して行い、
前記展開手段および前記決定手段において、展開を行うと仮に定めた面と、該面にそれぞれ隣接する２つ以上の面が同一平面上にある場合には、当該仮に定めた面を前記第４又は第５の過程における展開を行う面としない
ことを特徴とする立体の展開図作成装置。
【請求項１０】
対象となる立体を構成する頂点座標を抽出する座標抽出手段と、
３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する面抽出手段と、
隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する稜線抽出手段と、
前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する展開手段と、
前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する決定手段とを備え、
展開可能なすべての面が展開されるまで、前記展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開し、前記決定手段が、前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する処理をこの順に繰り返して行い、
前記展開手段で展開された面に隣接する面のうち、該展開された面とのなす角が最も大きくなる面を、前記決定手段が展開を行う面として決定する
ことを特徴とする立体の展開図作成装置。
【請求項１１】
対象となる立体を構成する頂点座標を抽出する座標抽出手段と、
３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する面抽出手段と、
隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する稜線抽出手段と、
前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する展開手段と、
前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する決定手段とを備え、
展開可能なすべての面が展開されるまで、前記展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開し、前記決定手段が、前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する処理をこの順に繰り返して行い、
前記展開手段で展開された面に隣接する面のうち、該展開された面との境界となる稜線の長さが最も大きくなる面を、前記決定手段が展開を行う面として決定する
ことを特徴とする立体の展開図作成装置。
【請求項１２】
対象となる立体を構成する頂点の座標を抽出する第１の過程と、
３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、
隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、
前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、
前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とをコンピュータに実行させるためのコンピュータプログラムであって、
展開可能なすべての面が展開されるまで、前記第４乃び第５の過程をこの順に繰り返し、展開を行うと仮に定めた面と、該面にそれぞれ隣接する２つ以上の面が同一平面上にある場合には、当該仮に定めた面を前記第４又は第５の過程における展開を行う面としない処理をコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項１３】
対象となる立体を構成する頂点の座標を抽出する第１の過程と、
３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、
隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、
前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、
前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とをコンピュータに実行させるためのコンピュータプログラムであって、
展開可能なすべての面が展開されるまで、前記第４乃び第５の過程をこの順に繰り返し、前記第４の過程で展開された面に隣接する面のうち、該展開された面とのなす角が最も大きくなる面を、前記第５の過程における展開を行う面として決定する処理をコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項１４】
対象となる立体を構成する頂点の座標を抽出する第１の過程と、
３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、
隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、
前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、
前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とをコンピュータに実行させるためのコンピュータプログラムであって、
展開可能なすべての面が展開されるまで、前記第４乃び第５の過程をこの順に繰り返し、前記第４の過程で展開された面に隣接する面のうち、該展開された面との境界となる稜線の長さが最も大きくなる面を、前記第５の過程における展開を行う面として決定する処理をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元の立体から２次元の展開図を作成するための方法及び装置、並びにコンピュータプログラムに関する。
【０００２】
【従来の技術】
従来、３次元の立体から２次元の展開図を紙等に印刷し、この展開図を適宜切り抜いて組み立てることにより、もとの立体の模型（モデル）を作ることが広く行われている。例えば、建築業界においては、建築物の完成予想を示す模型を専門に作成する業者が存在しており、各工務店は住宅等の設計の度にこれらの業者に模型作成を依頼していた。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来の模型作成においては、もとの立体から２次元の展開図を作成する作業が人手により行われており、効率、納期やコスト面で問題があった。特に、立体の形状が複雑な場合には、展開図の作成が非常に困難となり、一部の熟練した人間でないと模型を作成できないという問題が生じていた。
【０００４】
本発明は、上記した問題点に鑑みてなされたもので、コンピュータを用いて自動的に作成可能な立体の展開図作成方法及び装置、並びにコンピュータプログラムを提供することを目的とする。
【０００５】
【課題を解決するための手段】
上記した目的を達成するために、本発明は、展開図作成装置における立体の展開図作成方法であって、前記展開図作成装置の座標抽出手段が、対象となる立体を構成する頂点の座標を抽出する第１の過程と、前記展開図作成装置の面抽出手段が、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、前記展開図作成装置の稜線抽出手段が、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、前記展開図作成装置の展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、前記展開図作成装置の決定手段が、前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とを有し、前記展開図作成装置において、展開可能なすべての面が展開されるまで、前記展開手段による第４の過程乃び前記決定手段による第５の過程をこの順に繰り返して行い、前記展開図作成装置は、展開を行うと仮に定めた面と、該面にそれぞれ隣接する２つ以上の面が同一平面上にある場合には、当該仮に定めた面を前記第４又は第５の過程における展開を行う面としないことを特徴とする立体の展開図作成方法である。このようにすると、所定の面の頂点座標が２次元座標に変換されて展開されると、その面に属する稜線の情報に基づいて隣接する面を次に展開を行う面として決定するので、これらの処理を展開可能な面が展開されるまで繰り返すことで、コンピュータ上で自動的に展開図を作成できる。 またこのようにすると、経験上、組み立てが容易な展開図となる。
また本発明は、展開図作成装置における立体の展開図作成方法であって、前記展開図作成装置の座標抽出手段が、対象となる立体を構成する頂点の座標を抽出する第１の過程と、前記展開図作成装置の面抽出手段が、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、前記展開図作成装置の稜線抽出手段が、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、前記展開図作成装置の展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、前記展開図作成装置の決定手段が、前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とを有し、前記展開図作成装置において、展開可能なすべての面が展開されるまで、前記展開手段による第４の過程乃び前記決定手段による第５の過程をこの順に繰り返して行い、前記展開図作成装置は、前記第４の過程で展開された面に隣接する面のうち、該展開された面とのなす角が最も大きくなる面を、前記第５の過程における展開を行う面として決定することを特徴とする立体の展開図作成方法である。このようにすると、経験上、展開不能な面が生じ難くなる。
また本発明は、展開図作成装置における立体の展開図作成方法であって、前記展開図作成装置の座標抽出手段が、対象となる立体を構成する頂点の座標を抽出する第１の過程と、前記展開図作成装置の面抽出手段が、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、前記展開図作成装置の稜線抽出手段が、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、前記展開図作成装置の展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、前記展開図作成装置の決定手段が、前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とを有し、前記展開図作成装置において、展開可能なすべての面が展開されるまで、前記展開手段による第４の過程乃び前記決定手段による第５の過程をこの順に繰り返して行い、前記展開図作成装置は、前記第４の過程で展開された面に隣接する面のうち、該展開された面との境界となる稜線の長さが最も大きくなる面を、前記第５の過程における展開を行う面として決定することを特徴とする立体の展開図作成方法である。このようにすると、展開図を切断する部分（稜線等）の長さが短くて済むので、切断（作成）しやすい展開図が得られる。又、展開図を内包する台紙自体の大きさが小さくなるので、台紙を有効に使用できる展開図が得られる。
【０００６】
また本発明は、上述の立体の展開図作成方法において、前記展開図作成装置の展開不能面抽出手段が、展開不能な面を抽出する第６の過程を有し、前記展開図作成装置は、前記第６の過程で抽出した面のみについて、前記展開手段による第４の過程乃び前記決定手段による第５の過程をこの順に繰り返して行うことを特徴とする。このようにすると、展開不能な面については、別の展開図を作成することができ、これらの展開図により作成される立体を組み合わせれば、立体の全体を各展開図により組み立てることができる。
【０００７】
また本発明は、上述の立体の展開図作成方法において、前記展開図作成装置の展開不能面抽出手段は、展開不能な面を、次に展開を行う面を２次元に変換した場合に該面の端縁を形成する稜線と、既に展開された面の端縁を形成する稜線とが交差するか否かによって判別する第７の過程を有することを特徴とする。このようにすると、展開不能か否かの判別が容易かつ正確になる。
【０００８】
また本発明は、上述の立体の展開図作成方法において、前記展開図作成装置の展開手段は、展開前に予め指定された稜線を、前記第４の過程において展開された場合に切り離される面同士の境界にある稜線、又は展開された場合に切り離されない面同士の境界にある稜線とすることを特徴とする。
【０００９】
また本発明は、上述の立体の展開図作成方法において、前記展開図作成装置の対応情報表示手段が、隣接する面のうち展開された場合に切り離される面同士の対応する端縁位置に、所定の対応情報を表示する第８の過程を有することを特徴とする。このようにすると、立体を組み立てる際、作業者は対応情報が同一の面の端線同士をつなぎ合わせればよいことがわかるので、作業が容易になる。
【００１０】
また本発明は、上述の立体の展開図作成方法において、前記展開図作成装置ののりしろ領域形成手段が、前記対応情報が表示された一対の面のいずれかの端縁位置に、のりしろ領域を形成する第９の過程を有することを特徴とする。このようにすると、切り離された面同士をつなぐための「のりしろ」が自動的に展開図上に設けられるので、組み立て作業が容易になる。
【００１１】
また本発明は、対象となる立体を構成する頂点座標を抽出する座標抽出手段と、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する面抽出手段と、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する稜線抽出手段と、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する展開手段と、前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する決定手段とを備え、展開可能なすべての面が展開されるまで、前記展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開し、前記決定手段が、前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する処理をこの順に繰り返して行い、前記展開手段および前記決定手段において、展開を行うと仮に定めた面と、該面にそれぞれ隣接する２つ以上の面が同一平面上にある場合には、当該仮に定めた面を前記第４又は第５の過程における展開を行う面としないことを特徴とする立体の展開図作成装置である。
【００１２】
また本発明は、対象となる立体を構成する頂点座標を抽出する座標抽出手段と、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する面抽出手段と、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する稜線抽出手段と、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する展開手段と、前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する決定手段とを備え、展開可能なすべての面が展開されるまで、前記展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開し、前記決定手段が、前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する処理をこの順に繰り返して行い、前記展開手段で展開された面に隣接する面のうち、該展開された面とのなす角が最も大きくなる面を、前記決定手段が展開を行う面として決定することを特徴とする立体の展開図作成装置である。
【００１３】
また本発明は、対象となる立体を構成する頂点座標を抽出する座標抽出手段と、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する面抽出手段と、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する稜線抽出手段と、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する展開手段と、前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する決定手段とを備え、展開可能なすべての面が展開されるまで、前記展開手段が、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開し、前記決定手段が、前記展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する処理をこの順に繰り返して行い、前記展開手段で展開された面に隣接する面のうち、該展開された面との境界となる稜線の長さが最も大きくなる面を、前記決定手段が展開を行う面として決定することを特徴とする立体の展開図作成装置である。
【００１４】
また本発明は、対象となる立体を構成する頂点の座標を抽出する第１の過程と、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とをコンピュータに実行させるためのコンピュータプログラムであって、展開可能なすべての面が展開されるまで、前記第４乃び第５の過程をこの順に繰り返し、展開を行うと仮に定めた面と、該面にそれぞれ隣接する２つ以上の面が同一平面上にある場合には、当該仮に定めた面を前記第４又は第５の過程における展開を行う面としない処理をコンピュータに実行させることを特徴とするコンピュータプログラムである。
【００１５】
また本発明は、対象となる立体を構成する頂点の座標を抽出する第１の過程と、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とをコンピュータに実行させるためのコンピュータプログラムであって、展開可能なすべての面が展開されるまで、前記第４乃び第５の過程をこの順に繰り返し、前記第４の過程で展開された面に隣接する面のうち、該展開された面とのなす角が最も大きくなる面を、前記第５の過程における展開を行う面として決定する処理をコンピュータに実行させることを特徴とするコンピュータプログラムである。
また本発明は、対象となる立体を構成する頂点の座標を抽出する第１の過程と、３個以上の前記頂点で構成され、該頂点と関連付けられている面を抽出する第２の過程と、隣接する２つの面の境界に位置して各面の端縁を形成し、該隣接する２つの面と関連付けられている稜線を抽出する第３の過程と、前記面のうち、展開を行う面を構成する頂点の座標を２次元座標に変換することにより当該面を展開する第４の過程と、前記第４の過程で展開された面の端縁を形成する稜線に基づき、当該展開された面に隣接し、次に展開を行う面を決定する第５の過程とをコンピュータに実行させるためのコンピュータプログラムであって、展開可能なすべての面が展開されるまで、前記第４乃び第５の過程をこの順に繰り返し、前記第４の過程で展開された面に隣接する面のうち、該展開された面との境界となる稜線の長さが最も大きくなる面を、前記第５の過程における展開を行う面として決定する処理をコンピュータに実行させることを特徴とするコンピュータプログラムである。
【００１６】
【発明の実施の形態】
以下、本発明の実施の形態について、図を参照して説明する。図１は、本発明にかかる立体の展開図作成装置（コンピュータ）１００の構成の一実施の形態を示すブロック図であり、ＣＰＵ（Central Processing Unit：中央演算処理装置）等からなる制御部（座標抽出手段、面抽出手段、稜線抽出手段、展開手段、決定手段）１０４、立体の（３次元）データ１０６ａを格納する記憶部１０６、各種画面表示を行う表示部（ディスプレイ）１０２を備える。
【００１７】
また、図２〜図４は、本発明にかかる立体の展開図作成装置により、もとの立体から展開図が作成される過程を視覚的に表したものである。なお、以下では、立体が４面体である場合を例として説明するが、本発明はあらゆる多面体に適用可能である。
【００１８】
図２において、まず、制御部１０４は、展開図の作成対象となる立体（４面体）の３次元データを取得する（図２（１））。次に、制御部は、取得したデータから、この立体を構成する頂点（識別番号として１〜４がそれぞれ割当てられる）の３次元座標を抽出する（図２（２））。さらに、制御部は、３個以上の頂点で構成され各頂点の識別番号と関連付けられている面（識別番号としてＡ〜Ｄがそれぞれ割当てられる）の情報を抽出する（図２（３））。例えば、頂点１、２、３により構成される面Ａは、面Ａ（１、２、３）のように各頂点の識別番号に関連付けられている。他の面Ｂ〜Ｄも同様である。
【００１９】
続いて、制御部は、稜線（Edge）の情報を抽出する（図２（４））。ここで稜線とは、隣接する２つの面の境界に位置して各面の端縁を形成するものであり、これら２つの面と関連付けられている。例えば、面Ａの端縁を形成する稜線はＥ１〜Ｅ３であり、このうち稜線Ｅ１は隣接する面Ａ，Ｂの境界に位置している。従って、稜線Ｅ１は、Ｅ１（Ａ，Ｂ）のように各面Ａ、Ｂの識別番号に関連付けられる。他のＥ２〜Ｅ６も同様である。なお、このようにして稜線を特定することは、ＣＧ（computer graphics）の分野における「Half Edge構造」として知られている。
【００２０】
次に制御部は、最初に展開を行う面を所定の方法で決定し（ランダムでもよい）、その面を構成する頂点の座標を２次元座標（ｘ−ｙ座標）に変換する（図３（５））。例えば、面Ａを最初に展開する面とした場合、頂点１、２、３の座標を２次元座標に変換する（頂点１’〜３’）。これにより、面ＡはＡ’としてｘ−ｙ平面上に展開される。ここで、制御部は面Ａ’に対し、展開が終了したことを識別するフラグを適宜関連付ける。
【００２１】
さらに、制御部は、面Ａ’の端縁を形成する稜線Ｅ’１〜Ｅ’３を取得し、これに基づいて次に展開を行う面を決定する（図３（６））。ここで、稜線Ｅ’１〜Ｅ’３は、頂点１、２、３が座標変換されるのに応じて稜線Ｅ１〜Ｅ３がｘ−ｙ平面上に座標変換されたものである。そして、各稜線Ｅ’１〜Ｅ’３の情報には、上記したように面Ａ’に隣接する面Ｂ〜Ｄが特定されているので（例えば、稜線Ｅ’１は面Ａ，Ｂの境界に、稜線Ｅ’２は面Ａ，Ｄの境界に、稜線Ｅ’３は面Ａ，Ｃの境界に位置する）、これらの面Ｂ〜Ｄの中から次に展開を行う面Ｃが所定の方法で決定される。なお、上記フラグが付けられた面（Ａ’）は、次に展開を行う面の候補から除外されるようになっている。
【００２２】
次に、制御部は、面Ｃに対し、図３（５）と同様にして頂点の座標を２次元座標（ｘ−ｙ座標）に変換する（図３（７））。ここでは、頂点２，３は既に座標変換されているので、頂点４を座標変換する（頂点４’）。そして、制御部は、面Ｃをｘ−ｙ座標（２次元）に変換した面Ｃ’の端縁を形成する稜線Ｅ’４、Ｅ’６（Ｅ’３は共通なので省略する）と、既に展開された面Ａ’の端縁を形成する稜線Ｅ’１、Ｅ’２とが交差するか否かを判定し、交差しない場合は、面ＣがＣ’として実際にｘ−ｙ平面上に展開され、適宜上記フラグが関連付けられる。なお、図において、各稜線は（始点と終点を有する）線分であるので、平行でなくとも交差していない。一方、交差する場合は面Ｃは展開不能とされ、代わりに別の面Ｂ、Ｄが次に展開を行う面に決定される。なお、頂点４’の座標は、既に座標変換された頂点２、３’の座標と、予め既知の稜線Ｅ’３、Ｅ’４、Ｅ’６の長さ（座標変換後の稜線の長さは、もとの稜線の長さと同一である）から幾何学的に求めることができる。
【００２３】
以下、制御手段は、残りの面Ｂ、Ｄの展開を行う。つまり、図３（６）と同様にして、既に展開された面Ａ’（又はＣ’）の端縁を形成する稜線情報に基づいて、次に展開を行う面（例えば面Ｂ）を決定する。そして、面Ｂを構成する頂点の座標を２次元座標に変換し、面Ｂを展開する（図４（８））。ここで、図に示したように面Ｂを面Ａ’に隣接する面として展開する場合、頂点１、３は既に座標変換されているので、頂点４を座標変換する（頂点４”）。又、面Ｂを面Ｃ’に隣接する面として展開する場合には、頂点３，４は既に座標変換されているので、頂点１を座標変換することになる。
【００２４】
面Ｄの展開についても同様であり、既に展開された面Ａ’（又はＢ’、Ｃ’）の端縁を形成する稜線情報に基づいて、次に展開を行う面Ｄを決定し、面Ｄを構成する頂点の座標を２次元座標に変換し、面Ｄを展開する（図４（９））。このようにして展開図が作成され、それに基づき立体モデルが組み立てられる。
【００２５】
ところで、展開を行おうとする面が展開不能な場合、上述のように他の面の中から次に展開を行う面が決定されるが、この場合は以下のようにして展開が進行する。つまり、図５に示すように、展開済みの面Ｅに隣接する面Ｆを展開しようとすると、展開済みの面の稜線と交差する（図のクロスハッチ領域）ので、この面Ｆは展開不能と判断される。そこで、面Ｅに隣接する他の面Ｇを展開するわけであるが、このようにして図の左方向に展開を進めてゆき、面Ｆが左方向に展開された面に隣接するようになれば、面Ｆを展開できる可能性が生じる。そして、本発明においては、展開を行おうとする面をランダムに、又は所定の規則に従って決定して展開をするので、展開の試行を重ねれば、やがてすべての面が展開される可能性が高くなる。そして、未展開の面が残存するか否かは、上記フラグによって容易に判定することができる。
【００２６】
なお、本発明による展開不能な面の判断方法は、例えば上記図５の面Ｆの頂点が展開済み面の外側領域にある場合でも、上記した稜線同士が交差していれば展開不能であることを検出できるので、面Ｆの頂点座標が展開済みの面に含まれるかにより展開の可否を判定する方法より優れている。
【００２７】
一方、展開の試行を重ねても展開不能な面が残ることがある。図６は、かかる場合を模式的に示した図であり、特に、入り組んだ展開面の中に展開不能な面が残る場合が多い。このような場合、展開済みの面のデータから展開不能な面のデータをすべて取り除き、展開済みの面のみについて第１の展開図を作成する。一方、取り除いた面のデータ（展開前の立体の３次元データからなる）について、図２〜図４と同様にして展開処理を行い、第２の展開図を作成する。展開不能な面が複数であってもこれらが隣接している場合は、１つの群とみなして展開処理を行う。図６においては、展開不能な面（群）が２個あり、両者は隣接していないので、各群について別個に展開処理を行い、それぞれ展開図を作成することになる。そして、これら複数の展開図に基づき、それぞれ別個に立体モデルを組み立てた後、各モデルをつなぎ合わせて全体の立体モデルが完成する。
【００２８】
なお、上記した展開図から立体モデルを組み立てる際、切り離された面のうち、どの面の端線同士をつなぎ合わせるかの対応関係が表示されていれば、組み立て作業が容易になる。又、切り離された面の端線同士をつなぐための「のりしろ」を設けると、さらに組み立て作業が容易になる。このようなことから、本発明においては、図７に示す処理を行うこともできる。
【００２９】
この図は上記４面体の展開図を示しており、面Ａ〜Ｄで構成されている。そして、面Ｂ―Ｄ、面Ｂ−Ｃ、面Ｃ−Ｄ間が切り離されている。又、各稜線Ｅ１〜Ｅ６のうち、Ｅ１〜Ｅ３は隣接する２つの面の境界となっているが、Ｅ４〜Ｅ６は切り離された面にそれぞれ位置している（例えば、Ｅ４が２本ある）。そこで、上記制御部は、各稜線について、稜線が隣接する２つの面の境界に位置するか否かを面及び稜線の位置情報に基づいて判定し、隣接する２つの面の境界に位置しない稜線（Ｅ４〜Ｅ６）を抽出する。そして、これら稜線Ｅ４〜Ｅ６に割当てた所定の記号（対応情報）を、各稜線が属する面の端縁位置に表示する。例えば、稜線Ｅ５は面Ｂ、Ｄの上端縁を形成しているので、当該端縁に記号（Ｅ５）をそれぞれ表示する。このようにすると、立体モデルを組み立てる際、作業者は同一記号Ｅ５同士が合わさるよう、面ＢとＤの端線をつなぎ合わせればよいことがわかるので、作業が容易になる。なお、対応情報としては、数字、文字等何でもよい。
【００３０】
さらに、制御手段は、上記同一記号を表示した端縁のいずれか一方にのりしろ領域２０、２１、２２を形成する処理を行うこともできる。のりしろ領域は、例えば予め規定したのりしろ幅ｗで、のりしろ長さが対象となる面の端縁の長さに等しくなるように形成すればよい。またのりしろ領域の側端部を、開放端に向かって幅狭になるよう所定の角度（図では４５°）をもたせてもよい。これらの処理は予め定めたプログラムに従って自動的に実行される。
【００３１】
なお、本発明においては、図８に示すようにして、最初に展開を行う面を決定することもできる。図８は、六角柱の展開図を作成する場合に、最初に展開する面を示している。
【００３２】
この図において、各面はそれぞれ３つの頂点で構成された三角形からなるものとし、六角形部分から展開を始めるとする。この六角形部分には三角形からなる４つの面Ｇ〜Ｊが含まれており、いずれの面を最初の展開面に選ぶかによって、展開図が異なる場合がある。図９は得られた展開図を示し、図９（１）の場合には、六角形部分の各面Ｇ〜Ｊは切り離されておらず、この部分に継ぎ目が生じないので最も好ましい。一方、図９（２）の場合には、面Ｇ―Ｈ間が切り離されており、組み立ての際、この部分（同一平面上）に継ぎ目が生じるので好ましくない。そして、図９（２）のような展開図が作られる条件が経験則からわかっている。
【００３３】
つまり、図８に戻り、最初の展開面として、その面に隣接する面のうち２つ以上が同一平面上にあるものを除くと、図９（１）のような好ましい展開図が得られる可能性が高くなる。例えば、面Ｇは、隣接する面Ｋ及びＬと９０°の角をなし、面Ｉとのみ同一平面（１８０°）にあるので、最初の展開面の候補となる。一方、面Ｈは、隣接する２つの面Ｇ及びＩと同一平面にあるので、最初の展開面から除外する。なお、ある面と隣接面とのなす角は、各面の情報から求められる。
【００３４】
又、本発明においては、図１０に示すようにして、次に展開を行う面を決定することもできる。この決定方法によれば、経験上、展開不能な面が生じ難いことがわかっている。
【００３５】
この図において、いま面Ｋを展開したとする。次に展開を行う面としては、面Ｌ、Ｍ、Ｎが候補となる。ここで、各面Ｌ、Ｍ、Ｎと展開した面Ｋとのなす角は、それぞれ１８０°、−９０°、９０°である。なお、谷折される面間の角を「−」で表すものとする。このような場合、展開した面Ｋとのなす角が最も大きい面Ｌを次の展開面に選ぶと、展開不能な面が生じ難くなる。
【００３６】
さらに、図１１に示すような立体（長三角錐）を展開する場合には、以下の方法で次に展開を行う面を決定することが好ましい。この決定方法によれば、経験上、展開図を台紙から無駄なく切り抜くことができ、又、切り抜き作業が容易になることがわかっている。特に、細長形状の立体を展開する場合に有効である。なお、この長三角錐は面Ｐ〜Ｓから構成されている。
【００３７】
図１２は、図１１の長三角錐の展開図を示しているが、図１２（１）の場合には、展開図全体の大きさは小さいので台紙から無駄なく切り抜くことができる。又、切り抜き長さが最小となるので切り抜き作業が容易になる。一方、図１２（２）の場合には、展開図全体の大きさが大きくなり、より大きな台紙が必要となるとともに、切り抜き長さが長くなるので切り抜き作業が煩雑となり好ましくない。
【００３８】
図１３は、図１２（１）に示す展開図を得るための方法であり、いま面Ｐを展開したとすると、次に展開を行う面としては、面Ｑ、Ｒ、Ｓが候補となる。ここで、各面Ｑ、Ｒ、Ｓと展開した面Ｐとの間に位置する稜線の長さに着目すると、面Ｑ（Ｒ）との間の稜線の長さの方が長い。このような場合、この稜線が最も長い面Ｑ（Ｒ）を次の展開面とすると、図１２（１）に示す好ましい展開図が得られ易くなる。
【００３９】
本発明は、上記した各実施形態には限定されない。例えば、予め隣接する２つの面を切り離すための稜線、あるいは切り離さない稜線を指定しておくこともできる。前者の場合、指定された稜線に隣接する面が次に展開可能な面の候補から除外され、後者の場合、指定された稜線に隣接する面が次に展開可能な面の候補として優先的に選択され、以後の展開図の作成処理が進行する。
【００４０】
なお、本発明の立体の展開図作成装置は、コンピューターと、そのコンピューターによって実行されるソフトウェアプログラムとによって実現することができ、上記装置内で実行されるソフトウェアプログラムは、コンピューター読み取り可能な記憶媒体あるいは通信回線を介して配布することが可能である。
【００４１】
【発明の効果】
以上説明したように、本発明によれば、所定の面の頂点座標が２次元座標に変換されて展開されると、その面に属する稜線の情報に基づいて隣接する面を次に展開を行う面として決定するので、これらの処理を展開可能な面が展開されるまで繰り返すことで、コンピュータ上で自動的に展開図を作成できる。
【図面の簡単な説明】
【図１】  本発明の立体の展開図作成装置の構成を示すブロック図である。
【図２】  もとの立体から展開図が作成される過程を視覚的に表した模式図である。
【図３】  図２に続く図である。
【図４】  図３に続く図である。
【図５】  展開を行う面と展開済みの面との位置関係を示す図である。
【図６】  展開不能な面が残った状態を模式的に示す図である。
【図７】  展開図中に対応情報及びのりしろを付加する態様を示す図である。
【図８】  最初の展開面を決定する方法を示す図である。
【図９】  図８に示した立体の展開図である。
【図１０】  次に展開する面を決定する方法を示す図である。
【図１１】  展開対象の立体を示す図である。
【図１２】  図１１に示した立体の展開図である。
【図１３】  図１１に示した立体において、次に展開する面を決定する方法を示す図である。
【符号の説明】
１〜４                        頂点の座標
１’〜４’                    座標変換後の頂点の座標
Ａ〜Ｓ                        面
Ａ’〜Ｓ’                    展開後の面
Ｅ１〜Ｅ６                    稜線
２０〜２２                    のりしろ
【図１】
0004663149.tif 000002
【図２】
0004663149.tif 000003
【図３】
0004663149.tif 000004
【図４】
0004663149.tif 000005
【図５】
0004663149.tif 000006
【図６】
0004663149.tif 000007
【図７】
0004663149.tif 000008
【図８】
0004663149.tif 000009
【図９】
0004663149.tif 000010
【図１０】
0004663149.tif 000011
【図１１】
0004663149.tif 000012
【図１２】
0004663149.tif 000013
【図１３】
0004663149.tif 000014