JP7285660B2 - 寸法生成装置、寸法生成方法及びプログラム - Google Patents

寸法生成装置、寸法生成方法及びプログラム Download PDF

Info

Publication number
JP7285660B2
JP7285660B2 JP2019042558A JP2019042558A JP7285660B2 JP 7285660 B2 JP7285660 B2 JP 7285660B2 JP 2019042558 A JP2019042558 A JP 2019042558A JP 2019042558 A JP2019042558 A JP 2019042558A JP 7285660 B2 JP7285660 B2 JP 7285660B2
Authority
JP
Japan
Prior art keywords
dimension
dimensions
generated
coordinate system
elements
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.)
Active
Application number
JP2019042558A
Other languages
English (en)
Other versions
JP2020144759A (ja
Inventor
宏哉 門田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2019042558A priority Critical patent/JP7285660B2/ja
Publication of JP2020144759A publication Critical patent/JP2020144759A/ja
Application granted granted Critical
Publication of JP7285660B2 publication Critical patent/JP7285660B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、3次元モデルの寸法を生成する寸法生成装置、寸法生成方法及びプログラムに関する。
製品の製造過程において、3D-CAD(3 Dimensional Computer Aided Design)装置により生成した製品の3次元モデルを使用する設計、生産又は測定が行われている。3D-CAD装置には、3次元空間上で3次元モデルに寸法を付加する機能が搭載されているものがある。
3次元モデルに付される寸法は、3次元モデルの1つ又は複数の要素を選択して生成した寸法であり、例えば、2つの平面を選択して生成した、その平面間の直線寸法である。
3次元モデルに付加された寸法情報はCAM(Computer Aided Manufacturing)又はCAT(Computer Aided Testing)を含むソフトウェアで読み取られ、加工プログラム又は測定プログラムの自動作成に用いられている。例えば、CNC(Computer Numeric Control)3次元測定機において測定プログラムの作成を自動化することが可能である。具体的には、3次元モデルに付加された寸法から、その寸法に関連づけられている2つの面を認識し、それぞれの面を3次元測定する測定機の動作パスの生成を自動化することができる。また、3次元測定の測定結果を寸法の値と比較照合するプログラムの作成を自動化することができる。
3次元モデルに付された寸法情報は、CAM又はCATを含むソフトウェアにより正しく効率的に読み取り可能であることが必要である。ソフトウェアで正確に情報を読み取るためには、3次元モデルに付加される寸法が、その対象となる3次元モデルの1つ又は複数の要素と正しく関連づけられていることが求められる。3次元モデルの要素とは、頂点、稜線、面、円筒中心軸を含む。
一方、3次元モデルに付加される寸法について、後の工程の作業者が正しく情報を読み取ることのできるモデルのアノテーション(Annotation)の表示が要求される。このため、3次元モデルに付与される寸法は、重複なく生成されていることが求められる。
従来、3次元モデルから作成した2次元図面において、寸法を重複なく自動で生成する技術がある(例えば特許文献1)。特許文献1に記載のCAD装置は、3次元立体図形から、1つ以上の2次元平面上に3角法に基づき2次元平面図形を作成し、2次元平面図形上における水平寸法及び垂直寸法を生成する。2次元平面図形における複数の水平寸法の一方の座標点及び他方の座標点の水平軸に対する値が、共に、複数の水平寸法間で共通となる場合は、複数の水平寸法のいずれか1つのみを生成する。同様に、2次元平面図形における複数の垂直寸法の一方の座標点及び他方の座標点の垂直軸に対する値が、共に、複数の垂直寸法間で共通となる場合は、複数の垂直寸法のいずれか1つのみを生成する。これにより、水平寸法や垂直寸法を重複させることなく寸法情報を付することができると説明されている。
特開2006-106938号公報
特許文献1に記載された技術は、3次元立体図形から作成した2次元平面図形に対して、一つの平面図内および複数の平面図間で重複がないように配慮された寸法を自動生成するというものである。しかし、特許文献1の方法は3次元空間において生成された3次元モデルへ寸法を付加することができない。
また、2次元平面図形の頂点の座標をもとに寸法の重複を判定しており、3次元モデルの平面、稜線、円筒面、又は円筒中心軸を含む要素を認識していない。このため、寸法と、その対象となる3次元モデルの要素を正しく関連づけることができず、CAM又はCATを含むソフトウェアにより正しく寸法情報を読み取ることができないという問題があった。
例えば、稜線と基準底面との垂直方向の寸法が関連づけられ、稜線を含む平面と基準底面との垂直方向の寸法が関連づけられない場合には、当該平面についての加工又は測定のプログラムが作成されなかった。また、基準底面との垂直方向の寸法が同じ平面が複数有り、その一部の平面のみが寸法と関連づけられている場合には、関連づけられていない平面についての加工又は測定プログラムが作成されなかった。
本発明は、上述のような事情に鑑みてなされたものであり、3次元モデルに対して、重複なく寸法を生成し、寸法とその対象となる3次元モデルの要素とを正しく関連づけることが可能な寸法生成装置、寸法生成方法又はプログラムを提供することを目的とする。
上記目的を達成するため、本発明の寸法生成装置は、3次元モデルの及び線を含む要素の形状、位置又は姿勢を検出するモデル要素検出部と、基準座標系、及び、基準座標系の座標軸に直交する基準要素を決定する基準座標系決定部と、モデル要素検出部が検出した要素の形状、位置又は姿勢に基づいて、要素の各々と関連づける寸法の生成の要否、及び、寸法に関連づける他の要素を判定する生成寸法判定部と、生成寸法判定部が生成を要すると判定した寸法として、基準座標系の座標軸方向の基準要素から要素までの直線距離を含む法を生成する寸法生成部と、を備える。生成寸法判定部は、平面が基準座標系のいずれの座標軸にも直交していない場合に、当該平面に関連づける座標軸方向の寸法を生成する必要がないと判定し、当該平面に含まれる稜線に関連づける寸法の生成の要否を判定することを特徴とする。
本発明によれば、3次元モデルの要素の各々について寸法の生成の要否を判定し、当該寸法に関連づける他の要素も判定するため、3次元モデルに対して、重複なく寸法を生成し、寸法とその対象となる3次元モデルの要素とを正しく関連づけることが可能となる。
本発明の実施の形態に係る寸法生成装置の構成例を示すブロック図 本発明の実施の形態1に係る寸法生成処理を示すフローチャート 基準座標系決定処理を示すフローチャート 平面寸法生成処理を示すフローチャート 稜線寸法生成処理を示すフローチャート 直交稜線寸法生成処理を示すフローチャート 頂点寸法生成処理を示すフローチャート 本発明の実施の形態2に係る寸法生成処理を示すフローチャート 円筒面寸法生成処理を示すフローチャート 中心軸寸法生成処理を示すフローチャート 頂点寸法生成処理を示すフローチャート 3次元モデルの例を示す図 3次元モデルの面と番号と基準要素面との対応関係を示す表 3次元モデルの例を示す図 右側面の稜線と番号との対応関係を示す表 3次元モデルに寸法を付加した図 寸法と関連づけられた要素を表した表 3次元モデルの頂点の位置を示した図 3次元モデルに寸法を付加した図 各寸法と関連づけられた要素を表した表 3次元モデルに寸法を付加した図 各寸法と関連づけられた要素を表した表 寸法の自動生成不可箇所の表示例を示した図
(実施の形態1)
以下に、本発明を実施するための形態について図面を参照して詳細に説明する。
図1は、この発明の実施の形態1に係る寸法生成装置1の構成例を示すブロック図である。寸法生成装置1は、3次元モデルに対して、1つ又は複数の要素を選択して、これらの要素と関連づける寸法を生成する装置である。3次元モデルは、例えば、3D-CAD装置により生成され、対象物の3次元形状、位置及び姿勢を3次元表示したモデルである。寸法生成装置1は、3D-CAD装置が作成した3次元モデルに対して寸法を生成して付加する装置でもよく、あるいは、寸法生成機能を有する3D-CAD装置の一部分であってもよい。
寸法生成装置1は、3次元モデルのデータが保存されている記憶部110と、3次元モデルの1つ又は複数の要素に関連づける寸法を生成する処理を実行する演算部120と、オペレータが情報を入力する入力部130と、寸法を含む3次元モデルの情報を出力する出力部140と、を備える。
記憶部110に記憶されている3次元モデルのデータは、対象物の3次元形状、位置及び姿勢を示すものであり、3次元モデルに含まれる各要素に対応づけられている。3次元モデルに含まれる要素は、例えば、頂点、稜線、面、円筒中心軸である。また、記憶部110は、演算部120が実行するプログラムも格納している。
演算部120は、記憶部110に格納されているプログラムを実行する演算処理装置であり、例えば、CPU(Central Processing Unit)である。演算部120は、プログラムを実行することにより、寸法生成の基準となる座標系を決定する基準座標系決定部121と、生成する寸法が関連づけられるモデル要素を検出するモデル要素検出部122と、検出したモデル要素に対する寸法を生成するか否かを判定する生成寸法判定部123と、生成すると判定した寸法を生成し、3次元モデルに対して寸法を付加した情報を出力する寸法生成部124として機能する。
基準座標系決定部121は、オペレータの入力部130への入力に基づいて、3次元の基準座標系を決定し、基準座標系の各座標軸の方向の寸法を生成する際に基準となる基準要素を決定する。本実施の形態では、互いに直交するX軸、Y軸、Z軸を有する直交座標系を決定する。また、基準座標系決定部121は、決定した基準座標系及び基準要素の識別情報を生成寸法判定部123に出力する。
モデル要素検出部122は、記憶部110に記憶されている3次元モデルから要素を順次検出する。例えば、モデル要素検出部122は、3次元モデルの全ての面を検出し、番号を割り当てた後に、番号順に面及び各面に含まれる稜線、頂点の少なくとも一部を含む要素の形状、位置及び姿勢を検出して、生成寸法判定部123に出力する。
生成寸法判定部123は、基準座標系決定部121が決定した基準座標系及び基準要素と、モデル要素検出部122が検出した要素の形状、位置又は姿勢と、に基づいて、各要素と関連づける寸法の生成の要否を判定する。例えば、モデル要素検出部122が検出した要素が、寸法生成の基準となる基準要素自身又はその一部でなく、基準座標系の座標軸のいずれかと直交し、かつ、同じ寸法が生成されてない場合に、寸法の生成は必要であると判定する。そして、生成する寸法に関連づける他の要素を判定する。一方、モデル要素検出部122が検出した要素が、寸法生成の基準となる基準要素自身又はその一部であるか、基準座標系のいずれの座標軸とも直交しないか、又は、既に同じ寸法が生成されている場合には寸法の生成は必要ないと判定する。
寸法生成部124は、生成寸法判定部123が寸法生成の必要があると判定した要素に対して寸法、及び、当該寸法に関連づける要素を示す寸法要素情報を生成し、記憶部110に記憶する。また、寸法生成部124は、寸法を3次元モデルに付加する処理を行い、寸法を付加した3次元モデルのデータ又は寸法要素情報を出力部140に出力する。
入力部130は、情報を入力する任意のデバイスであり、例えば、キーボート又はマウス、タッチパネルを含むポインティングデバイスである。入力部130には、演算部120の処理に必要な情報がオペレータにより入力される。例えば、基準座標系及び各座標軸の基準要素を決定する際に必要となる3つの互いに直交する要素をオペレータが選択して入力部130に対して入力する。入力部130に入力された情報は演算部120の基準座標系決定部121に出力される。
出力部140は、画像又は文字情報を表示するディスプレイを含む。出力部140は、寸法を付加した3次元モデルをディスプレイに表示させる。また、出力部140は、寸法及びその寸法に関連づけられた寸法要素情報を配列した表をディスプレイに表示してもよい。
以上のように構成された寸法生成装置1の動作について、図2に示すフローチャートを用いて説明する。図2は、寸法生成処理を示すフローチャートである。なお、寸法生成処理を開始する時点で、寸法を生成する対象の3次元モデルのデータが記憶部110に記憶されている。
まず、演算部120のモデル要素検出部122が、3次元モデルのすべての面に対して、番号を割り当てる(ステップS201)。このとき割り当てた面の番号の最大値をnとする。本実施の形態では、番号を割り当てた面が全て平面である場合について説明する。
次に、オペレータが、寸法生成の基準となる3つの直交する要素を、3次元モデルの要素の中から選択して入力部130に入力したときに、その入力に基づいて、基準座標系決定部121が互いに直交する基準座標系及び各座標軸方向の基準要素を決定する(ステップS202)。
ステップS202の基準座標系決定処理について、図3のフローチャートを用いて詳細に説明する。まず、オペレータは、3次元モデル上で1つの直交座標系を想定して、その各座標軸に直交する3つの要素を選択し、入力部130に入力する。選択可能な要素は、各座標軸に直交する平面、直線の稜線、円筒中心軸である。このオペレータの入力に基づいて、基準座標系決定部121は、基準座標系を決定する(ステップS301)。基準座標系は予め設定しておいた直交座標系から選択してもよく、又は、演算部120が新規に直交座標系を作成してもよい。
次に、基準座標系決定部121は、ステップS301で決定した基準座標系のX軸方向の寸法を生成する際の基準となる基準要素を決定する(ステップS302)。基準要素はX軸に直交する要素であり、例えばX軸に直交する平面、直線の稜線又は円筒中心軸である。ここで、基準座標系決定部121は、予め定めた優先順位に従って基準要素を決定してもよく、又は、オペレータに基準要素の選択入力を促し、オペレータの入力に基づいて決定してもよい。
同様に、基準座標系決定部121は、Y軸方向の寸法を生成する際の基準となる基準要素を決定し(ステップS303)、Z軸方向の寸法を生成する際の基準となる基準要素を決定して(ステップS304)、基準座標系決定処理を終了する。
本実施の形態では、X軸方向の基準要素が平面である基準要素面Exであり、Y軸方向の基準要素が平面である基準要素面Eyであり、Z軸方向の基準要素が平面である基準要素面Ezである場合について説明する。
図2のフローチャートにおいて、ステップS202の基準座標系決定処理の後に、変数Pに0を代入する(ステップS203)。ここで、Pは0以上の整数である。次に、変数Pに1を加算する(ステップS204)。その後、生成寸法判定部123は、番号Pの面が、ステップS202にて基準要素面として指定された面か否かを判定する(ステップS205)。以下、番号Pの面をEと表す。
ステップS205において、番号Pの面Eが基準要素面である場合にはS207に進む。番号Pの面Eが基準要素面でない場合には、平面寸法生成処理を実行する(ステップS206)。平面寸法生成処理が終了した後、変数Pの値が、面の番号の最大値nより小さいか否かを判定する(ステップS207)。変数Pがnより小さい場合(ステップS207:Yes)、まだ処理していない面があるためS204へ戻る。変数Pがn以上である場合(ステップS207:No)、番号を付したすべての面に対してステップS205,S206の処理を実行したため、本フローの処理を終了する。
ステップS206で実行した平面寸法生成処理について詳細に説明する。図4は平面寸法生成処理を示したフローチャートである。
まず、生成寸法判定部123は、番号Pの面Eが基準座標系のX軸、Y軸、Z軸のいずれかに直交するか否か判定する(ステップS401)。いずれの軸とも直交しない場合は(ステップS401:No)ステップS403に進む。
面EがX軸、Y軸、Z軸のいずれかに直交する場合(ステップS401:Yes)、Eに直交する軸を軸A、直交する軸Aの基準要素面をEaとする(ステップS402)。つまり、軸AはX軸、Y軸、Z軸のうちEに直交する軸であり、EaはEx,Ey,Ezのうち、軸Aの基準要素面である。
生成寸法判定部123は、既に生成した寸法の中に、EaからEまでの軸Aの方向の直線距離と同一である寸法があるか否かを判定する(ステップS404)。同一距離の寸法がない場合(ステップS404:No)、寸法生成部124が、基準要素面Eaと番号Pの面Eに関連づける軸Aの方向の直線距離の寸法を生成し(ステップS405)、本フローの処理を終了する。
生成寸法判定部123は、同一距離の生成済の寸法がある場合に(ステップS404:Yes)、その寸法Dtと関連づけられた要素の集合EtにEを追加する(ステップS406)。次に、要素の集合Etの中にEの面を構成する稜線又は頂点が含まれているか否かを判定する(ステップS407)。含まれていない場合は(ステップS407:No)、本フローの処理を終了する。含まれている場合(ステップS407:Yes)、当該稜線又は頂点を寸法Dtと関連づけられた要素の集合Etから除外して(ステップS408)、本フローの処理を終了する。これにより、集合EtにEを追加した後に、Eの構成要素である稜線又は頂点を除外するため、関連づけの重複を回避することができる。
ステップS401において、番号Pの面Eが基準座標系のX軸、Y軸、Z軸のいずれの軸とも直交しない場合は(ステップS401:No)、Eの面の構成要素である稜線の寸法を生成する稜線寸法生成処理を実行した後に(ステップS403)、本フローの処理を終了する。
ステップS403で実行する稜線寸法生成処理について詳細に説明する。図5は稜線寸法生成処理を示したフローチャートである。
まず、モデル要素検出部122が、Eの面を構成する1つ又は複数の稜線に1から順に番号を割り当てる(ステップS501)。割り当てた番号の最大値をmとする。以下、番号Pの面Eを構成する番号Qの稜線をLPQと表す。次に、変数Qに0を代入する(ステップS502)。次に、変数Qに1を加算する(ステップS503)。
次に、生成寸法判定部123は、稜線LPQがX軸、Y軸、Z軸のいずれか2つの軸に直交するか否かを判定する(ステップS504)。直交しない場合は(ステップS504:No)ステップS505に進む。稜線LPQがX軸、Y軸、Z軸のいずれか2つの軸に直交する場合は(ステップS504:Yes)、直交する2つの軸を軸Awとし、軸Awの基準要素面をEawとする(ステップS506)。ここで、wは0以上の整数である。つまり、軸AwはX軸、Y軸、Z軸のうち稜線LPQに直交する2つの軸であり、EawはEx,Ey,Ezのうち、稜線LPQに直交する2つの軸Awそれぞれの基準要素面である。
次に、変数wに0を代入し(ステップS507)、変数wに1を加算する(ステップS508)。そして、そのときの変数wについて、稜線LPQに直交する軸Awの方向の稜線LPQの寸法を生成する直交稜線寸法生成処理を実行する(ステップS509)。その後、変数wの値が2より小さい場合(ステップS510:Yes)、軸A2方向の寸法が未処理であるためステップS508に戻る。変数wが2以上の場合(ステップS510:No)、ステップS514に進む。
ステップS504において、稜線LPQがX軸、Y軸、Z軸のいずれか2つの軸に直交しないが(ステップS504:No)、稜線LPQがX軸、Y軸、Z軸のいずれか1つの軸に直交する場合には(ステップS505:Yes)、直交する1つの軸を軸Awとし、軸Awの基準要素面をEawとする(ステップS511)。ここで、wは1である。つまり、軸AwはX軸、Y軸、Z軸のうち稜線LPQに直交する1つの軸であり、EawはEx,Ey,Ezのうち、稜線LPQに直交する1つの軸Awの基準要素面である。
次に、稜線LPQに直交する軸Awの方向の稜線LPQの寸法を生成する直交稜線寸法生成処理を実行する(ステップS512)。その後、ステップS513に進む。また、ステップS505において、稜線LPQがX軸、Y軸、Z軸のいずれとも直交しない場合に(ステップS505:No)、ステップS513に進む。ステップS513において、稜線LPQをの始点及び終点である頂点と基準要素面との間の寸法を生成する頂点寸法生成処理を実行する(ステップS513)。
次のステップS514において、変数Qがmより小さいか否かを判定する。mより小さい場合は(ステップS514:Yes)、まだ寸法生成処理を実行していない稜線があるため、ステップS503に戻る。変数Qがm以上の場合(ステップS514:No)、面Eを構成する稜線すべてについて寸法生成処理が完了しているため本フローの処理を終了する。
図5のフローチャートにおいて、ステップS509及びS512で実行する直交稜線寸法生成処理、並びにステップS513で実行する頂点寸法生成処理について、図6、7のフローチャートを用いて詳細に説明する。図6は、直交稜線寸法生成処理を示すフローチャートであり、図7は、頂点寸法生成処理を示すフローチャートである。
図6に示す直交稜線寸法生成処理において、まず、生成寸法判定部123が、Q番目の稜線LPQに直交する軸Awの基準要素面Eawの構成要素に、稜線LPQが含まれているか否かを判定する(ステップS601)。稜線LPQが基準要素面Eawの構成要素に含まれている場合には(ステップS601:Yes)、寸法生成の必要がないため、本フローの処理を終了する。
稜線LPQが基準要素面Eawの構成要素でない場合には(ステップS601:No)、既に生成した寸法の中で、基準要素面Eawから稜線LPQまでの軸Aw方向の直線距離と同一である寸法があるか否かを生成寸法判定部123が判定する(ステップS602)。同一距離の生成済の寸法がない場合(ステップS602:No)、寸法生成部124が、基準要素面Eawと稜線LPQに関連づけられた軸Aw方向の直線寸法を生成し(ステップS603)、本フローの処理を終了する。
基準要素面Eawから稜線LPQまでの軸Aw方向の直線距離と同一である寸法が1つ又は複数ある場合(ステップS602:Yes)、その寸法をDt、その寸法に関連づいた要素の集合をEtとしたとき、生成寸法判定部123は集合Etの中にLPQ自身が含まれているかを判定する(ステップS604)。集合Etの中にLPQ自身が含まれている場合は(ステップS604:Yes)、本フローの処理を終了する。
生成寸法判定部123は、集合Etの中にLPQ自身が含まれておらず(ステップS604:No)、かつ、集合Etの中に、LPQを構成要素として有する面が含まれているか否かを判定する(ステップS605)。含まれる場合(ステップS605:Yes)、本フローの処理を終了する。
集合Etの中に、LPQを構成要素としてもつ面が含まれていない場合は(ステップS605:No)、寸法Dtと関連づけられた要素の集合EtにLPQを追加で関連づける(ステップS606)。そして、集合Etの中に、LPQの始点又は終点である頂点が含まれている場合(ステップS607:Yes)、対象の頂点を寸法Dtと関連づけられた要素の集合Etから除外して(ステップS608)、本フローの処理を終了する。これにより、集合EtにLPQを追加した後に、LPQの構成要素である始点又は終点を除外するため、関連づけの重複を回避することができる。集合Etの中に、LPQの始点又は終点である頂点が含まれていない場合(ステップS607:No)はそのまま処理を終了する。
図7に示す頂点寸法生成処理において、まず、稜線LPQの始点と終点の頂点をそれぞれOPQ1、OPQ2とする(ステップS701)。次に、変数U及びVに0を代入する(ステップS702)。次に、変数Uに1を加算し(ステップS703)、変数Vに1を加算する(ステップS704)。
次に、変数Vが1のとき、軸AをX軸とし軸Aの基準要素面EaをExとする。変数Vが2のとき、軸AをY軸とし軸Aの基準要素面EaをEyとする。変数Vが3のとき、軸AをZ軸とし軸Aの基準要素面EaをEzとする(ステップS705)。
次に、生成寸法判定部123が、変数Uに対する頂点OPQUがEaの構成要素であるか判定し、構成要素である場合は(ステップS706:Yes)、頂点寸法を生成せずにステップS712に進む。一方、頂点OPQUがEaの構成要素でない場合は(ステップS706:No)、既に生成した寸法の中で、基準要素面Eaから頂点OPQUまでの軸A方向の直線距離と同一の寸法があるか否かを判定する(ステップS707)。
同一距離の寸法がない場合(ステップS707:No)、寸法生成部124が基準要素面Ea及び頂点OPQUに関連づける軸A方向の直線寸法を新規に生成する(ステップS708)。ステップS707において、同一距離の生成済の寸法があると判定した場合は(ステップS707:Yes)、ステップS709に進む。
同一距離の生成済みの寸法をDtとし、その寸法に関連づけられた要素の集合をEtとしたとき、集合Etの中にOPQU自身が含まれている場合は(ステップS709:Yes)、ステップS712に進む。一方、集合Etの中にOPQUが含まれていないときは(ステップS709:No)、生成寸法判定部123が、寸法Dtと関連づけられた要素の集合Etの中に、OPQUを構成要素として有する面又は稜線が含まれているか否かを判定する(ステップS710)。
集合Etの中に、OPQUを構成要素としてもつ面又は稜線が含まれていない場合は(ステップS710:No)、Dtと関連づけられた要素の集合EtにOPQUを追加する(ステップS711)。集合Etの中に、OPQUを構成要素としてもつ面又は稜線が含まれている場合は(ステップS710:Yes)、そのままステップS712に進む。
ステップS712において、変数Vの値が3より小さい場合は(ステップS712:Yes)、まだ処理していない軸方向があるため、S704に戻る。変数Vが3以上の場合(ステップS712:No)、X軸、Y軸、Z軸の3つの軸方向すべてに対して寸法生成の処理を完了しているためS713に進む。
ステップS713において、変数Uの値が2より小さい場合は(ステップS713:Yes)、始点又は終点の頂点について未処理であるためS703に戻る。変数Uが2以上の場合、始点及び終点の頂点に対して寸法生成の処理が完了しているため本フローの処理を終了する。
このように、図2から図7のフローチャートに示した寸法生成処理を実行することにより、3次元モデルの全ての面及び各面の構成要素である稜線、頂点の基準要素面に対する寸法を、重複なく要素と関連づけて生成することができる。
寸法生成部124は、生成した寸法を付加した3次元モデルデータ及びその寸法に関連づけられた寸法要素情報を記憶部110に記憶するとともに出力部140に出力する。出力部140は、寸法を付加した3次元モデルをディスプレイに表示させる。また、出力部140は、寸法及びその寸法に関連づけられた寸法要素情報を配列した表をディスプレイに表示してもよい。
以上説明したように本実施の形態に係る寸法生成装置1は、モデル要素検出部122が、3次元モデルの要素である面及び各面に含まれる稜線、頂点を検出し、生成寸法判定部123が、検出した各要素の寸法の生成の要否を判定する。生成寸法判定部123は、検出した各要素が寸法生成の基準となる基準要素面又はその構成要素でなく、各要素が基準座標系の座標軸に直交し、かつ、同一距離の寸法が生成されてない場合に、寸法の生成が必要であると判定する。そして、生成寸法判定部123が寸法生成の必要があると判定した要素について、寸法生成部124が寸法を生成し、3次元モデルに付加する処理を行うとした。これにより、3次元モデルに対して、重複なく寸法を生成し、3次元モデルの各要素と寸法とを正しく関連づけることが可能となる。
(実施の形態2)
以下に、この発明の実施の形態2について図面を参照して詳細に説明する。寸法生成装置1の構成は実施の形態1と同様であるが、演算部120が実行する寸法生成処理が実施の形態1と一部異なる。本実施の形態に係る寸法生成処理について詳細に説明する。
図8は、本実施の形態に係る寸法生成処理のフローチャートである。実施の形態1と同様に、寸法生成処理を開始する時点では、寸法を生成する対象の3次元モデルのデータが記憶部110に記憶されている状態である。
図8に示す寸法生成処理において、ステップS801~S805の処理は、図2に示す実施の形態1に係る寸法生成処理のステップS201~S205と同様である。なお、ステップS801において、モデル要素検出部122が番号を割り当てる面は、平面、円筒面及びその他の曲面を含む。
ステップS805において、番号Pの面Eが基準要素面である場合にはS811に進む。生成寸法判定部123は、番号Pの面Eが基準要素面でない場合に(ステップS805:No)、面Eが平面であるか判定し(ステップS806)、Eが平面である場合は(ステップS806:Yes)、平面寸法生成処理を実行する(ステップS807)。平面寸法生成処理は、実施の形態1と同様の図4に示す処理である。
生成寸法判定部123は、Eが平面でなかった場合に(ステップS806:No)、Eが円筒面又は円筒面の一部であるか否かを判定する(ステップS808)。Eが円筒面又は円筒面の一部であった場合は(ステップS808:Yes)、円筒面に係る寸法を生成する円筒面寸法生成処理を実行する(ステップS809)。
生成寸法判定部123は、Eが円筒面又は円筒面の一部でなかった場合に(ステップS808:No)、Eが寸法自動生成の対象外の面であると判定し、記憶部110に面の番号Pを記憶する(ステップ810)。その後、変数Pが面の番号の最大値nより小さい場合は(ステップS811:Yes)、まだ未処理の面があるため、ステップS804に戻る。一方、変数Pがn以上である場合は、全ての面について寸法生成の処理が完了しているため、ステップS812に進む。
ステップS812において、寸法生成部124が、寸法を自動生成できなかった要素を画面上に表示させ(ステップS812)、オペレータに手動での寸法生成を促し、オペレータの入力に基づいて、自動生成不可箇所の寸法を生成して出力部140に出力する。その後、本フローの処理を終了する。
ステップS809の、円筒面寸法生成処理の詳細について説明する。図9は円筒面寸法生成処理を示すフローチャートである。
まず、生成寸法判定部123が、Eの円筒面の角度が180°以上であるか否かを判定する(ステップS901)。寸法生成部124は、180°以上の場合(ステップS901:Yes)、円筒面Eの直径寸法を生成し(ステップS902)、180°より小さい場合(ステップS901:No)、円筒面Eの半径寸法を生成する(ステップS903)。
次に、生成寸法判定部123が、円筒面Eを有する円筒の中心軸CがX軸、Y軸、Z軸のいずれか2つの軸に直交するか否かを判定し(ステップS904)、直交しない場合は(ステップS904:No)ステップS905に進む。中心軸CがX軸、Y軸、Z軸のいずれか2つの軸に直交する場合は(ステップS904:Yes)、直交する2つの軸を軸Awとし、軸Awの基準要素面をEawとする(ステップS906)。ここで、wは0以上の整数である。つまり、軸AwはX軸、Y軸、Z軸のうち中心軸Cに直交する2つの軸であり、EawはEx,Ey,Ezのうち、中心軸Cに直交する2つの軸Awそれぞれの基準要素面である。
次に、変数wに0を代入し(ステップS907)、変数wに1を加算する(ステップS908)。そして、そのときの変数wについて、中心軸Cに直交する軸Awの方向の中心軸Cの寸法を生成する中心軸寸法生成処理を実行する(ステップS909)。その後、変数wの値が2より小さい場合(ステップS910:Yes)、軸A2方向の寸法が未処理であるためステップS908に戻る。変数wが2以上の場合(ステップS910:No)、本フローの処理を終了する。
ステップS904において、中心軸CがX軸、Y軸、Z軸のいずれか2つの軸に直交しないが(ステップS904:No)、中心軸CがX軸、Y軸、Z軸のいずれか1つの軸に直交する場合には(ステップS905:Yes)、直交する1つの軸を軸Awとし、軸Awの基準要素面をEawとする(ステップS911)。ここで、wは1である。つまり、軸AwはX軸、Y軸、Z軸のうち中心軸Cに直交する1つの軸であり、EawはEx,Ey,Ezのうち、中心軸Cに直交する1つの軸Awの基準要素面である。
次に、中心軸Cに直交する軸Awの方向の中心軸Cの寸法を生成する中心軸寸法生成処理を実行する(ステップS912)。その後、ステップS913に進む。また、ステップS905において、中心軸CがX軸、Y軸、Z軸のいずれとも直交しない場合に(ステップS905:No)、ステップS913に進む。ステップS913において、中心軸Cの始点及び終点である頂点と基準要素面との間の寸法を生成する頂点寸法生成処理を実行し(ステップS913)、その後、本フローの処理を終了する。
図9のフローチャートにおいて、ステップS909及びS912で実行する中心軸寸法生成処理、並びにステップS913で実行する頂点寸法生成処理について、図10、11のフローチャートを用いて詳細に説明する。図10は、中心軸寸法生成処理を示すフローチャートであり、図11は、頂点寸法生成処理を示すフローチャートである。
図10に示す中心軸寸法生成処理において、まず、生成寸法判定部123は、円筒の中心軸Cに直交する軸Awの基準要素面Eawの構成要素に、中心軸Cが含まれているか否かを判定する(ステップS1001)。中心軸Cが基準要素面Eawの構成要素に含まれている場合には(ステップS1001:Yes)、寸法生成の必要がないため、本フローの処理を終了する。
生成寸法判定部123は、中心軸Cが基準要素面Eawの構成要素でない場合には(ステップS1001:No)、既に生成した寸法の中に、基準要素面Eawから中心軸Cまでの軸Aw方向の直線距離と同一である寸法があるか否かを判定する(ステップS1002)。同一距離の生成済の寸法がない場合(ステップS1002:No)、寸法生成部124が中心軸Cに関連づける軸Aw方向の直線寸法を生成し(ステップS1003)、本フローの処理を終了する。
基準要素面Eawから中心軸Cまでの軸Aw方向の直線距離と同一である寸法が1つ又は複数ある場合(ステップS1002:Yes)、その寸法Dtと関連づけられた要素の集合Etに中心軸Cを追加で関連づけて(ステップS1004)、本フローの処理を終了する。
図11に示す頂点寸法生成処理において、まず、円筒の中心軸Cの始点と終点の頂点をそれぞれOPQ1、OPQ2とする(ステップS1101)。次に、変数U及びVに0を代入する(ステップS1102)。次に、変数Uに1を加算し(ステップS1103)、変数Vに1を加算する(ステップS1104)。
次に、変数Vが1のとき、軸AをX軸とし軸Aの基準要素面EaをExとする。変数Vが2のとき、軸AをY軸とし軸Aの基準要素面EaをEyとする。変数Vが3のとき、軸AをZ軸とし軸Aの基準要素面EaをEzとする(ステップS1105)。
次に、生成寸法判定部123が、変数Uに対する頂点OPQUがEaの構成要素であるか否かを判定し、構成要素である場合は(ステップS1106:Yes)、頂点寸法を生成せずにステップS1111に進む。一方、頂点OPQUがEaの構成要素でない場合は(ステップS1106:No)、既に生成した寸法の中で、基準要素面Eaから頂点OPQUまでの軸A方向の直線距離と同一の寸法があるか否かを判定する(ステップS1107)。
同一距離の寸法がない場合(ステップS1107:No)、寸法生成部124が基準要素面Ea及び頂点OPQUに関連づけられた軸A方向の直線寸法を新規に生成する(ステップS1110)。ステップS1107において、同一距離の生成済の寸法があると判定した場合は(ステップS1107:Yes)、Dtと関連づけられた要素の集合EtにOPQUを追加する(ステップS1109)。
その後、ステップS1111において、変数Vの値が3より小さい場合は(ステップS1111:Yes)、まだ処理していない軸方向があるため、ステップS1104に戻る。変数Vが3以上の場合は(ステップS1111:No)、3つのX軸、Y軸、Z軸の軸方向すべてに対して寸法生成の処理を完了しているためステップS1112に進む。
ステップS1112において、変数Uの値が2より小さい場合は(ステップS1112:Yes)、始点又は終点の頂点について未処理であるとしてステップS1103に戻る。変数Uが2以上の場合、始点及び終点の頂点に対して寸法の処理が完了しているため本フローの処理を終了する。
このように、図8から図11のフローチャートに示した寸法生成処理を実行することにより、3次元モデルの円筒面及びその他の曲面を含む全ての面及びそれを構成する稜線、円筒の中心軸、頂点の基準要素面に対する寸法を、重複なく関連づけて生成することができる。
寸法生成部124は、生成した寸法を付加した3次元モデルデータ及びその寸法に関連づけられた寸法要素情報を記憶部110に記憶するとともに出力部140に出力する。出力部140は、寸法を付加した3次元モデルをディスプレイに表示させる。また、出力部140は、寸法及びその寸法に関連づけられた寸法要素情報を配列した表をディスプレイに表示してもよい。
以上説明したように本実施の形態に係る寸法生成処理は、モデル要素検出部122が、3次元モデルの要素である円筒面を含む面及び各面に含まれる稜線、頂点を検出し、生成寸法判定部123が、面が円筒面であった場合に、円筒の中心軸及び中心軸を構成する頂点の基準要素面に対する寸法の要否を判定する。そして、生成寸法判定部123が寸法生成の必要があると判定した要素について、寸法生成部124が寸法を生成し、3次元モデルに付加する処理を行うとした。これにより、3次元モデルに円筒面が含まれる場合にも、重複なく寸法を生成し、円筒の中心軸及び頂点を含む各要素と寸法とを正しく関連づけることが可能となる。
(実施例)
本実施の形態に係る寸法生成装置1が実行する寸法生成の実施例について、図12に示す3次元モデルを例として用いて説明する。図12は3次元モデルの例を示す図である。この3次元モデルは円筒面を含むため、図8に示す実施の形態2に係る寸法生成処理のフローチャートに沿って説明する。
まず、モデル要素検出部122がモデルの面に番号を割り当てる(ステップS801)。底面1201、正面1202、右側面1203、背面1204、左側面1205、円筒面1206、曲面1207、第1上面1208、第2上面1209にそれぞれ1から9までの番号を割り当てる。最大値nは9である。ここでは、図13に示すように割り当てられている。図13は、3次元モデルの面と、番号と、基準要素面との対応関係を示す表である。
次に、オペレータの選択入力に基づいて基準座標系決定部121が基準座標系および基準要素面を決定する(ステップS802)。その詳細なフローは図3に示した通りである。基準座標系として、図12に示した座標系1210に決定する(ステップS301)。X軸方向の基準要素面Exを左側面1205に決定する(ステップS302)。Y軸方向の基準要素面Eyを底面1201に決定する(ステップS303)。Z軸方向の基準要素面Ezを正面1202に決定する(ステップS304)。
ステップS803、S804により変数Pが1となるため、面Eは底面1201である。底面1201は基準要素面Eyであるため(ステップS805:Yes)、ステップS811に進む。
ステップS811において、P<nであるため(ステップS811:Yes)、ステップS804に戻り、P=2となる(ステップS804)。このとき面Eは正面1202である。正面1202は基準要素面Ezであるため(ステップS805:Yes)、ステップS811に進む。
ステップS811において、P<nであるため(ステップS811:Yes)、ステップS804に戻り、P=3となる(ステップS804)。このとき面Eは右側面1203である。右側面1203は基準要素面でないため(ステップS805:No)、ステップS806に進む。右側面1203は平面であるため(ステップS806:Yes)、平面寸法生成処理を実行する(ステップS807)。
図4に示す平面寸法生成処理において、右側面1203はX軸、Y軸、Z軸のいずれの軸とも直交しないため(ステップS401:No)、稜線寸法生成処理を実行する(ステップS403)。
図5に示す稜線寸法生成処理において、モデル要素検出部122がEである右側面1203に含まれる稜線に番号を割り当てる(ステップS501)。稜線の割り当ては、図14、図15に示すように、第1稜線1401、第2稜線1402、第3稜線1403、第4稜線1404にそれぞれ1から4までの番号を割り当てる。最大値mは4である。図14は3次元モデルの例を示す図であり、図15は右側面1203の稜線と、番号との対応関係を示す表である。
ステップS502、S503により変数Qが1であるとき、稜線LPQは第1稜線1401である。稜線LPQはX軸とY軸の2つの軸に直交するため(ステップS504:Yes)、ステップS506に進み、軸A1がX軸となり、Ea1がExとなり、軸A2がY軸となり、Ea2がEyとなる(ステップS506)。ステップS507、S508によりw=1となった後に、軸A1の方向であるX軸方向における稜線LPQの寸法について、直交稜線寸法生成処理を実行する(ステップS509)。
図6に示す直交稜線寸法生成処理において、稜線LPQが基準要素面Eawの構成要素であるか否かを判定する(ステップS601)。稜線LPQである第1稜線1401は、基準要素面Eaw(Ex)である左側面1205の構成要素でないため、ステップS602に進む。
既に生成した寸法の中で、基準要素面Eawである左側面1205から稜線LPQである第1稜線1401までのX軸方向の直線距離と同一の寸法があるか否かを判定するが(ステップS602)、まだ生成済みの寸法はないため(ステップS602:No)、寸法生成部124が軸AwであるX軸方向の直線寸法を新規に生成する(ステップS603)。図16は、3次元モデルにステップS603で生成した寸法1601を付加した図であり、図17は、寸法1601と関連づけられた要素を表した表である。
その後、図5のステップS510に進み、w<2であるため(ステップS510:Yes)、ステップS508に戻り、w=2となった後に、A2であるY軸方向における稜線LPQの寸法について、直交稜線寸法生成処理を実行する(ステップS509)。
図6に示す直交稜線寸法生成処理において、稜線LPQである第1稜線1401は、基準要素面Eaw(Ey)である底面1201の構成要素であるため(ステップS601:Yes)、図5のフローに戻り、ステップS510に進む。w=2であり(ステップS510:No)、Q<mであるため、ステップS503に戻り、Qは2となる。
Q=2のとき、稜線LPQは第2稜線1402である。稜線LPQはZ軸とのみ直交するため(ステップS504:No,ステップS505:Yes)、ステップS511において軸A1がZ軸となり、Ea1がEzとなる。軸A1の方向であるZ軸方向における稜線LPQの寸法について、直交稜線寸法生成処理を実行する(ステップS512)。
図6に示す直交稜線寸法生成処理において、稜線LPQである第2稜線1402は、基準要素面Eaw(Ez)である正面1202の構成要素であるため(ステップS601:Yes)、図5のフローに戻り、頂点寸法生成処理を実行する(ステップS513)。
図7に示す頂点寸法生成処理において、稜線LPQである第2稜線1402の始点及び終点の頂点をそれぞれOPQ1、OPQ2とする(ステップS701)。図18は3次元モデルの頂点の位置を示した図である。ここでは、OPQ1が第1頂点1801であり、OPQ2が第3頂点1803である。そして、変数U,Vをそれぞれ変数U=1、V=1に設定する(ステップS702,S703,S704)。
V=1であるため、軸AはX軸であり、EaはExである(ステップS705)。OPQ1である第1頂点1801は、Exである左側面1205の構成要素でない(ステップS706:No)。よって、既に生成した寸法の中に、ExからOPQ1までのX軸方向の直線距離と同一距離の寸法があるか否かを判定する(ステップS707)。ここで、図16及び図17に示す寸法1601が同一距離の寸法に該当する(ステップS707:Yes)。ここで、寸法1601をDtとし、その寸法に関連づけられた要素の集合をEtとする。
このDtに関連づけられた要素の集合EtにOPQ1自身が含まれていないため(ステップS709:No)、OPQ1が構成要素である面又は稜線があるか否かを判定する(ステップS710)。ここで、OPQ1である第1頂点1801を含む面は、底面1201、正面1202、右側面1203の3つである。また、OPQ1である第1頂点1801を含む稜線は、図18に示すように、第1稜線1401、第2稜線1402、第5稜線1805の3つである。図17に示すように、寸法1601に関連づけられた要素の集合Etは第1稜線1401を含んでいるため(ステップS710:Yes)、ステップS712に進む。V<3であるため(ステップS712:Yes)、ステップS704に戻る。
V=2、V=3のときも同様に処理を進めるが、いずれの場合もステップS706において、OPQ1である第1頂点1801がEyである底面1201、Ezである正面1202の構成要素であるため(ステップS706:Yes)、寸法生成(ステップS708)やEtへの追加(ステップS711)の処理は行われない。
その後、U<2であるため(ステップS713:Yes)U=2となり(ステップS703)、OPQ2である第3頂点1803について、OPQ1のときと同様に頂点寸法生成処理を行う。V=2のときは、ステップS707において、OPQ2である第3頂点1803からEyである底面1201までの直線距離と同一距離のY軸方向の寸法がないため、Y軸方向の寸法1902を新規に生成する(ステップS708)。V=3のときは、ステップS706において、OPQ2である第3頂点1803は、Ezである正面1202の構成要素であるため(ステップS706:Yes)、寸法生成(ステップS708)やEtへの追加(ステップS711)の処理は行われない。
頂点寸法生成処理が終了後は、図5のステップS514に進み、Q<4であるため(ステップS514:Yes)、ステップS503に戻る。その後、同様の処理を実行し、第3稜線1403及び第4稜線1404に対する稜線寸法生成処理を実行する。
図5の稜線寸法生成処理の終了により、図4の平面寸法生成処理も終了する。つまり、図8のステップS807が実行済みとなる。この時点で生成されている寸法を図19、図20に示す。図19は、3次元モデルに寸法1601,1901,1902,1903を付加した図であり、図20は、各寸法と関連づけられた要素を表した表である。
ここで、各寸法に関連づけられた要素は、基準要素面及び基準要素面以外の要素が過不足なく選択されている。例えば、上述の図7のステップS708において、OPQ2である第3頂点1803からEyである底面1201までの直線距離を寸法1902として生成したが、その後の第4稜線1404に係る図6の直交稜線寸法生成処理において、第4稜線1404の始点又は終点である第3頂点1803をEtから除外しているため(ステップS608)、重複なく寸法が生成され、寸法に関連づけられた要素を正確に選択することができる。
図8のステップS807の後、P<9であるため(ステップS811:Yes)、ステップS804に戻る。その後、P=4~9の場合について、同様に図8の処理を実行する。
P=7のとき番号7の面である曲面1207は、平面でも円筒面でもないため(ステップS806:No、ステップS808:No)、自動生成の対象外として記憶部110に記憶されている(ステップS810)。
P=9のときのステップS811の段階で、生成されている寸法を図21及び図22に示す。図21は、3次元モデルに寸法を追加した図であり、図22は、各寸法と関連づけられた要素を表した表である。
P=9のときのステップS811において、Pはn以上になるため(ステップS811:No)、ステップS812に進む。ステップS812において、ステップS810で記憶された、出力部140が寸法の自動生成不可箇所をディスプレイに表示し、オペレータに対して手動での寸法生成を促す。寸法の自動生成不可箇所の表示例を図23に示す。本実施例では、曲面1207がハイライトされ、自動生成の対象外であることが示されている。ステップS812の処理が終了後、図8に示す寸法生成処理を終了する。
このように、実施の形態1,2に係る寸法生成装置1は、関連づける要素である面、稜線、円筒の中心軸、頂点について順次、寸法生成の要否を判定して寸法を生成している。このため、加工プログラム又は測定プログラムの自動生成に寸法を用いる場合に、対象要素が抜け落ちることを回避することができる。例えば、図12,14,21のモデルにおいて、寸法1902に関連づけられた要素が第4稜線1404のみになることはなく、第4稜線1404を含む第2上面1209が寸法1902に正確に関連づけられる。これにより、加工又は測定の対象から第2上面1209が抜け落ちることを回避することができる。
また、基準要素面である底面1201からの寸法が同じである第1上面1208及び第2上面1209の両方を、寸法1902と正確に関連づけることができる。これにより、加工又は測定の対象から第1上面1208と第2上面1209のいずれか一方が抜け落ちることを回避することができる。一方、寸法の表示については、第1上面1208及び第2上面1209に関連する寸法1902を1つのみ表示しているため、重複して見づらくなることもない。
このように本発明は、3次元モデルの寸法生成において、3次元モデルの面、稜線及び頂点の少なくとも一部を含む要素の形状、位置又は姿勢を検出し、検出した要素の形状、位置又は姿勢に基づいて、要素の各々と関連づける寸法の生成の要否、及び、寸法に関連づける他の要素を判定し、生成を要すると判定した寸法、及び、当該寸法と関連づける要素を示す寸法要素情報を生成することとした。これにより、3次元モデルに対して、重複なく寸法を生成し、寸法とその対象となる3次元モデルの要素とを正しく関連づけることが可能となる。
なお、本発明は、上記実施の形態に限定されず、本発明の要旨を逸脱しない範囲での種々の変更は勿論可能である。
例えば、上記実施の形態において、面に関して平面及び円筒面の寸法の生成処理を実行し、その他の面については自動生成しないとしたが、平面、円筒面以外の面についても寸法を自動生成してもよい。例えば、断面が楕円である楕円筒又は円錐を含む面について自動生成する処理を追加してもよい。
また、上記実施例において、3次元モデルに寸法を付加した例を図21に示したが、オペレータが画面に表示された寸法をポインタで選択したときに、寸法と関連づけられた要素をハイライトで表示してもよい。これにより、寸法の対象の要素を視覚的に捉えることが容易になる。
また、上記実施の形態に示したハードウェア構成及びフローチャートは一例であり、任意に変更及び修正が可能である。記憶部110及び演算部120で実現する各機能は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。
例えば、上記実施の形態の動作を実行するためのプログラムを、コンピュータが読み取り可能なCD-ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto Optical Disc)、メモリカード等の記録媒体に格納して配布し、プログラムをコンピュータにインストールすることにより、各機能を実現することができるコンピュータを構成してもよい。そして、各機能をOS(Operating System)とアプリケーションとの分担、又はOSとアプリケーションとの協同により実現する場合には、OS以外の部分のみを記録媒体に格納してもよい。
1 寸法生成装置、110 記憶部、120 演算部、121 基準座標系決定部、122 モデル要素検出部、123 生成寸法判定部、124 寸法生成部、130 入力部、140 出力部、1201 底面、1202 正面、1203 右側面、1204 背面、1205 左側面、1206 円筒面、1207 曲面、1208 第1上面、1209 第2上面、1210 座標系、1401 第1稜線、1402 第2稜線、1403 第3稜線、1404 第4稜線、1601,1901,1902,1903 寸法、1801 第1頂点、1803 第3頂点。

Claims (9)

  1. 3次元モデルの及び線を含む要素の形状、位置又は姿勢を検出するモデル要素検出部と、
    基準座標系、及び、前記基準座標系の座標軸に直交する基準要素を決定する基準座標系決定部と、
    前記モデル要素検出部が検出した前記要素の形状、位置又は姿勢に基づいて、前記要素の各々と関連づける寸法の生成の要否、及び、前記寸法に関連づける他の要素を判定する生成寸法判定部と、
    前記生成寸法判定部が生成を要すると判定した前記寸法として、前記基準座標系の座標軸方向の前記基準要素から前記要素までの直線距離を含む法を生成する寸法生成部と、を備え
    前記生成寸法判定部は、前記平面が前記基準座標系のいずれの座標軸にも直交していない場合に、当該平面に関連づける前記座標軸方向の寸法を生成する必要がないと判定し、当該平面に含まれる稜線に関連づける寸法の生成の要否を判定する、
    寸法生成装置。
  2. 前記生成寸法判定部は、前記要素が前記基準要素又は前記基準要素の一部である場合に、当該要素と関連づける寸法を生成する必要がないと判定する、
    請求項に記載の寸法生成装置。
  3. 前記生成寸法判定部は、前記稜線が前記基準座標系のいずれの座標軸にも直交していない場合に、当該稜線に関連づける前記座標軸方向の寸法を生成する必要がないと判定し、当該稜線の始点及び終点である頂点に関連づける寸法の生成の要否を判定する、
    請求項1又は請求項2に記載の寸法生成装置。
  4. 前記3次元モデルの前記要素が円筒の少なくとも一部の面を含む場合に、
    前記生成寸法判定部は、前記円筒の中心軸が前記基準座標系のいずれの座標軸にも直交していない場合に、当該中心軸に関連づける前記座標軸方向の寸法を生成する必要がないと判定し、当該中心軸の始点及び終点である頂点に関連づける寸法の生成の要否を判定する、
    請求項からのいずれか1項に記載の寸法生成装置。
  5. 前記生成寸法判定部は、前記基準要素から前記要素までの、前記要素に直交する座標軸方向の前記直線距離と同一の寸法が生成されている場合に、当該要素に関連づける寸法を生成する必要がないと判定する、
    請求項からのいずれか1項に記載の寸法生成装置。
  6. 前記寸法生成部は、前記要素が前記基準要素又は前記基準要素の一部でなく、前記要素が前記基準座標系の座標軸のいずれかに直交し、かつ、前記基準要素から前記要素までの前記座標軸方向の前記直線距離と同一の寸法が生成されている場合に、既存の前記寸法に関連づけられている要素の集合に、判定の対象の前記要素を追加する、
    請求項からのいずれか1項に記載の寸法生成装置。
  7. 前記生成寸法判定部は、既存の前記寸法に関連づけられている要素の集合から、前記判定の対象の前記要素の構成要素を除外する、
    請求項に記載の寸法生成装置。
  8. コンピュータが、
    3次元モデルの平面及び稜線を含む要素の形状、位置又は姿勢を検出するモデル要素検出ステップと、
    基準座標系、及び、前記基準座標系の座標軸に直交する基準要素を決定する基準座標系決定ステップと、
    前記モデル要素検出ステップで検出した前記要素の各々と関連づける寸法の生成の要否、及び、前記寸法に関連づける他の要素を判定する生成寸法判定ステップと、
    前記生成寸法判定ステップで生成を要すると判定した前記寸法として、前記基準座標系の座標軸方向の前記基準要素から前記要素までの直線距離を含む法を生成する寸法生成ステップと、を実行し、
    前記生成寸法判定ステップでは、前記平面が前記基準座標系のいずれの座標軸にも直交していない場合に、当該平面に関連づける前記座標軸方向の寸法を生成する必要がないと判定し、当該平面に含まれる稜線に関連づける寸法の生成の要否を判定する、
    寸法生成方法。
  9. コンピュータを、
    3次元モデルの平面及び稜線を含む要素の形状、位置又は姿勢を検出するモデル要素検出部、
    基準座標系、及び、前記基準座標系の座標軸に直交する基準要素を決定する基準座標系決定部、
    前記モデル要素検出部が検出した前記要素の各々と関連づける寸法の生成の要否、及び、前記寸法に関連づける他の要素を判定する生成寸法判定部、
    前記生成寸法判定部が生成を要すると判定した前記寸法として、前記基準座標系の座標軸方向の前記基準要素から前記要素までの直線距離を含む法を生成する寸法生成部、
    として機能させるプログラムであって、
    前記生成寸法判定部は、前記平面が前記基準座標系のいずれの座標軸にも直交していない場合に、当該平面に関連づける前記座標軸方向の寸法を生成する必要がないと判定し、当該平面に含まれる稜線に関連づける寸法の生成の要否を判定する、
    プログラム。
