JP2024035617A - 情報処理装置、方法、及びプログラム - Google Patents
情報処理装置、方法、及びプログラム Download PDFInfo
- Publication number
- JP2024035617A JP2024035617A JP2022140201A JP2022140201A JP2024035617A JP 2024035617 A JP2024035617 A JP 2024035617A JP 2022140201 A JP2022140201 A JP 2022140201A JP 2022140201 A JP2022140201 A JP 2022140201A JP 2024035617 A JP2024035617 A JP 2024035617A
- Authority
- JP
- Japan
- Prior art keywords
- dimension
- information processing
- processing device
- placement
- character string
- 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.)
- Pending
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 title claims description 93
- 238000010586 diagram Methods 0.000 abstract description 22
- 238000012545 processing Methods 0.000 description 68
- 238000004364 calculation method Methods 0.000 description 40
- 230000000750 progressive effect Effects 0.000 description 15
- 238000001514 detection method Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000013461 design Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Abstract
【課題】本発明は、オブジェクトの所定の部分に設定する寸法の数及び種類が多い場合であっても、ユーザの視認性を考慮して寸法オブジェクトを適切な位置に配置する情報処理装置を提供することを目的とする。【解決手段】オブジェクトの所定の部分の寸法に係る情報を表す寸法オブジェクトの、前記オブジェクトを含む画像における配置位置として設定されている配置位置を取得する。前記配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複する場合、前記オブジェクトの所定の部分から2次元方向に前記寸法オブジェクトの配置位置を探索する。探索された配置位置に前記寸法オブジェクトを配置する。前記2次元方向を規定する第1の要素と第2の要素のうち前記第1の要素を前記第2の要素に優先して前記寸法オブジェクトの配置位置を探索する。【選択図】図3
Description
本発明は、情報処理装置、方法、及びプログラムに関する。
CADシステムを用いた製品設計では、三次元モデリングにより三次元形状のデザインを作成した後、製品の製造のための二次元図面を作成することがある。CADシステムは、三次元モデルから二次元図面(以下、図面)を作成する機能を有している。また、CADシステムは、図面に寸法を自動作成することができる。このようなCADシステムが三次元モデルから自動作成する図面では、一方の寸法と他の寸法が重複してしまうため、ユーザが両者の寸法値を読み取れなくなることがある。そこで、特許文献1は、寸法同士が重複する場合に、一方の寸法を移動することで、寸法同士の重複を解消する技術を提案している。
特許文献1は、一次元的な方向にのみ一方の寸法を移動させることで、寸法同士が重複しない位置を探索している。このような寸法の位置の探索方式では、寸法の数及び種類が多い場合に、図面上の寸法の配置が複雑になるため、ユーザは依然として寸法を読み取りづらいといった課題がある。
そこで、本発明は、オブジェクトの所定の部分に設定する寸法の数及び種類が多い場合であっても、ユーザの視認性を考慮して寸法オブジェクトを適切な位置に配置する情報処理装置を提供することを目的とする。
本発明の目的を達成するために、本発明の一実施形態に係る情報処理装置は、以下の構成を備える。すなわち、情報処理装置は、オブジェクトの所定の部分の寸法に係る情報を表す寸法オブジェクトの、前記オブジェクトを含む画像における配置位置として設定されている配置位置を取得する取得手段と、前記配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複する場合、前記オブジェクトの所定の部分から2次元方向に前記寸法オブジェクトの配置位置を探索する探索手段と、前記探索手段によって探索された配置位置に前記寸法オブジェクトを配置する配置手段と、を有し、前記探索手段は、前記2次元方向を規定する第1の要素と第2の要素のうち前記第1の要素を前記第2の要素に優先して前記寸法オブジェクトの配置位置を探索する、ことを特徴とする。
本発明は、オブジェクトの所定の部分に設定する寸法の数及び種類が多い場合であっても、ユーザの視認性を考慮して寸法オブジェクトを適切な位置に配置する情報処理装置を提供することができる。
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
図1は、情報処理装置のハードウェア構成の一例を説明する図である。
情報処理装置101は、CPU110、ROM111、RAM112、VC113、汎用I/F114、SATAI/F115、及びNIC116を備える。
CPU110は、RAM112をワークメモリとして、ROM111、HDD105、各種記録メディアに格納されたオペレーティングシステム(OS)及び各種プログラムを実行する。CPU110は、システムバス117を介して各部を制御する。なお、CPU110が実行するプログラムは、図面寸法作成処理用のプログラムを含む。
汎用I/F114は、例えば、USBなどのシリアルバスインタフェースである。汎用I/F114は、シリアルバス108を介して、マウス及びキーボードなどの入力デバイス103及びプリンタ104と接続される。
SATAI/F115は、HDD105及び各種記録メディアの読み書きを行うメディアドライブ106と接続される。CPU110は、HDD105及びメディアドライブ106にマウントされた各種記録メディアをデータの格納場所として利用する。
NIC116は、ネットワークインタフェースであり、例えば、LANなどのネットワーク107と接続される。
VC113は、ビデオインタフェースであり、モニタ102と接続される。CPU110は、プログラムの実行によって提供されるユーザインタフェース(UI)をモニタ102に表示する。CPU110は、入力デバイス103を介して、ユーザ指示を受信する。
なお、後述する図面寸法作成処理用のプログラムをパーソナルコンピュータなどのコンピュータ機器に供給すれば、コンピュータ機器を本発明の情報処理装置101として利用可能である。
図2は、情報処理装置の機能構成の一例を説明するブロック図である。
情報処理装置101は、プログラム202とCADアプリケーション210を有する。プログラム202は、CADアプリケーション210のアドオンとして、CADアプリケーション210と連携して本発明の機能を実現する。
情報処理装置101は、3Dモデル及び2D図面を含んだCADデータベース211に接続される。情報処理装置101は、CADデータベース211に含まれるCADデータの読み込み及び書き込みを行う。また、情報処理装置101は、候補算出部206が使用するデータを読み込むために、探索設定DB212に接続されている。
CPU110は、RAM112に格納されたプログラム202を実行することで各部の機能を実現する。各部は、設定部203、検出部204、配列作成部205、候補算出部206、寸法作成部207、判定部208、及び処理部209である。
図18は、寸法作成処理を実行するためのGUIの一例を説明する図である。
設定部203は、例えば、図18(b)の画像1304に対して、ユーザが設定した累進寸法の原点を設定するオブジェクトを取得し、取得したオブジェクトをRAM112に格納する。
検出部204は、例えば、図18(b)の画像1304に対して、設定部203で取得したオブジェクトと対となるオブジェクトを探すことにより、累進寸法の設定箇所を検出する。また、検出部204は、CADデータに含まれる形状の特徴から径方向寸法の設定箇所及び面取り寸法の設定箇所を検出し、画像1304から寸法の文字列(寸法オブジェクトに相当)を設定する箇所を検出する。
配列作成部205は、寸法の文字列が、他の寸法の文字列、寸法線、及び寸法補助線の少なくともいずれかと重複する状態を検出するためのデータとして「重複判定配列」を作成する。
候補算出部206は、探索設定DB212のデータを参照し、寸法種ごとに規定された寸法の配置方法に基づいて、一方の寸法の文字列が他の寸法の文字列と重複する状態を回避するために、一方の寸法の文字列の配置候補位置を算出する。
寸法作成部207は、検出部204が検出した寸法の文字列を設定する箇所に、オブジェクトの形状に対応する寸法の文字列、寸法線、及び寸法補助線を作成する。
判定部208は、配列作成部205が作成した重複判定配列を用いて、寸法作成部207が作成した寸法の文字列が、他の寸法の文字列及びCADデータの形状線と重複するか否かを判定する。さらに、判定部208は、寸法作成部207が作成した寸法線及び寸法補助線が他の寸法の文字列と重複するか否かを判定する。
処理部209は、判定部208が寸法の文字列等が他の寸法の文字列等と重複すると判定した場合、候補算出部206が算出した配置候補位置の優先順に従った位置に寸法の文字列を移動する。なお、寸法の文字列等は、寸法の文字列、寸法線、及び寸法補助線を含むものとする。
図3は、情報処理装置が実行する処理の手順を説明するフローチャートである。
S301で設定部203は、図18(a)のグラフィカル・ユーザーインターフェース(GUI)を介して、累進寸法の原点を設定するオブジェクトを取得する。
ここで、図18を用いて、寸法作成処理を実行するためにGUIを介した累進寸法の原点を設定するオブジェクトの取得方法について説明する。
GUIは、情報処理装置101によってモニタ102に表示されるウィンドウ1301に表示される。ウィンドウ1301は、寸法作成を開始するボタン1302及びウィンドウ1301を閉じるボタン1303を含む。
画像1304では、寸法作成開始前のCADアプリケーション210がモニタ102に表示している2D図面が表示される。
作成する累進寸法の原点を指定するために、ユーザは、ボタン1302を押す前に、画像1304の形状線1305から、水平方向の累進原点1306及び垂直方向の累進原点1307を選択する。オブジェクトの選択は、CADアプリケーション210の通常の機能を利用して、マウス等の入力デバイス103で行われる。
ユーザがボタン1302を押すことで寸法作成が開始される。次に、設定部203は、選択されているオブジェクトを累進寸法の原点を設定するオブジェクトとして取得する。設定部203は、CADアプリケーション210が提供するAPIを用いて、CADアプリケーション210のビュー上で選択されたオブジェクトを取得する。
画像1308では、ユーザが開始ボタンを押した後にモニタ102に表示される、寸法を含んだ図面が表示される。
S302で配列作成部205は、寸法の文字列同士の重複を検出するために、重複判定配列を作成する。なお、重複判定配列は、図4のS407、図5のS507、及び図7のS707で更新される。
S303で寸法作成部207は、寸法種ごとにループ処理を行う。寸法種は、例えば、累進寸法、直径寸法、半径寸法、及び面取り寸法を含む。寸法種ごとにS303~S308までの処理が繰り返し実行される。
S304で検出部204は、寸法種ごとに対応する寸法設定箇所を検出する。検出部204は、累進寸法の設定箇所を検出する場合、累進寸法の原点を設定したオブジェクトの直線と平行な他の直線オブジェクトを検索することにより、累進寸法の設定箇所を検出する。また、検出部204は、半径寸法及び直径寸法の設定箇所を検出する場合、図面の射影形状線から円弧曲線を検出することで、寸法設定箇所を検出する。ここで、射影形状線が円弧であることは、オブジェクトの型が円弧であること及びCADアプリケーション210が提供する曲率計算のAPI等を介して判定され得る。さらに、検出部204は、面取り寸法の設定箇所を検出する場合、図面の形状線の角度などのデータ及び3Dモデルの履歴を活用する。そして、検出部204は、面取りコマンド履歴等のデータを参照することで、図面内の面取りに対応する形状線を検出することができる。
S305でプログラム202が、寸法種が累進寸法であるか否かを判定する。プログラム202が、寸法種が累進寸法であると判定した場合(S305でYes)、処理はS307へ進む。一方で、プログラム202が、寸法種が累進寸法ではないと判定した場合(S305でNo)、処理はS306へ進む。
ここで、寸法種が累進寸法ではない場合にS306の処理を実行しない理由は、累進寸法では一次元的に寸法の文字列を移動させることにより他の寸法の文字列との重複を回避するためである。一方で、径方向寸法及び面取り寸法では二次元的に寸法の文字列の文字列を移動させることにより他の寸法の文字列との重複を回避するため、S306の処理が行われる。
S306で候補算出部206は、探索設定DB212のデータを参照し、他の文字列との重複を回避するために一方の文字列の配置候補リストを寸法種ごとに作成する。
S307でプログラム202は、寸法種ごとに寸法の文字列を作成し、作成した寸法の文字列を配置する処理を行う。
図4は、累進寸法の作成・配置適正化の処理手順を説明するフローチャートである。
図4は、図3のS305において、寸法種が累進寸法であると判定された場合の寸法作成・配置適正化を説明するフローチャートである。
S401でプログラム202は、累進寸法の各設定箇所についてのループ処理を開始する。
S402で寸法作成部207は、累進寸法の設定箇所に対して、累進寸法を作成する。累進寸法は、CADアプリケーション210が提供するAPIを介して作成され得る。具体的には、寸法作成部207は、累進寸法を設定する区間に対応する2つの形状線のオブジェクトやその代表点を引数とし、累進寸法を作成するCADアプリケーション210のAPIを呼び出す。
S403で判定部208は、S402で作成した累進寸法が他の寸法と重複するか否かを判定する。例えば、判定部208は、S302の重複判定配列又はS407の重複判定配列を用いて、S402又はS406で配置した寸法の文字列が、図面の形状線、他の寸法の文字列、寸法線、及び寸法補助線と重複するか否かを判定する。
S404でプログラム202は、S403の判定結果が重複状態を示すか否かを判定する。プログラム202は、判定結果が重複状態を示す場合(S404でYes)、処理はS405に進む。一方で、プログラム202は、判定結果が重複状態を示さない場合(S404でNo)、処理はS407に進む。
S405で候補算出部206は、寸法の文字列の配置候補位置を算出する。
S406で処理部209は、S405で算出した配置候補位置に寸法の文字列を移動する。例えば、寸法の文字列の移動は、寸法の文字列のビュー上の座標を指定してCADアプリケーション210が提供するAPIを呼び出すことで実行され得る。ここで指定する座標は、寸法の文字列の座標である。また、寸法の文字列の移動に伴い、寸法の文字列に付随する寸法線及び寸法補助線も寸法の文字列と整合するように移動する。
図9は、累進寸法を配置する方法を説明する図である。図9を参照しつつ、S403~S406の処理による、寸法の文字列同士の重複判定及び寸法の文字列の移動について説明する。
図9(a)の画像901には、CADアプリケーション210が3Dモデルから生成した形状902が含まれる。また、形状902に対する一部の区間には寸法線903が既に設定されている。寸法線903の区間において、寸法値「0」を示す文字列904及び寸法値「6」を示す文字列905が表示されている。画像901は、例えば、図1のモニタ102に表示される。
図9(b)の画像906は、寸法の文字列が他の寸法の文字列等と重複するか否かを判定するために使用する重複判定配列を可視化した画像である。重複判定配列は、画像901の表示内容に対応した2次元配列を示す。例えば、画像901の形状線上の点の座標を取得し、取得した座標に対応する重複判定配列の要素に値が設定される。そして、形状線、寸法線、及び寸法補助線上の座標に対応する重複判定配列の要素に「値1」が設定される。寸法線903及び文字列904をそれぞれ包含する領域の座標に対応する重複判定配列の要素に「値2」が設定される。画像901で残りの領域の座標に対応する重複判定配列の要素に「値0」を設定する。
矩形領域907は、文字列904を包含する領域である。矩形領域907の全ての要素が0以外で占められているため、矩形領域907内側は黒で塗りつぶされている。矩形領域908は、文字列905を包含する領域である。矩形領域908の全ての要素が0以外で占められているため、矩形領域908の内側は黒で塗りつぶされている。
図9(c)の画像909は、画像901に図4のS402の処理により形状線910に累進寸法を作成した後、寸法値「7」を示す文字列911が寸法値「6」に重複していることを示す。
図9(d)の画像912は、寸法の文字列同士が重複している状態を示す。図9(c)の文字列911を包含する領域の座標に対応する重複判定配列の要素に「値0」を設定する。判定部208は、矩形領域913の全ての要素が0であるか否かを判定する。判定部208は、矩形領域913の全ての要素が0である場合、矩形領域913は他の文字列等と重複していないと判定する。一方で、判定部208は、矩形領域913に0でない要素が1つでもある場合、矩形領域913は他の文字列等と重複していると判定する。この重複判定は、図4のS403において実行される。図9(d)に示すように、矩形領域913は矩形領域914と重複している。したがって、判定部208は、文字列911が文字列904と重複していると判定することができる。
図9(e)の画像915は、文字列911(すなわち、矩形領域917)を累進寸法の原点から離れる方向916に移動した後の状態を示す。文字列911の移動は、図4のS406で行われる。文字列911(すなわち、矩形領域917)の移動先は、図4のS405において算出される。S405では、文字列911の位置(二次元座標)を、累進寸法の原点から離れる方向916に位置する座標に更新する。文字列911の移動距離は、全体の処理に要する時間が増えすぎないように、できるだけ小さい値となる。
図4のS403~S406までの繰り返し処理により、寸法の文字列同士が重複しないように文字列911を所定の位置まで移動する。文字列911を所定の位置まで移動させた結果は、矩形領域917である。これにより、判定部208は、文字列911が文字列905に重複しないと判定できる。このとき、CADアプリケーション210による2D図面の表示は、画像918の通りである。図9(f)に示すように、文字列919は他の寸法の文字列等及び形状線910と重複していない。
S407で配列作成部205は、S402又はS406の処理により配置された寸法の文字列を包含する矩形領域の座標及び寸法補助線の端点座標を取得する。配列作成部205は、取得した座標値に基づいて重複判定配列を更新する。
S408でプログラム202は、S401~S408までのループ処理が完了するまで、繰り返し処理を行う。すべての累進寸法の設定箇所に対しての処理が完了した後、ループ処理は完了する。
図5は、径方向寸法の作成・配置適正化の処理手順を説明するフローチャートである。
S501でプログラム202は、径方向寸法の各設定箇所についてのループ処理を開始する。
S502で寸法作成部207は、径方向寸法の設定箇所に対して、径方向寸法を作成する。径方向寸法は、半径寸法及び直径寸法などを含む。径方向寸法の種類により表記記号の違いがあるため、径方向寸法の種類に対応したCADアプリケーション210のAPIを呼び出すことで寸法は作成される。具体的には、径方向寸法を作成する円弧オブジェクト及びその代表点を引数とし、径方向寸法を作成するCADアプリケーション210のAPIは呼び出される。
S503で判定部208は、S502で作成した寸法の文字列が他の寸法の文字列等と重複するか否かを判定する。例えば、判定部208は、重複判定配列を用いて、S502又はS506の処理により配置された寸法の文字列が、図面の形状線、他の寸法の文字列、寸法線、及び寸法補助線と重複するか否かを判定する。
S504でプログラム202は、S503の判定結果が重複状態を示すか否かを判定する。プログラム202は、判定結果が重複状態を示す場合(S504でYes)、処理はS505に進む。一方で、プログラム202は、判定結果が重複状態を示さない場合(S504でNo)、処理はS507に進む。
S505でプログラム202は、寸法の文字列の配置候補位置を設定する。具体的には、寸法の文字列同士の重複を回避するため、候補算出部206が図3のS306で作成した配置候補リストから、寸法の文字列の次の移動先を取得する。配置候補リストでは、寸法の文字列の移動の優先順に配置候補位置の位置データが並んでいる。そのため、プログラム202は、単にS705の処理が実行された回数をインデックスとして配置候補リストの要素を取得すれば、寸法の文字列の次の移動先を設定できる。
S506で処理部209は、S505で算出した移動先に寸法の文字列を移動する。例えば、寸法の文字列の移動は、寸法の文字列のビュー上の座標を指定してCADアプリケーション210が提供するAPIを呼び出すことで実行され得る。ここで指定する座標は、寸法の文字列の座標である。また、寸法の文字列の移動に伴い、寸法の文字列に付随する寸法線及び寸法補助線も寸法の文字列と整合するように移動する。
S507で配列作成部205は、S502又はS506の処理により配置された寸法の文字列を含む矩形領域の座標及び寸法線、寸法補助線の端点座標を取得する。配列作成部205は、取得した座標値に基づいて重複判定配列を更新する。
S508でプログラム202は、S501~S508までのループ処理が完了するまで、繰り返し処理を行う。プログラム202は、すべての径方向寸法の設定箇所に対しての処理が完了した後、ループ処理を完了する。
図12は、直径寸法を配置する方法を説明する図である。図12(a)の画像1021及び図12(b)の画像1025を参照しつつ、S503~S506の処理による、寸法の文字列の重複判定及び寸法の文字列の移動について説明する。
図12(a)の画像1021は、直径寸法を配置する際に重複判定配列を可視化した画像である。画像1021は、配置候補リストの1つの要素に対応する位置に配置した直径寸法の文字列を表す矩形領域1022(「φ4.5」で図示)を示す。なお、矩形領域1022には、値0が設定されるものとする。
ここで、矩形領域1022に0以外の要素が含まれるため、矩形領域1022は、モデルの形状線1023及び寸法補助線1024と重複している。この場合、配置候補リストから次の優先順位に対応する位置を取得し、取得した位置に矩形領域1022を移動する。配置候補リストに従って矩形領域1022の移動処理が繰り返される。そして、矩形領域1026(「φ4.5」で図示)のように、他の寸法の文字列等との重複が無くなるまで矩形領域1022の移動処理は行われる。また、判定部208は、寸法補助線に対応する重複判定配列部分1027に他の寸法の文字列を包含する矩形領域等が無い場合に、矩形領域1022が他の文字列等と重複しないと判定する。具体的には、判定部208は、重複判定配列部分1027に値2の要素があるか否かを判定する。
ここで、図14は、半径寸法を配置する方法を説明する図である。図14(a)の画像1111及び図14(b)の画像1114を用いて、S503~S506の処理による、寸法の文字列の重複判定及び寸法の文字列の移動について説明する。ここで、半径方向の文字列の移動方式は直径寸法の場合と異なる。
図14(a)の画像1111は、矩形領域1112が形状線1113と重複している状態を示している。直径寸法の場合と同様に、処理部209は、矩形領域1112が他の文字列等との重複が無くなるまで、配置候補リストの優先順に従った位置に矩形領域1112を移動する。
図14(b)の画像1114は、矩形領域1112が他の文字列等と重複しないように移動した後の状態を示す。矩形領域1115は、モデルの形状線及び他の寸法の文字列等と重複していない。ここで、矩形領域1115のように、1つの矩形領域内では寸法の文字列と寸法の補助線とが重複していても良い。本発明は、このような重複判定も可能であり、ユーザにとっての図面の見やすさに大きな影響はないため、半径寸法の設定箇所に近接することを優先して寸法の文字列を配置している。
図6は、径方向寸法の配置候補リスト作成の処理手順を説明するフローチャートである。径方向寸法は、直径寸法と半径寸法を含む。ここでは、「直径寸法」についての配置候補リスト作成の処理手順について説明する。半径寸法の配置候補リストの作成手順は直径寸法の場合とほとんど同じ手順である。
配置候補リストは、一方の寸法の文字列が他の寸法の文字列等と重複する場合に、一方の寸法の文字列の適切な配置を決定するために、配置候補位置及び移動の優先順を定義したリストのことである。例えば、配置候補リストは、図面上の2次元座標を表現する2つの浮動小数を格納したリストである。
候補算出部206は、配置候補リスト作成において、図3のS304で検出した全ての直径寸法の設定箇所に対して1つずつリストを作成する。
S601では、候補算出部206は、図2の探索設定DB212に含まれる、直径寸法の文字列を配置するための探索範囲データを取得する。探索範囲データのデータ形式は、図19に示す通りである。
図19は、寸法の配置を調整するための探索範囲データを説明する図である。
図19(a)は、直径寸法用の探索範囲データを示す。探索範囲データ1401は、開始角度、終了角度、単位移動角度、開始距離、終了距離、及び単位移動距離のカテゴリーで定義される。
図19(b)は、半径寸法用の探索範囲データを示す。探索範囲データ1402は、角度範囲、単位移動角度、開始距離、終了距離、及び単位移動距離のカテゴリーで定義される。
図19(c)は、面取り寸法用の探索範囲データを示す。探索範囲データ1403は、垂直方向の単位移動距離、垂直方向の最大移動距離、水平方向の単位移動距離、及び水平方向の最大移動距離のカテゴリーで定義される。
図6の説明に戻る。S602で候補算出部206は、寸法配置距離に係わるループ処理を開始する。このループ処理は、S601で取得した探索範囲データ1401の開始距離、終了距離、及び単位移動距離のデータに従って実行される。具体的には、候補算出部206は、ループ処理に係わる変数(以下、「ループ1変数」とする)の初期値に開始距離を設定し、ループ処理を繰り返すたびにループ1変数に単位移動距離を加算する。候補算出部206は、ループ1変数の値が終了距離の値を超えるまでループ1の処理を繰り返す。
S603で候補算出部206は、寸法の文字列の配置角度に係わるループ処理を開始する。このループ処理は、S601で取得した探索範囲データ1401の開始角度、終了角度、及び単位移動角度のデータに従って実行される。具体的には、候補算出部206は、ループ処理に係わる変数(以下、「ループ2変数」とする)の初期値に開始角度を設定し、ループ処理を繰り返すたびにループ2変数に単位移動角度を加算する。候補算出部206は、ループ2変数の値が終了角度の値を超えるまでループ2の処理を繰り返す。
S604で候補算出部206は、S602でループ1変数に設定した寸法配置距離とS603でループ2変数に設定した寸法配置角度に基づいて、寸法配置座標を算出する。寸法配置座標(x,y)は、寸法の文字列を設定する円弧の中心座標又は円弧上の代表点の座標と以下の式1により算出される。
S605で候補算出部206は、S604で算出した座標(x,y)を配置候補リストに登録する。配置候補リストに登録された順序は、配置候補の優先順に一致する。
S606で候補算出部206は、S603からはじまるループ2の処理の終了条件を満たす場合、S607に移行する。一方で、候補算出部206は、ループ2の処理の終了条件を満たさない場合、ループ2の処理を繰り返し実行する。
S607で候補算出部206は、S602からはじまるループ1の処理の終了条件を満たす場合、配置候補リスト作成処理を終了する。一方で、候補算出部206は、ループ1の処理の終了条件を満たさない場合、ループ1の処理を繰り返し実行する。
ここで、図10(a)及び図10(b)を用いて、寸法種が直径寸法である場合における、候補算出部206が算出する優先順付きの配置候補位置について説明する。
図10(a)の画像1001は、CADアプリケーション210による図面上の文字列1002のような累進寸法(「21、14、7、6、0」で図示)及び文字列1003のような半径寸法(「R6」で図示)を示す。
図10(b)の画像1004は、画像1001の図面に対応する重複判定配列を可視化した画像である。領域1005は、文字列1002(「21、14、7、6、0」で図示)に対応する重複判定配列を示している。領域1005に値1が設定されている。同様に、領域1006は、文字列1003(「R6」で図示)に対応する重複判定配列を示している。
図11(a)の画像1007は、直径寸法の文字列配置の候補を示す。直径寸法の文字列は、ユーザにとって見やすく分かりやすい図面にするため、他の寸法の文字列及びモデルの形状線と重複しないように、円1008からできるだけ近い位置に配置される。さらに、直径寸法の寸法補助線が水平又は垂直である場合、直径寸法の寸法補助線が他の寸法補助線及び中心マークと重複するため、扇形領域1009に直径寸法の文字列は配置される。同様に、直径寸法の文字列を配置する領域は、扇形領域1010、扇形領域1011、又は扇形領域1012であっても良い。なお、扇形領域は、基準1013に対しての開始角度と終了角度、及び円1008の中心からの最大距離を指定することで定義される。
図11(b)の扇形領域1014は、図11(a)の扇形領域1009と同じである。候補算出部206は、扇形領域1014において寸法の文字列を配置する位置を算出する。上記の通り、図6のS601で取得した探索範囲データ1401は、開始角度、終了角度、単位移動角度、開始距離、終了距離、及び単位移動距離のデータを有する。候補算出部206は、これらのデータに従って、寸法の文字列の候補位置リストを作成する。
まず、候補算出部206は、探索範囲データ1401の開始角度及び開始距離のデータに基づいて、最初の候補位置1015を算出し、候補位置1015を配置候補リストに登録する。候補算出部206は、候補位置1015から単位移動角度だけ図の矢印の方向に移動した候補位置1016を算出し、候補位置1016を配置候補リストに登録する。候補算出部206は、角度が終了角度となる場合の候補位置1017を算出し、候補位置1017を配置候補リストに登録する。
ここで、候補算出部206は、角度を初期の角度に戻して、距離を単位移動距離だけ増やして候補位置1018を算出し、候補位置1018を配置候補リストに登録する。候補算出部206は、角度を単位移動角度だけ移動した候補位置1019を算出し、候補位置1019を配置候補リストに登録する。候補算出部206は、角度を単位移動角度だけ移動した候補位置1020を算出し、候補位置1020を配置候補リストに登録する。これ以降の候補位置は、終了距離に到達するまで上記と同様の方法で算出されるため、説明を省略する。
次に、図13(a)及び図13(b)を用いて、寸法種が半径寸法である場合において候補算出部206が算出する優先順付きの配置候補位置について説明する。半径寸法の文字列の配置候補位置は、直径寸法の場合と概ね同じ算出方法で算出される。以下、直径寸法の文字列の配置候補位置の算出方法との差分について説明する。
図13(a)の画像1101は、半径寸法を設定する円弧1102を含む2D図面を示す。以下では、円弧1102に半径寸法を作成する場合において一方の半径寸法の文字列が他の文字列等と重複しないように一方の文字列を配置する方法を説明する。
図13(b)の画像1103は、半径寸法を作成する前のCADアプリケーション210による図面を示している。画像1103には、文字列1104(「63」で図示)及び寸法線1105が既に作成されている。これらの図面オブジェクトに重複しないように半径寸法の文字列を画像1103内に配置する。
半径寸法は、R面取りやブレンドと呼ばれている角を丸める操作で作成された形状部分に対して設定する寸法のことである。直径寸法は円の内部に設定される。一方で、半径寸法は円弧1102のように角部の角度が概ね90°の部分に設定される。
ユーザが寸法線と寸法補助線を見やすいように、図13(b)の中点1106を通り、法線方向1107に平行な直線上に半径寸法の文字列は配置される。実際には、半径寸法の文字列が他の文字列等と重複しないように、角度1108の範囲内で配置される。そして、探索範囲データの最大距離を設定することで、探索領域1109及び探索領域1110が定義される。
図7は、面取り寸法の作成・配置適正化の処理手順を説明するフローチャートである。
S701でプログラム202は、面取り寸法の各設定箇所についてのループ処理を開始する。
S702で寸法作成部207は、面取り寸法の設定箇所に、面取り寸法の文字列を作成する。面取り寸法の文字列は、CADアプリケーション210が提供するAPIを呼び出すことで作成される。
S703で判定部208は、S702で作成した寸法の文字列が他の寸法の文字列等と重複するか否かを判定する。具体的には、判定部208は、重複判定配列を用いて、S702又はS706で作成又は配置された面取り寸法の文字列が、図面の形状線、他の寸法の文字列、寸法線、又は寸法補助線と重複するか否かを判定する。
S704でプログラム202は、S703の判定結果に基づいて、面取り寸法が他の寸法の文字列等と重複するか否かを判定する。プログラム202は、面取り寸法が他の寸法の文字列等と重複すると判定した場合(S704でYes)、処理はS705に進む。一方で、プログラム202は、面取り寸法が他の寸法の文字列等と重複しないと判定した場合(S704でNo)、処理はS707に進む。
S705でプログラム202は、配置候補リストに基づいて、面取り寸法の文字列を配置する候補位置を設定する。具体的には、プログラム202は、図3のS306で作成した配置候補リストから、面取り寸法の文字列を配置する位置を取得する。配置候補リストは、配置の優先順に配置候補位置データが並んでいる。そのため、プログラム202は、単にS705の処理が実行された回数をインデックスとして配置候補リストの要素を取得すれば、面取り寸法の文字列の次の配置候補位置を設定できる。
S706で処理部209は、S705で算出した配置候補位置に面取り寸法の文字列を移動する。面取り寸法の文字列の移動は、具体的には、寸法の文字列のビュー上の座標を指定してCADアプリケーション210が提供するAPIを呼び出すことで実行される。ここで指定する座標は、面取り寸法の文字列の座標である。通常、面取り寸法の文字列の移動に伴い、面取り寸法の文字列に付随する寸法線及び寸法補助線も面取り寸法の文字列に整合するように移動する。
図17は、面取り寸法を配置する方法を説明する図である。図17(a)の画像1229及び図17(b)の画像1232を用いて、S703~S706の処理による、面取り寸法の文字列の配置方法について説明する。
図17(a)の画像1229は、面取り寸法を配置する前の重複判定配列を可視化するとともに、配置候補リストの1つの要素に対応する位置に配置した面取り寸法の文字列を包含する矩形領域1230を示す。
図15(a)の面取り寸法の文字列1204(「φ6」で図示)に対応する重複判定配列として、図17(a)の矩形領域1231は、矩形領域1230と重複している。この場合、判定部208は、重複判定配列に基づいて、矩形領域1230に矩形領域1231に設定された値2の要素があるため、矩形領域1230は矩形領域1231と重複していると判定する。
処理部209は、矩形領域1230が矩形領域1231と重複しているため、配置候補リストから、矩形領域1230を配置する次の優先順位の候補位置を取得し、取得した位置に矩形領域1230を移動する。処理部209は、配置候補リストに従って、矩形領域1230が他の文字列等と重複しなくなるまで移動処理を行う。これにより、図17(b)では、矩形領域1234は他の文字列等と重複していない。ここで、重複判定の条件は、寸法補助線に対応する重複判定配列部分1235に他の寸法の文字列等が無いことも含む。具体的には、判定部208は、重複判定配列部分1235に値2の要素があるか否かを判定する。
S707で配列作成部205は、S702又はS706により配置された寸法の文字列を包含する矩形領域の座標、寸法線、及び寸法補助線の端点座標を取得し、これらの座標値に応じて重複判定配列を更新する。
S708でプログラム202は、S701からのループ処理が完了するまで、S701からの処理を繰り返し行う。プログラム202は、全ての面取り寸法の設定箇所に対しての処理が完了した場合、ループ処理を終了する。
図8は、面取り寸法の配置候補リスト作成の処理手順を説明するフローチャートである。配置候補リストは、面取り寸法の文字列が他の寸法の文字列等と重複する場合に面取り寸法の文字列を適切な位置に配置するために用いられるリストである。配置候補リストは、面取り寸法の移動先の座標の候補及び移動の優先順を定義したリストを有する。
図3のS304で検出した全ての面取り寸法の設定箇所に対して1つずつのリストが作成される。このため、面取り寸法の設定箇所の数だけリストが作成される。
S801でプログラム202は、図2の探索設定DB212に含まれる、面取り寸法の文字列を移動するための探索範囲データ1403を取得する。
S802でプログラム202は、面取り寸法の文字列を配置する際の水平方向の配置距離に係るループ処理を開始する。このループ処理は、S801で取得した探索範囲データ1403に含まれる、面取り寸法の文字列の配置に係る水平方向の探索開始距離、探索終了距離、及び探索距離間隔のデータに従って実行される。具体的には、プログラム202は、ループ処理に係る変数(以下、「ループ1変数」とする)の初期値に水平方向の探索開始距離を設定し、ループ処理を繰り返すたびにループ1変数に探索距離間隔を加算する。プログラム202は、ループ1変数の値が探索終了距離の値を超えるまでループ1の処理を繰り返す。
S803でプログラム202は、面取り寸法の文字列を配置する際の垂直方向の配置距離に係るループ処理を開始する。このループ処理は、S801で取得した探索範囲データ1403に含まれる、面取り寸法の文字列の配置に係る垂直方向の探索開始距離、探索終了距離、及び探索距離間隔のデータに従って実行される。具体的には、プログラム202は、ループ処理に係る変数(以下、「ループ2変数」とする)の初期値に垂直方向の探索開始距離を設定し、ループ処理を繰り返すたびにループ2変数に探索距離間隔を加算する。プログラム202は、ループ2変数の値が探索終了距離の値を超えるまでループ2の処理を繰り返す。
S804でプログラム202は、ループ1変数に設定された水平方向の配置距離とループ2変数に設定された垂直方向の配置距離に基づいて、面取り寸法の文字列を配置する二次元座標を算出する。座標は、以下の式2により算出される。
ここで、ベクトルPdimは配置候補位置の座標である。ベクトルP0は面取りに対応する形状線の代表点座標である。dhは水平方向の移動量である。ベクトルnhは水平方向の単位方向ベクトルである。dvは垂直方向の移動量である。ベクトルnvは垂直方向の単位方向ベクトルである。
S805でプログラム202は、S804で算出した座標を配置候補リストに登録する。配置候補リストに登録された順序が配置候補の優先順に一致する。
S806でプログラム202は、S803からはじまるループ2の処理の終了条件を満たすと判定した場合、処理はS807に進む。一方で、プログラム202は、ループ2の処理が終了条件を満たさないと判定した場合、S803からの処理を繰り返し実行する。
S807でプログラム202は、S802からはじまるループ1の処理の終了条件を満たす場合、配置候補リスト作成処理を終了する。一方で、プログラム202は、ループ1の処理が終了条件を満たさない場合、ループ1の処理を繰り返し実行する。
ここで、図15を用いて、寸法種が面取り寸法である場合における、候補算出部206が算出する優先順付きの配置候補位置について説明する。
図15(a)の画像1201は、CADアプリケーション210により軸形状の3Dモデルから射影された2D図面の形状線を示している。3Dモデルの円筒形状を横から見たときの輪郭線である形状線1202が画像1201に表示されている。3Dモデルの円筒形状は面取り部を含む。面取り部に対応する形状線1203が画像1201に表示されている。また、円筒の形状線1202の寸法の文字列1204(「φ6」で図示)が画像1201に既に表示されている。
以下では、形状線1203に対する面取り寸法の配置方法について説明する。
図15(b)の画像1205は、CADアプリケーション210の2D図面の画像1201から作成した重複判定配列の状態を示す。重複判定配列の形状線1203に対応する配列要素1206及び文字列1204に対応する矩形領域1207には、値1又は値2が設定される。画像1205で形状線及び文字列1204以外の配列要素には値0が設定されている。
図16(a)の画像1208は、2D図面内で、面取り部分の形状線1209に対して作成する面取り寸法の文字列を配置する矩形領域1210を示す。
矩形領域1210は、形状線1209に対して水平方向1211の幅1212の範囲、及び、形状線1209に対して垂直な法線方向1213に最大距離1214の範囲により定義される。
法線方向1213で形状線1209側に面取り寸法の文字列を配置するよりも、水平方向1211で形状線1209側に面取り寸法を配置する。これにより、ユーザは図面上の面取り寸法を読み取りやすくなる。そのため、形状線1209から水平方向1211にできるだけ離れないようにし、かつ、法線方向1213に離れるように面取り寸法の文字列を配置する。ただし、形状線1209から法線方向1213への距離が大きくなりすぎるとユーザにとって面取り寸法の文字列が見づらくなることを考慮し、法線方向1213の最大距離1214を大きくしすぎないように調節する。
形状線1209から法線方向1213に離隔した位置に面取り寸法の文字列を配置する際の優先順の設定は、図8のS802~S807までの2重のループ処理によって行われる。また、水平方向1211で形状線1209の所定位置から面取り寸法の文字列までの距離よりも、法線方向1213で形状線1209の所定位置から面取り寸法の文字列までの距離が短くなるように寸法を配置する場合、以下の処理を行う。すなわち、図8のS802~S807までの水平距離におけるループ処理を垂直距離におけるループ処理に置き換える。そして、図8のS803~S806までの垂直距離におけるループ処理を水平距離におけるループ処理に置き換えればよい。
図16(b)の画像1215は、図8の面取り寸法の配置候補リスト作成処理における、面取り寸法の文字列を配置する候補位置の算出を説明するために用いられる。
図8のS801で取得した探索範囲データ1403は、垂直方向単位移動距離、垂直方向最大移動距離、水平方向単位移動距離、及び水平方向最大移動距離のデータを有する。プログラム202は、これらのデータに従って、面取り寸法の文字列の候補位置リストを以下の手順で作成する。
まず、候補算出部206は、形状線1209(図16(a)に図示)の中点1216(図16(b)に図示)から法線方向に単位移動距離だけ移動した位置1217を算出し、位置1217を配置候補リストに登録する。候補算出部206は、位置1217から法線方向に単位移動距離だけ移動した位置1218を算出し、位置1218を配置候補リストに登録する。中点1216から位置1218までの距離は、法線方向における最大移動距離に相当する。
次に、候補算出部206は、法線方向の距離を0に戻し、中点1216から水平方向に単位移動距離だけ移動した位置1219を算出し、位置1219を候補位置リストに登録する。候補算出部206は、位置1219から法線方向に単位移動距離だけ移動した位置1220を算出し、位置1220を候補位置リストに登録する。候補算出部206は、位置1220から法線方向に単位移動距離だけ移動した位置1221を算出し、位置1221を配置候補リストに登録する。
ここで、候補算出部206は、法線方向の距離を0に戻し、形状線1209の中点1216から位置1219とは反対方向に単位移動距離だけ移動した位置1222を算出し、位置1222を配置候補リストに登録する。候補算出部206は、位置1222から法線方向に単位移動距離だけ移動した位置1223を算出し、位置1223を配置候補リストに登録する。候補算出部206は、位置1223から法線方向に単位移動距離だけ移動した位置1224を算出し、位置1224を配置候補リストに登録する。
候補算出部206は、水平方向の最大移動距離に達するまで面取り寸法の文字列の移動を繰り返す。画像1215において水平方向最大距離にある位置は、位置1225から位置1226までの直線上、および、位置1227から位置1228までの直線上である。
そして、処理部209は、面取り寸法の文字列を、配置候補リストに登録された順序に従って所定の位置へ配置する。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本明細書の開示は、以下の情報処理装置、方法、及びプログラムを含む。
(項目1)
オブジェクトの所定の部分の寸法に係る情報を表す寸法オブジェクトの、前記オブジェクトを含む画像における配置位置として設定されている配置位置を取得する取得手段と、
前記配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複する場合、前記オブジェクトの所定の部分から2次元方向に前記寸法オブジェクトの配置位置を探索する探索手段と、
前記探索手段によって探索された配置位置に前記寸法オブジェクトを配置する配置手段と、を有し、
前記探索手段は、前記2次元方向を規定する第1の要素と第2の要素のうち前記第1の要素を前記第2の要素に優先して前記寸法オブジェクトの配置位置を探索する、
ことを特徴とする情報処理装置。
(項目2)
前記第1の要素は、前記所定の部分から前記寸法オブジェクトまでの距離であり、
前記第2の要素は、前記所定の部分から前記寸法オブジェクトを指向する方向である、
ことを特徴とする項目1に記載の情報処理装置。
(項目3)
前記探索手段は、前記寸法オブジェクトの配置位置を探索した順番と、前記寸法オブジェクトの配置位置と、を関連付けた情報を生成する、
ことを特徴とする項目1又は2に記載の情報処理装置。
(項目4)
前記配置手段は、前記寸法オブジェクトの配置位置が前記オブジェクトおよび/または他の寸法オブジェクトと重複しなくなるまで、前記寸法オブジェクトの配置位置を探索する、
ことを特徴とする項目1から3のいずれか一項に記載の情報処理装置。
(項目5)
前記探索手段は、前記寸法オブジェクトの配置位置を探索する方法を規定した探索情報を取得し、前記探索情報に基づいて、前記寸法オブジェクトの配置位置を探索し、
前記探索情報は、前記第1の要素と前記第2の要素を指定した情報である、
ことを特徴とする項目1から4のいずれか一項に記載の情報処理装置。
(項目6)
前記オブジェクトの所定の部分は、前記オブジェクトにおける円の中心、円弧の中点、及び面取りされた角部の中点のいずれかである、
ことを特徴とする項目1から5のいずれか一項に記載の情報処理装置。
(項目7)
前記取得手段は、前記オブジェクトの所定の部分の形状に基づいて、前記設定されている配置位置を取得する、
ことを特徴とする項目1から6のいずれか一項に記載の情報処理装置。
(項目8)
前記オブジェクトの所定の部分の寸法は、直径寸法、半径寸法、及び面取り寸法のいずれかである、
ことを特徴とする項目1から7のいずれか一項に記載の情報処理装置。
(項目9)
前記寸法オブジェクト、前記他の寸法オブジェクト、及び前記オブジェクトのそれぞれにそれぞれ異なる識別情報を設定する設定手段と、
前記設定手段による設定結果に基づいて、前記寸法オブジェクトの配置位置において前記寸法オブジェクト以外の識別情報が含まれる場合、前記寸法オブジェクトの配置位置が前記オブジェクトおよび/または他の寸法オブジェクトと重複すると判定する判定手段と、をさらに有する、
ことを特徴とする項目1から8のいずれか一項に記載の情報処理装置。
(項目10)
前記判定手段は、前記設定手段による設定結果に基づいて、前記寸法オブジェクトの配置位置において前記寸法オブジェクト以外の識別情報が含まれない場合、前記寸法オブジェクトの配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複しないと判定する、
ことを特徴とする項目9に記載の情報処理装置。
(項目11)
情報処理装置が実行する方法であって、
前記情報処理装置の取得手段が、オブジェクトの所定の部分の寸法に係る情報を表す寸法オブジェクトの、前記オブジェクトを含む画像における配置位置として設定されている配置位置を取得する取得工程と、
前記情報処理装置の探索手段が、前記配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複する場合、前記オブジェクトの所定の部分から2次元方向に前記寸法オブジェクトの配置位置を探索する探索工程と、
前記情報処理装置の配置手段が、前記探索手段によって探索された配置位置に前記寸法オブジェクトを配置する配置工程と、を有し、
前記探索工程では、前記2次元方向を規定する第1の要素と第2の要素のうち前記第1の要素を前記第2の要素に優先して前記寸法オブジェクトの配置位置を探索する、
ことを特徴とする方法。
(項目12)
コンピュータを、項目1から10のいずれか一項に記載の情報処理装置の各手段として機能させるためのプログラム。
(項目1)
オブジェクトの所定の部分の寸法に係る情報を表す寸法オブジェクトの、前記オブジェクトを含む画像における配置位置として設定されている配置位置を取得する取得手段と、
前記配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複する場合、前記オブジェクトの所定の部分から2次元方向に前記寸法オブジェクトの配置位置を探索する探索手段と、
前記探索手段によって探索された配置位置に前記寸法オブジェクトを配置する配置手段と、を有し、
前記探索手段は、前記2次元方向を規定する第1の要素と第2の要素のうち前記第1の要素を前記第2の要素に優先して前記寸法オブジェクトの配置位置を探索する、
ことを特徴とする情報処理装置。
(項目2)
前記第1の要素は、前記所定の部分から前記寸法オブジェクトまでの距離であり、
前記第2の要素は、前記所定の部分から前記寸法オブジェクトを指向する方向である、
ことを特徴とする項目1に記載の情報処理装置。
(項目3)
前記探索手段は、前記寸法オブジェクトの配置位置を探索した順番と、前記寸法オブジェクトの配置位置と、を関連付けた情報を生成する、
ことを特徴とする項目1又は2に記載の情報処理装置。
(項目4)
前記配置手段は、前記寸法オブジェクトの配置位置が前記オブジェクトおよび/または他の寸法オブジェクトと重複しなくなるまで、前記寸法オブジェクトの配置位置を探索する、
ことを特徴とする項目1から3のいずれか一項に記載の情報処理装置。
(項目5)
前記探索手段は、前記寸法オブジェクトの配置位置を探索する方法を規定した探索情報を取得し、前記探索情報に基づいて、前記寸法オブジェクトの配置位置を探索し、
前記探索情報は、前記第1の要素と前記第2の要素を指定した情報である、
ことを特徴とする項目1から4のいずれか一項に記載の情報処理装置。
(項目6)
前記オブジェクトの所定の部分は、前記オブジェクトにおける円の中心、円弧の中点、及び面取りされた角部の中点のいずれかである、
ことを特徴とする項目1から5のいずれか一項に記載の情報処理装置。
(項目7)
前記取得手段は、前記オブジェクトの所定の部分の形状に基づいて、前記設定されている配置位置を取得する、
ことを特徴とする項目1から6のいずれか一項に記載の情報処理装置。
(項目8)
前記オブジェクトの所定の部分の寸法は、直径寸法、半径寸法、及び面取り寸法のいずれかである、
ことを特徴とする項目1から7のいずれか一項に記載の情報処理装置。
(項目9)
前記寸法オブジェクト、前記他の寸法オブジェクト、及び前記オブジェクトのそれぞれにそれぞれ異なる識別情報を設定する設定手段と、
前記設定手段による設定結果に基づいて、前記寸法オブジェクトの配置位置において前記寸法オブジェクト以外の識別情報が含まれる場合、前記寸法オブジェクトの配置位置が前記オブジェクトおよび/または他の寸法オブジェクトと重複すると判定する判定手段と、をさらに有する、
ことを特徴とする項目1から8のいずれか一項に記載の情報処理装置。
(項目10)
前記判定手段は、前記設定手段による設定結果に基づいて、前記寸法オブジェクトの配置位置において前記寸法オブジェクト以外の識別情報が含まれない場合、前記寸法オブジェクトの配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複しないと判定する、
ことを特徴とする項目9に記載の情報処理装置。
(項目11)
情報処理装置が実行する方法であって、
前記情報処理装置の取得手段が、オブジェクトの所定の部分の寸法に係る情報を表す寸法オブジェクトの、前記オブジェクトを含む画像における配置位置として設定されている配置位置を取得する取得工程と、
前記情報処理装置の探索手段が、前記配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複する場合、前記オブジェクトの所定の部分から2次元方向に前記寸法オブジェクトの配置位置を探索する探索工程と、
前記情報処理装置の配置手段が、前記探索手段によって探索された配置位置に前記寸法オブジェクトを配置する配置工程と、を有し、
前記探索工程では、前記2次元方向を規定する第1の要素と第2の要素のうち前記第1の要素を前記第2の要素に優先して前記寸法オブジェクトの配置位置を探索する、
ことを特徴とする方法。
(項目12)
コンピュータを、項目1から10のいずれか一項に記載の情報処理装置の各手段として機能させるためのプログラム。
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
101:情報処理装置
102:モニタ
103:入力デバイス
104:プリンタ
105:HDD
106:メディアドライブ
102:モニタ
103:入力デバイス
104:プリンタ
105:HDD
106:メディアドライブ
Claims (12)
- オブジェクトの所定の部分の寸法に係る情報を表す寸法オブジェクトの、前記オブジェクトを含む画像における配置位置として設定されている配置位置を取得する取得手段と、
前記配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複する場合、前記オブジェクトの所定の部分から2次元方向に前記寸法オブジェクトの配置位置を探索する探索手段と、
前記探索手段によって探索された配置位置に前記寸法オブジェクトを配置する配置手段と、を有し、
前記探索手段は、前記2次元方向を規定する第1の要素と第2の要素のうち前記第1の要素を前記第2の要素に優先して前記寸法オブジェクトの配置位置を探索する、
ことを特徴とする情報処理装置。 - 前記第1の要素は、前記所定の部分から前記寸法オブジェクトまでの距離であり、
前記第2の要素は、前記所定の部分から前記寸法オブジェクトを指向する方向である、
ことを特徴とする請求項1に記載の情報処理装置。 - 前記探索手段は、前記寸法オブジェクトの配置位置を探索した順番と、前記寸法オブジェクトの配置位置と、を関連付けた情報を生成する、
ことを特徴とする請求項1に記載の情報処理装置。 - 前記配置手段は、前記寸法オブジェクトの配置位置が前記オブジェクトおよび/または他の寸法オブジェクトと重複しなくなるまで、前記寸法オブジェクトの配置位置を探索する、
ことを特徴とする請求項1に記載の情報処理装置。 - 前記探索手段は、前記寸法オブジェクトの配置位置を探索する方法を規定した探索情報を取得し、前記探索情報に基づいて、前記寸法オブジェクトの配置位置を探索し、
前記探索情報は、前記第1の要素と前記第2の要素を指定した情報である、
ことを特徴とする請求項1に記載の情報処理装置。 - 前記オブジェクトの所定の部分は、前記オブジェクトにおける円の中心、円弧の中点、及び面取りされた角部の中点のいずれかである、
ことを特徴とする請求項1に記載の情報処理装置。 - 前記取得手段は、前記オブジェクトの所定の部分の形状に基づいて、前記設定されている配置位置を取得する、
ことを特徴とする請求項1に記載の情報処理装置。 - 前記オブジェクトの所定の部分の寸法は、直径寸法、半径寸法、及び面取り寸法のいずれかである、
ことを特徴とする請求項1に記載の情報処理装置。 - 前記寸法オブジェクト、前記他の寸法オブジェクト、及び前記オブジェクトのそれぞれにそれぞれ異なる識別情報を設定する設定手段と、
前記設定手段による設定結果に基づいて、前記寸法オブジェクトの配置位置において前記寸法オブジェクト以外の識別情報が含まれる場合、前記寸法オブジェクトの配置位置が前記オブジェクトおよび/または他の寸法オブジェクトと重複すると判定する判定手段と、をさらに有する、
ことを特徴とする請求項1に記載の情報処理装置。 - 前記判定手段は、前記設定手段による設定結果に基づいて、前記寸法オブジェクトの配置位置において前記寸法オブジェクト以外の識別情報が含まれない場合、前記寸法オブジェクトの配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複しないと判定する、
ことを特徴とする請求項9に記載の情報処理装置。 - 情報処理装置が実行する方法であって、
前記情報処理装置の取得手段が、オブジェクトの所定の部分の寸法に係る情報を表す寸法オブジェクトの、前記オブジェクトを含む画像における配置位置として設定されている配置位置を取得する取得工程と、
前記情報処理装置の探索手段が、前記配置位置が、前記オブジェクトおよび/または他の寸法オブジェクトと重複する場合、前記オブジェクトの所定の部分から2次元方向に前記寸法オブジェクトの配置位置を探索する探索工程と、
前記情報処理装置の配置手段が、前記探索手段によって探索された配置位置に前記寸法オブジェクトを配置する配置工程と、を有し、
前記探索工程では、前記2次元方向を規定する第1の要素と第2の要素のうち前記第1の要素を前記第2の要素に優先して前記寸法オブジェクトの配置位置を探索する、
ことを特徴とする方法。 - コンピュータを、請求項1から10のいずれか一項に記載の情報処理装置の各手段として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022140201A JP2024035617A (ja) | 2022-09-02 | 2022-09-02 | 情報処理装置、方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022140201A JP2024035617A (ja) | 2022-09-02 | 2022-09-02 | 情報処理装置、方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024035617A true JP2024035617A (ja) | 2024-03-14 |
Family
ID=90194781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022140201A Pending JP2024035617A (ja) | 2022-09-02 | 2022-09-02 | 情報処理装置、方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024035617A (ja) |
-
2022
- 2022-09-02 JP JP2022140201A patent/JP2024035617A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3025173B2 (ja) | データベース検索システム | |
JP6360356B2 (ja) | 干渉チェックシステム | |
JP2024035617A (ja) | 情報処理装置、方法、及びプログラム | |
JP2009266251A (ja) | 電子関数グラフ表示装置、座標取得装置、電子関数グラフ表示方法、座標取得方法、及びプログラム | |
JP7192953B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP4771807B2 (ja) | コンピュータ支援設計装置、そのプログラム及び方法 | |
JP6320638B2 (ja) | 3次元点群選択装置および3次元点群選択方法 | |
JP7362424B2 (ja) | 情報処理装置、情報処理方法、および情報処理システム | |
JP7262655B2 (ja) | 寸法作成装置、寸法作成方法及びプログラム | |
JP5203690B2 (ja) | 図形要素配置装置及びプログラム | |
US10073600B1 (en) | Selecting large and small entities on a computer display | |
JP2007213437A (ja) | 情報処理方法、情報処理装置 | |
JP2007128173A (ja) | Cadを用いた面積算出方法 | |
JP4024571B2 (ja) | 設計支援プログラム | |
JP7285660B2 (ja) | 寸法生成装置、寸法生成方法及びプログラム | |
JP2017142547A (ja) | 3次元モデル生成装置、3次元モデル生成方法及びプログラム | |
KR102370326B1 (ko) | 2d 이미지를 활용하여 3d 컨텐츠를 생성하는 영상 처리 방법 및 영상 처리 장치 | |
JP6605116B2 (ja) | 画像処理装置、画像処理方法、およびプログラム | |
JP2019101474A (ja) | グループ化制御方法、グループ化制御プログラム、情報処理装置及び情報共有システム | |
JP2004233138A (ja) | 写真測量における計測点の対応付け方法及び装置 | |
JP2018181197A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2005260019A (ja) | プリント基板の設計装置におけるクリアランス距離測定方法、プリント基板の設計装置におけるクリアランス距離測定装置、プログラムおよびコンピューター読み取り可能な記録媒体 | |
JP2003336119A (ja) | 仮想型紙表示装置、仮想型紙表示プログラム | |
JP2022140047A (ja) | 情報処理装置及び情報処理プログラム | |
JP2017037519A (ja) | 床仕上げ材自動割付システム |