(57)【要約】【課題】従来のＳｎａｐ  ｒｏｕｎｄｉｎｇは、計算処理が複雑であった。【解決手段】元図形情報を受け付ける受付部と、元図形情報を用いて近似図形情報を作成する作成部と、近似図形情報が示す図形を出力する出力部とを備え、作成部は、線分の交点および端点である対象点を検出し、対象点のうちの交点を当該交点に最も近い単位領域の頂点に移動した移動点を取得し、移動点を含むホットポイント領域を作成し、ホットポイント領域と交差する交差線分を検出し、交差線分の各端点と、ホットポイント領域の中心とを結ぶ移動線分を取得する処理を、図形が配置されている２以上の分割領域ごとに行い、近似図形情報を取得する図形情報作成装置により、Ｓｎａｐ  ｒｏｕｎｄｉｎｇの計算処理を、容易に行うことができる。【選択図】図１
2014228888.tif 000002
【特許請求の範囲】
【請求項１】
無限精度で表現される図形を示す情報であり、当該図形を構成する２以上の座標を有する情報である元図形情報を受け付ける受付部と、
前記元図形情報が示す図形が有限精度で表現された図形である近似図形を示す情報であり、当該近似図形を構成する２以上の座標を有する情報である近似図形情報を作成する作成部と、
前記作成部が作成した近似図形情報が示す図形を出力する出力部とを備え、
前記作成部は、
前記元図形情報が示す図形が配置されている領域を含む領域を分割した領域であり、１以上の単位領域を有する領域である２以上の分割領域ごとに、当該分割領域内に存在する点であり、前記元図形情報が示す図形を構成する２以上の線分の交点および当該２以上の線分の端点である１以上の対象点を検出する対象点検出手段と、
前記１以上の対象点のうちの交点を当該交点に最も近い単位領域の頂点に移動した対象点である１以上の移動点を、前記２以上の分割領域ごとに取得する移動点取得手段と、
前記１以上の各端点および各移動点を含む領域である１以上のホットポイント領域を、前記２以上の分割領域ごとに作成するホットポイント領域作成手段と、
前記元図形情報が示す図形を構成する線分であり、前記ホットポイント領域と交差する線分である１以上の交差線分を、前記２以上の分割領域ごとに検出する交差線分検出手段と、
前記１以上の各交差線分の各端点と、当該交差線分が交差するホットポイント領域の中心とを結ぶ線分である２以上の移動線分を、前記２以上の分割領域ごとに取得する移動線分取得手段と、
前記移動線分を示す２以上の座標を有する近似図形情報を作成する近似図形情報作成手段とを備える図形情報作成装置。
【請求項２】
前記移動点取得手段は、
前記１以上の各対象点を当該対象点に最も近い単位領域の頂点に移動した対象点である１以上の移動点を、前記２以上の分割領域ごとに取得する請求項１記載の図形情報作成装置。
【請求項３】
前記作成部は、
前記元図形情報が示す図形を構成する線分であり、分割領域内に存在する線分が対角線となる矩形の領域である交差判定領域と、前記ホットポイント領域とが重なるか否かを、前記２以上の分割領域ごとに判断する判断手段をさらに備え、
前記交差線分検出手段は、
前記判断手段が、前記交差判定領域と前記ホットポイント領域とが重なると判断した場合に、前記１以上の交差線分を、前記２以上の分割領域ごとに検出する請求項１または請求項２記載の図形情報作成装置。
【請求項４】
前記作成部は、
前記近似図形情報の作成に関する処理を、前記２以上の分割領域ごとに並列に行い、近似図形情報を作成する請求項１から請求項３いずれか一項に記載の図形情報作成装置。
【請求項５】
前記作成部は、
前記元図形情報が示す図形が配置されている領域を含む領域を、２以上の分割領域に分割する領域分割手段をさらに備え、
前記作成部は、
前記近似図形情報の作成に関する処理を、前記領域分割手段が分割した２以上の分割領域ごとに行い、近似図形情報を作成する請求項１から請求項４いずれか一項に記載の図形情報作成装置。
【請求項６】
前記作成部は、
前記２以上の各分割領域内の線分の数を用いて、前記分割領域のサイズを決定する分割領域サイズ決定手段をさらに備え、
前記領域分割手段は、
前記元図形情報が示す図形が配置されている領域を含む領域を、前記分割領域サイズ決定手段が決定したサイズの２以上の分割領域に分割する請求項５記載の図形情報作成装置。
【請求項７】
前記分割領域サイズ決定手段は、
前記２以上の各分割領域内の線分の数の平均が予め決められた条件を満たす分割領域のサイズを決定する請求項６記載の図形情報作成装置。
【請求項８】
前記予め決められた条件は、前記線分の数の平均が１０以上２０以下であることである請求項７記載の図形情報作成装置。
【請求項９】
前記分割領域サイズ決定手段は、
前記２以上の各分割領域内の線分の数、前記元図形情報が示す図形を構成する各線分が配置される分割領域の数、前記元図形情報が示す図形を構成するすべての線分の数、前記図形情報が示す図形を構成するすべての線分の長さの合計、前記元図形情報が示す図形が配置されている領域を含む領域の面積のうちのいずれか１以上を用いて、前記分割領域のサイズを決定する請求項６から請求項８いずれか一項に記載の図形情報作成装置。
【請求項１０】
無限精度で表現される図形を示す情報であり、当該図形を構成する２以上の座標を有する情報である元図形情報を受け付ける受付部と、
前記元図形情報が示す図形が配置されている領域を含む領域を、１以上の単位領域を有する領域である２以上の分割領域に分割する分割部とを備え、
前記分割部は、
前記２以上の各分割領域内の線分の数を用いて、前記分割領域のサイズを決定する分割領域サイズ決定手段と、
前記元図形情報が示す図形が配置されている領域を含む領域を、前記分割領域サイズ決定手段が決定したサイズの２以上の分割領域に分割する領域分割手段とを備える領域分割装置。
【請求項１１】
前記分割領域サイズ決定手段は、
前記２以上の各分割領域内の線分の数の平均が予め決められた条件を満たす分割領域のサイズを決定する請求項１０記載の領域分割装置。
【請求項１２】
前記予め決められた条件は、前記線分の数の平均が１０以上２０以下であることである請求項１１記載の領域分割装置。
【請求項１３】
前記分割領域サイズ決定手段は、
前記２以上の各分割領域内の線分の数、前記元図形情報が示す図形を構成する各線分が配置される分割領域の数、前記元図形情報が示す図形を構成するすべての線分の数、前記図形情報が示す図形を構成するすべての線分の長さの合計、前記元図形情報が示す図形が配置されている領域を含む領域の面積のうちのいずれか１以上を用いて、前記分割領域のサイズを決定する請求項１０から請求項１２いずれか一項に記載の領域分割装置。
【請求項１４】
受付部と、作成部と、出力部と、対象点検出手段と、移動点取得手段と、ホットポイント領域作成手段と、交差線分検出手段と、移動線分取得手段と、近似図形情報取得手段とを用いて行われる図形情報作成方法であって、
前記受付部が、
無限精度で表現される図形を示す情報であり、当該図形を構成する２以上の座標を有する情報である元図形情報を受け付ける受付ステップと、
前記作成部が、
前記元図形情報が示す図形が有限精度で表現された図形である近似図形を示す情報であり、当該近似図形を構成する２以上の座標を有する情報である近似図形情報を作成する作成ステップと、
前記出力部が、
前記作成部が作成した近似図形情報が示す図形を出力する出力ステップとを備え、
前記作成ステップは、
前記対象点検出手段が、
前記元図形情報が示す図形が配置されている領域を含む領域を分割した領域であり、１以上の単位領域を有する領域である２以上の分割領域ごとに、当該分割領域内に存在する点であり、前記元図形情報が示す図形を構成する２以上の線分の交点および当該２以上の線分の端点である１以上の対象点を検出する対象点検出ステップと、
前記移動点取得手段が、
前記１以上の対象点のうちの交点を当該交点に最も近い単位領域の頂点に移動した対象点である１以上の移動点を、前記２以上の分割領域ごとに取得する移動点取得ステップと、
前記ホットポイント領域作成手段が、
前記１以上の各端点および各移動点を含む領域である１以上のホットポイント領域を、前記２以上の分割領域ごとに作成するホットポイント領域作成ステップと、
前記交差線分検出手段が、
前記元図形情報が示す図形を構成する線分であり、前記ホットポイント領域と交差する線分である１以上の交差線分を、前記２以上の分割領域ごとに検出する交差線分検出ステップと、
前記移動線分取得手段が、
前記１以上の各交差線分の各端点と、当該交差線分が交差するホットポイント領域の中心とを結ぶ線分である２以上の移動線分を、前記２以上の分割領域ごとに取得する移動線分取得ステップと、
前記近似図形情報作成手段が、
前記移動線分を示す２以上の座標を有する近似図形情報を作成する近似図形情報作成ステップとを備える図形情報作成装置。
【請求項１５】
受付部と、分割部と、分割領域サイズ決定手段と、領域分割手段とを用いて行われる領域分割方法であって、
前記受付部が、
無限精度で表現される図形を示す情報であり、当該図形を構成する２以上の座標を有する情報である元図形情報を受け付ける受付ステップと、
前記分割部が、
前記元図形情報が示す図形が配置されている領域を含む領域を、１以上の単位領域を有する領域である２以上の分割領域に分割する分割ステップとを備え、
前記分割ステップは、
前記分割領域サイズ決定手段が、
前記２以上の各分割領域内の線分の数を用いて、前記分割領域のサイズを決定する分割領域サイズ決定ステップと、
前記領域分割手段が、
前記元図形情報が示す図形が配置されている領域を含む領域を、前記分割領域サイズ決定手段が決定したサイズの２以上の分割領域に分割する領域分割ステップとを備える領域分割方法。
【請求項１６】
コンピュータを、
無限精度で表現される図形を示す情報であり、当該図形を構成する２以上の座標を有する情報である元図形情報を受け付ける受付部と、
前記元図形情報が示す図形が有限精度で表現された図形である近似図形を示す情報であり、当該近似図形を構成する２以上の座標を有する情報である近似図形情報を作成する作成部と、
前記作成部が作成した近似図形情報が示す図形を出力する出力部として機能させるためのプログラムであり、
前記作成部を、
前記元図形情報が示す図形が配置されている領域を含む領域を分割した領域であり、１以上の単位領域を有する領域である２以上の分割領域ごとに、当該分割領域内に存在する点であり、前記元図形情報が示す図形を構成する２以上の線分の交点および当該２以上の線分の端点である１以上の対象点を検出する対象点検出手段と、
前記１以上の対象点のうちの交点を当該交点に最も近い単位領域の頂点に移動した対象点である１以上の移動点を、前記２以上の分割領域ごとに取得する移動点取得手段と、
前記１以上の各端点および各移動点を含む領域である１以上のホットポイント領域を、前記２以上の分割領域ごとに作成するホットポイント領域作成手段と、
前記元図形情報が示す図形を構成する線分であり、前記ホットポイント領域と交差する線分である１以上の交差線分を、前記２以上の分割領域ごとに検出する交差線分検出手段と、
前記１以上の各交差線分の各端点と、当該交差線分が交差するホットポイント領域の中心とを結ぶ線分である２以上の移動線分を、前記２以上の分割領域ごとに取得する移動線分取得手段と、
前記移動線分を示す２以上の座標を有する近似図形情報を作成する近似図形情報作成手段として機能させるためのプログラム。
【請求項１７】
コンピュータを、
無限精度で表現される図形を示す情報であり、当該図形を構成する２以上の座標を有する情報である元図形情報を受け付ける受付部と、
前記元図形情報が示す図形が配置されている領域を含む領域を、１以上の単位領域を有する領域である２以上の分割領域に分割する分割部として動作させるためのプログラムであって、
前記分割部を、
前記２以上の各分割領域内の線分の数を用いて、前記分割領域のサイズを決定する分割領域サイズ決定手段と、
前記元図形情報が示す図形が配置されている領域を含む領域を、前記分割領域サイズ決定手段が決定したサイズの２以上の分割領域に分割する領域分割手段として動作させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一の図形に近似する図形を示す情報を作成する図形情報作成装置等に関するものである。
【背景技術】
【０００２】
従来、平面に配置された線分の頂点を、予め決められた整数格子の頂点に丸めるＳｎａｐ  ｒｏｕｎｄｉｎｇという方法がある（非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“Practical Segment Intersection with Finite Presicion Output”、［online］、John D. Hobby、［２０１３年３月８日検索］、インターネット［URL；http://ect.bell-labs.com/who/hobby/93_2-27.pdf］
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来のＳｎａｐ  ｒｏｕｎｄｉｎｇは、計算処理が複雑であった。
【課題を解決するための手段】
【０００５】
本第一の発明の図形情報作成装置は、無限精度で表現される図形を示す情報であり、図形を構成する２以上の座標を有する情報である元図形情報を受け付ける受付部と、元図形情報が示す図形が有限精度で表現された図形である近似図形を示す情報であり、近似図形を構成する２以上の座標を有する情報である近似図形情報を作成する作成部と、作成部が作成した近似図形情報が示す図形を出力する出力部とを備え、作成部は、元図形情報が示す図形が配置されている領域を含む領域を分割した領域であり、１以上の単位領域を有する領域である２以上の分割領域ごとに、分割領域内に存在する点であり、元図形情報が示す図形を構成する２以上の線分の交点および２以上の線分の端点である１以上の対象点を検出する対象点検出手段と、１以上の対象点のうちの交点を交点に最も近い単位領域の頂点に移動した対象点である１以上の移動点を、２以上の分割領域ごとに取得する移動点取得手段と、１以上の各端点および各移動点を含む領域である１以上のホットポイント領域を、２以上の分割領域ごとに作成するホットポイント領域作成手段と、元図形情報が示す図形を構成する線分であり、ホットポイント領域と交差する線分である１以上の交差線分を、２以上の分割領域ごとに検出する交差線分検出手段と、１以上の各交差線分の各端点と、交差線分が交差するホットポイント領域の中心とを結ぶ線分である２以上の移動線分を、２以上の分割領域ごとに取得する移動線分取得手段と、移動線分を示す２以上の座標を有する近似図形情報を作成する近似図形情報作成手段とを備える図形情報作成装置である。
【０００６】
このような構成により、分割した領域ごとに計算処理を行うことにより、Ｓｎａｐ  ｒｏｕｎｄｉｎｇの計算処理を、容易に行うことができる。
【０００７】
また、本第二の発明の図形情報作成装置は、第一の発明に対して、移動点取得手段は、１以上の各対象点を対象点に最も近い単位領域の頂点に移動した対象点である１以上の移動点を、２以上の分割領域ごとに取得する図形情報作成装置である。
【０００８】
このような構成により、分割した領域ごとに計算処理を行うことにより、Ｓｎａｐ  ｒｏｕｎｄｉｎｇの計算処理を、容易に行うことができる。
【０００９】
また、本第三の発明の図形情報作成装置は、第一または第二の発明に対して、作成部は、元図形情報が示す図形を構成する線分であり、分割領域内に存在する線分が対角線となる矩形の領域である交差判定領域と、ホットポイント領域とが重なるか否かを、２以上の分割領域ごとに判断する判断手段をさらに備え、交差線分検出手段は、判断手段が、交差判定領域とホットポイント領域とが重なると判断した場合に、１以上の交差線分を、２以上の分割領域ごとに検出する図形情報作成装置である。
【００１０】
このような構成により、Ｓｎａｐ  ｒｏｕｎｄｉｎｇの計算処理における計算量を削減することができる。
【００１１】
また、本第四の発明の図形情報作成装置は、第一から第三いずれか１つの発明に対して、作成部は、近似図形情報の作成に関する処理を、２以上の分割領域ごとに並列に行い、近似図形情報を作成する図形情報作成装置である。
【００１２】
このような構成により、Ｓｎａｐ  ｒｏｕｎｄｉｎｇの計算処理を、並列計算により高速に行うことができる。
【００１３】
また、本第五の発明の図形情報作成装置は、第一から第四いずれか１つの発明に対して、作成部は、元図形情報が示す図形が配置されている領域を含む領域を、２以上の分割領域に分割する領域分割手段をさらに備え、作成部は、近似図形情報の作成に関する処理を、領域分割手段が分割した２以上の分割領域ごとに行い、近似図形情報を作成する図形情報作成装置である。
【００１４】
このような構成により、図形が配置されている領域を含む領域を、２以上の分割領域に分割することができる。
【００１５】
また、本第六の発明の図形情報作成装置は、第五の発明に対して、作成部は、２以上の各分割領域内の線分の数を用いて、分割領域のサイズを決定する分割領域サイズ決定手段をさらに備え、領域分割手段は、元図形情報が示す図形が配置されている領域を含む領域を、分割領域サイズ決定手段が決定したサイズの２以上の分割領域に分割する図形情報作成装置である。
【００１６】
このような構成により、分割領域のサイズを、分割領域内の線分の数を用いて自動的に算出することができる。
【００１７】
また、本第七の発明の図形情報作成装置は、第六の発明に対して、分割領域サイズ決定手段は、２以上の各分割領域内の線分の数の平均が予め決められた条件を満たす分割領域のサイズを決定する図形情報作成装置である。
【００１８】
このような構成により、分割領域内の線分の数の平均が予め決められた条件を満たす分割領域のサイズを、自動的に算出することができる。
【００１９】
また、本第八の発明の図形情報作成装置は、第七の発明に対して、予め決められた条件は、線分の数の平均が１０以上２０以下であることである図形情報作成装置である。
【００２０】
このような構成により、分割領域内の線分の数の平均が１０以上２０以下である分割領域のサイズを、自動的に算出することができる。
【００２１】
また、本第九の発明の図形情報作成装置は、第六から第八いずれか１つの発明に対して、分割領域サイズ決定手段は、２以上の各分割領域内の線分の数、元図形情報が示す図形を構成する各線分が配置される分割領域の数、元図形情報が示す図形を構成するすべての線分の数、図形情報が示す図形を構成するすべての線分の長さの合計、元図形情報が示す図形が配置されている領域を含む領域の面積のうちのいずれか１以上を用いて、分割領域のサイズを決定する図形情報作成装置である。
【００２２】
このような構成により、分割領域のサイズを、分割領域内の線分の数、線分が配置される分割領域の数、図形を構成するすべての線分の数、図形を構成するすべての線分の長さの合計、図形が配置されている領域を含む領域の面積のうちのいずれか１以上を用いて自動的に算出することができる。
【００２３】
また、本第十の発明の領域分割装置は、無限精度で表現される図形を示す情報であり、図形を構成する２以上の座標を有する情報である元図形情報を受け付ける受付部と、元図形情報が示す図形が配置されている領域を含む領域を、１以上の単位領域を有する領域である２以上の分割領域に分割する分割部とを備え、分割部は、２以上の各分割領域内の線分の数を用いて、分割領域のサイズを決定する分割領域サイズ決定手段と、元図形情報が示す図形が配置されている領域を含む領域を、分割領域サイズ決定手段が決定したサイズの２以上の分割領域に分割する領域分割手段とを備える領域分割装置である。
【００２４】
このような構成により、図形が配置されている領域を含む領域を、２以上の分割領域に分割することができる。
【００２５】
また、本第十一の発明の領域分割装置は、第十の発明に対して、分割領域サイズ決定手段は、２以上の各分割領域内の線分の数の平均が予め決められた条件を満たす分割領域のサイズを決定する領域分割装置である。
【００２６】
このような構成により、分割領域内の線分の数の平均が予め決められた条件を満たす分割領域のサイズを、自動的に算出することができる。
【００２７】
また、本第十二の発明の領域分割装置は、第十一の発明に対して、予め決められた条件は、線分の数の平均が１０以上２０以下であることである領域分割装置である。
【００２８】
このような構成により、分割領域内の線分の数の平均が１０以上２０以下である分割領域のサイズを、自動的に算出することができる。
【００２９】
また、本第十三の発明の領域分割装置は、第十から第十二いずれか１つの発明に対して、分割領域サイズ決定手段は、２以上の各分割領域内の線分の数、元図形情報が示す図形を構成する各線分が配置される分割領域の数、元図形情報が示す図形を構成するすべての線分の数、図形情報が示す図形を構成するすべての線分の長さの合計、元図形情報が示す図形が配置されている領域を含む領域の面積のうちのいずれか１以上を用いて、分割領域のサイズを決定する領域分割装置である。
【００３０】
このような構成により、分割領域のサイズを、分割領域内の線分の数、線分が配置される分割領域の数、図形を構成するすべての線分の数、図形を構成するすべての線分の長さの合計、図形が配置されている領域を含む領域の面積のうちのいずれか１以上を用いて自動的に算出することができる。
【発明の効果】
【００３１】
本発明による図形情報作成装置等によれば、分割した領域ごとに計算処理を行うことにより、Ｓｎａｐ  ｒｏｕｎｄｉｎｇの計算処理を、容易に行うことができる。
【図面の簡単な説明】
【００３２】
【図１】実施の形態１における図形情報作成装置１のブロック図
【図２】同対象点の検出例を示す図
【図３】同図形情報作成装置１の全体動作について説明するフローチャート
【図４】同分割領域サイズの決定処理について説明するフローチャート
【図５】同元図形情報が示す図形の例を示す図
【図６】同単位領域の例を示す図
【図７】同領域分割の例を示す図
【図８】同領域分割の例を示す図
【図９】同領域分割の例を示す図
【図１０】同分割領域における元図形情報が示す図形の例を示す図
【図１１】同対象点の検出例を示す図
【図１２】同移動点の取得例を示す図
【図１３】同ホットポイント領域の作成例を示す図
【図１４】同交差判定領域の作成例を示す図
【図１５】同移動線分の取得例を示す図
【図１６】同分割点の検出例を示す図
【図１７】実施の形態２における領域分割装置２のブロック図
【図１８】同領域分割装置２の全体動作について説明するフローチャート
【図１９】同分割領域サイズの決定処理について説明するフローチャート
【図２０】上記実施の形態におけるコンピュータシステムの概観図
【図２１】上記実施の形態におけるコンピュータシステムのブロック図
【発明を実施するための形態】
【００３３】
以下、本発明による図形情報作成装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。また、本実施の形態において説明する各情報の形式、内容などは、あくまで例示であり、各情報の持つ意味を示すことができれば、形式、内容などは問わない。
【００３４】
（実施の形態１）
本実施の形態において、１以上の図形を示す元図形情報を用いて、当該１以上の各図形に近似する図形を示す情報である近似図形情報の作成に関する処理を、２以上の分割領域ごとに行い、近似図形情報を作成し、当該近似図形情報が示す１以上の図形を出力する図形情報作成装置１について説明する。
【００３５】
図１は、本実施の形態における図形情報作成装置１のブロック図である。図形情報作成装置１は、受付部１１、作成部１２、出力部１３を備える。また、作成部１２は、分割領域サイズ決定手段１２１、領域分割手段１２２、対象点検出手段１２３、移動点取得手段１２４、ホットポイント領域作成手段１２５、判断手段１２６、交差線分検出手段１２７、移動線分取得手段１２８、近似図形情報作成手段１２９を備える。
【００３６】
ここで、元図形情報とは、無限精度で表現される図形を示す情報である。「無限精度」とは、図形を構成する２以上の座標の桁数が無限であることである。また、当該「桁数」は、通常、小数点以下の桁数であるが、小数点以下を含むすべての桁数であってもよい。
【００３７】
また、当該図形は、通常、一の座標空間上の図形である。当該座標空間は、通常、２次元である。また、当該図形は、通常、線分、または多角形である。また、図形情報は、通常、少なくとも１以上の座標を有する座標集合を、１以上有する。また、当該１つの座標集合は、通常、１つの図形を示す。つまり、例えば、２以上の図形を示す場合、図形情報は、通常、２以上の座標集合を有する。
【００３８】
また、元図形情報は、当該１以上の座標集合により１つの図形を示すことができればよく、データ構造やデータ形式などは、問わない。例えば、１つの矩形を示す場合、元図形情報は、例えば、当該矩形の４つの各頂点の座標を有する座標集合を有していてもよい。また、この場合、元図形情報は、例えば、当該矩形の４つの各辺（線分）の端点の座標を有する座標集合を有していてもよい。また、この場合、元図形情報は、例えば、基準となる１つの頂点の座標と、横幅および縦幅を示す情報とを有する座標集合を有していてもよい。
【００３９】
なお、元図形情報の具体的なデータ形式は、例えば、ＧＤＳ−２や、ＯＡＳＩＳ、ＭＥＢＥＳなどである。
【００４０】
また、近似図形情報とは、有限精度で表現される図形を示す情報である。「有限精度」とは、図形を構成する２以上の座標の桁数が有限であることである。当該「桁数」は、通常、小数点以下の桁数であり、「０」であることが好適である。つまり、近似図形情報が示す図形の線分の端点の座標は、通常、整数である。また、当該図形は、元図形情報が示す１以上の各図形に近似する図形である近似図形である。
【００４１】
なお、近似図形情報が有する情報や具体的なデータ形式などは、元図形情報が有する情報や具体的なデータ形式などと同様であるので、説明を省略する。
【００４２】
受付部１１は、一の図形に近似する図形を作成する対象となる元の図形を示す元図形情報を受け付ける。また、受け付けとは、タッチパネルや、キーボードなどの入力デバイスから入力された情報の取得、光ディスクや磁気ディスク、半導体メモリなどの記録媒体に格納されている情報の取得、有線もしくは無線の通信回線を介して送信された情報の受信などを含む概念である。
【００４３】
また、受付部１１における情報や指示などの入力手段は、メニュー画面によるものや、キーボードなど、何でもよい。受付部１１は、メニュー画面の制御ソフトウェアや、キーボード等の入力手段のデバイスドライバなどで実現され得る。
【００４４】
作成部１２は、元図形情報を用いて、当該元図形情報が示す図形と近似する図形である近似図形を示す近似図形情報を作成する。また、作成部１２は、通常、近似図形情報の作成に関する処理を、２以上の分割領域ごとに並列に行い、近似図形情報を作成する。「近似図形情報の作成に関する処理」とは、後述の対象点検出手段１２３や、移動点取得手段１２４などが、分割領域において行う処理である。また、分割領域とは、元図形情報が示す図形が配置されている領域を含む領域を、予め決められたサイズ（大きさ）で２以上の格子状に等分した領域である。
【００４５】
分割領域は、通常、１または２以上の単位領域を有する正方領域である。単位領域とは、サイズが１×１の領域である。「１×１」とは、縦幅および横幅のサイズが「１」であることを意味する。また、当該「サイズ」とは、通常、座標空間における大きさである。また、正方領域とは、形状が正方形である領域である。また、分割領域の形状は、矩形であればよい。ここで、「元図形情報が示す図形が配置されている領域」を、以下、図形配置領域とする。また、「元図形情報が示す図形が配置されている領域を含む領域」を、以下、分割対象領域とする。
【００４６】
また、「２以上の分割領域ごとに並列に行う」とは、２以上の各分割領域における処理を並列に行うことを意味する。また、作成部１２は、近似図形情報の作成に関する処理を、例えば、当該２以上の分割領域ごとに直列に行ってもよい。「２以上の分割領域ごとに直列に行う」とは、２以上の各分割領域における処理を順に行うことを意味する。
【００４７】
また、元図形情報が示す図形は、通常、一の座標空間上に配置される。従って、図形配置領域および分割対象領域は、通常、当該図形が配置されている座標空間上の領域である。また、当該２つの領域の形状は、通常、矩形である。また、当該矩形は、通常、横および縦が、それぞれ、座標空間の横軸（ｘ軸）および縦軸（ｙ軸）に平行な矩形である。
【００４８】
また、図形配置領域は、通常、当該図形を含む領域であればよい。つまり、図形配置領域は、当該図形が内接する領域のサイズ以上のサイズの領域であればよい。また、図形配置領域のサイズは、分割領域の整数倍のサイズでなくてもよい。また、分割対象領域のサイズは、通常、分割領域の整数倍のサイズである。また、また、分割対象領域と図形配置領域とは、位置およびサイズともに同一であってもよい。
【００４９】
また、作成部１２は、通常、後述の各手段により、近似図形情報を作成する。
【００５０】
分割領域サイズ決定手段１２１は、通常、２以上の各分割領域内の線分の数を用いて、分割領域のサイズを決定する。「分割領域内の線分」とは、分割領域内に存在する線分であり、一部または全部が分割領域内に配置されている線分である。また、当該「２以上の各分割領域内の線分の数」は、分割対象領域内の線分の数であってもよい。また、当該「線分の数」は、２つの線分の交点の数であってもよい。また、「分割領域のサイズを決定する」とは、通常、当該分割領域のサイズを示す情報を取得することである。また、「分割領域のサイズを決定する」ことは、分割対象領域の分割数を決定することであってもよい。また、当該「分割数を決定する」とは、通常、当該分割数を示す情報を取得することである。
【００５１】
具体的に、分割領域サイズ決定手段１２１は、通常、パラメータ「ｘ」を引数とする関数ｆ（ｘ）の値が、予め決められた条件（以下、適宜、線分数条件）を満たす分割領域のサイズを決定する。当該パラメータ「ｘ」は、例えば、２以上の各分割領域内の線分の数や、分割対象領域内の線分の数、２以上の各分割領域内の交点の数、分割対象領域内の交点の数などである。また、当該関数ｆ（ｘ）は、例えば、２以上の各分割領域内の線分の数の平均や、２以上の各分割領域内の交点の数の平均などを算出する関数である。また、当該平均は、通常、算術平均であるが、例えば、加重平均であってもよい。また、当該関数ｆ（ｘ）は、その他の値を算出する関数であってもよい。また、「線分数条件を満たす分割領域のサイズ」とは、例えば、あるサイズで分割対象領域を分割した際の２以上の各分割領域内の線分の数の平均が、線分数条件を満たす場合の、当該分割領域のサイズである。また、線分数条件は、例えば、２以上の各分割領域内の線分の数の平均や、２以上の各分割領域内の交点の数の平均などに関する条件である。また、線分数条件は、通常、２以上の各分割領域内の線分の数の平均が、１０以上２０以下であることが好適である。１０以上２０以下であるとは、概ね１０から概ね２０ぐらいまでの意義である。
【００５２】
ここで、「一の領域内に存在する線分」とは、通常、一部または全部が当該領域内に配置されている線分である。
【００５３】
また、分割領域サイズ決定手段１２１は、例えば、以下いずれかの方法により、分割領域のサイズを決定する。
（Ａ）２以上の各分割領域内の線分の数をカウントする方法
（Ｂ）分割対象領域内の線分の数をカウントする方法
（Ｃ）２以上の各分割領域内の交点の数をカウントする方法
（Ｄ）分割対象領域内の交点の数をカウントする方法
【００５４】
（Ａ）の方法：当該方法は、分割領域のサイズを変えながら分割領域内の線分の数をカウントし、分割領域のサイズを決定する方法である。当該方法の具体的な手順は、例えば、以下のとおりである。
（１）カウンタｉに、１をセットする。
（２）分割対象領域を、ｉ×ｉのサイズの分割領域に分割する。
（３）（２）で分割した分割領域ごとに、分割領域内の線分の数をカウントする。
（４）（３）でカウントした分割領域内の線分の数の平均を算出する。
（５）（４）で算出した平均が、線分数条件を満たす場合は、ｉを分割領域のサイズとして取得し、処理を終了する。
（６）ｉが上限値以上であるか否かを判断する。上限値以上である場合は、処理を終了する。また、上限値未満である場合は、ｉを１インクリメントし、（１）に戻る。
【００５５】
なお、上記（１）において、カウンタｉにセットする値は、２以上であることが好適である。
【００５６】
また、上記（２）において、分割対象領域の位置およびサイズは、図形配置領域と同一の位置およびサイズとする。そして、分割領域のサイズ（ｉ×ｉ）の整数倍でない場合は、整数倍となるように、分割対象領域のサイズを大きくする。
【００５７】
例えば、分割領域のサイズが「１０×１０」であり、分割対象領域のサイズが１２７５×１０２４であるとする。この様な場合、分割領域サイズ決定手段１２１は、まず、分割対象領域の横幅について、「１２７５」よりも大きい１０の倍数のうち最小の値である「１２８０」を算出する。そして、分割領域サイズ決定手段１２１は、次に、分割対象領域の縦幅について、「１０２４」よりも大きい１０の倍数のうち最小の値である「１０３０」を算出する。そして、分割領域サイズ決定手段１２１は、分割対象領域のサイズを「１２８０×１０３０」とする。
【００５８】
また、上記（３）において、分割領域内の線分は、例えば、２本の線分の交点を、一の線分の端点としなくてもよいし、一の線分の端点としてもよい。つまり、例えば、交差している２本の線分について、２本とカウントしてもよいし、当該２本の線分の交点を分割点とし、４本とカウントしてもよい。
【００５９】
また、上記（６）において、ｉの上限値は、通常、図形配置領域の横幅または縦幅のいずれか大きい方である。
【００６０】
例えば、分割領域のサイズが「５×５」であるとする。また、この場合の２以上の各分割領域内の線分の数の平均が「１５」であるとする。また、線分数条件が「１０≦平均数≦２０」であるとする。当該線分数条件は、２以上の各分割領域内の線分の数の平均が１０以上２０以下であることを意味する。この様な場合、分割領域サイズ決定手段１２１は、当該線分の数の平均が、当該線分数条件を満たすと判断する。そして、分割領域サイズ決定手段１２１は、当該分割領域のサイズ「５×５」を取得する。
【００６１】
（Ｂ）の方法：当該方法は、分割対象領域内の線分の数をカウントし、分割領域の分割数を決定する方法である。当該方法の具体的な手順は、例えば、以下のとおりである。
（１）分割対象領域内の線分の数をカウントする。
（２）（１）でカウントした数を、線分数条件を満たす２以上の各整数で割り、商を算出する。
（３）（２）で算出した２以上の商のうち、整数である２以上の商を、分割数として取得する。
（４）（３）で取得した２以上の商が示す整数の範囲のうち、抜けのある１以上の整数を、分割数としてさらに取得する。
【００６２】
なお、上記（１）において、分割対象領域内の線分は、例えば、２本の線分の交点を、一の線分の端点としなくてもよいし、一の線分の端点としてもよい。つまり、例えば、交差している２本の線分について、２本とカウントしてもよいし、当該２本の線分の交点を分割点とし、４本とカウントしてもよい。
【００６３】
また、上記（２）において、線分数条件を満たす２以上の整数は、当該線分数条件が示す整数の範囲の上限および下限のみであってもよい。
【００６４】
また、上記（４）において、分割領域サイズ決定手段１２１は、例えば、取得した分割数から、以下のいずれかの条件（以下、適宜、分割数条件）を満たす分割数のみを取得してもよい。
（ａ）平方数であること
（ｂ）対応する２つの約数の比が、分割対象領域の横幅および縦幅の比と一致または近似すること
（ｃ）分割対象領域内の線分の数を割ったときの商が整数であること
【００６５】
なお、上記（ｂ）において、「対応する２つの約数」とは、積が取得した分割数となる約数の組である。また、（ｂ）において、２つの比が近似するか否かの判断は、例えば、当該２つの比から比の値を算出し、当該比の値の差が予め決められた条件を満たすほど小さいか否かを判断することで行う。
【００６６】
例えば、分割対象領域内の線分の数が「１２０」であるとする。また、線分数条件が「１０≦平均数≦２０」であるとする。この様な場合、分割領域サイズ決定手段１２１は、当該線分の数を、当該線分数条件が示す範囲の上限「２０」と下限「１０」のそれぞれの数で割った値である「６」と「１２」を、分割数として取得する。そして、分割領域サイズ決定手段１２１は、当該「６」から「１２」までの整数のうち、抜けている整数「７」、「８」、「９」、「１０」、「１１」を、分割数としてさらに取得する。
【００６７】
また、当該取得した７個の整数のうち、上記（ａ）の分割数条件を満たす分割数は、「９」である。また、例えば、分割対象領域の横幅および縦幅の比が「２：１」である場合、当該取得した７個の整数のうち、上記（ｂ）の分割数条件を満たす分割数は、「８（４×２）」である。また、当該取得した７個の整数のうち、上記（ｃ）の分割数条件を満たす分割数は、「６」、「８」、「１０」、「１２」である。
【００６８】
なお、（Ｃ）の方法における具体的な手順は、（Ａ）の方法における具体的な手順と同様であり、また、（Ｄ）の方法における具体的な手順は、（Ｂ）の方法における具体的な手順と同様であるので、説明を省略する。
【００６９】
また、分割領域のサイズを決定する場合、分割領域サイズ決定手段１２１は、通常、１つの分割領域のサイズを決定する。また、分割領域の分割数を決定する場合、分割領域サイズ決定手段１２１は、通常、１つの分割領域の分割数を決定する。なお、当該サイズ、および分割数は、通常、１以上の整数である。
【００７０】
また、分割領域サイズ決定手段１２１は、通常、元図形情報から、図形配置領域のサイズまたは図形配置領域を示す座標集合を取得する。また、分割領域サイズ決定手段１２１は、通常、元図形情報から、分割対象領域のサイズまたは分割対象領域を示す座標集合を取得する。
【００７１】
また、一の領域内の線分の数や交点の数などをカウントする方法や手順などは、公知であるので、説明を省略する。
【００７２】
領域分割手段１２２は、分割対象領域を２以上の分割領域に分割する。「分割領域に分割する」とは、通常、２以上の各分割領域を示す２以上の座標集合を取得することである。また、「分割領域に分割する」とは、例えば、２以上の分割領域間の境界線を示す情報を取得することや、隣接する２つの分割領域において共通する頂点の座標を取得することなどであってもよい。また、「境界線を示す情報」とは、例えば、当該境界線を示す定数関数である。
【００７３】
また、領域分割手段１２２は、通常、予め決められた分割領域のサイズ、または分割領域の分割数により、分割対象領域を２以上の分割領域に分割する。また、当該分割領域のサイズ、および分割領域の分割数は、例えば、分割領域サイズ決定手段１２１が決定した分割領域のサイズ、および分割領域の分割数であることが好適である。
【００７４】
例えば、分割領域のサイズが「１０×１０」である場合、領域分割手段１２２は、分割対象領域の横および縦を１０ずつに区切り、格子状に分割する。また、このとき、分割対象領域の横幅または縦幅が、当該分割領域のサイズの整数倍でない場合、領域分割手段１２２は、当該分割対象領域の横幅または縦幅が、当該分割領域のサイズの整数倍となるように、分割対象領域のサイズを大きくする。また、この場合において、例えば、分割対象領域のサイズが「１００×１００」であるとする。この様な場合、領域分割手段１２２は、当該分割対象領域を、「１０×１０」の格子状に分割する。
【００７５】
また、例えば、分割領域の分割数が「９」である場合、領域分割手段１２２は、分割対象領域の横および縦をそれぞれ三等分にし、「３×３」の格子状に分割する。また、このとき、分割対象領域の横幅および縦幅の比が、当該分割数の対応する２つの約数の比「１：１」と一致および近似しない場合、領域分割手段１２２は、当該分割対象領域の横幅および縦幅の比が、当該分割数を構成する整数の比と一致また近似するように、分割対象領域のサイズを大きくする。また、この場合において、例えば、分割対象領域のサイズが「１２０×１２０」であるとする。この様な場合、領域分割手段１２２は、当該分割対象領域を、サイズが「４０×４０」である９個の分割領域に分割する。
【００７６】
また、領域分割手段１２２は、例えば、取得した２以上の各座標集合（分割領域を示す座標集合）に、各分割領域を識別する識別子（以下、適宜、分割領域識別子）を対応付けてもよい。
【００７７】
対象点検出手段１２３は、２以上の分割領域ごとに、当該分割領域内に存在する１以上の対象点を検出する。「分割領域内」には、通常、分割領域の境界線上も含む。また、当該分割領域は、通常、領域分割手段１２２が分割した分割領域である。また、当該分割領域は、例えば、予め分割された分割領域であってもよい。また、「対象点」とは、以下の２種類の点である。
（Ａ）元図形情報が示す図形を構成する２以上の線分の交点
（Ｂ）元図形情報が示す図形を構成する２以上の線分の端点
上記（Ａ）の対象点は、図２の右側に示す対象点ａである。また、上記（Ｂ）の対象点は、図２の右側に示す対象点ｂ、対象点ｃである。
【００７８】
また、上記「対象点を検出する」とは、対象点を示す座標を取得することである。対象点検出手段１２３は、通常、元図形情報が有する座標を用いて、上記（Ａ）の対象点の座標を算出する。また、対象点検出手段１２３は、通常、元図形情報から、上記（Ｂ）の対象点の座標を取得する。なお、２以上の線分の交点の座標を算出する方法や手順などは、公知であるので、詳細な説明を省略する。
【００７９】
また、対象点検出手段１２３は、通常、１以上の対象点を２以上の分割領域ごとに検出する。従って、対象点検出手段１２３は、例えば、取得した対象点の座標に、当該対象点が存在する分割領域を識別する分割領域識別子を対応付けてもよい。また、このとき、対象点検出手段１２３は、例えば、取得した対象点の座標に、点を識別する識別子（以下、適宜、点識別子）を対応付けてもよい。
【００８０】
移動点取得手段１２４は、２以上の分割領域ごとに、１以上の移動点を取得する。「移動点」とは、１以上の対象点のうちの移動対象点を、当該移動対象点に最も近い単位領域の頂点（以下、適宜、グリッドポイント）に移動した対象点である。言い換えると、移動点取得手段１２４は、１以上の対象点のうちの移動対象点をグリッドポイントに移動させ、当該移動先の点、および移動させなかった対象点を、移動点として取得する。また、「移動対象点」は、通常、交点のみであるが、交点および端点（すべての対象点）であってもよい。また、「移動点を取得する」とは、移動点を示す座標を取得することである。
【００８１】
移動点取得手段１２４は、通常、対象点の座標を用いて、当該対象点に最も近いグリッドポイントの座標を算出する。そして、移動点取得手段１２４は、当該算出したグリッドポイントの座標を、当該グリッドポイントに移動させた対象点に対応する移動点の座標として取得する。なお、グリッドポイントの座標は、通常、対象点の座標の小数第１位を四捨五入した座標である。また、グリッドポイントの座標は、例えば、対象点の座標の小数点以下を切り捨てた座標であってもよい。
【００８２】
例えば、移動対象点の座標が（４．２，８．５）であるとする。この様な場合、移動点取得手段１２４は、通常、当該座標の小数第１位を四捨五入し、グリッドポイントの座標（４，９）を算出する。また、この様な場合、移動点取得手段１２４は、例えば、当該座標の小数点以下を切り捨て、グリッドポイントの座標（４，８）を算出してもよい。
【００８３】
なお、移動対象点がグリッドポイント上にある場合、移動点取得手段１２４は、通常、当該移動対象点を、当該移動対象点に最も近いグリッドポイントに移動させない。つまり、移動点取得手段１２４は、通常、１以上の移動点のうちの移動対象点のうち、グリッドポイント上にない移動対象点を、当該移動対象点に最も近いグリッドポイントに移動させる。
【００８４】
また、移動点取得手段１２４は、例えば、対象点を示す座標とは別に、移動点を示す座標を取得してもよい。また、移動点取得手段１２４は、例えば、対象点を示す座標のうち、移動対象点を示す座標を、上記のグリッドポイントの座標に変更し、移動点を示す座標を取得してもよい。
【００８５】
また、移動点取得手段１２４は、例えば、取得した移動点の座標に、対象点と同様に、当該移動点が存在する分割領域を識別する分割領域識別子を対応付けてもよい。また、このとき、移動点取得手段１２４は、例えば、取得した移動点の座標に、点識別子を対応付けてもよい。
【００８６】
ホットポイント領域作成手段１２５は、２以上の分割領域ごとに、ホットポイントを領域を作成する。「ホットポイント領域」とは、移動点を含む領域である。また、「移動点を含む領域」とは、領域内に当該移動点が存在する領域である。ホットポイント領域の形状は、通常、矩形であるが、正方形であることが好適である。また、ホットポイント領域のサイズは、通常、問わないが、単位領域のサイズと同一のサイズであることが好適である。また、ホットポイント領域内における移動点の位置は、通常、問わないが、中心であることが好適である。また、当該位置は、例えば、ホットポイント領域の４つの頂点のうちのいずれかであってもよい。
【００８７】
また、上記「ホットポイント領域を作成する」とは、通常、ホットポイント領域を示す座標集合を取得することである。また、ホットポイント領域作成手段１２５は、通常、２以上の分割領域ごとにホットポイント領域を作成する。従って、ホットポイント領域作成手段１２５は、例えば、取得したホットポイント領域を示す座標集合に、当該ホットポイント領域が存在する分割領域を識別する分割領域識別子を対応付けてもよい。また、ホットポイント領域作成手段１２５は、例えば、取得したホットポイント領域を示す座標集合に、当該ホットポイント領域を識別する識別子（以下、適宜、ホットポイント領域識別子）を対応付けてもよい。なお、一の座標（ここでは、移動点の座標）を中心、または４つの頂点のうちのいずれかとする矩形の領域（ここでは、ホットポイント領域）を示す座標集合を取得する方法や手順などは、公知であるので、詳細な説明を省略する。
【００８８】
例えば、移動点を中心とするホットポイント領域を作成する場合において、当該移動点の座標が（４，５）であるとする。また、ホットポイント領域のサイズが「１×１」であるとする。この様な場合、ホットポイント領域作成手段１２５は、例えば、当該移動点のｘ座標、ｙ座標のそれぞれに、ホットポイント領域のサイズの１／２である「０．５」を加減算する。そして、ホットポイント領域作成手段１２５は、当該移動点に対応するホットポイント領域を示す座標集合｛（３．５，５．５），（４．５，５．５），（４．５，４．５），（３．５，４．５）｝を取得する。
【００８９】
また、例えば、移動点を頂点の１つとするホットポイント領域を作成する場合において、当該移動点の座標が（４，５）であるとする。また、ホットポイント領域のサイズが「０．５×０．５」であるとする。この様な場合、ホットポイント領域作成手段１２５は、例えば、当該移動点のｘ座標、ｙ座標のそれぞれに、ホットポイント領域のサイズである「０．５」を加算する。そして、ホットポイント領域作成手段１２５は、当該移動点に対応するホットポイント領域を示す座標集合｛（４，５），（４．５，５），（４，５．５），（４．５，５．５）｝を取得する。
【００９０】
判断手段１２６は、２以上の分割領域ごとに、ホットポイント領域と交差判定領域とが重なるか否かを判断する。「交差判定領域」とは、分割領域内に存在する線分が対角線となる矩形の領域である。また、当該「分割領域内に存在する線分」とは、通常、元図形情報が示す図形を構成する線分である。また、当該「分割領域内に存在する線分」は、通常、後述の交差線分となり得る線分である。また、交差判定領域が示す矩形は、通常、横および縦が、それぞれ、座標空間の横軸および縦軸に平行な矩形である。
【００９１】
判断手段１２６は、通常、分割領域内に存在する線分であり、元図形情報が示す図形を構成する線分を検出する。「線分を検出する」とは、元図形情報から当該線分を示す座標集合を取得することである。そして、判断手段１２６は、当該検出した線分を用いて、当該線分が対角線となる交差判定領域を作成する。「交差判定領域を作成する」とは、交差判定領域を示す座標集合を取得することである。そして、判断手段１２６は、ホットポイント領域を示す座標集合と、交差判定領域を示す座標集合とを用いて、ホットポイント領域と交差判定領域とが重なるか否かを判断する。なお、一の線分を対角線とする矩形の領域（ここでは、交差判定領域）を示す座標集合を取得する方法や手順などは、公知であるので、詳細な説明を省略する。また、座標空間上の２つの領域（ここでは、ホットポイント領域と交差判定領域）とが重なるか否かを判断する方法や手順などは、公知であるので、詳細な説明を省略する。
【００９２】
交差線分検出手段１２７は、２以上の分割領域ごとに、ホットポイント領域と交差する線分である１以上の交差線分を取得する。「交差する」とは、通常、ホットポイント領域の４つの境界線のうちの２つの境界線と交わること（２つの境界線との交点を持つこと）である。また、「交差線分を取得する」とは、交差線分を示す座標集合を取得することである。また、交差線分は、元図形情報が示す図形を構成する線分である。
【００９３】
交差線分検出手段１２７は、通常、元図形情報が示す図形を構成する１以上の各線分が、ホットポイント領域と交差するか否かを判断する。そして、交差する場合、交差線分検出手段１２７は、当該線分を、交差線分として取得する。なお、一の線分が座標空間上の領域（ここでは、ホットポイント領域）と交差するか否かを判断する方法や手順などは、公知であるので、詳細な説明を省略する。
【００９４】
一の分割領域において、交差線分を取得する具体的な手順は、例えば、以下のとおりである。
（１）ホットポイント領域作成手段１２５が取得したホットポイント領域を示す座標集合を取得する。
（２）元図形情報から、元図形情報が示す図形を構成する１以上の線分を示す座標集合を取得する。
（３）（１）で取得した座標集合と、（２）で取得した座標集合とを用いて、ホットポイント領域の４つの各境界線と、１以上の各線分との交点を検出する。
（４）（３）において検出した交点の数が「２」である場合、当該交点の数を有する線分を示す座標集合を取得する。
【００９５】
また、交差線分検出手段１２７は、例えば、判断手段１２６が、ホットポイント領域と交差判定領域とが重なると判断した場合に、１以上の交差線分を、２以上の分割領域ごとに検出してもよい。この場合、交差線分検出手段１２７は、当該交差判定領域の対角線である線分が、ホットポイント領域と交差するか否かを判断する。そして、交差する場合、交差線分検出手段１２７は、当該線分を、交差線分として取得する。
【００９６】
移動線分取得手段１２８は、２以上の分割領域ごとに、２以上の移動線分を取得する。「移動線分」とは、交差線分の各端点と、ホットポイント領域の中心とを結ぶ線分である。当該「ホットポイント領域の中心」は、通常、グリッドポイントである。また、当該「ホットポイント領域の中心」は、例えば、ホットポイント領域内に存在するグリッドポイントであってもよい。また、言い換えると、移動線分とは、交差線分を、交差線分上の点（以下、適宜、分割点）で分割した２つの線分の各端点のうち、分割点である端点を、ホットポイント領域の中心に移動した線分である。また、「移動線分を取得する」とは、移動線分を示す座標集合を取得することである。
【００９７】
また、当該取得した座標集合は、通常、移動線分の両端の座標を有する。また、移動線分取得手段１２８が取得する移動線分は、通常、処理の対象となる分割領域内に存在する。
【００９８】
また、移動線分取得手段１２８は、例えば、以下のいずれかの方法により、移動線分を取得する。
（Ａ）交差線分を分割しない方法
（Ｂ）交差線分を分割する方法
【００９９】
（Ａ）の方法：当該方法は、交差線分を分割することなく移動線分を取得する方法である。一の分割領域内において、一のホットポイント領域と交差する一の交差線分に対応する移動線分を取得する当該方法の具体的な手順は、例えば、以下のとおりである。
（１）交差線分検出手段１２７が取得した交差線分を示す座標集合から、当該座標集合が有する２つの座標を取得する。
（２）ホットポイント領域作成手段１２５が取得したホットポイント領域を示す座標集合を取得する。
（３）（２）で取得したホットポイント領域を示す座標集合を用いて、当該ホットポイントの中心の座標を算出する。
（４）（１）で取得した２つの座標のそれぞれと、（３）で取得した１つの座標とを組み合わせ、２つの座標を有する２つの座標集合を作成する。当該座標集合は、移動線分を示す。
【０１００】
（Ｂ）の方法：当該方法は、交差線分を分割点により２つの線分に分割し、当該分割した２つの線分を用いて、移動線分を取得する方法である。一の分割領域内において、一のホットポイント領域と交差する一の交差線分に対応する移動線分を取得する当該方法の具体的な手順は、例えば、以下のとおりである。
（１）交差線分検出手段１２７が取得した交差線分を示す座標集合を取得する。
（２）ホットポイント領域作成手段１２５が取得したホットポイント領域を示す座標集合を取得する。
（３）（１）で取得した交差線分を示す座標集合と、（２）で取得したホットポイント領域を示す座標集合とを用いて、当該交差線分と当該ホットポイント領域の境界線との２つの交点の座標を算出する。
（４）（３）で算出した２つの交点の座標を用いて、当該２つの交点の中点の座標を算出する。当該中点は、分割点である。
（５）（１）で取得した交差線分を示す座標集合が有する２つの座標のそれぞれと、（４）で算出した中点の座標とを組み合わせ、２つの座標を有する２つの座標集合を作成する。当該座標集合は、交差線分を分割した２つの線分を示す。
（６）（２）で取得したホットポイント領域を示す座標集合を用いて、当該ホットポイントの中心の座標を算出する。
（７）（５）で作成した２つの座標集合を用いて、当該座標集合が有する分割点の座標を、（６）で取得したホットポイントの中心の座標に変更した２つの座標集合を取得する。当該座標集合は、移動線分を示す。
【０１０１】
近似図形情報作成手段１２９は、移動線分を示す２以上の座標を有する近似図形情報を作成する。移動線分取得手段１２８は、通常、２以上の分割領域ごとに、移動線分を示す２以上の座標集合を取得する。従って、近似図形情報作成手段１２９は、当該２以上の分割領域ごとの移動線分を示す２以上の座標集合を統合することにより、近似図形情報を作成する。「統合する」とは、１つにまとめることである。また、このとき、近似図形情報作成手段１２９は、通常、重複する座標集合を削除する。
【０１０２】
出力部１３は、作成部１２が作成した近似図形情報が示す図形を出力する。出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。なお、送信や蓄積、処理結果の引渡しについては、出力対象が最終的にユーザに提示されるものとする。
【０１０３】
また、出力部１３は、ディスプレイやスピーカーなどの出力デバイスを含むと考えてもよいし、含まないと考えてもよい。出力部１３は、出力デバイスのドライバソフトまたは、出力デバイスのドライバソフトと出力デバイスなどで実現され得る。
【０１０４】
なお、作成部１２、分割領域サイズ決定手段１２１、領域分割手段１２２、対象点検出手段１２３、移動点取得手段１２４、ホットポイント領域作成手段１２５、判断手段１２６、交差線分検出手段１２７、移動線分取得手段１２８、近似図形情報作成手段１２９は、通常、ＭＰＵやメモリ等から実現され得る。また、作成部１２などの処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。なお、作成部１２などは、ハードウェア（専用回路）で実現されてもよい。
【０１０５】
次に、図形情報作成装置１の全体動作について、フローチャートを用いて説明する。なお、所定の情報におけるｉ番目の情報は、「情報［ｉ］」と記載するものとする。図３は、図形情報作成装置１の全体動作を示すフローチャートである。
【０１０６】
（ステップＳ３０１）作成部１２は、受付部１１が、元図形情報を受け付けたか否かを判断する。受け付けた場合は、ステップＳ３０２に進み、そうでない場合は、ステップＳ３０１に戻る。
【０１０７】
（ステップＳ３０２）分割領域サイズ決定手段１２１は、分割領域のサイズを決定する。また、このとき、分割領域サイズ決定手段１２１は、分割領域の分割数を決定してもよい。この処理の詳細は、図４のフローチャートを用いて説明する。
【０１０８】
（ステップＳ３０３）領域分割手段１２２は、ステップＳ３０２で決定した分割領域のサイズ、または分割領域の分割数にて、分割対象領域を２以上の分割領域に分割する。ここで、領域分割手段１２２は、分割対象領域を、ｍ個の分割領域に分割したものとする。
【０１０９】
（ステップＳ３０４）近似図形情報作成手段１２９は、カウンタｉに１をセットする。
【０１１０】
（ステップＳ３０５）対象点検出手段１２３は、分割領域［ｉ］内に存在する対象点を検出する。ここで、対象点検出手段１２３は、分割領域［ｉ］内から、ｐ［ｉ］個の対象点を検出したものとする。
【０１１１】
（ステップＳ３０６）移動点取得手段１２４は、カウンタｊに１をセットする。
【０１１２】
（ステップＳ３０７）移動点取得手段１２４は、対象点［ｉ］［ｊ］を用いて、対象点［ｉ］［ｊ］に対応する移動点を取得する。当該移動点を、以下、適宜、移動点［ｉ］［ｊ］とする。
【０１１３】
（ステップＳ３０８）ホットポイント領域作成手段１２５は、移動点［ｉ］［ｊ］を用いて、当該移動点［ｉ］［ｊ］に対応するホットポイント領域を作成する。当該ホットポイント領域を、以下、適宜、ホットポイント領域［ｉ］［ｊ］とする。
【０１１４】
（ステップＳ３０９）移動点取得手段１２４は、ｊがｐ［ｉ］であるか否かを判断する。ｐ［ｉ］である場合は、ステップＳ３１１に進み、そうでない場合は、ステップＳ３１０に進む。
【０１１５】
（ステップＳ３１０）移動点取得手段１２４は、ｊを１インクリメントする。そして、ステップＳ３０７に戻る。
【０１１６】
（ステップＳ３１１）判断手段１２６は、分割領域［ｉ］内に存在する線分であり、元図形情報が示す図形を構成する線分を用いて、当該線分が対角線となる交差判定領域を作成する。ここで、判断手段１２６は、ｑ［ｉ］個の交差判定領域を作成したものとする。
【０１１７】
（ステップＳ３１２）移動線分取得手段１２８は、カウンタｊに１をセットする。
【０１１８】
（ステップＳ３１３）移動線分取得手段１２８は、カウンタｋに１をセットする。
【０１１９】
（ステップＳ３１４）判断手段１２６は、ホットポイント領域［ｉ］［ｊ］と、分割領域［ｉ］内に存在するｋ番目の線分を対角線とする交差判定領域である交差判定領域［ｉ］［ｋ］とが、重なるか否かを判断する。重なる場合は、ステップＳ３１５に進み、そうでない場合は、ステップＳ３１８に進む。
【０１２０】
（ステップＳ３１５）交差線分検出手段１２７は、ホットポイント領域［ｉ］［ｊ］と、交差判定領域［ｉ］［ｋ］の対角線である線分［ｉ］［ｋ］とが、交差するか否かを判断する。交差する場合は、ステップＳ３１６に進み、そうでない場合は、ステップＳ３１８に進む。
【０１２１】
（ステップＳ３１６）移動線分取得手段１２８は、線分［ｉ］［ｋ］を交差線分として検出する。
【０１２２】
（ステップＳ３１７）移動線分取得手段１２８は、ステップＳ３１６で検出した交差線分と、移動点［ｉ］［ｊ］とを用いて、当該交差線分に対応する移動線分を取得する。
【０１２３】
（ステップＳ３１８）移動線分取得手段１２８は、ｋがｑ［ｉ］であるか否かを判断する。ｑ［ｉ］である場合は、ステップＳ３２０に進み、そうでない場合は、ステップＳ３１９に進む。
【０１２４】
（ステップＳ３１９）移動線分取得手段１２８は、ｋを１インクリメントする。そして、ステップＳ３１４に戻る。
【０１２５】
（ステップＳ３２０）移動線分取得手段１２８は、ｊがｐ［ｉ］であるか否かを判断する。ｐ［ｉ］である場合は、ステップＳ３２２に進み、そうでない場合は、ステップＳ３２１に進む。
【０１２６】
（ステップＳ３２１）移動線分取得手段１２８は、ｊを１インクリメントする。そして、ステップＳ３１３に戻る。
【０１２７】
（ステップＳ３２２）近似図形情報作成手段１２９は、ｉがｍであるか否かを判断する。ｍである場合は、ステップＳ３２４に進み、そうでない場合は、ステップＳ３２３に進む。
【０１２８】
（ステップＳ３２３）近似図形情報作成手段１２９は、ｉを１インクリメントする。そして、ステップＳ３０５に戻る。
【０１２９】
（ステップＳ３２４）近似図形情報作成手段１２９は、ステップＳ３１７で取得した移動線分を示す２以上の座標集合を統合し、近似図形情報を作成する。
【０１３０】
（ステップＳ３２５）出力部１３は、ステップＳ３２４で作成した近似図形情報を用いて、当該近似図形情報が示す近似図形情報を出力する。そして、ステップＳ３０１に戻る。
【０１３１】
なお、図３のフローチャートにおいて、電源オフや処理終了の割り込みにより処理を終了してもよい。
【０１３２】
また、図３のフローチャートにおいて、作成部１２は、通常、ステップＳ３０４からステップＳ３２３までの処理について、２以上の分割領域ごとの並列処理を行う。
【０１３３】
また、ホットポイント領域作成手段１２５は、通常、１つの移動点に対して１つのホットポイント領域を作成する。従って、図３のフローチャートにおいて、ホットポイント領域作成手段１２５は、分割領域［ｉ］において、合計ｐ［ｉ］個のホットポイント領域を作成する。
【０１３４】
図４は、図３のフローチャートのステップＳ３０２の分割領域サイズの決定処理を示すフローチャートである。
【０１３５】
（ステップＳ４０１）分割領域サイズ決定手段１２１は、カウンタｉに１をセットする。
【０１３６】
（ステップＳ４０２）分割領域サイズ決定手段１２１は、分割対象領域を、ｉ×ｉのサイズの分割領域に分割する。ここで、分割領域サイズ決定手段１２１は、分割対象領域を、ｎ［ｉ］個の分割領域に分割したものとする。
【０１３７】
（ステップＳ４０３）分割領域サイズ決定手段１２１は、カウンタｊに１をセットする。
【０１３８】
（ステップＳ４０４）分割領域サイズ決定手段１２１は、分割領域［ｊ］内の線分の数をカウントし、線分の合計数を代入する変数ｓｕｍに加算する。
【０１３９】
（ステップＳ４０５）分割領域サイズ決定手段１２１は、ｊがｎ［ｉ］であるか否かを判断する。ｎ［ｉ］である場合は、ステップＳ４０７に進み、そうでない場合は、ステップＳ４０６に進む。
【０１４０】
（ステップＳ４０６）分割領域サイズ決定手段１２１は、ｊを１インクリメントする。そして、ステップＳ４０４に戻る。
【０１４１】
（ステップＳ４０７）分割領域サイズ決定手段１２１は、「ｓｕｍ／ｍ」を計算し、その結果を変数ａｖｒにセットする。
【０１４２】
（ステップＳ４０８）分割領域サイズ決定手段１２１は、ａｖｒが線分数条件を満たすか否かを判断する。満たす場合は、ステップＳ４１１に進み、そうでない場合は、ステップＳ４０９に進む。
【０１４３】
（ステップＳ４０９）分割領域サイズ決定手段１２１は、ｉがｍであるか否かを判断する。ｍである場合は、ステップＳ４１１に進み、そうでない場合は、ステップＳ４１０に進む。
【０１４４】
（ステップＳ４１０）分割領域サイズ決定手段１２１は、ｉを１インクリメントする。そして、ステップＳ４０２に戻る。
【０１４５】
（ステップＳ４１１）分割領域サイズ決定手段１２１は、分割領域のサイズを代入する変数ｓｉｚｅに、ｉをセットする。そして、上位処理にリターンする。
【０１４６】
（具体例）
次に、図形情報作成装置１の動作の具体例について説明する。
【０１４７】
（例１）
本例において、分割領域のサイズを決定し、分割対象領域を２以上の分割領域に分割する例について説明する。なお、本例において、線分数条件は、「１０≦平均数≦２０」であるものとする。
【０１４８】
まず、受付部１１は、元図形情報を受け付ける。当該元図形情報が示す図形は、例えば、図５である。また、当該元図形情報は、図５の各図形（線分、多角形）を示す１以上の座標集合を有する。また、図５において、図形は、一の座標空間に配置されている。また、当該図形が配置されている図形配置領域と、分割対象領域とは、位置およびサイズが同一であるものとする。また、分割対象領域は、図６に示す様に、１以上の単位領域を有しているものとする。
【０１４９】
次に、分割領域サイズ決定手段１２１は、まず、図５の分割対象領域を、図７に示す様に、２×２のサイズの分割領域に分割する。この結果、分割対象領域は、図７に示す様に、３６個の分割領域に分割される。そして、分割領域サイズ決定手段１２１は、当該３６個の各分割領域について、並列に、各分割領域内の線分の数をカウントする。そして、分割領域サイズ決定手段１２１は、当該カウントした線分の数を合計し、平均を算出する。ここで、当該線分の数の平均が、「６」であるとする。
【０１５０】
次に、分割領域サイズ決定手段１２１は、算出した線分の数の平均「６」が、線分数条件「１０≦平均数≦２０」を満たさないと判断する。
【０１５１】
次に、分割領域サイズ決定手段１２１は、上記と同様に、図５の分割対象領域を、図８に示す様に、３×３のサイズの分割領域に分割する。この結果、分割対象領域は、図８に示す様に、１６個の分割領域に分割される。そして、分割領域サイズ決定手段１２１は、当該１６個の各分割領域について、並列に、各分割領域内の線分の数をカウントする。そして、分割領域サイズ決定手段１２１は、当該カウントした線分の数を合計し、平均を算出する。ここで、当該線分の数の平均が、「８」であるとする。
【０１５２】
次に、分割領域サイズ決定手段１２１は、算出した線分の数の平均「８」が、線分数条件「１０≦平均数≦２０」を満たさないと判断する。
【０１５３】
次に、分割領域サイズ決定手段１２１は、上記と同様に、図５の分割対象領域を、図９に示す様に、４×４のサイズの分割領域に分割する。この結果、分割対象領域は、図９に示す様に、９個の分割領域に分割される。そして、分割領域サイズ決定手段１２１は、当該９個の各分割領域について、並列に、各分割領域内の線分の数をカウントする。そして、分割領域サイズ決定手段１２１は、当該カウントした線分の数を合計し、平均を算出する。ここで、当該線分の数の平均が、「１２」であるとする。
【０１５４】
次に、分割領域サイズ決定手段１２１は、算出した線分の数の平均「１２」が、線分数条件「１０≦平均数≦２０」を満たすと判断する。そして、分割領域サイズ決定手段１２１は、「４×４」を、分割領域のサイズとして決定する。
【０１５５】
次に、領域分割手段１２２は、図９に示す様に、分割対象領域を、４×４のサイズの９個の分割領域に分割する。このとき、領域分割手段１２２は、例えば、当該９個の各分割領域を示す９個の座標集合を取得する。
【０１５６】
（例２）
本例において、分割領域の分割数を決定し、分割対象領域を２以上の分割領域に分割する例について説明する。なお、本例において、線分数条件は、「１０≦平均数≦２０」であるものとする。また、分割数条件は、「平方数であること」であるものとする。
また、受付部１１は、例１と同様に、図５の図形を示す元図形情報を受け付けているものとする。
【０１５７】
まず、分割領域サイズ決定手段１２１は、図５の分割対象領域内の線分の数をカウントする。ここで、当該線分の数が、「９０」であるものとする。
【０１５８】
次に、分割領域サイズ決定手段１２１は、カウントした線分の数「９０」を、線分数条件の上限値「２０」と、線分数条件の下限値「１０」とのそれぞれで割ったときの商、「４．５」と「９」を算出する。そして、分割領域サイズ決定手段１２１は、当該「４．５」と「９」との間の整数「５」、「６」、「７」、「８」を取得する。
【０１５９】
次に、分割領域サイズ決定手段１２１は、算出および取得した６個の数値のうち、分割数条件「平方数であること」を満たす「９」を、分割数として取得する。
【０１６０】
次に、領域分割手段１２２は、図９に示す様に、分割対象領域を、９個の分割領域に分割する。このとき、領域分割手段１２２は、例えば、分割対象領域のサイズと、当該分割数とから、一の分割領域のサイズを算出する。そして、領域分割手段１２２は、当該算出したサイズに従い、分割多少領域を９個の分割領域に分割する。また、このとき、領域分割手段１２２は、例えば、当該９個の各分割領域を示す９個の座標集合を取得する。
【０１６１】
（例３）
本例において、一の分割領域において移動点を取得する例について説明する。
【０１６２】
図１０は、領域分割手段１２２が分割対象領域を分割した一の分割領域、および分割領域内の図形（線分）である。当該分割領域は、２０番目の分割領域であり、分割領域を識別する分割領域識別子「Ｄ２０」が付与されている。また、当該分割領域は、３６個の単位領域を有する。また、当該分割領域内には、ａ、ｂ、ｃの３本の線分が存在する。また、当該３本の線分は、元図形情報により示される。
【０１６３】
まず、対象点検出手段１２３は、図１０のａ、ｂ、ｃの３本の各線分を示す３つ座標集合を、元図形情報から取得する。当該３つの各座標集合は、当該３本の各線分の端点を示す２つの座標を有する。
【０１６４】
次に、対象点検出手段１２３は、取得した３つの座標集合を用いて、図１０のａ、ｂ、ｃの３本の線分同士の交点であり、図１０の分割領域内に存在する交点の座標を算出する。このとき、対象点検出手段１２３は、通常、当該３本の線分のうちの２本の線分が交差するか否かを判断する。そして、対象点検出手段１２３は、２本の線分が交差する場合に、当該２本の線分の交点の座標を算出する。そして、当該交点の座標が図１０の分割領域内の座標であれば、対象点検出手段１２３は、当該座標を、対象点の座標として取得する。なお、線分を示す座標集合を用いて２つの線分が交差するか否かを判断する方法や手順など、および、線分を示す座標集合を用いて２つの線分の交点の座標を算出する方法や手順などは、公知であるので、説明を省略する。そして、この結果、対象点検出手段１２３は、図１１に示す様に、線分ｂと線分ｃの交点の座標（ｘ１，ｙ１）を算出し、当該交点を対象点として検出する。以下、当該対象点を、図１１に示す様に、「対象点α」とする。
【０１６５】
次に、対象点検出手段１２３は、図１０の線分ａ、線分ｂ、線分ｃの端点であり、図１０の分割領域内に存在する端点を、対象点として検出する。この結果、対象点検出手段１２３は、図１１に示す様に、線分ａの両端の端点の座標（ｘ２，ｙ２）、（ｘ３，ｙ３）の座標を取得したものとする。以下、当該２つの対象点を、それぞれ、図１１に示す様に、「対象点β」、「対象点γ」とする。対象点βは、線分ｃの端点でもある。また、対象点γは、線分ｂの端点でもある。
【０１６６】
次に、移動点取得手段１２４は、図１１において検出した３つの各対象点に対応する３つの移動点を取得する。ここで、移動点取得手段１２４は、当該３つの各対象点に最も近いグリッドポイントの座標を算出することにより、３つの移動点を取得する。グリッドポイントの座標は、通常、整数である。従って、移動点取得手段１２４は、例えば、図１１の対象点αについて、当該対象点αを示す座標（ｘ１、ｙ１）のｘ座標「ｘ１」とｙ座標「ｙ１」のそれぞれを四捨五入し、グリッドポイントの座標（ｘ１’、ｙ１’）を算出する。また、移動点取得手段１２４は、図１１の対象点β、対象点γについても同様にグリッドポイントの座標を算出し、図１２に示す様に、移動点α、移動点β、移動点γを取得する。当該３つの移動点は、図１１の対象点α、対象点β、対象点γの各対象点に対応する移動点である。なお、対象点βは、グリッドポイント上の点であるので、対象点βの座標（ｘ２，ｙ２）と、移動点βの座標（ｘ２’，ｙ２’）とは、同一である。
【０１６７】
なお、本例において、一の分割領域内に存在する対象点に対応する移動点を取得する例について説明したが、分割領域が２以上である場合、対象点検出手段１２３、移動点取得手段１２４は、通常、一の分割領域における上記の処理を、当該２以上の分割領域ごとに並列に行う。
【０１６８】
（例４）
本例において、一の分割領域において移動線分を取得する例について説明する。
【０１６９】
まず、ホットポイント領域作成手段１２５は、移動点取得手段１２４が取得した３つの移動点の座標を用いて、図１３に示す様に、当該３つの各移動点に対応する３つのホットポイント領域を作成する。ホットポイント領域は、通常、正方領域である。従って、ホットポイント領域作成手段１２５は、例えば、当該移動点のｘ座標とｙ座標のそれぞれに、ホットポイント領域のサイズの１／２の値を加減算し、ホットポイント領域を示す座標集合を算出する。当該座標集合は、ホットポイント領域の４つの各頂点を示す座標を有する。以下、当該３つのホットポイント領域を、それぞれ、図１３に示す様に、「ホットポイント領域α」、「ホットポイント領域β」、「ホットポイント領域γ」とする。当該３つのホットポイント領域は、図１２の移動点α、移動点β、移動点γの各移動点に対応するホットポイント領域である。
【０１７０】
次に、判断手段１２６は、図１０の３本の各線分を対角線とする３つの交差判定領域を作成する。例えば、図１０の線分ａについてであれば、判断手段１２６は、図１４に示す様な交差判定領域を作成する。このとき、判断手段１２６は、例えば、線分ａを示す座標集合が有する２つの座標のｘ座標およびｙ座標を組み合わせ、当該線分ａを対角線とする交差判定領域を示す座標集合を算出する。当該座標集合は、交差判定領域の４つの各頂点を示す座標を有する。
【０１７１】
次に、判断手段１２６は、ホットポイント領域作成手段１２５が作成した３つの各ホットポイント領域を示す座標集合と、作成した３つの各交差判定領域を示す座標集合とを用いて、当該ホットポイント領域と当該交差判定領域が重なるか否かを判断する。ここで、判断手段１２６は、図１３のホットポイント領域αと、線分ａを対角線とする図１４の交差判定領域とが重なると判断したものとする。
【０１７２】
次に、交差線分検出手段１２７は、図１３のホットポイント領域αと、図１０の線分ａとが交差するか否かを判断する。ここで、交差線分検出手段１２７は、当該ホットポイント領域αと、当該線分ａとが交差すると判断したものとする。すると、交差線分検出手段１２７は、当該線分ａを、交差線分として検出する。このとき、交差線分検出手段１２７は、例えば、当該線分ａを示す座標集合を取得する。
【０１７３】
次に、移動線分取得手段１２８は、交差線分である線分ａを示す座標集合が有する２つの各座標と、ホットポイント領域αに対応する移動点αの座標（ｘ１’，ｙ１’）とを組み合わせ、当該線分ａに対応する２本の移動線分を取得する。当該２本の移動線分は、図１５に示す線分ａ１’と線分ａ２’である。また、このとき、移動線分取得手段１２８は、例えば、当該２本の各移動線分を示す座標集合を取得する。当該２つの各座標集合は、線分ａの２つの端点のうちのいずれか１つを示す座標と、移動点αの座標（ｘ１’，ｙ１’）との２つの座標を有する。
【０１７４】
また、上記の移動線分の取得において、移動線分取得手段１２８は、線分ａ上の点である分割点を検出後、移動線分を取得してもよい。ここで、当該分割点を、線分ａ上の点であり、線分ａとホットポイント領域αとが重なる部分における線分の中点であるとする。すると、移動線分取得手段１２８は、線分ａを示す座標集合と、ホットポイント領域αを示す座標集合とを用いて、図１６に示す様に、当該分割点の座標（ｘ４，ｙ４）を算出する。当該分割点の座標は、線分ａとホットポイント領域αの境界線との２つの交点の座標を算出し、当該２つの交点の中点を算出することにより算出できる。
【０１７５】
次に、移動線分取得手段１２８は、分割点の座標と、線分ａを示す座標集合とを用いて、線分ａに含まれる線分であり、図１６において検出された分割点により、当該線分が分割された線分を検出する。このとき、移動線分取得手段１２８は、当該２本の線分を示す座標集合を取得する。当該２つの座標集合は、線分ａの２つの端点のうちのいずれか１つを示す座標と、分割点（ｘ４，ｙ４）との２つの座標を有する。
【０１７６】
次に、移動線分取得手段１２８は、線分ａを分割した２つの各線分を示す座標集合と、移動点αの座標（ｘ１’，ｙ１’）とを用いて、当該２本の各線分に対応する２本の移動線分を取得する。当該２本の移動線分は、図１５に示す線分ａ１’と線分ａ２’である。また、このとき、移動線分取得手段１２８は、例えば、当該２本の各移動線分を示す座標集合を取得する。当該２つの各座標集合は、線分ａの２つの端点のうちのいずれか１つを示す座標と、移動点αの座標（ｘ１’，ｙ１’）との２つの座標を有する。
【０１７７】
なお、本例において、一の分割領域において移動線分を取得する例について説明したが、分割領域が２以上である場合、ホットポイント領域作成手段１２５、判断手段１２６、交差線分検出手段１２７、移動線分取得手段１２８は、通常、一の領域における上記の処理を、当該２以上の分割領域ごとに並列に行う。
【０１７８】
（例５）
本例において、近似図形情報を作成する例について説明する。
【０１７９】
近似図形情報作成手段１２９は、例えば、移動線分取得手段１２８が２以上のすべての分割領域から移動線分を取得したあとに、当該移動線分を示す座標集合を、移動線分取得手段１２８から取得する。そして、近似図形情報作成手段１２９は、当該取得した座標集合を統合し、近似図形情報を作成する。このとき、近似図形情報作成手段１２９は、重複する座標集合を削除する。なお、当該作成された近似図形情報は、通常、移動線分を示す１以上の座標集合を有する。
【０１８０】
以上、本実施の形態による図形情報作成装置１によれば、分割した領域ごとに計算処理を行うことにより、Ｓｎａｐ  ｒｏｕｎｄｉｎｇの計算処理を、容易に行うことができる。また、これにより、Ｓｎａｐ  ｒｏｕｎｄｉｎｇの計算処理を、並列計算により高速に行うことができる。
【０１８１】
（実施の形態２）
本実施の形態において、図形が配置されている領域を含む領域を、２以上の分割領域に分割する領域分割装置２について説明する。
【０１８２】
図１７は、本実施の形態における領域分割装置２のブロック図である。領域分割装置２は、受付部１１、分割部２２を備える。また、分割部２２は、分割領域サイズ決定手段１２１、領域分割手段１２２を備える。
【０１８３】
分割部２２は、分割対象領域を、２以上の分割領域に分割する。また、分割部２２は、通常、分割部２２が備える分割領域サイズ決定手段１２１、領域分割手段１２２により、分割対象領域を分割する。なお、分割領域サイズ決定手段１２１、領域分割手段１２２における動作や処理などは、実施の形態において説明済みであるので、説明を省略する。また、分割部２２は、通常、ＭＰＵやメモリ等から実現され得る。また、分割部２２などの処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。なお、分割部２２などは、ハードウェア（専用回路）で実現されてもよい。
【０１８４】
次に、領域分割装置２の全体動作について、フローチャートを用いて説明する。領域分割装置２の全体動作を示すフローチャートは、図１８である。なお、図１８のフローチャートにおけるステップＳ１８０１からステップＳ１８０３までの処理は、図３のフローチャートにおけるステップＳ３０１からステップＳ３０３までの処理と同様であるので、説明を省略する。
【０１８５】
また、領域分割装置２の動作の具体例については、実施の形態１の具体例における例１、例２と同様であるので、説明を省略する。
【０１８６】
以上、本実施の形態による領域分割装置２によれば、図形が配置されている領域を含む領域を、２以上の分割領域に分割することができる。
【０１８７】
なお、上記各実施の形態において、分割領域サイズの決定処理は、図１９に示すフローチャートであってもよい。
【０１８８】
（ステップＳ１９０１）分割領域サイズ決定手段１２１は、一の分割領域内に存在する所望の線分の数を代入する変数ＥＤＧＥＳ＿ＰＥＲ＿ＣＥＬＬに１５をセットする。
【０１８９】
（ステップＳ１９０２）分割領域サイズ決定手段１２１は、一の線分が配置される所望の分割領域の数を代入する変数ＣＥＬＬＳ＿ＰＥＲ＿ＥＤＧＥに０．２５をセットする。
【０１９０】
（ステップＳ１９０３）分割領域サイズ決定手段１２１は、変数ｅｄｇｅＳｉｚｅに図形配置領域内のすべての線分の数をセットする。
【０１９１】
（ステップＳ１９０４）分割領域サイズ決定手段１２１は、変数ｅｄｇｅＬｅｎｇｔｈに図形配置領域内のすべての線分の長さの合計をセットする。
【０１９２】
（ステップＳ１９０５）分割領域サイズ決定手段１２１は、変数ｔｏｔａｌＡｒｅａに図形配置領域の面積をセットする。
【０１９３】
（ステップＳ１９０６）分割領域サイズ決定手段１２１は、「√（ＥＤＧＥＳ＿ＰＥＲ＿ＣＥＬＬ×ｔｏｔａｌＡｒｅａ／ｅｄｇｅＳｉｚｅ）」を計算し、その結果を変数ｃｅｌｌＳｉｚｅ１にセットする。
【０１９４】
（ステップＳ１９０７）分割領域サイズ決定手段１２１は、「ｅｄｇｅＬｅｎｇｔｈ／（ｅｄｇｅＳｉｚｅ×ＣＥＬＬＳ＿ＰＥＲ＿ＥＤＧＥ）」を計算し、その結果を変数ｃｅｌｌＳｉｚｅ２にセットする。
【０１９５】
（ステップＳ１９０８）分割領域サイズ決定手段１２１は、「ｌｏｇ２（ｃｅｌｌＳｉｚｅ１）」を計算し、その結果を変数ｓｃａｌｅ１にセットする。
【０１９６】
（ステップＳ１９０９）分割領域サイズ決定手段１２１は、「ｌｏｇ２（ｃｅｌｌＳｉｚｅ２）」を計算し、その結果を変数ｓｃａｌｅ２にセットする。
【０１９７】
（ステップＳ１９１０）分割領域サイズ決定手段１２１は、ｓｃａｌｅ１がｓｃａｌｅ２以下であるか否かを判断する。ｓｃａｌｅ２以下である場合は、ステップＳ１９１１に進み、そうでない場合は、ステップＳ１９１２に進む。
【０１９８】
（ステップＳ１９１１）分割領域サイズ決定手段１２１は、変数ｓｃａｌｅにｓｃａｌｅ１をセットする。
【０１９９】
（ステップＳ１９１２）分割領域サイズ決定手段１２１は、変数ｓｃａｌｅにｓｃａｌｅ２をセットする。
【０２００】
（ステップＳ１９１３）分割領域サイズ決定手段１２１は、ｓｃａｌｅを小数第１位で四捨五入する。
【０２０１】
（ステップＳ１９１４）分割領域サイズ決定手段１２１は、分割領域のサイズを代入する変数ｓｉｚｅに２のｓｃａｌｅ乗をセットする。そして、上位処理にリターンする。
【０２０２】
なお、図１９のフローチャートにおいて、一の分割領域内に存在する所望の線分の数は、１５以外の数であってもよい。
【０２０３】
また、図１９のフローチャートにおいて、一の線分が配置される所望の分割領域の数は、０．２５以外の数であってもよい。
【０２０４】
また、図１９のフローチャートにおいて、「図形配置領域」は、「分割対象領域」であってもよい。
【０２０５】
また、図１９のフローチャートにおいて、ステップＳ１９０８からステップＳ１９１２までの処理は、以下のステップＳ１９０８’からステップＳ１９１０’の処理であってもよい。
【０２０６】
（ステップＳ１９０８’）分割領域サイズ決定手段１２１は、ｃｅｌｌＳｉｚｅ１がｃｅｌｌＳｉｚｅ２以下であるか否かを判断する。ｃｅｌｌＳｉｚｅ２以下である場合は、ステップＳ１９０９’に進み、そうでない場合は、ステップＳ１９１０’に進む。
【０２０７】
（ステップＳ１９０９’）分割領域サイズ決定手段１２１は、「ｌｏｇ２（ｃｅｌｌＳｉｚｅ１）」を計算し、その結果を変数ｓｃａｌｅにセットする。
【０２０８】
（ステップＳ１９１０’）分割領域サイズ決定手段１２１は、「ｌｏｇ２（ｃｅｌｌＳｉｚｅ２）」を計算し、その結果を変数ｓｃａｌｅにセットする。
【０２０９】
なお、図１９のフローチャートにおいて、分割領域サイズ決定手段１２１は、変数ｓｃａｌｅに、「ｌｏｇ２（ｃｅｌｌＳｉｚｅ１）」または「ｌｏｇ２（ｃｅｌｌＳｉｚｅ２）」をセットすることができればよく、その方法や手順などは、問わない。
【０２１０】
また、分割領域サイズ決定手段１２１は、図１９のフローチャートの様に、例えば、一の分割領域内に存在する所望の線分の数（２以上の各分割領域内の線分の数）、一の線分が配置される所望の分割領域の数（元図形情報が示す図形を構成する各線分が配置される分割領域の数）、図形配置領域内または分割対象領域内の線分の数（元図形情報が示す図形を構成するすべての線分の数）、図形配置領域内または分割対象領域内の線分の長さの合計（図形情報が示す図形を構成するすべての線分の長さの合計）、図形配置領域または分割対象領域の面積（元図形情報が示す図形が配置されている領域を含む領域の面積）などを用いて、分割領域のサイズを決定することができればよく、その決定の方法や手順などは、問わない。
【０２１１】
また、本実施の形態において、対象点検出手段１２３は、２以上の各分割領域内から、元図形情報が示す図形を構成する２以上の線分の１以上の交点を、対象点として検出してもよい。この場合、移動点取得手段１２４は、通常、当該１以上の対象点を当該対象点に最も近いグリッドポイントに移動させ、当該移動先の点、および元図形情報が示す図形を構成する２以上の線分の２以上の端点を、移動点として取得する。なお、移動点取得手段１２４は、ホットポイント領域作成手段１２５がホットポイント領域を作成する際の基準となる点を、最終的に取得することができればよく、その方法や手順などは、問わない。
【０２１２】
また、上記各実施の形態における図形情報作成装置は、例えば、スタンドアロンの装置であってもよいし、サーバ・クライアントシステムにおけるサーバ装置であってもよい。
【０２１３】
また、上記各実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよいし、あるいは、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
【０２１４】
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよいし、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
【０２１５】
また、上記各実施の形態における図形情報作成装置１を実現するソフトウェアは、例えば、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、無限精度で表現される図形を示す情報であり、当該図形を構成する２以上の座標を有する情報である元図形情報を受け付ける受付部と、前記元図形情報が示す図形が有限精度で表現された図形である近似図形を示す情報であり、当該近似図形を構成する２以上の座標を有する情報である近似図形情報を作成する作成部と、前記作成部が作成した近似図形情報が示す図形を出力する出力部として機能させるためのプログラムであり、前記作成部を、前記元図形情報が示す図形が配置されている領域を含む領域を分割した領域であり、１以上の単位領域を有する領域である２以上の分割領域ごとに、当該分割領域内に存在する点であり、前記元図形情報が示す図形を構成する２以上の線分の交点および当該２以上の線分の端点である１以上の対象点を検出する対象点検出手段と、前記１以上の対象点のうちの交点を当該交点に最も近い単位領域の頂点に移動した対象点である１以上の移動点を、前記２以上の分割領域ごとに取得する移動点取得手段と、前記１以上の各移動点を含む領域である１以上のホットポイント領域を、前記２以上の分割領域ごとに作成するホットポイント領域作成手段と、前記元図形情報が示す図形を構成する線分であり、前記ホットポイント領域と交差する線分である１以上の交差線分を、前記２以上の分割領域ごとに検出する交差線分検出手段と、前記１以上の各交差線分の各端点と、当該交差線分が交差するホットポイント領域の中心とを結ぶ線分である２以上の移動線分を、前記２以上の分割領域ごとに取得する移動線分取得手段と、前記移動線分を示す２以上の座標を有する近似図形情報を作成する近似図形情報作成手段として機能させるためのプログラムである。
【０２１６】
また、上記各実施の形態における領域分割装置２を実現するソフトウェアは、例えば、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、無限精度で表現される図形を示す情報であり、当該図形を構成する２以上の座標を有する情報である元図形情報を受け付ける受付部と、前記元図形情報が示す図形が配置されている領域を含む領域を、１以上の単位領域を有する領域である２以上の分割領域に分割する分割部として動作させるためのプログラムであって、前記分割部を、前記２以上の各分割領域内の線分の数を用いて、前記分割領域のサイズを決定する分割領域サイズ決定手段と、前記元図形情報が示す図形が配置されている領域を含む領域を、前記分割領域サイズ決定手段が決定したサイズの２以上の分割領域に分割する領域分割手段として動作させるためのプログラムである。
【０２１７】
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。
【０２１８】
また、上記プログラムは、サーバなどからダウンロードされることによって実行されてもよいし、所定の記録媒体（例えば、ＣＤ−ＲＯＭなどの光ディスクや磁気ディスク、半導体メモリなど）に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。
【０２１９】
また、上記プログラムを実行するコンピュータは、単数であってもよいし、複数であってもよい。つまり、集中処理を行ってもよいし、あるいは分散処理を行ってもよい。
【０２２０】
また、図２０は、前述のプログラムを実行して、前述の実施の形態の図形情報作成装置等を実現するコンピュータシステム９の概観図である。前述の実施の形態は、コンピュータハードウェア、およびその上で実行されるコンピュータプログラムで実現され得る。
【０２２１】
図２０において、コンピュータシステム９は、ＣＤ−ＲＯＭドライブ９０１１、ＦＤドライブ９０１２を含むコンピュータ９０１と、キーボード９０２と、マウス９０３と、モニタ９０４とを備える。
【０２２２】
図２１は、コンピュータシステム９のブロック図である。図２１において、コンピュータ９０１は、ＣＤ−ＲＯＭドライブ９０１１、ＦＤドライブ９０１２に加えて、ＭＰＵ９０１３と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ９０１４と、ＭＰＵ９０１３に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのＲＡＭ９０１５と、アプリケーションプログラム、システムプログラム、およびデータを記憶するためのハードディスク９０１６と、ＣＤ−ＲＯＭドライブ９０１１、ＦＤドライブ９０１２、ＭＰＵ９０１３等を相互に接続するバス９０１７とを備える。ここでは図示しないが、コンピュータ９０１は、さらに、ＬＡＮへの接続を提供するネットワークカードを備えていてもよい。
【０２２３】
コンピュータシステム９に、前述の実施の形態の図形情報作成装置等の機能を実行させるプログラムは、ＣＤ−ＲＯＭ９１０１、またはＦＤ９１０２に記憶されて、ＣＤ−ＲＯＭドライブ９０１１またはＦＤドライブ９０１２に挿入され、さらにハードディスク９０１６に転送されてもよい。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ９０１に送信され、ハードディスク９０１６に記憶されてもよい。プログラムは実行の際にＲＡＭ９０１５にロードされる。プログラムは、ＣＤ−ＲＯＭ９１０１、ＦＤ９１０２またはネットワークから直接、ロードされてもよい。
【０２２４】
プログラムは、コンピュータ９０１に、前述の実施の形態の図形情報作成装置等の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティープログラム等は、必ずしも含まなくてもよい。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいればよい。コンピュータシステム９がどのように動作するかは周知であり、詳細な説明は省略する。
【０２２５】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０２２６】
以上のように、本発明にかかる図形情報作成装置は、分割した領域ごとに計算処理を行うことにより、Ｓｎａｐ  ｒｏｕｎｄｉｎｇの計算処理を、容易に行うことができる。また、これにより、Ｓｎａｐ  ｒｏｕｎｄｉｎｇの計算処理を、並列計算により高速に行うことができるという効果を有し、ＣＡＤシステム等として有用である。
【符号の説明】
【０２２７】
１  図形情報作成装置
２  領域分割装置
１１  受付部
１２  作成部
１３  出力部
２２  分割部
１２１  分割領域サイズ決定手段
１２２  領域分割手段
１２３  対象点検出手段
１２４  移動点取得手段
１２５  ホットポイント領域作成手段
１２６  判断手段
１２７  交差線分検出手段
１２８  移動線分取得手段
１２９  近似図形情報作成手段
【図１】
2014228888.tif 000003
【図２】
2014228888.tif 000004
【図３】
2014228888.tif 000005
【図４】
2014228888.tif 000006
【図５】
2014228888.tif 000007
【図６】
2014228888.tif 000008
【図７】
2014228888.tif 000009
【図８】
2014228888.tif 000010
【図９】
2014228888.tif 000011
【図１０】
2014228888.tif 000012
【図１１】
2014228888.tif 000013
【図１２】
2014228888.tif 000014
【図１３】
2014228888.tif 000015
【図１４】
2014228888.tif 000016
【図１５】
2014228888.tif 000017
【図１６】
2014228888.tif 000018
【図１７】
2014228888.tif 000019
【図１８】
2014228888.tif 000020
【図１９】
2014228888.tif 000021
【図２０】
2014228888.tif 000022
【図２１】
2014228888.tif 000023