(57)【特許請求の範囲】
【請求項１】
図形の特徴点を抽出し、
所定座標系における座標軸方向に、前記特徴点で前記図形を含む領域を分割領域へ分割し、
前記分割領域の数、および前記特徴点の間隔に基づき、前記座標軸方向において前記分割領域それぞれに割り当てる値を算出し、
各前記分割領域の前記座標軸方向における大きさを前記値に合わせて変更する
処理を情報処理装置に実行させる図形処理プログラム。
【請求項２】
前記図形を、前記図形の中心線を用いて表す
処理を前記情報処理装置に実行させる請求項１に記載の図形処理プログラム。
【請求項３】
前記図形の曲げ部分については、該曲げ部分に接続された二つの直線部分の中心線を曲げ部分の方向に伸ばすことにより該曲げ部分を表すとともに、曲げ部分の方向に伸びた二つの中心線の交点を前記特徴点とする処理を
前記情報処理装置に実行させる請求項１または２に記載の図形処理プログラム。
【請求項４】
前記図形を、前記所定座標系の各面に投影した投影図形について、前記特徴点を抽出し、前記分割領域へ分割し、前記値を算出し、前記値に合わせて変更する各処理を
前記情報処理装置に実行させる請求項１〜３の何れか１項に記載の図形処理プログラム。
【請求項５】
図形の特徴点を抽出する抽出部と、
前記抽出部により、所定座標系における座標軸方向に、前記特徴点で前記図形を含む領域を分割領域へ分割する分割部と、
前記分割部により分割した分割領域の数、および前記特徴点の間隔に基づき、前記座標軸方向において前記分割領域それぞれに割り当てる値を算出する算出部と、
各前記分割領域の前記座標軸方向における大きさを前記値に合わせて変更する変更部と
を有することを特徴とする情報処理装置。
【請求項６】
情報処理装置が実行する図形処理方法であって、
図形の特徴点を抽出し、
所定座標系における座標軸方向に、前記特徴点で前記図形を含む領域を分割領域へ分割し、
前記分割領域の数、および前記特徴点の間隔に基づき、前記座標軸方向において前記分割領域それぞれに割り当てる値を算出し、
各前記分割領域の前記座標軸方向における大きさを前記値に合わせて変更する
ことを特徴とする図形処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、抽象化プログラム、情報処理装置および抽象化方法に関する。
【背景技術】
【０００２】
従来、人間や動物などの生き物や、自動車、飛行機などの人工物のように、様々な曲面が、複雑に組み合わされたような形状データを効果的に圧縮する技術が知られている。
【０００３】
また、３次元Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ（ＣＡＤ）において、次のような技術が知られている。すなわち、直交座標系の所定の面に、スケールが等倍の曲管のモデル、若しくはスケールが拡大または縮小された曲管のモデルを投影することにより、管一品図の作図エリアに投影図（投影図形）を作成する技術が知られている。なお、曲管とは、曲りがある配管のことを指す。また、管一品図とは、配管を曲げ加工するための図面のことを指す。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−９７６４５号公報
【特許文献２】特開平１０−３３４２１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来の技術では、特徴部分が小さいにもかかわらず、全体が大きな曲管のモデルを作成した場合には、投影図から、全体と特徴との双方を容易に確認することができないという問題がある。
【０００６】
上記の問題について説明する。図２０、図２１、図２２は従来の技術の問題点を説明するための図である。図２０には、曲管のモデルの一例である曲管モデル９１が示されている。図２１には、管一品図の作図エリア９０に、スケールが拡大された曲管モデル９１の投影図が作成された場合の一例が示されている。図２１の例では、スケールが拡大されたため、特徴部分である曲げ部分９２については、ユーザは、確認することができる。しかしながら、図２１の例では、スケールが拡大されたため、曲管モデル９１の一部分９３は、作図エリア９０からはみ出す。このため、ユーザは、曲管のモデル９１全体を確認することができない。
【０００７】
一方、図２２には、作図エリア９０に、スケールが縮小された曲管モデル９１の投影図が作成された場合の一例が示されている。図２２の例では、スケールが縮小されているため、作図エリア９０内に曲管モデル９１全体が収まる。このため、ユーザは、曲管モデル９１全体を確認することができる。しかしながら、図２２の例では、スケールが縮小されたため、曲げ部分９２については、特徴部分であるにもかかわらず、表示が小さい。このため、図２２の例では、ユーザは、この曲げ部分９２を確認し難い。
【０００８】
このようなことから、ユーザによる曲管全体の確認のし易さと、ユーザによる曲管の特徴部分の確認のし易さとは、互いにトレードオフの関係にあるといえる。特に、曲管全体に比べて、特徴部分が小さい場合には、単にスケール変換しただけでは、ユーザは、全体と特徴との双方を確認することができない。
【０００９】
開示の技術は、上記に鑑みてなされたものであって、全体と特徴との双方を確認することが可能な図形を得ることができる抽象化プログラム、情報処理装置および抽象化方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本願の開示する抽象化プログラムは、一つの態様において、図形の抽象化を行う抽象化プログラムである。かかる抽象化プログラムは、前記図形の特徴点を抽出し、前記図形が抽象化される座標系における座標軸方向に前記特徴点で前記図形を含む領域を分割する処理を情報処理装置に実行させる。また、本願の開示する抽象化プログラムは、前記分割した抽象化前の領域の数、および前記特徴点の間隔に基づき、抽象化後の領域の大きさを算出する処理を情報処理装置に実行させる。また、本願の開示する抽象化プログラムは、前記抽象化後の領域の大きさに基づき、前記抽象化後の領域を前記図形に割り当て、前記図形を前記抽象化後の領域に合わせてサイズを変更する処理を情報処理装置に実行させる。
【発明の効果】
【００１１】
本願の開示する抽象化プログラムの一つの態様によれば、全体と特徴との双方を確認することが可能な図形を得ることができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施例１に係る情報処理装置の構成を示す図である。
【図２】図２は、曲管モデルの一例を示す図である。
【図３】図３は、中心線の一例を説明するための図である。
【図４】図４は、曲管モデルが示す曲管の曲げ部分の中心線の一例を説明するための図である。
【図５】図５は、実施例１に係る投影部の処理を説明するための図である。
【図６】図６は、実施例１に係る投影部の処理を説明するための図である。
【図７】図７は、実施例１に係る投影部の処理を説明するための図である。
【図８】図８は、作図エリアのグリッド数の一例を示す図である。
【図９】図９は、投影図作成対象として決定されたＸＺ平面上の投影図の一例を示す図である。
【図１０】図１０は、図９の例での分割数を説明するための図である。
【図１１】図１１は、実施例１に係る割当部による割り当ての一例を説明するための図である。
【図１２】図１２は、実施例１に係る割当部による分割数ｎ＝１の場合の割り当ての一例を説明するための図である。
【図１３】図１３は、実施例１に係る変更部による処理の一例を説明するための図である。
【図１４】図１４は、実施例１に係る変更部による処理の一例を説明するための図である。
【図１５】図１５は、実施例１に係る変更部による処理の一例を説明するための図である。
【図１６】図１６は、実際の寸法が付加された図形の一例を示す図である。
【図１７】図１７は、実施例１に係る抽象化処理の手順を示すフローチャートである。
【図１８】図１８は、実施例１に係る抽象化処理の手順を示すフローチャートである。
【図１９】図１９は、抽象化プログラムを実行するコンピュータを示す図である。
【図２０】図２０は、従来の技術の問題点を説明するための図である。
【図２１】図２１は、従来の技術の問題点を説明するための図である。
【図２２】図２２は、従来の技術の問題点を説明するための図である。
【発明を実施するための形態】
【００１３】
以下に、本願の開示する抽象化プログラム、情報処理装置および抽象化方法の各実施例を図面に基づいて詳細に説明する。なお、各実施例は開示の技術を限定するものではない。
【実施例１】
【００１４】
［情報処理装置の構成］
図１は、実施例１に係る情報処理装置の構成を示す図である。本実施例に係る情報処理装置１０は、表示させる曲管モデルを中心線で表すことで曲管モデルを抽象化する。また、本実施例に係る情報処理装置１０は、曲管モデルの特徴部分である曲げ部分が所定の投影面に投影された場合に、目立たなくなることを抑制するものである。
【００１５】
図１に示すように、情報処理装置１０は、入力部１１と、表示部１２と、記憶部１３と、制御部１４とを有する。
【００１６】
入力部１１は、各種情報を制御部１４に入力する。例えば、入力部１１は、ユーザから、後述の抽象化処理を実行する指示を受け付けて、受け付けた指示を制御部１４に入力する。入力部１１は、マウスやキーボードなどの操作受付デバイスである。
【００１７】
表示部１２は、各種の情報を表示する。例えば、表示部１２は、後述の変更部１４ｇの制御により、作図エリアに作成された曲管の図面を表示する。表示部１２のデバイスの一例としては、ＬＣＤ（Liquid  Crystal  Display）やＣＲＴ（Cathode  Ray  Tube）などの表示デバイスが挙げられる。
【００１８】
記憶部１３は、各種情報を記憶する。例えば、記憶部１３は、曲管のモデルである曲管モデル１３ａを記憶する。図２は、曲管モデルの一例を示す図である。図２に示すように、曲管モデル１３ａが示す曲管は、曲げ部分１７がある配管である。
【００１９】
記憶部１３は、例えば、フラッシュメモリなどの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。なお、記憶部１３は、上記の種類の記憶装置に限定されるものではなく、ＲＡＭ（Random  Access  Memory)、ＲＯＭ（Read  Only  Memory)であってもよい。
【００２０】
制御部１４は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部１４は、図１に示すように、取得部１４ａと、抽出部１４ｂと、投影部１４ｃと、分割部１４ｄと、算出部１４ｅと、割当部１４ｆと、変更部１４ｇとを有する。
【００２１】
取得部１４ａは、各種情報を取得する。例えば、取得部１４ａは、記憶部１３から曲管モデル１３ａを取得する。
【００２２】
抽出部１４ｂは、各種情報を抽出する。例えば、抽出部１４ｂは、曲管モデル１３ａに含まれる曲管の中心線を抽出する。図３は、中心線の一例を説明するための図である。図３の例では、曲管モデル１３ａが示す曲管の中心線２０が示されている。本実施例では、中心線２０を用いて、曲管モデル１３ａが示す曲管を抽象化する。これにより、曲管の外形を投影する場合と比較して、ユーザにとって曲管の経路を把握しやすくなる図形を提供することが可能となる。
【００２３】
ここで、特徴部分である曲げ部分の中心線の一例について説明する。図４は、曲管モデルが示す曲管の曲げ部分の中心線の一例を説明するための図である。図４の例では、曲管は、曲げ部分１７ａ、１７ｂを有する。また、図４の例では、曲げ部分１７ａは、２つの円筒形状１８ａ、１８ｂに接続されている。また、図４の例では、曲げ部分１７ｂは、２つの円筒形状１８ｂ、１８ｃに接続されている。
【００２４】
図４の例では、抽出部１４ｂは、曲げ部分１７ａに接続された２つの直線部分である２つの円筒形状１８ａ、１８ｂの中心線を曲げ部分１７ａの方向に伸ばし交差位置で接続することにより、曲げ部分１７ａを抽象化する。また、図４の例では、抽出部１４ｂは、曲げ部分１７ｂに接続された２つの直線部分である２つの円筒形状１８ｂ、１８ｃの中心線を曲げ部分１７ｂの方向に伸ばし交差位置で接続することにより、曲げ部分１７ｂを抽象化する。なお、曲げ部分の角度が１８０度以上の場合には、抽出部１４ｂは、曲げ部分を、複数の円筒形状が接続された部分とみなし、各円筒形状の中心線を交差位置で接続することで、曲げ部分を抽象化することができる。
【００２５】
また、抽出部１４ｂは、曲げ部分を示す点および投影図の端部を示す点である特徴点を抽出する。ここで、特徴点について説明する。図４の例では、曲げ部分１７ａの方向に伸びた二つの中心線の交点１７ｃを、特徴点として抽出する。また、図４の例では、抽出部１４ｂは、曲げ部分１７ｂの方向に伸びた二つの中心線の交点１７ｄを、特徴点として抽出する。また、抽出部１４ｂは、投影図の端部を示す点を、特徴点として抽出する。
【００２６】
投影部１４ｃは、中心線を直交座標計の各面に投影し、投影した結果から、作図エリアに作成する投影図の投影対象の面を決定する。図５〜図７を参照して、投影部１４ｃの処理の一例について説明する。図５〜図７は、実施例１に係る投影部の処理を説明するための図である。図５に示すように、投影部１４ｃは、曲管モデル１３ａが示す曲管の中心線２０を、直交座標計のＸＺ平面、ＹＺ平面、ＸＹ平面に投影する。図６には、投影部１４ｃによる各面の投影結果が示されている。図６の例では、ＸＺ平面に投影された中心線２０の投影図２０ｘｚが示されている。また、図６の例では、ＹＺ平面に投影された中心線２０の投影図２０ｙｚが示されている。また、図６の例では、ＸＹ平面に投影された中心線２０の投影図２０ｘｙが示されている。
【００２７】
そして、投影部１４ｃは、複数の投影図の各々を含む各平面の中から、図形の長さが最も長い投影図を含む平面を、基準面として選択する。例えば、投影部１４ｃは、ある投影図を含む平面について、その平面上の二つの座標軸の方向のそれぞれについて、投影図が示す図形の長さを算出する。そして、投影部１４ｃは、二つの座標軸の方向のそれぞれについて算出した図形の長さのうち、長いほうの長さを、当該投影図の図形の長さとして決定する。このような処理を、投影部１４ｃは、全ての平面について行う。このようにして、投影部１４ｃは、全ての平面について、投影図の図形の長さを算出する。
【００２８】
そして、投影部１４ｃは、複数の平面の中から、図形の長さが最も長い投影図を含む平面を、基準面として選択する。ここで、図形の長さが最も長い投影図を含む平面が複数存在する場合には、投影部１４ｃは、図形の長さが最も長い投影図を含む平面の中から、曲げ部分を有する投影図を含む平面を、基準面として選択する。また、曲げ部分を有する投影図を含む平面が複数存在する場合には、投影部１４ｃは、曲げ部分を有する投影図の平面の中から、曲げ部分の数が最も多い平面を、基準面として選択する。なお、基準面は、正面とも称される。
【００２９】
図６の例では、投影部１４ｃは、まず、投影図２０ｘｚ、２０ｙｚ、２０ｘｙのそれぞれを含む平面の中から、図形の長さが最も長い投影図２０ｘｚ、２０ｘｙを含む各平面を選択する。そして、図６の例では、投影部１４ｃは、投影図２０ｘｚ、２０ｘｙの中から、曲げ部分２１ａ、２１ｂを有する投影図２０ｘｚを含むＸＺ平面を、基準面として選択する。
【００３０】
また、投影部１４ｃは、特徴部分である曲げ部分を有する投影図を含む全ての平面を、投影図作成対象の平面として決定する。
【００３１】
図６の例では、投影部１４ｃは、投影図２０ｘｚ、２０ｙｚ、２０ｘｙの平面の中から、曲げ部分２１ａ、２１ｂを有する投影図２０ｘｚを含むＸＺ平面を、投影図作成対象の平面として決定する。
【００３２】
投影部１４ｃが投影図作成対象の平面を決定する場合の他の例について説明する。図７は、投影部１４ｃが投影図作成対象の平面を決定する場合の他の例を説明するための図である。図７の例では、ＸＺ平面に投影された中心線の投影図２２ｘｚが示されている。また、図７の例では、ＹＺ平面に投影された中心線の投影図２２ｙｚが示されている。また、図７の例では、ＸＹ平面に投影された中心線の投影図２２ｘｙが示されている。また、図７の例では、投影図２２ｘｚは、曲げ部分２３ａを有する。また、図７の例では、投影図２２ｙｚは、曲げ部分２３ｂを有する。また、図７の例では、投影図２２ｘｙは、曲げ部分２３ｃを有する。それゆえ、図７の例では、投影部１４ｃは、投影図２１ｘｚ、２１ｙｚ、２１ｘｙのそれぞれを含むＸＺ平面、ＹＺ平面、ＸＹ平面を、投影図作成対象の平面として決定する。
【００３３】
分割部１４ｄは、特徴点で、投影図を含む領域を分割する。例えば、分割部１４ｄは、投影部１４ｃで投影図作成対象として決定された平面の各々で、下記の処理を行う。すなわち、分割部１４ｄは、平面上の二つの座標軸に、特徴点を投影する。そして、分割部１４ｄは、各座標軸に投影された特徴点の個数の計数を行う。そして、分割部１４ｄは、各座標軸の方向の分割数ｎを、［各座標軸に投影された特徴点の個数−１］とする。そして、分割部１４ｄは、各座標軸の方向の分割数ｎで、投影図を含む領域を特徴点で分割する。
【００３４】
算出部１４ｅは、各座標軸ごとに、各領域に割り当てる値を算出する。例えば、算出部１４ｅは、投影対象先である作図エリアの各座標Ｘ軸、Ｙ軸、Ｚ軸ごとのグリッド数ｘ、ｙ、ｚを取得する。かかる取得方法としては、例えば、算出部１４ｅは、管一品図を作成するためのアプリケーションに問い合わせることでグリッド数を取得してもよいし、予め記憶手段１３の所定の領域に記憶されたグリッド数を読み出すようにしてもよい。なお、グリッド数は、方眼数とも称される。そして、算出部１４ｅは、平面上の各座標軸ごとに、以下の式（１）により、値Ｄを算出する。
【数１】
0005652164.tif 000002
ただし、Ｖは、各座標軸のグリッド数であり、ｎは、各座標軸方向の分割数である。
【００３５】
この各座標軸ごとの値Ｄは、分割領域の最小幅となる。なお、値Ｄについては、小数点以下の値は切り捨てることとする。
【００３６】
図８〜図１０を参照して具体例を挙げて説明する。図８は、作図エリアのグリッド数の一例を示す図である。図８の例では、ＸＺ平面において、Ｘ軸のグリッド数ｘが「１２」であり、Ｚ軸のグリッド数ｚが「１０」である。図８の例では、算出部１４ｅは、Ｘ軸のグリッド数ｘを「１２」、Ｚ軸のグリッド数ｚを「１０」として取得する。図９は、投影図作成対象として決定されたＸＺ平面上の投影図の一例を示す図である。図９に示すように、ＸＺ平面は、抽出部１４ｂによって抽出された４つの特徴点３０ａ〜３０ｄを有する投影図３０を含む。図９の例では、分割部１４ｄは、Ｘ軸に投影された特徴点の個数、およびＺ軸に投影された特徴点の個数の計数を行い、Ｘ軸に投影された特徴点の個数「４」、およびＺ軸に投影された特徴点の個数「２」を得る。
【００３７】
図１０は、図９の例での分割数を説明するための図である。図９の例では、分割部１４ｄは、Ｘ軸方向の分割数を「３（４−１）」とし、Ｚ軸方向の分割数を「１（２−１）」とする。この場合、図１０に示すように、Ｘ軸方向の投影図３０を含む領域の分割数は、「３」となり、Ｚ軸方向の投影図３０を含む領域の分割数は、「１」となる。
【００３８】
図８〜図１０の例では、算出部１４ｅは、ＸＺ平面について、上記の式（１）により、Ｘ軸についての値「（１２−（１＋２））÷３＝４」を算出する。また、算出部１４ｅは、ＸＺ平面について、Ｚ軸についての値「（１０−（１））÷１＝９」を算出する。
【００３９】
割当部１４ｆは、各座標軸ごとに、分割された領域の座標軸方向の幅に応じて、抽象化後の投影図の各領域の作図エリア上の幅を割り当てる。例えば、割当部１４ｆは、分割されたｎ個の領域のうち、座標軸方向の幅がｋ番目に狭い幅の領域については、上記の分割領域の最小幅Ｄに「ｋ−１」を加えた値（大きさ）を割り当てる。
【００４０】
図１１は、実施例１に係る割当部による割り当ての一例を説明するための図である。図１１の例では、Ｘ軸方向に、投影図３０を含む領域が３分割されている。図１１の例では、割当部１４ｆは、３分割された３つの領域のうち、Ｘ軸方向の幅が最も狭い幅４０の領域については、上記の図１０の例で得た分割領域の最小幅「３」を割り当てる。また、図１１の例では、割当部１４ｆは、３つの領域のうち、Ｘ軸方向の幅が２番目に狭い幅４１の領域については、上記の図１０の例で得た分割領域の最小幅「３」に「１」を加えた値「４」を割り当てる。また、図１１の例では、割当部１４ｆは、３つの領域のうち、Ｘ軸方向の幅が３番目に狭い幅４２の領域については、上記の図１０の例で得た分割領域の最小幅「３」に「２」を加えた値「５」を割り当てる。
【００４１】
このように、割当部１４ｆは、各座標軸ごとに同様の処理を行って、値を各領域に割り当てる。ただし、分割数ｎ＝１の場合には、割当部１４ｆは、上記の処理は行わずに、次のような処理を行うようにしてもよい。例えば、割当部１４ｆは、曲げ部分において、実際の投影図の座標の比率と同一の比率となるように、分割数ｎ＝１に対応する座標軸方向の領域の大きさを割り当てるようにしてもよい。
【００４２】
図１２は、実施例１に係る割当部による分割数ｎ＝１の場合の割り当ての一例を説明するための図である。図１２の例では、投影図３０の曲げ部分の実際の比率が、Ｘ軸方向Ｘ´：Ｚ軸方向Ｚ´＝１０．００：２０．００という比率であり、曲げ部分のＸ軸方向に対応する領域に割り当てられた値が「３」である場合が示されている。このような場合には、割当部１４ｆは、「３×（２０．００÷１０．００）＝６」の値を、曲げ部分のＺ軸方向に対応する領域に割り当てるようにしてもよい。これにより、曲げ部分の比率が実際の投影図の比率に、より近くなる。なお、このような場合において、割り当てる値が、非負整数でない場合には、小数点以下の値を切り捨てるようにしてもよい。また、割り当てる値が、グリッド数を超える場合は、グリッド数に置き換えるようにしてもよい。
【００４３】
変更部１４ｇは、投影図作成対象の平面ごとに、次のような処理を行う。すなわち、変更部１４ｇは、各座標軸ごとに、投影図の各領域に割り当てられた値に応じた大きさとなるように投影図の各領域のスケールを変更する。例えば、変更部１４ｇは、各座標軸ごとに、投影図の各領域の幅が、割当部１４ｆにより割り当てられた値が示す幅となるように、作図エリア上に通過点を作成する。そして、変更部１４ｇは、作図エリア上で通過点を線分でつなぐ。これにより、曲管モデルが示す曲管の全体と特徴部分である曲げ部分との双方を確認することが可能な図形を得ることができる。また、かかる線分は曲管モデルが示す曲管の中心線に対応する。このような中心線を用いることで、曲管を抽象化することができる。
【００４４】
図１３〜図１５は、実施例１に係る変更部による処理の一例を説明するための図である。図１３の例では、Ｘ軸方向に３分割された３つの領域のうち、Ｘ軸方向の幅が最も狭い幅４０の領域については、上記の図１０の例で得た分割領域の最小幅「３」が割り当てられた場合が示されている。また、図１３の例では、３つの領域のうち、Ｘ軸方向の幅が２番目に狭い幅４１の領域については、上記の図１０の例で得た分割領域の最小幅「３」に「１」を加えた値「４」が割り当てられた場合が示されている。また、図１３の例では、３つの領域のうち、Ｘ軸方向の幅が３番目に狭い幅４２の領域については、上記の図１０の例で得た分割領域の最小幅「３」に「２」を加えた値「５」が割り当てられた場合が示されている。また、図１３の例では、Ｚ軸方向の幅４３の領域に、上記の図１２の例の値「６」が割り当てられた場合が示されている。
【００４５】
このような図１３の例の場合では、変更部１４ｇは、各通過点を、割り当てられた値に応じた作図エリア上の位置に作成する。例えば、図１４に示すように、変更部１４ｇは、Ｘ軸方向の通過点の間隔が、それぞれ、「４」、「３」、「５」となり、かつ、Ｙ軸方向の通過点の間隔が「６」となるように、各通過点を作図エリア７０上に作成する。そして、図１５に示すように、変更部１４ｇは、通過点を線分で結ぶ。これにより、曲管モデルが示す曲管７１の全体と特徴部分である曲げ部分との双方を確認することが可能な図形を得ることができる。
【００４６】
そして、変更部１４ｇは、基準面に含まれる図形が正面図となるように、通過点どうしが線分で結ばれた作図エリアが示す図形を表示部１２に送信する。これにより、表示部１２は、曲管モデルが示す曲管の全体と特徴部分である曲げ部分との双方を確認することが可能な図形を表示する。また、変更部１４ｇは、表示部に図形を送信する際に、実際の寸法を対応する位置に付加することができる。これにより、抽象化された図形であっても、実際の寸法をユーザは認識することができる。図１６は、実際の寸法が付加された図形の一例を示す図である。図１６の例では、Ｘ軸方向の特徴点の実際の間隔が、「４４ｍｍ」、「５８ｍｍ」、「６１０ｍｍ」、「２１０ｍｍ」、「７２ｍｍ」であることを示す。
【００４７】
制御部１４は、例えば、ＡＳＩＣ（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）３４０を有する。これら３００〜３４０の各部は、バス４００を介して接続される。
【００７４】
ＲＯＭ３２０には、上記の実施例１で示す取得部１４ａと、抽出部１４ｂと、投影部１４ｃと、分割部１４ｄと、算出部１４ｅと、割当部１４ｆと、変更部１４ｇと同様の機能を発揮する抽象化プログラムが予め記憶される。すなわち、ＲＯＭ３２０には、図１９に示すように、抽象化プログラム３２０ａが記憶される。なお、抽象化プログラム３２０ａについては、適宜分離しても良い。
【００７５】
そして、ＣＰＵ３１０が、抽象化プログラム３２０ａをＲＯＭ３２０から読み出して実行する。
【００７６】
そして、ＨＤＤ３３０には、曲管モデル３３０ａが設けられる。曲管モデル３３０ａは、図１に示した曲管モデル１３ａに対応する。
【００７７】
そして、ＣＰＵ３１０は、曲管モデル３３０ａを読み出してＲＡＭ３４０に格納する。ＣＰＵ３１０は、ＲＡＭ３４０に格納された曲管モデルデータ３４０ａを用いて、抽象化プログラム３２０ａを実行する。なお、ＲＡＭ３４０に格納される各データは、常に全てのデータがＲＡＭ３４０に格納される必要はなく、処理に必要なデータのみがＲＡＭ３４０に格納されれば良い。
【００７８】
なお、上記した抽象化プログラムについては、必ずしも最初からＨＤＤ３３０に記憶させておく必要はない。
【００７９】
例えば、コンピュータ３００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」にプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。  
【００８０】
さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ３００に接続される「他のコンピュータ（またはサーバ）」などにプログラムを記憶させておく。そして、コンピュータ３００がこれらからプログラムを読み出して実行するようにしてもよい。
【符号の説明】
【００８１】
１０        情報処理装置
１１        入力部
１２        表示部
１３        記憶部
１３ａ      曲管モデル
１４        制御部
１４ａ      取得部
１４ｂ      抽出部
１４ｃ      投影部
１４ｄ      分割部
１４ｅ      算出部
１４ｆ      割当部
１４ｇ      変更部
【図１】
0005652164.tif 000003
【図２】
0005652164.tif 000004
【図３】
0005652164.tif 000005
【図４】
0005652164.tif 000006
【図５】
0005652164.tif 000007
【図６】
0005652164.tif 000008
【図７】
0005652164.tif 000009
【図８】
0005652164.tif 000010
【図９】
0005652164.tif 000011
【図１０】
0005652164.tif 000012
【図１１】
0005652164.tif 000013
【図１２】
0005652164.tif 000014
【図１３】
0005652164.tif 000015
【図１４】
0005652164.tif 000016
【図１５】
0005652164.tif 000017
【図１６】
0005652164.tif 000018
【図１７】
0005652164.tif 000019
【図１８】
0005652164.tif 000020
【図１９】
0005652164.tif 000021
【図２０】
0005652164.tif 000022
【図２１】
0005652164.tif 000023
【図２２】
0005652164.tif 000024