JP2019042558A 2019-03-08 2019-03-08 寸法生成装置、寸法生成方法及びプログラム Active JP7285660B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019042558A JP7285660B2 (ja) 2019-03-08 2019-03-08 寸法生成装置、寸法生成方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019042558A JP7285660B2 (ja) 2019-03-08 2019-03-08 寸法生成装置、寸法生成方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2020144759A JP2020144759A (ja) 2020-09-10
JP7285660B2 true JP7285660B2 (ja) 2023-06-02

Family

ID=72354329

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019042558A Active JP7285660B2 (ja) 2019-03-08 2019-03-08 寸法生成装置、寸法生成方法及びプログラム

Country Status (1)

Country Link
JP (1) JP7285660B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002324082A (ja) 2001-02-20 2002-11-08 Canon Inc 情報処理装置、及び方法
JP2006106938A (ja) 2004-10-01 2006-04-20 Andor Kk Cad装置、cad図面作成方法、cad図面作成プログラム及び該プログラムを記録したプログラム媒体
JP2019012435A (ja) 2017-06-30 2019-01-24 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理システム、その制御方法及びプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4855939A (en) * 1987-09-11 1989-08-08 International Business Machines Corp. 3D Dimensioning in computer aided drafting

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002324082A (ja) 2001-02-20 2002-11-08 Canon Inc 情報処理装置、及び方法
JP2006106938A (ja) 2004-10-01 2006-04-20 Andor Kk Cad装置、cad図面作成方法、cad図面作成プログラム及び該プログラムを記録したプログラム媒体
JP2019012435A (ja) 2017-06-30 2019-01-24 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理システム、その制御方法及びプログラム

Also Published As

Publication number Publication date
JP2020144759A (ja) 2020-09-10

Similar Documents

Publication Publication Date Title
JP6513914B2 (ja) 3次元シーンにおいて第1のポイントと第2のポイントとを結ぶパス設計
CN105740497B (zh) 对工件的加工进行仿真
US9158297B2 (en) Computing device and method for generating measurement program of product
CN101866379B (zh) 用于可视化计算机屏幕上显示的对象的方法、程序和产品编辑系统
Li et al. Arc–surface intersection method to calculate cutter–workpiece engagements for generic cutter in five-axis milling
JP5110160B2 (ja) 数値制御プログラミング方法及びその装置
JP2016126795A5 (ja)
JP6360356B2 (ja) 干渉チェックシステム
Balabokhin et al. Iso-scallop tool path building algorithm “based on tool performance metric” for generalized cutter and arbitrary milling zones in 3-axis CNC milling of free-form triangular meshed surfaces
JP5577263B2 (ja) 船体ブロックの搭載精度予測システム、方法及びその記録媒体
JP3567015B2 (ja) Cadシステムにおいて幾何図形対象に関するブール演算を実行するための方法
JP6719368B2 (ja) 3次元空間可視化装置、3次元空間可視化方法およびプログラム
JP7187234B2 (ja) 三次元形状作成装置、三次元形状作成方法および三次元形状作成プログラム
Tlija et al. Evaluating the effect of tolerances on the functional requirements of assemblies
JP7285660B2 (ja) 寸法生成装置、寸法生成方法及びプログラム
KR101919572B1 (ko) 초기 의장 설계용 3차원 모델 생성 방법 및 그 장치
JP6280425B2 (ja) 画像処理装置、画像処理システム、3次元計測器、画像処理方法及び画像処理プログラム
JP2009258889A (ja) 形状モデル作成装置
JP7339069B2 (ja) 加工プログラム生成支援装置
JP7262655B2 (ja) 寸法作成装置、寸法作成方法及びプログラム
JP6070006B2 (ja) 検証支援プログラム、検証支援方法、および検証支援装置
JP2018073095A (ja) 画像処理装置および画像処理方法
JP2010152863A (ja) 境界節点抽出システム、境界節点抽出方法及びプログラム
JP2006338119A (ja) 製造検討支援装置
Collins et al. Intensity-Based Registration With Voxel-Based Computer-Aided Manufacturing for Adaptive Machining

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20221208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230214

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: 20230425

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230523

R150 Certificate of patent or registration of utility model

Ref document number: 7285660

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150