JP3894063B2 - 立体形状データ変換装置および立体形状データ変換方法 - Google Patents
立体形状データ変換装置および立体形状データ変換方法 Download PDFInfo
- Publication number
- JP3894063B2 JP3894063B2 JP2002203406A JP2002203406A JP3894063B2 JP 3894063 B2 JP3894063 B2 JP 3894063B2 JP 2002203406 A JP2002203406 A JP 2002203406A JP 2002203406 A JP2002203406 A JP 2002203406A JP 3894063 B2 JP3894063 B2 JP 3894063B2
- Authority
- JP
- Japan
- Prior art keywords
- group
- data
- corner
- point
- point cloud
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Description
【発明の属する技術分野】
本発明は、3次元のビットマップデータや点群データを、操作性・利用性の高い3次元のCADデータに変換する立体形状データ変換装置及び方法に関する。
【0002】
【従来の技術】
実際物の立体形状を計測してデータとして記述するには、X線CT装置,表面計測プローブ,レーザ計測機などの3次元ディジタイザが利用される。これらの装置は、局所的なセルや点の集合であるビットマップデータや点群データを出力する。これに対して一般の3次元CADは、大域的な位相幾何学的な情報を持つ「B−reps」(Boundary-representations:境界表現)と呼ばれるデータを利用している。そのため計測された立体形状を3次元CADで利用するには、適切なデータ変換技術が不可欠である。
【0003】
局所的な情報しか持たず、大域的な情報を持たないビットマップデータや点群データを変換して大域的な情報を持つB−repsデータ(位相幾何データ)を得るには、これまで主に2つの方法が利用されていた。第1の方法は、ビットマップデータや点群データが表す立体形状を、多面体(ポリゴン)を使用して近似的に記述する方法である。この方法は、特開平11−339071号公報に記載されている。第2の方法は、立体形状を平行な多数の平面でスライスし、得られた断面形状をB−splineなどの自由曲線で記述してから、これらを結合してNURBS(NON-UNIFORM RATIONAL B-SPLINE:非一様有理B-spline面)などの自由曲面とする方法である。この方法は、「CONSTRUCTION OF A SURFACE MODEL AND LAYERED MANUFACTURING DATA FROM 3D HOMOGENIZATION OUTPUT」(A.L. MARSAN, D. DUTTA) Journal of Mechanical Design, Vol. 118(September 1996)に記載されている。
【0004】
【発明が解決しようとする課題】
前記従来技術では、立体形状の全体を多面体や自由曲面で近似することにより、ほぼ自動的にビットマップデータや点群データをB−repsデータに変換することができる。しかし、例えば工業分野の機械部品を対象とした場合、ビットマップデータが膨大なデータ量になるため、多面体や自由曲面で近似すると、変換後のB−repsデータが大きくなり過ぎる。このB−repsデータを3次元CADで使用する際や、工作機械での加工に用いる際に、作業効率の悪化を招くことになる。
【0005】
また、前記従来技術では、グループ内部にコーナーが含まれる可能性があり、この場合コーナーの形状情報が失われてしまう問題がある。更に、前記従来技術では、グループ間に幾何学的な拘束関係が指定されている場合、最小自乗計算が収束せず、フィッテング曲面が精度良く求められないという問題がある。
【0006】
本発明の目的は、3次元のビットマップデータや点群データを、データ容量がより小さいB−repsデータに変換でき、この際に、コーナーの形状情報が失われることがなく、かつ幾何学的な拘束関係が指定されている部位でも精度良く幾何形状を定義することが可能な立体形状データ変換装置及び立体形状データ変換方法を提供することにある。
【0007】
【課題を解決するための手段】
本発明の立体形状データ変換装置は、ビットマップデータ又は点群データからコーナーを定義する手段と、コーナーを境界として含み、幾何形状の種別を規定する種別情報を有するグループを定義する手段と、種別情報とグループに含まれるセル又は点の座標とに基づいてグループの幾何形状の特徴量を定義する手段と、グループ間の接続関係からグループの位相関係を定義する手段と、グループ間の幾何学的な拘束関係を指定する手段と、拘束関係に基づいて特徴量を再定義する手段と、幾何形状と位相関係からB−repsデータを構成する手段とを備える。
【0008】
【発明の実施の形態】
(第1実施例)
本発明による立体形状データ変換装置の第1実施例の構成を図1に示す。立体形状データ変換装置Cは、入力された点群データD1又はビットマップデータD2をB−repsデータD0に変換して出力する機能を備え、ビットマップデータ/点群データ変換手段C0,点群記憶手段C1,グループ記憶手段C2,入力手段C3,コーナー定義手段C4,グループ定義手段C5,特徴量定義手段C6,位相関係定義手段C7,拘束関係定義手段C8,B−repsデータ構成手段C9,点選択手段C10,コーナー選択手段C11,グループ選択手段C12,表示手段C13,基準部位指定手段C14などから構成されている。
【0009】
ビットマップデータ/点群データ変換手段C0は、点群データD1が入力された場合、この点群データD1をそのまま点群記憶手段C1に出力する。ビットマップデータD2が入力された場合、このビットマップデータD2を点群データD1に変換して点群記憶手段C1に出力する。点群記憶手段C1は、ビットマップデータ/点群データ変換手段C0からの点群データD1を記憶する。この処理の詳細は図4を用いて後述する。
【0010】
点群記憶手段C1及びグループ記憶手段C2は、メモリやハードディスクで構成されており、入力されたデータを記憶して、必要な時に出力する機能を持つ。点群記憶手段C1が記憶する点群データD1は、実際物(実際の3次元構造物)の表面に位置する点の座標を記述するデータであり、その点が「コーナー」であるかどうかを表すコーナー属性を付加することもできる。「コーナー」とは、立体形状の表面上でその曲面の微分値が不連続となる部位のことである。
【0011】
座標データは、3次元ディジタイザから立体形状データ変換装置Cに入力される。点群データD1は、たとえば次のようなデータ構成となっている。
【0012】
点1=(点の座標(X1,Y1,Z1),コーナー属性)
点2=(点の座標(X2,Y2,Z2),コーナー属性)
点3=(点の座標(X3,Y3,Z3),コーナー属性)
:
点n=(点の座標(Xn,Yn,Zn),コーナー属性)
コーナー属性に関しては、例えば、その点が「コーナー」である場合にコーナー属性=1、その点が「コーナー」でない場合にコーナー属性=0とする。
【0013】
グループ記憶手段C2が記憶するグループデータD6は、「グループ」を記述するデータである。「グループ」とは、点群データD1に含まれている点の集合によって定義される単一の領域のことであり、一つのグループは一つの「幾何形状」と対応している。「幾何形状」とは、平面,円筒面などの幾何学的に定義された形状のことであり、B−repsデータを構成する要素である。幾何形状を定義するには、平面,円筒面といった形態(形状)の分類を表す「種別情報」と、形態を詳細に規定する「特徴量」が必要である。
【0014】
グループデータD6には、各グループに含まれる点の集合,点の集合の求め方の分類を表す「領域選択方法」,各グループに対応する幾何形状の種別情報,幾何形状の特徴量が記述されている。さらに、グループの「位相関係」を付加することもできる。「位相関係」とは、グループ間のつながり具合(接続関係,接続状況)を表す関係のことであり、B−repsデータを構成する要素である。グループデータD6は、たとえば次のようなデータ構成となっている。
【0015】
グループaの記述(点の集合,領域選択方法,種別情報,特徴量,位相関係)
グループbの記述(点の集合,領域選択方法,種別情報,特徴量,位相関係)
:
グループmの記述(点の集合,領域選択方法,種別情報,特徴量,位相関係)
入力手段C3は、利用者から入力されるコマンドを受け取り、これを処理する機能を持つ。利用者は、コーナー定義コマンドD3,グループ定義コマンドD5,拘束関係定義コマンドD9,B−repsデータ構成コマンドD11,点選択コマンドD12,コーナー選択コマンドD14,グループ選択コマンドD16,基準部位指定コマンドD18などのコマンドを、キーボードやマウスを使って入力する。
【0016】
コーナー定義手段C4は、コーナー定義コマンドD3を受け、コーナー定義データD4を点群記憶手段C1に送り、利用者が選択したコーナー位置に対応する点のコーナー属性を有効にして(例えば、コーナー属性=1にして)、点群記憶手段C1に記憶させる機能を持つ。コーナー定義データD4は、利用者が指定したコーナーの位置を記述するデータである。
【0017】
グループ定義手段C5は、グループ定義コマンドD5を受け、グループデータD6をグループ記憶手段C2に送り、新たなグループをグループ記憶手段C2に追加させる機能を持つ。グループ定義コマンドD5は、領域選択方法と種別情報を利用者が指定するためのコマンドである。グループ定義手段C5は、利用者が指定した領域選択方法と種別情報をもとに、グループに属する点の集合を求める。この際、コーナー位置にある点がグループの内部に含まれることが無く、常にグループの境界に含まれるように、点の集合を求めていく。
【0018】
特徴量定義手段C6は、新たに追加されたグループデータD6を受け、そのグループに属する全ての点の座標とグループの種別情報とに基づいてグループの特徴量を決定し、グループ特徴量定義データD7をグループ記憶手段C2に送り、グループの特徴量をグループ記憶手段C2に記憶させる機能を持つ。グループ特徴量定義データD7は、新たに追加されたグループの特徴量を記述するデータである。
【0019】
位相関係定義手段C7は、新たに追加されたグループデータD6を受け、そのグループに接続(隣接)するグループを検出し、これらのグループ間の接続関係から位相関係を決定し、グループ位相関係定義データD8をグループ記憶手段C2に送り、これらのグループの位相関係をグループ記憶手段C2に記憶させる機能を持つ。グループ位相関係定義データD8は、新たに追加されたグループと、これに隣接するグループの位相関係を記述するデータである。
【0020】
拘束関係定義手段C8は、拘束関係定義コマンドD9を受け、グループ拘束関係定義データD10をグループ記憶手段C2に送る機能を持つ。グループ拘束関係定義データD10は、グループの組み合わせを指定し、その幾何学的な拘束関係を記述するデータである。
【0021】
B−repsデータ構成手段C9は、B−repsデータ構成コマンドD11を受け、全てのグループの幾何形状及び位相関係に基づいてB−repsデータD0を作成して出力する機能を備える。
【0022】
点選択手段C10は、点選択コマンドD12を受け、選択点データD13を点群記憶手段C1に送り、利用者が選択した点を点群記憶手段C1に記憶させる機能を持つ。選択点データD13は、利用者が選択したコーナーの位置を記述するデータである。
【0023】
コーナー選択手段C11は、コーナー選択コマンドD14を受け、選択コーナーデータD15を点群記憶手段C1に送り、利用者が選択したコーナーを点群記憶手段C1に記憶させる機能を持つ。選択コーナーデータD15は、利用者が選択したコーナーの位置を記述するデータである。
【0024】
グループ選択手段C12は、グループ選択コマンドD16を受け、選択グループデータD17をグループ記憶手段C2に送り、利用者が選択したグループをグループ記憶手段C2に記憶させる機能を持つ。選択グループデータD17は、利用者が選択したグループを記述するデータである。
【0025】
表示手段C13は、点群記憶手段C1から点群データD1を、グループ記憶手段C2からグループデータD6を、それぞれ取り出して(入力して)、利用者に視覚的に表示する機能を持つ。さらに、点群データD1のうち、コーナー位置にある点群,利用者が選択した点群,利用者が選択したコーナーに位置する点群を、それぞれ選択的に表示する機能と、グループデータD6のうち、利用者が選択したグループを選択的に表示する機能を持つ。
【0026】
基準部位指定手段C14は、基準部位指定コマンドD18を受け、基準部位座標変換定義データD19を点群記憶手段C1に送り、利用者が指定した基準部位が予め決められた向きとなるように、点群記憶手段C1に点群データD1を座標変換させる機能を持つ。基準部位座標変換定義データD19は、利用者が指定した基準部位が予め決められた向きとなるような座標変換を記述するデータである。
【0027】
以上が立体形状データ変換装置Cの構成である。次に、具体例を用いて、立体形状データ変換装置Cによる処理の内容を詳細に説明する。実際の処理は3次元データで行われるが、ここでは理解を容易にするため、2次元のビットマップデータにより説明する。但し、本文では、全て3次元データの処理に使われる用語を用いて説明する。
【0028】
図2は立体形状データ変換装置Cに入力されるビットマップデータD2の一例を示す図で、(a)はビットマップデータD2の全体図を、(b)はビットマップデータD2の部分拡大図を、それぞれ示す。ビットマップデータD2は、直交格子に沿って配列した細かい立方体の領域によって構成されており、各領域を「セル」と呼ぶ。個々のセルは、その中心点が立体形状の内部又は外部のどちらであるかを表す情報を有する。図2では、ハッチングを付けたセルが立体形状の内部であることを示し、ハッチングのないセルが立体形状の外部であることを示している。
【0029】
立体形状データ変換装置Cによる立体形状データ変換方法の処理手順を図3に示す。以下、図4〜図13を参照しつつ、図3を用いて個々の処理を説明する。
【0030】
初めに、ステップP1(ビットマップデータ/点群データ変換過程)で、ビットマップデータ/点群データ変換手段C0が、入力されたビットマップデータD2を点群データD1に変換する。この変換は、立体形状の表面のすぐ内側に位置するセルの中心点を求める方法(第1の変換方法),立体形状の表面を挟んで隣接する二つのセルの中心点を求める方法(第2の変換方法)の何れかで行うことができる。
【0031】
図4は図2(b)に示したビットマップデータD2から点群データD1を求めた例を示す図で、(a)は上記第1の変換方法で変換した例を、(b)は上記第2の変換方法で変換した例を、それぞれ示す。図4で●印が点群データD1に対応している。この変換によって得られる点群データD1は、点群記憶手段C1に記憶される。
【0032】
上記第1の変換方法を用いて図2(a)に示したビットマップデータD2から点群データD1を求めた例を図5に示し、(a)は全体図を、(b)は(a)のA部の部分拡大図を、それぞれ示す。
【0033】
点群データD1のデータ構成(構造)の一例を図6に示す。図6は、図5(b)の3つの点a,b,cに関する点群データのデータ構成を示す。点群データD1は、個々の点を記述する点レコードQの集合である。点レコードQは、座標レコードQ1,コーナーフラグレコードQ2,点選択フラグレコードQ3を有する。
【0034】
座標レコードQ1には、各点の座標が記述される。図6では、3つの点a,b,cの座標として、(Xa,Ya,Za),(Xb,Yb,Zb),(Xc,Yc,Zc)が記述されている。
【0035】
コーナーフラグレコードQ2には、各点がコーナー位置にあるかないかを示すフラグが記述される。図6では、点a及びcに対してはコーナー位置にないことを示すフラグ0(無効)が記述され、点bに対してはコーナー位置にあることを示すフラグ1(有効)が記述されている。
【0036】
点選択フラグレコードQ3には、コーナーまたは点が選択されているかいないかを示すフラグが記述される。図6では、点a及びbに対しては選択されていないことを示すフラグ0(無効)が記述され、点cに対しては選択されていることを示すフラグ1(有効)が記述されている。
【0037】
次に、図3のステップP2(基準部位指定過程)で、点群データD1を表示手段C13に表示すると共に、利用者に基準部位を指定するかどうかを問い合わせる。利用者は、入力手段C3を用いて表示手段C13に表示された点群データD1の中から基準部位としたい点(点群)を選択することによって、基準部位を指定する。
【0038】
この指定方法の一例を、図7を用いて説明する。ステップP2では、図7に示すように、表示手段C13の表示画面の左側(一部)に、利用者が指定可能な複数のコマンドがメニュー画面M1として表示され、複数のコマンドのうち「基準部位指定」が選択表示されている。選択表示は、例えばカーソルの点滅表示で行う。利用者は、基準部位を指定する場合、メニュー画面M1上で「基準部位指定」をマウスでクリックする(選択する)。基準部位を指定しない場合には、例えば表示画面に表示された「次の処理」(図示せず)をマウスでクリックすることにより、ステップP3に進む。
【0039】
「基準部位指定」が選択されると、点群データD1が表示画面の右側(一部)のデータ表示画面M2に表示される。利用者は、例えばマウスを用いて、表示画面M2に表示された点群データD1に対して、矢印カーソルをドラッグして領域F(点線で表示)を指定することにより、この領域内に含まれる点(点群)を基準部位として指定することができる。図7は、領域Fを指定している時の表示画面の一例を示す。
【0040】
この操作により、領域F内の点群d1を基準部位とする基準部位指定コマンドD18が基準部位指定手段C14に送られる。基準部位指定手段C14は、基準部位に含まれる点の集合(点群d1)を最もよく近似する平面を最小自乗法により求め、この平面が予め決められた向き(基準方向)となるように基準部位座標変換定義データD19を決定する。基準方向は、水平方向,垂直方向などを予め決めておくか、予め利用者が指定する。
【0041】
こうして求められた基準部位座標変換定義データD19は、点群記憶手段C1に送られ、点群データD1をD19に従って座標変換した点群データ(座標変換後の点群データ)D1が点群記憶手段C1に保存されると共に、座標変換後の点群データD1が表示手段C13の表示画面に表示される。
【0042】
以上のようにして基準部位が基準方向となるように座標変換された点群データD1を表示画面に表示することにより、利用者は、基準部位に対して垂直,平行などの関係にある部位を表示画面上で容易に認識することができる。これにより、グループ間の幾何学的拘束関係を指定する操作(後述)を容易で確実にすることができる。
【0043】
次に、図3のステップP3(コーナー定義過程)で、点群データD1を表示手段C13に表示するとともに、新しいコーナーを定義するかどうかを利用者に問い合わせる。利用者は、入力手段C3を用いて表示手段C13に表示された点群データD1の中から新しいコーナーとしたい点を選択することによって、新しいコーナーを定義する。
【0044】
この定義方法の一例を、図8を用いて説明する。ステップP3では、図8(a)に示すように、メニュー画面M1に表示された複数のコマンドのうち「コーナー定義」が選択表示されている。利用者は、新しいコーナーを定義する場合、メニュー画面M1上で「コーナー定義」をマウスでクリックする(選択する)。新しいコーナーを定義しない場合には、例えば表示画面に表示された「次の処理」(図示せず)をマウスでクリックすることにより、ステップP4に進む。
【0045】
「コーナー定義」が選択されると、点群データD1がデータ表示画面M2に表示される。利用者は、データ表示画面M2に表示された点群データD1のうち利用者がコーナーであると判断した点(コーナー点)を選択することにより、その点をコーナーとして定義する。
【0046】
このコーナー点の選択方法の一例を図8により説明する。図8(a)は、利用者がデータ表示画面M2上で矢印カーソルをドラッグして、利用者がコーナーであると判断した点(コーナー点)Dcを含む領域F(点線で表示)を指定している時の表示画面の一例を示す。利用者は、領域Fを指定後、例えば表示画面に表示された「拡大」(図示せず)をマウスでクリックすることにより、図8(b)が表示される。利用者は、図8(b)のデータ表示画面M2上で矢印カーソルによりコーナー点Dcを選択することで、この点をコーナーとして定義する。図8(b)は、図8(a)の領域Fの拡大図上でコーナー点Dcを選択している時の表示画面の一例を示す。
【0047】
この操作により、コーナー点Dcをコーナーとして定義するコーナー定義コマンドD3がコーナー定義手段C4に送られる。コーナー定義手段C4は、コーナー定義コマンドD3に対応するコーナー定義データD4を点群記憶手段C1に送信し、点群記憶手段C1に保存されている点群データD1に対して、利用者が定義したコーナー位置と一致する点のコーナーフラグレコードQ2を1(有効)にする。
【0048】
次に、図3のステップP4(グループ定義過程)で、点群データD1及びグループデータD6を表示手段C13に表示するとともに、新しいグループを定義するかどうかを利用者に問い合わせる。利用者は、入力手段C3を用いてグループの領域選択方法と種別情報を指定することによって、新しいグループを定義する。
【0049】
グループの領域選択方法は、利用者が「シード点」を指定してグループに含まれる点の集合を求める方法(第1の領域選択方法),利用者が「稜線」を指定してグループに含まれる点の集合を求める方法(第2の領域選択方法)から選択する。「シード点」は、グループが最初に含んでいる点のことである。「稜線」は、2つの隣接するグループが交わった部分を表す線である。グループの境界は、いくつかの連続する稜線で構成される。上記第1及び第2の領域選択方法の詳細は、図11及び図12を用いて後述する。
【0050】
グループの種別情報は、例えば、法線が既知の平面,法線が未知の平面,半径が既知の円柱面,半径が未知の円柱面,半径が既知の球面,半径が未知の球面,2次曲面,自由曲面,回転面などの幾何形状の中から選択する。
【0051】
グループ定義方法の一例を、図9を用いて説明する。ステップP4では、図9に示すように、メニュー画面M1に表示された複数のコマンドのうち「グループ定義」が選択表示されている。利用者は、新しいグループを定義する場合、メニュー画面M1上で「グループ定義」をマウスでクリックする(選択する)。新しいグループを定義しない場合には、例えば表示画面に表示された「次の処理」(図示せず)をマウスでクリックすることにより、ステップP5に進む。
【0052】
「グループ定義」が選択されると、指定することができる領域選択方法と種別情報の一覧が、画面の右側に表示される。即ち、上記した2つの領域選択方法が画面右側の上部に位置する選択情報画面(選択情報表示画面)M3に表示され、上記した複数の種別情報が画面右側の下部に位置する選択情報画面(選択情報表示画面)M4に表示される。
【0053】
利用者は、選択情報画面M3に表示された2つの領域選択方法のうち一方をマウスでクリックする(選択する)ことにより、新しいグループの領域選択方法を定義する。また、利用者は、選択情報画面M4に表示された複数の種別情報のうち1つをマウスでクリックする(選択する)ことにより、新しいグループの種別情報を定義する。図9は、選択情報画面M3上で「シード点指定」が選択され、選択情報画面M4上で「半径が未知の円柱面」が選択された後の表示画面の一例を示す。
【0054】
この操作により、グループ定義コマンドD5がグループ定義手段C5に送られる。グループ定義手段C5は、グループ定義コマンドD5に対応するグループデータD6をグループ記憶手段C2に送信し、グループ記憶手段C2に保存されているグループデータを更新する。
【0055】
グループデータD6のデータ構成(構造)の一例を図10に示す。グループデータD6は、個々のグループを記述するグループレコードRと個々の稜線を記述する稜線レコードSの集合である。グループレコードRは、点群レコードR1,領域選択方法レコードR2,種別情報レコードR3,特徴量レコードR4,位相情報レコードR5,グループ選択フラグレコードR6を有する。
【0056】
点群レコードR1には、グループに属する点が列記される。領域選択方法レコードR2には、グループの領域選択方法が記述される。種別情報レコードR3には、グループの種別情報が記述される。図10の場合、グループaは、点群レコードR1:点a1,a2,a3,…ap、領域選択方法レコードR2:シード点指定、種別情報レコードR3:法線が既知の平面、グループbは、点群レコードR1:点b1,b2,b3,…bq、領域選択方法レコードR2:稜線指定、種別情報レコードR3:法線が未知の平面、である。
【0057】
特徴量レコードR4には、グループの幾何形状の形態を一意に規定するための特徴量が記述される。例えば種別情報が「法線が既知の平面」の場合、基準点を一つ定義すればグループの幾何形状の形態を一意に規定できるので、特徴量レコードR4は基準点レコードを一つ持っていればよい。特徴量レコードR4の内容は、種別情報レコードR3に記述されたグループの種別情報に応じて、次のように変わる。
【0058】
(種別情報) (特徴量レコードR4の内容)
法線が既知の平面 : 基準点
法線が未知の平面 : 基準点,単位法線ベクトル
半径が既知の円柱面: 中心軸の基準点,中心軸の単位方向ベクトル
半径が未知の円柱面: 中心軸の基準点,中心軸の単位方向ベクトル,半径
半径が既知の球面 : 中心点
半径が未知の球面 : 中心点,半径
2次曲面 : X,Y,Zを元とする2次方程式の係数
自由曲面 : 曲面の次数,制御点,ノット列
回転面 : 中心軸の基準点,中心軸の単位方向ベクトル,母線図10の場合、グループaの特徴量レコードR4は基準点レコードR41:(Xa,Ya,Za)で、グループbの特徴量レコードR4は基準点レコードR42:(Xb,Yb,Zb)と単位法線レコードR43:(NXb,NYb,NZb)である。
【0059】
位相情報レコードR5には、グループの境界を構成する稜線が記述される。グループ選択フラグレコードR6には、グループが選択されているかいないかを示すフラグが記述されている。図10の場合、グループaは、位相情報レコード
R5:稜線a,稜線c,…、グループ選択フラグレコードR6:グループが選択されていないことを示すフラグ0(無効)、グループbは、位相情報レコード5:稜線a,稜線b,…、グループ選択フラグレコードR6:グループが選択されていることを示すフラグ1(有効)、である。
【0060】
稜線レコードSには、稜線を規定する二つの隣接するグループが記述される。位相情報レコードR5と稜線レコードSによりグループ間の接続関係が規定される。図10の場合、稜線aの稜線レコードS:グループa,グループb,稜線bの稜線レコードS:グループb,グループd、である。
【0061】
次に、上記した第1の領域選択方法の詳細を図11を用いて説明する。図9の選択情報画面M3で「シード点指定」が選択されると、ステップP4a(シード点選択過程)において、点群データD1が表示手段C13のデータ表示画面M2に表示され(図示せず)、利用者は画面表示された点群データD1の中からシード点とすべき点をクリックすることによりシード点を選択する。この画面上では、定義済みのグループに属する点が例えば淡色で表示され、これらの点をシード点として選択することはできない。
【0062】
次に、ステップP4b(代表面決定過程)では、図9の選択情報画面M4で選択された種別情報に基づいて、グループに含まれる点の集合を最もよく近似する面(代表面)を求める。この代表面は最小自乗法を利用して求める。この方法では、グループが1つのシード点しか含んでいない場合、代表面を求めることができない。この場合にも代表面を求めることができるように、シード点に隣接するいくつかの点を要素としてグループに追加する。
【0063】
このため、ステップP4c(隣接点検索過程)では、グループに隣接している点を検索する。隣接点が、既に定義済みのグループに含まれず(ステップP4d)、且つコーナー位置になく(ステップP4e)、且つ代表面との距離がしきい値以下(ステップP4f)で、且つ隣接点における法線ベクトルと、隣接点位置での代表面の法線ベクトルとのなす角度がしきい値以下(ステップP4f2)であれば、ステップP4g(グループ拡張過程)で、その隣接点をグループに追加する。
【0064】
隣接点における法線ベクトルは、隣接点とその周辺の点の座標値に基づいて、これらの点を最も良く近似する平面を最小自乗法により求め、この平面の法線ベクトルに一致するものとして求める。距離に関するしきい値は、例えば、図2に例示したセルの幅(一辺の長さ)の0.5倍〜0.75倍(0.5倍以上0.75倍以下)とすれば良い。角度に関するしきい値は、例えば45度とすれば良い。ステップP4hでは、グループの全ての隣接点を評価するまで、上記ステップP4d〜P4gを行う。
【0065】
ステップP4gでグループに隣接点が追加された場合、ステップP4iにおいて、処理をステップP4bに戻し、点の追加によって変化した代表面を求め直す。こうして、上記ステップP4b〜P4hは、グループに新しい隣接点が追加されなくなるまで繰り返される。
【0066】
グループに属する点が変化しなくなった場合(グループに新しい隣接点が追加されなくなった場合)、ステップP4j(コーナー追加過程)で、グループに隣接し且つコーナー位置にある点をグループに追加する。以上が、ステップP4において、シード点を指定してグループに含まれる点の集合を求める方法である。
【0067】
次に、上記した第2の領域選択方法の詳細を図12を用いて説明する。図9の選択情報画面M3で「稜線指定」が選択されると、ステップP4k(新規稜線指定過程)において、点群データD1が表示手段C13のデータ表示画面M2に表示され(図示せず)、利用者は画面表示された点群データD1の中から稜線とすべき点をクリックすることにより新規に稜線を指定する。この画面上では、定義済みのグループに属する点が例えば淡色で表示され、これらの点を稜線として指定することはできない。
【0068】
ステップP4l(既存稜線指定過程)では、グループデータD6が表示手段
C13のデータ表示画面M2に表示され(図示せず)、利用者は定義済みのグループの境界を構成する稜線を画面上でクリックすることにより、既存の稜線を指定する。ステップP4mで、指定した稜線の集合が閉ループを構成するまで、ステップP4k及びステップP4lは繰り返される。
【0069】
指定した稜線の集合が閉ループを構成すれば、ステップP4n(内部点検索過程)において、閉ループ内部に含まれる点を検索する。ステップP4oでは、コーナー位置にある点が閉ループ内部(閉ループの内側)に含まれる場合には、指定した稜線を無効にして、処理をステップP4k及びステップP4lに戻す。コーナー位置にある点が閉ループ内部に含まれなくなったら、閉ループと閉ループ内部に含まれる点をグループに追加する。以上が、ステップP4において、稜線を指定してグループに含まれる点の集合を求める方法である。
【0070】
上記した方法によれば、シード点を指定する場合及び稜線を指定する場合の何れにおいても、コーナーは、グループの内部に含まれることはなく、常にグループの境界に含まれるので、コーナーの形状情報を失うことなく、B−repsデータに変換することができる。
【0071】
次に、図3のステップP5(グループ特徴量定義過程)で、特徴量定義手段
C6が、新たに追加されたグループに対して、グループに含まれる点の座標とグループの種別情報に基づいて、最小自乗法を用いてグループの特徴量を計算する。
【0072】
ステップP6(グループ位相関係定義過程)では、位相関係定義手段C7が、新たに追加されたグループに対して、そのグループに接続(隣接)するグループを検出し、これらのグループ間の接続関係から図10に示したグループの位相情報レコードR5及び稜線レコードSを更新して、グループの位相関係を求める。
【0073】
ステップP7では、グループの定義が全て完了し、点群データD1に含まれる全ての点が何れかのグループに属するまで、上記ステップP4〜P6が繰り返される。グループの定義が全て完了した時点で、処理はステップP8に移る。
【0074】
ステップP8(グループ拘束関係定義過程)では、グループデータD6の一覧を表示手段C13に表示するとともに、拘束関係を定義するかどうかを利用者に問い合わせる。利用者は、入力手段C3を用いて拘束関係の種類とグループの組合せを指定することによって、グループ拘束関係を定義する。
【0075】
この定義方法の一例を、図13を用いて説明する。ステップP8では、図13に示すように、メニュー画面M1に表示された複数のコマンドのうち「拘束関係定義」が選択表示されている。利用者は、グループ拘束関係を定義する場合、メニュー画面M1上で「拘束関係定義」をマウスでクリックする(選択する)。グループ拘束関係を定義しない場合には、例えば表示画面に表示された「次の処理」(図示せず)をマウスでクリックすることにより、ステップP9に進む。
【0076】
「拘束関係定義」が選択されると、グループデータD6の一覧と、グループの組合せに対して定義することのできる拘束関係の一覧が、画面の右側に表示される。即ち、グループデータD6の一覧が画面右側の上部及び中央に位置する選択情報画面M3及びM4に表示され、上記した拘束関係の一覧が画面右側の下部に位置する選択情報画面M5に表示される。
【0077】
利用者は、選択情報画面M3及びM4に表示された複数のグループ(図13では3つのグループa〜c)の中からそれぞれ1つをマウスでクリック(選択)することにより、グループの組合せを定義する。更に、利用者は、選択情報画面
M5に表示された複数の拘束関係のうち1つをマウスでクリック(選択)することにより、選択情報画面M3とM4で選択したグループ間の拘束関係を定義する。
【0078】
拘束関係の種類は、例えば、同一の面,垂直,平行,1階微分連続、の中から選択する。図13は、選択情報画面M3及びM4上で「グループb」及び「グループc」が選択され、選択情報画面M5上で「平行」が選択された後の表示画面の一例を示す。
【0079】
この操作により、拘束関係定義コマンドD9が拘束関係定義手段C8に送られる。拘束関係定義手段C8は、拘束関係定義コマンドD9に対応するグループ拘束関係定義データD10をグループ記憶手段C2に送信し、グループ記憶手段C2に保存されているグループデータを更新する。
【0080】
次に、図3のステップP9(グループ特徴量再定義過程)で、特徴量定義手段C6が、拘束関係が指定されているグループに対して、拘束関係を満足するようにグループの特徴量を再計算する。拘束関係は、拘束関係を指定するグループの特徴量の間に成り立つ関係式で表現される。例えば平面と円柱面が1階微分連続で接続する場合には、平面の基準点A1,単位法線ベクトルN1と、円柱面の中心軸の基準点A2及び単位方向ベクトルL1,半径rとの間に次の2つの関係式が成り立つ。
【0081】
N1・L1=0 |N1・(A2−A1)|=r
上式において「・」はベクトルの内積を表す。従って、グループの特徴量の間に成り立つ制約条件の下で、最小自乗法を用いてグループの特徴量を計算することにより、拘束関係を満たすグループの特徴量を求めることができる。
【0082】
ステップP9では、グループの特徴量に対して、制約条件つきの最小自乗計算を反復計算によって解く必要がある。この反復計算を確実に収束させるためには、グループの特徴量の初期値を適切に設定する必要がある。本実施例は、ステップP5で、各グループに対してグループの特徴量を求めており、この値は初期値としては適切なものである。これにより、幾何学的な拘束関係を指定した部位に対しても精度良く幾何形状を定義することができる。
【0083】
ステップP10では、全ての拘束関係を指定するまで、上記ステップP8及びP9を繰り返す。ステップP11(B−repsデータ構成過程)では、B−repsデータ構成手段C9が、グループの幾何形状及び位相関係に基づいて、B−repsデータD0を作成して出力する。
【0084】
以上が、立体形状データ変換装置Cによるデータ変換方法である。このデータ変換処理方法で得られたB−repsデータD0の一例を図14に示す。同図では、面要素の接続点を○印で示し、1階微分連続の拘束条件を指定した面要素を太線で示している。このB−repsデータD0は17個の面要素で記述されており、コーナーの形状情報が失われることがなく、且つ拘束関係を指定した部位でも精度良く幾何形状が定義されているCADデータが得られている。
【0085】
本実施例によれば、3次元のビットマップデータや点群データをデータ容量がより小さいB−repsデータに変換でき、この変換の際に、コーナーの形状情報が失われることがなく、幾何学的な拘束関係が指定されている部位でも精度良く幾何形状を定義することが可能となる。
【0086】
(第2実施例)
次に、本発明による立体形状データ変換装置及び立体形状データ変換方法の第2実施例を説明する。
【0087】
第1実施例では、利用者が、ステップP3でコーナー位置を指定し、ステップP4でグループ定義のためにシード点又は稜線を指定する必要があった。しかし、対象物の形状が複雑になると、定義すべきコーナーやグループの数が増大するため、上記利用者の指定作業は煩雑なものとなる。この課題を解決するために、第2実施例では、立体形状データ変換装置がコーナー位置とグループに含まれる点の集合を推定して利用者に提示する機能を備える。
【0088】
第2実施例の立体形状データ変換装置Caの構成を図15に示す。立体形状データ変換装置Caが図1の第1実施例と異なる点は、コーナー推定手段C15及びグループ推定手段C16が追加され、これに伴ってコーナー定義手段C4a,グループ定義手段C5a及び表示手段C13aの機能が変更されていることである。その他の構成は、基本的に第1実施例と同様であるので、ここでは説明を省略する。
【0089】
コーナー推定手段C15は、コーナー推定コマンドD21を受けてコーナー位置を推定し、コーナーの推定位置データD22をコーナー定義手段C4aに送る。また、コーナー推定手段C15は、推定位置データD22を表示手段C13aに送り、利用者に視覚的に表示させて、推定位置データD22のうち利用者が選択したものだけをコーナー定義手段C4aに送る機能も有する。推定位置データD22は、コーナー推定手段C15が推定したコーナー位置を記述するデータである。コーナー位置の推定方法の詳細は、図16を用いて後述する。
【0090】
コーナー定義手段C4aは、図1のコーナー定義手段C4の持つ機能に加えて、推定位置データD22を受けてコーナー定義データD4を点群記憶手段C1に送り、推定した位置に対応する点のコーナーフラグレコードQ2を有効にして点群記憶手段C1に記憶させる機能を有する。
【0091】
グループ推定手段C16は、グループ推定コマンドD23を受けて、利用者が指定したグループの種別情報をもとにグループに含まれる点の集合を推定し、推定領域データD24をグループ定義手段C5aに送る機能を有する。また、グループ推定手段C16は、推定領域データD24を表示手段C13aに送り、利用者に視覚的に表示させて、推定領域データD24のうち利用者が選択したものだけをグループ定義手段C5aに送る機能も有する。推定領域データD24は、グループ推定手段C16が推定したグループに含まれる点の集合を記述するデータである。グループに含まれる点の集合を推定する方法の詳細は、図17を用いて後述する。
【0092】
グループ定義手段C5aは、図1のグループ定義手段C5の持つ機能に加えて、推定領域データD24を受けてグループデータD6をグループ記憶手段C2に送り、新たなグループをグループ記憶手段C2に追加する機能を有する。表示手段C13aは、図1の表示手段C13の持つ機能に加えて、推定位置データD22又は推定領域データD24を利用者に視覚的に表示する機能を有する。
【0093】
次に、コーナー位置の推定方法の詳細を図16を用いて説明する。ステップP30(平面決定過程)では、点群データD1に含まれる1点に着目し、この点とその隣接点の座標値に基づいて、これらの点を最もよく近似する平面を最小自乗法により求める。ステップP31(平面/点間垂直距離計算過程)では、平面と着目点の間の垂直距離を求める。
【0094】
ステップP31で求めた垂直距離がしきい値以上であれば(ステップP32)、ステップP33(推定位置登録過程)で、着目点の位置をコーナー推定位置として登録する。しきい値は、例えばセルの幅(一辺長さ)の2倍〜3倍とする。ステップP34では、点群データD1に含まれる全ての点を評価するまで、ステップP30〜P33が繰り返される。
【0095】
次に、グループに含まれる点の集合を推定する方法の詳細を図17を用いて説明する。ステップP40a(グループ種別情報指定過程)では、利用者がグループの種別情報を画面上で指定する。ステップP40b(パラメータ空間定義過程)では、「形状パラメータ」を座標軸とするパラメータ空間を定義する。「形状パラメータ」とは、グループの特徴量を規定するための独立なパラメータのことである。
【0096】
例えば、グループの種別情報が「法線が未知の平面」の場合、グループの特徴量である基準点Aと単位法線ベクトルNは3つの独立なパラメータθ(0≦θ≦π),φ(0≦φ<2π),ρ(0≦ρ)を用いて、
A=(ρsinθ・cosφ,ρsinθ・sinφ,ρcosθ)
N=(sinθ・cosφ,sinθ・sinφ,cosθ)
と表すことができる。
【0097】
この場合、形状パラメータはθ,φ,ρであり、θφρ空間がパラメータ空間となる。各座標軸を等間隔に分割して、パラメータ空間全体を小さなセルに分割する。各セルは一つの整数値をセル値として持ち、その値を0に初期化する。各座標軸の分割数は、例えば50〜100とする。パラメータ空間上の一点は、実空間上の一つの曲面に対応している。上記例の場合、θφρ空間上の一点(θc,φc,ρc)は、実空間上の一つの平面sinθc・cosφc・X+sinθc・sinφc・Y+cosθc・Z=ρcに対応している。
【0098】
次に、ステップP40c(グループ未所属点検索過程)で、既に定義済みのどのグループにも属さない点を検索する。ステップP40d(形状パラメータ決定過程)では、ステップP40cで検索した一つの点に着目し、この点とその隣接点の座標値、及びグループの種別情報に基づいて、最小自乗法を利用して代表面と形状パラメータを求める。
【0099】
ステップP40e(パラメータ空間登録過程)では、パラメータ空間上において、求めた形状パラメータを座標値とする点が属するセルを検索し、そのセルのセル値を1増やす。ステップP40fでは、ステップP40cで検出した全ての点を評価するまで、ステップP40d〜P40eが繰り返される。
【0100】
ステップP40fで全ての点を評価後、ステップP40g(セル検索過程)で、セル値がしきい値以上となるセルを検索する。しきい値は、例えば5〜10とする。セルの位置をセルの重心点で代表させると、あるセルのセル値が大きいということは、このセルの重心点に対応する実空間上の曲面が、立体形状の表面に含まれる可能性が高いことを意味している。
【0101】
ステップP40h(曲面決定過程)では、ステップP40gで検索した一つのセルに着目し、このセルの重心点に対応する実空間上の曲面を求める。ステップP40i(曲面近傍点検索過程)では、既に定義済みのどのグループにも属さず、かつコーナー位置になく、かつステップP40hで求めた曲面との距離がしきい値以下となる点を検索する。しきい値は、例えばセルの幅(一辺長さ)の0.5倍〜0.75倍とする。
【0102】
ステップP40j(領域定義過程)では、ステップP40iで検索した点群に対して、隣接した点群をグルーピングして領域を定義する。ステップP40kでは、ステップP40jで定義した一つの領域に着目し、その領域に含まれる点の数がしきい値以上であれば、ステップP40lを実行する。しきい値は、例えば20〜30とする。
【0103】
ステップP40l(コーナー追加過程)では、ステップP40jで定義した領域に隣接しかつコーナー位置にある点を、その領域に追加する。ステップP40m(推定領域登録過程)では、この領域を、グループに含まれる点集合の推定領域として登録する。ステップP40nでは、全ての領域を評価するまで、ステップP40k〜P40mが繰り返される。さらに、ステップP40oでは、ステップP40gで検索した全てのセルを評価するまで、ステップP40h〜P40nが繰り返される。
【0104】
本実施例でも、第1実施例と同様な効果が得られる。更に、本実施例によれば、立体形状データ変換装置がコーナー位置を推定することにより、利用者がコーナー位置を定義する作業を簡略化できる。また、推定位置をコーナーとして登録するかどうかを利用者に問い合わせることにより、利用者が不適切であると判断したものを予め除外でき、データ変換の操作を容易且つ確実にすることができる。
【0105】
更に、立体形状データ変換装置がグループを推定することにより、利用者がグループを定義する作業を簡略化できる。また、推定領域をグループとして登録するかどうかを利用者に問い合わせることにより、利用者が不適切であると判断したものを予め除外でき、データ変換の操作を容易且つ確実にすることができる。
【0106】
(第3実施例)
次に、本発明による立体形状データ変換装置の第3実施例を説明する。第1実施例では、利用者が一旦コーナーやグループを定義した後は、これらを削除することはできなかった。これに対して、第3実施例では、利用者が自由にコーナーやグループを修正できるように、定義したコーナーやグループを削除できる機能を備える。
【0107】
第3実施例の立体形状データ変換装置Cbの構成を図18に示す。立体形状データ変換装置Cbが図1の第1実施例と異なる点は、コーナー削除手段C17及びグループ削除手段C18が追加され、これに伴ってグループ記憶手段C2の機能が追加されていることである。その他の構成は、基本的に第1実施例と同様であるので、ここでは説明を省略する。
【0108】
コーナー削除手段C17は、コーナー削除コマンドD25を受け、点群データD1の中からD25で選択されているコーナーを検索し、これらを削除するコーナーとみなして削除コーナーデータD26を点群記憶手段C1に送る。さらに、削除するコーナー位置に対応する点のコーナーフラグレコードQ2を無効にして、点群記憶手段C1に記憶させる機能を持つ。削除コーナーデータD26は、削除するコーナーの位置を記述するデータである。
【0109】
グループ削除手段C18は、グループ削除コマンドD27を受け、グループデータD6の中からD27で選択されているグループを検索し、これらを削除するグループとみなして削除グループデータD28をグループ記憶手段C2に送る。さらに、これらのグループをグループ記憶手段C2に削除させる機能を持つ。削除グループデータD28は、削除するグループを記述するデータである。グループ記憶手段C2は、削除グループデータD28を受け、グループデータD6の中から削除グループデータD28に記述されているグループを削除する。
【0110】
本実施例でも、第1実施例と同様な効果が得られる。更に、本実施例では、利用者が自由にコーナーやグループを修正できる。
【0111】
(第4実施例)
次に、本発明による立体形状データ変換装置の第4実施例を説明する。第4実施例の立体形状データ変換装置Ccの構成を図19に示す。立体形状データ変換装置Ccが図1の第1実施例と異なる点は、未接続幾何形状検出手段C19,差異計算手段C20及び重ね合わせ手段C21が追加され、これに伴って表示手段C13cの機能が追加されていることである。その他の構成は、基本的に第1実施例と同様であるので、ここでは説明を省略する。
【0112】
未接続幾何形状検出手段C19は、グループデータD6の中からグループの幾何形状がこのグループと隣接するグループの幾何形状と未接続状態にあるものを検出する機能を持つ。表示手段C13cはグループデータD6を表示する際に、未接続幾何形状検出手段C19で検出されたグループを強調して表示する。幾何形状が未接続の状態ままB−repsデータに変換すると、立体形状の表面に隙間が生じ、不正なCADデータとなる。未接続の幾何形状を検出しそれらを強調して表示することにより、利用者に注意を促し、不正なCADデータを出力することを未然に防ぐことができる。
【0113】
差異計算手段C20は、点群データD1とグループデータD6の幾何形状の差異を計算し、差異データD30を重ね合わせ手段C21に送る機能を持つ。差異データD30は点群データD1とグループデータD6の幾何形状の差異を記述するデータである。両者の差異としては、例えば、点群データD1とグループデータD6の幾何形状の間の垂直距離を計算する。
【0114】
重ね合わせ手段C21は、点群データD1とグループデータD6の幾何形状を重ね合わせて重ね合わせデータD31を作成し、これを表示手段C13cに送る機能を持つ。また、差異データD30を受け、差異の値に応じて点群データD1又はグループデータD6の幾何形状に色付けして、重ね合わせデータD31を作成し、これを表示手段C13cに送る機能も持つ。重ね合わせデータD31は点群データD1とグループデータD6の幾何形状を重ね合わせたデータである。
【0115】
表示手段C13cは、表示手段C13の持つ機能に加えて、グループデータD6を表示する際に、未接続幾何形状検出手段C19で検出されたグループを強調して表示する機能と、重ね合わせデータD31を表示する機能を持つ。
【0116】
点群データD1とグループデータD6の幾何形状を重ね合わせて画面上に表示することにより、B−repsデータへの変換の際に生じる誤差を、利用者が容易に確認することができる。また、両者の差異に応じて、例えば片方を色付けして画面上に表示することにより、上記誤差をより容易に確認することができる。
【0117】
本実施例でも、第1実施例と同様な効果が得られる。更に、本実施例では、不正なCADデータが出力されることを未然に防ぐことができ、利用者はデータ変換の際に生じる誤差を容易に確認することができる。
【0118】
【発明の効果】
本発明によれば、3次元のビットマップデータや点群データをデータ容量がより小さいB−repsデータに変換でき、この変換の際に、コーナーの形状情報が失われることがなく、幾何学的な拘束関係が指定されている部位でも精度良く幾何形状を定義することが可能となる。
【図面の簡単な説明】
【図1】本発明による立体形状データ変換装置の第1実施例の構成を示す図。
【図2】ビットマップデータD2の一例を示す図で、(a)はD2の全体図を、(b)はD2の部分拡大図を、それぞれ示す。
【図3】図1の装置による立体形状データ変換方法を示す図。
【図4】図2(b)に示したビットマップデータD2から点群データD1を求めた例を示す図で、(a)は第1の変換方法で変換した例を、(b)は第2の変換方法で変換した例を、それぞれ示す。
【図5】第1の変換方法を用いて図2(a)に示したビットマップデータD2から点群データD1を求めた例を示す図で、(a)は全体図を、(b)は(a)のA部の部分拡大図を、それぞれ示す。
【図6】図5(b)の3つの点a,b,cに関する点群データのデータ構成を示す図。
【図7】ステップP2で基準部位を指定する方法の一例を説明する図。
【図8】ステップP3でコーナーを選択する方法の一例を説明する図で、(a)は点群データD1の全体図を、(b)はD1の部分拡大図を、それぞれ示す。
【図9】ステップP4でグループを定義する方法の一例を説明する図。
【図10】グループデータD6のデータ構成の一例を示す図。
【図11】ステップP4における第1の領域選択方法の説明図。
【図12】ステップP4における第2の領域選択方法の説明図。
【図13】ステップP8でグループ拘束関係を定義する方法の一例を説明する図。
【図14】図3のデータ変換方法で得られたB−repsデータD0の一例を示す図。
【図15】本発明による立体形状データ変換装置の第2実施例の構成を示す図。
【図16】第2実施例でコーナー位置を推定する方法の説明図。
【図17】第2実施例でグループに含まれる点の集合を推定する方法の説明図。
【図18】本発明による立体形状データ変換装置の第3実施例の構成を示す図。
【図19】本発明による立体形状データ変換装置の第4実施例の構成を示す図。
【符号の説明】
C,Ca,Cb,Cc…立体形状データ変換装置、C1…点群記憶手段、C2…グループ記憶手段、C3…入力手段、C4,C4a…コーナー定義手段、C5,C5a…グループ定義手段、C6…特徴量定義手段、C7…位相関係定義手段、C8…拘束関係定義手段、C9…B−repsデータ構成手段、C10…点選択手段、C11…コーナー選択手段、C12…グループ選択手段、C13,C13a,C13c…表示手段、C14…基準部位指定手段、C15…コーナー推定手段、C16…グループ推定手段、C17…コーナー削除手段、C18…グループ削除手段、C19…未接続幾何形状検出手段、C20…差異計算手段、C21…重ね合わせ手段。
Claims (8)
- ビットマップデータ又は点群データを位相幾何データに変換する立体形状データ変換装置であって、
前記ビットマップデータ又は前記点群データからコーナーを定義する手段と、
前記コーナーを境界として含み、幾何形状の種別を規定する種別情報を有するグループを定義する手段と、前記種別情報と前記グループに含まれるセル又は点の座標とに基づいて、前記グループの前記幾何形状の特徴量を定義する手段と、前記グループ間の接続関係から前記グループの位相関係を定義する手段と、前記グループ間の幾何学的な拘束関係を指定する手段と、前記拘束関係に基づいて前記特徴量を再定義する手段と、前記幾何形状と前記位相関係からB−repsデータを構成する手段と、を備えることを特徴とする立体形状データ変換装置。 - 請求項1において、前記ビットマップデータ,前記点群データ,前記コーナー又は前記グループを画面上に表示する表示手段と、前記セル,前記点,前記コーナー又は前記グループに対する利用者の選択入力を前記表示手段の画面上で受け付ける手段と、を備えることを特徴とする立体形状データ変換装置。
- 請求項2において、前記点群データ上の基準となる部位に対する指定入力に基づいて、該指定された部位が予め決められた向きとなるように前記ビットマップデータ又は前記点群データを座標変換する手段を備えることを特徴とする立体形状データ変換装置。
- 請求項2において、前記ビットマップデータ又は前記点群データから前記コーナーの位置を推定する手段と、該推定した位置を前記コーナーとして定義するかしないかに関する利用者の選択入力を前記表示手段の画面上で受け付ける手段と、を備えることを特徴とする立体形状データ変換装置。
- 請求項2において、前記ビットマップデータ又は前記点群データから前記グループを推定する手段と、推定した領域を前記グループとして定義するかしないかに関する利用者の選択入力を前記表示手段の画面上で受け付ける手段と、を備えることを特徴とする立体形状データ変換装置。
- 請求項2において、定義済みの前記コーナー又は前記グループを削除する手段を備えることを特徴とする立体形状データ変換装置。
- 請求項2において、前記グループの中からその前記幾何形状が隣接する前記グループの前記幾何形状と未接続状態であるものを検索し、前記表示手段の画面上に表示する手段を備えることを特徴とする立体形状データ変換装置。
- 請求項2において、前記点群データと前記グループの前記幾何形状を重ね合わせて前記表示手段の画面上に表示する手段と、前記点群データと前記グループの前記幾何形状の差異を前記表示手段の画面上に表示する手段と、を備えることを特徴とする立体形状データ変換装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002203406A JP3894063B2 (ja) | 2002-07-12 | 2002-07-12 | 立体形状データ変換装置および立体形状データ変換方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002203406A JP3894063B2 (ja) | 2002-07-12 | 2002-07-12 | 立体形状データ変換装置および立体形状データ変換方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004046545A JP2004046545A (ja) | 2004-02-12 |
JP3894063B2 true JP3894063B2 (ja) | 2007-03-14 |
Family
ID=31709279
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002203406A Expired - Fee Related JP3894063B2 (ja) | 2002-07-12 | 2002-07-12 | 立体形状データ変換装置および立体形状データ変換方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3894063B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4707581B2 (ja) * | 2006-02-23 | 2011-06-22 | 株式会社日立製作所 | 表面形状データ変換方法および表面形状データ変換装置 |
US7821513B2 (en) * | 2006-05-09 | 2010-10-26 | Inus Technology, Inc. | System and method for analyzing modeling accuracy while performing reverse engineering with 3D scan data |
US7613539B2 (en) * | 2006-05-09 | 2009-11-03 | Inus Technology, Inc. | System and method for mesh and body hybrid modeling using 3D scan data |
US7639253B2 (en) * | 2006-07-13 | 2009-12-29 | Inus Technology, Inc. | System and method for automatic 3D scan data alignment |
US20080303810A1 (en) * | 2007-06-07 | 2008-12-11 | Seockhoon Bae | System and method for calculating loft surfaces using 3d scan data |
JP5762913B2 (ja) * | 2011-10-04 | 2015-08-12 | 株式会社東芝 | 三次元データ処理装置、方法及びプログラム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0650730A (ja) * | 1992-08-03 | 1994-02-25 | Yunisun:Kk | 三次元形状計測装置 |
JP2000132580A (ja) * | 1998-10-23 | 2000-05-12 | Mitsubishi Heavy Ind Ltd | 幾何パラメータ演算装置 |
JP3403668B2 (ja) * | 1999-05-27 | 2003-05-06 | 理化学研究所 | 部分測定データの合成方法 |
-
2002
- 2002-07-12 JP JP2002203406A patent/JP3894063B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004046545A (ja) | 2004-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7672822B2 (en) | Automated three-dimensional alternative position viewer | |
JP3829972B2 (ja) | 3次元cadシステム | |
Zhao et al. | Automated dimensional inspection planning using the combination of laser scanner and tactile probe | |
Shephard et al. | Automatic three‐dimensional mesh generation by the finite octree technique | |
JP3512406B2 (ja) | 立体形状記述方法及びそれを用いたエンジニアリングシステム | |
Chivate et al. | Review of surface representations and fitting for reverse engineering | |
De Araujo et al. | Blobmaker: Free-form modelling with variational implicit surfaces | |
JP3894063B2 (ja) | 立体形状データ変換装置および立体形状データ変換方法 | |
US20050068315A1 (en) | Surface construction audit trail and manipulation | |
Shen et al. | Design and Development of a 3D Cadastral System Prototype based on the LADM and 3D Topology | |
JP2002245438A (ja) | 3次元コンピュータグラフィックス作成支援装置、3次元コンピュータグラフィックス作成支援方法、及び3次元コンピュータグラフィックス作成支援プログラム | |
US7561990B2 (en) | Interactive triangulated irregular network (TIN) surfaces design | |
US8648854B2 (en) | Interactive method for designing parcels | |
US20050091016A1 (en) | Surface smoothing techniques | |
JP4707581B2 (ja) | 表面形状データ変換方法および表面形状データ変換装置 | |
JP2005070373A (ja) | 地図座標変換プログラムおよび地図座標変換装置 | |
JP6127331B2 (ja) | 配筋検証支援装置及びそのプログラム | |
Garland et al. | Fast triangular approximation of terrains and height fields | |
JP3777989B2 (ja) | 立体形状データ変換装置及び立体形状データ変換方法 | |
Kennie et al. | Digital terrain modelling | |
JP3895297B2 (ja) | 立体形状記述方法及びそれを用いたエンジニアリングシステム | |
JP2007213437A (ja) | 情報処理方法、情報処理装置 | |
JPH11249774A (ja) | 3次元情報表示システム及び方法 | |
JP6286591B2 (ja) | 配筋検証支援装置及びそのプログラム | |
JP2656484B2 (ja) | 図面管理方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040512 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060419 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060919 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061025 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061121 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061204 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101222 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101222 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111222 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111222 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121222 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131222 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |