JP4845054B2 - Information processing apparatus, information processing method, program, and computer-readable recording medium recording the program - Google Patents

Information processing apparatus, information processing method, program, and computer-readable recording medium recording the program Download PDF

Info

Publication number
JP4845054B2
JP4845054B2 JP2008037705A JP2008037705A JP4845054B2 JP 4845054 B2 JP4845054 B2 JP 4845054B2 JP 2008037705 A JP2008037705 A JP 2008037705A JP 2008037705 A JP2008037705 A JP 2008037705A JP 4845054 B2 JP4845054 B2 JP 4845054B2
Authority
JP
Japan
Prior art keywords
value
dimensional
coordinate value
axis
coordinate
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
Application number
JP2008037705A
Other languages
Japanese (ja)
Other versions
JP2009199167A (en
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP2008037705A priority Critical patent/JP4845054B2/en
Publication of JP2009199167A publication Critical patent/JP2009199167A/en
Application granted granted Critical
Publication of JP4845054B2 publication Critical patent/JP4845054B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

本発明は、3次元座標系で示される図形処理に対するマンマシンインターフェースを提供可能な情報処理装置、情報処理方法、プログラム、およびプログラムを記録したコンピュータ読取り可能な記録媒体に関する。   The present invention relates to an information processing apparatus, an information processing method, a program, and a computer-readable recording medium recording the program, which can provide a man-machine interface for graphic processing represented by a three-dimensional coordinate system.

従来より、CAD(Computer Aided Design)システム等の作図機能を有するシステムが知られている。   Conventionally, a system having a drawing function such as a CAD (Computer Aided Design) system is known.

特許文献1には、このようなシステムにおいて、グリッドと呼ばれる等間隔に直行する基準線(以下、グリッド線という)からなる格子を、2次元座標系において表示装置に表示させることが開示されている。また、同文献には、マウス等のポインティングデバイスによってユーザから指定された画面上の点の2次元座標系の座標値を、当該点に最も近い、グリッド線同士の交点(以下、グリッド交点という)の座標値に補正する技術が開示されている。   Patent Document 1 discloses that, in such a system, a grid made up of reference lines (hereinafter referred to as grid lines) that are orthogonal to each other, called a grid, is displayed on a display device in a two-dimensional coordinate system. . Further, in this document, a coordinate value of a two-dimensional coordinate system of a point on a screen designated by a user with a pointing device such as a mouse is set to an intersection of grid lines closest to the point (hereinafter referred to as a grid intersection). A technique for correcting the coordinate value is disclosed.

このような補正により、ユーザは、所望とする大きさや形状を有する2次元座標系の図形の入力を容易に行うことができる。さらに、上記グリッド交点における座標値の各成分の値が、小数点以下の桁数が少ない値となるようにグリッドを設定することにより、システムにおける演算処理の負荷を減らすことが可能となる。   By such correction, the user can easily input a figure of a two-dimensional coordinate system having a desired size and shape. Furthermore, by setting the grid so that the value of each component of the coordinate value at the grid intersection is a value with a small number of digits after the decimal point, it is possible to reduce the load of arithmetic processing in the system.

また、特許文献2に示すとおり、3次元座標系で定義された3次元形状を2次元座標系に投影することにより、3次元形状を2次元形状として表示させることも行われている。同文献には、2次元形状上の点の指定を受け付けた場合、3次元形状の形状データに基づき、上記指定を受け付けた点の座標値を、3次元形状の面上の点の3次元座標系における座標値に変換することも開示されている。   Moreover, as shown in Patent Document 2, a three-dimensional shape is displayed as a two-dimensional shape by projecting a three-dimensional shape defined in the three-dimensional coordinate system onto the two-dimensional coordinate system. In the same document, when designation of a point on a two-dimensional shape is accepted, based on the shape data of the three-dimensional shape, the coordinate value of the point for which the designation is accepted is represented by the three-dimensional coordinate of the point on the surface of the three-dimensional shape. Conversion to coordinate values in the system is also disclosed.

また、非特許文献1には、2次元座標系であるスクリーン座標系におけるデータを、3次元座標系であるモデル座標系におけるデータに変換する手法が開示されている。
特開平9−16803号公報 特開平7−73344号公報 山口富士夫著 「コンピュータディスプレイによる図形処理工学」 (日刊工業新聞社)、4章4.4 3次元図形表示
Non-Patent Document 1 discloses a method for converting data in a screen coordinate system, which is a two-dimensional coordinate system, into data in a model coordinate system, which is a three-dimensional coordinate system.
JP 9-16803 A JP-A-7-73344 Fujio Yamaguchi “Graphic processing engineering by computer display” (Nikkan Kogyo Shimbun), Chapter 4, 4.4 3D graphic display

ここで、上記グリッドが存在する面においてユーザから2次元形状上の点の指定を受け付けた後に、特許文献2の技術を用いて、当該指定を受け付けた点の座標値を3次元形状の面上の点の3次元座標系における座標値に変換した場合を考える。   Here, after receiving the designation of a point on the two-dimensional shape from the user on the plane where the grid exists, the coordinate value of the point at which the designation is accepted is obtained on the plane of the three-dimensional shape using the technique of Patent Document 2. Consider a case where the point is converted into a coordinate value in the three-dimensional coordinate system.

この場合、上記3次元形状の面は3次元座標系で定義された面であるため、当該3次元形状の面は、2次元座標系で定義されたグリッドが存在する面と必ずしも平行とは限らない。   In this case, since the surface of the three-dimensional shape is a surface defined by a three-dimensional coordinate system, the surface of the three-dimensional shape is not necessarily parallel to the surface where the grid defined by the two-dimensional coordinate system exists. Absent.

それゆえ、このように面同士が平行でない場合、上述した座標値の変換後に特許文献1に示した補正を行うと、補正後の座標値で表される点が上記3次元形状の面上に存在しなくなる。したがって、特許文献1に示す補正を行うことができず、特許文献2に示した変換後の座標値そのものを利用するしかなかった。   Therefore, when the surfaces are not parallel in this way, when the correction described in Patent Document 1 is performed after the above-described conversion of the coordinate values, the point represented by the corrected coordinate values is on the surface of the three-dimensional shape. No longer exists. Therefore, the correction shown in Patent Document 1 cannot be performed, and the converted coordinate values shown in Patent Document 2 can only be used.

このため、3次元座標系における座標値の成分の値を、小数点以下の桁数が少ない値となるように設定することができなかった。その結果、3次元座標を用いるシステムでは、3次元座標系の座標値の補正によって演算処理の負荷の低減を図ることが困難であった。   For this reason, the value of the component of the coordinate value in the three-dimensional coordinate system cannot be set so that the number of digits after the decimal point is small. As a result, in a system using three-dimensional coordinates, it has been difficult to reduce the processing load by correcting the coordinate values of the three-dimensional coordinate system.

本願発明は、上記問題点に鑑みなされたものであって、その目的は、3次元座標系における座標値の成分の値を予め規定した値のうちの一つに補正することにより、演算処理の負荷を低減することが可能な情報処理装置、情報処理方法、プログラム、およびプログラムを記録したコンピュータ読取り可能な記録媒体を提供することを目的とする。   The present invention has been made in view of the above-mentioned problems, and its purpose is to correct the value of the component of the coordinate value in the three-dimensional coordinate system to one of the pre-defined values, thereby performing the calculation process. An object is to provide an information processing apparatus, an information processing method, a program, and a computer-readable recording medium on which the program is recorded, capable of reducing the load.

本発明のある局面に従うと、情報処理装置は、3次元座標系で定義された3次元形状を2次元座標系に投影することにより3次元形状を2次元形状として表示装置に表示させるとともに、入力装置を介して2次元形状上の点の指定を受け付けた場合、3次元形状の形状データに基づき、指定を受け付けた点の座標値を、3次元形状の面上の点の3次元座標系における座標値に変換する情報処理装置であって、3次元座標系の軸と平行な線分であって、かつ変換後の座標値で特定される点を含む線分が、3次元形状の面上に存在するかを形状データに基づき判定する判定手段と、判定手段により線分が存在すると判定された場合に、変換後の座標値を線分上に存在する他の座標値に補正する補正手段を備え、他の座標値は、軸成分の値が、当該軸上に所定の間隔で並ぶように予め規定された値の一つとなる座標値であって、かつ、当該軸成分の値と、変換後の座標値のうちの軸成分の値との差が所定値以下となる座標値である。   According to an aspect of the present invention, an information processing apparatus projects a three-dimensional shape defined in a three-dimensional coordinate system onto a two-dimensional coordinate system to display the three-dimensional shape as a two-dimensional shape on a display device, and When designation of a point on a two-dimensional shape is accepted via the apparatus, the coordinate value of the point on which designation is accepted is represented in the three-dimensional coordinate system of the point on the surface of the three-dimensional shape based on the shape data of the three-dimensional shape. An information processing apparatus for converting to a coordinate value, wherein the line segment is parallel to an axis of a three-dimensional coordinate system and includes a point specified by the converted coordinate value on a surface of the three-dimensional shape Determining means for determining whether the line segment exists based on the shape data, and correcting means for correcting the converted coordinate value to another coordinate value existing on the line segment when the determining means determines that the line segment exists The other coordinate values are the values of the axis components, A coordinate value that is one of the values defined in advance so as to be arranged at a predetermined interval above, and the difference between the value of the axis component and the value of the axis component of the coordinate values after conversion is predetermined. It is a coordinate value that is less than or equal to the value.

また、線分は、少なくとも上記の所定の間隔で示される長さの線分であることが好ましい。   Moreover, it is preferable that a line segment is a line segment of the length shown by said predetermined space | interval at least.

また、判定手段は、形状データに基づき、変換後の座標値で特定される点を含む、3次元形状の面が平面であるか否かを判定する平面判定手段と、平面であると判定された場合、平面の法線が3次元座標系の軸と垂直か否かを形状データに基づき判定する垂直判定手段とを備える構成であることが好ましい。   Further, the determination means is determined to be a plane and a plane determination means for determining whether or not the surface of the three-dimensional shape including the point specified by the converted coordinate value is a plane based on the shape data. In this case, it is preferable that the apparatus includes a vertical determination unit that determines whether or not the normal line of the plane is perpendicular to the axis of the three-dimensional coordinate system based on the shape data.

また、判定手段は、形状データに基づき、変換後の座標値で特定される点を含む、3次元形状の面が、円柱面であるか否かを判定する曲面判定手段と、円柱面であると判定された場合、前記円柱面の中心軸が3次元座標系の軸と平行であるか否かを形状データに基づき判定する平行判定手段とを備える構成であることが好ましい。   Further, the determining means is a curved surface determining means for determining whether or not a three-dimensional shape surface including a point specified by the converted coordinate values based on the shape data is a cylindrical surface, and a cylindrical surface. When it is determined, it is preferable to include a parallel determination unit that determines based on the shape data whether or not the center axis of the cylindrical surface is parallel to the axis of the three-dimensional coordinate system.

また、情報処理装置は、表示装置と入力装置とを備える構成とすることが好ましい。
本発明の他の局面に従うと、情報処理方法は、3次元座標系で定義された3次元形状を2次元座標系に投影することにより3次元形状を2次元形状として表示装置に表示させる表示ステップと、入力装置を介して2次元形状上の点の指定を受け付けた場合、3次元形状の形状データに基づき、指定を受け付けた点の座標値を、3次元形状の面上の点の3次元座標系における座標値に変換する変換ステップと、3次元座標系の軸と平行な線分であって、かつ変換後の座標値で特定される点を含む線分が、3次元形状の面上に存在するかを形状データに基づき判定する判定ステップと、判定ステップにより線分が存在すると判定された場合に、変換後の座標値を線分上に存在する他の座標値に補正する補正ステップとを含み、当該他の座標値は、軸成分の値が、当該軸上に所定の間隔で並ぶように予め規定された値の一つとなる座標値であって、かつ、当該軸成分の値と、変換後の座標値のうちの軸成分の値との差が所定値以下となる座標値である。
Moreover, it is preferable that the information processing apparatus includes a display device and an input device.
According to another aspect of the present invention, an information processing method displays a three-dimensional shape as a two-dimensional shape on a display device by projecting the three-dimensional shape defined in the three-dimensional coordinate system onto the two-dimensional coordinate system. And when designation of a point on a two-dimensional shape is received via the input device, the coordinate value of the point that has been designated based on the shape data of the three-dimensional shape is changed to the three-dimensional point of the point on the surface of the three-dimensional shape. A conversion step for converting to a coordinate value in the coordinate system and a line segment that is parallel to the axis of the three-dimensional coordinate system and that includes a point specified by the converted coordinate value is on the surface of the three-dimensional shape. Determining step based on shape data, and a correction step for correcting the converted coordinate value to another coordinate value existing on the line segment when the determination step determines that the line segment exists And the other coordinate values include The value of the component is a coordinate value that is one of the values defined in advance so as to be arranged at a predetermined interval on the axis, and the axis component of the value of the axis component and the coordinate value after conversion The coordinate value is such that the difference from the value is less than a predetermined value.

本発明のさらに他の局面に従うと、プログラムは、上記情報処理方法をコンピュータに実行させるためのプログラムである。   According to still another aspect of the present invention, the program is a program for causing a computer to execute the information processing method.

本発明のさらに他の局面に従うと、記録媒体は、上記情報処理方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体である。   According to still another aspect of the present invention, a recording medium is a computer-readable recording medium recording a program for causing a computer to execute the information processing method.

本発明により、3次元座標系における座標値の成分の値を予め規定した値の一つに補正できるため、演算処理の負荷を低減することが可能となるといった効果を奏する。   According to the present invention, since the value of the component of the coordinate value in the three-dimensional coordinate system can be corrected to one of the predetermined values, there is an effect that it is possible to reduce the load of calculation processing.

本発明に係るCADシステムの一実施の形態について、図1から図15に基づいて説明すると、以下のとおりである。   An embodiment of a CAD system according to the present invention will be described below with reference to FIGS.

図1に示すとおり、CADシステム(情報処理装置)1は、3次元座標入力装置11と、2次元座標入力装置(入力装置)12と、表示装置13と、記憶装置14と、制御装置15とを備えている。   As shown in FIG. 1, a CAD system (information processing device) 1 includes a three-dimensional coordinate input device 11, a two-dimensional coordinate input device (input device) 12, a display device 13, a storage device 14, and a control device 15. It has.

3次元座標入力装置11は、ユーザが3次元座標系における座標値を制御装置15に入力するために用いられる入力デバイスである。具体的には、3次元座標入力装置11は、座標値の各成分(x,y,z)の値に関する情報の入力を受け付け、当該受け付けた情報を制御装置15に送る。また、3次元座標入力装置11は、制御装置15に対して、上記の座標値以外の各種のデータを入力するための装置としても機能する。   The three-dimensional coordinate input device 11 is an input device used by a user to input coordinate values in a three-dimensional coordinate system to the control device 15. Specifically, the three-dimensional coordinate input device 11 accepts input of information regarding the value of each component (x, y, z) of the coordinate value, and sends the accepted information to the control device 15. The three-dimensional coordinate input device 11 also functions as a device for inputting various data other than the coordinate values to the control device 15.

2次元座標入力装置12は、ユーザが表示装置13における表示画面上の2次元座標系の点を指定するために用いられる入力デバイスである。また、2次元座標入力装置12は、表示装置13に表示されたアイコンをクリックするためのポインティングデバイスとしても機能する。   The two-dimensional coordinate input device 12 is an input device used for the user to specify a point in the two-dimensional coordinate system on the display screen of the display device 13. The two-dimensional coordinate input device 12 also functions as a pointing device for clicking an icon displayed on the display device 13.

なお、3次元座標系の例としては、モデル座標系、ワールド(グローバル)座標系、ローカル座標系が挙げられる。また、2次元座標系の例としては、スクリーン座標系、デバイス座標系、クライアント座標系が挙げられる。   Examples of the three-dimensional coordinate system include a model coordinate system, a world (global) coordinate system, and a local coordinate system. Examples of the two-dimensional coordinate system include a screen coordinate system, a device coordinate system, and a client coordinate system.

表示装置13は、制御装置15からの指令に基づき、2次元形状の図形や3次元形状の図形等の各種の情報を画面上に表示する。   The display device 13 displays various information such as a two-dimensional figure and a three-dimensional figure on the screen based on a command from the control device 15.

記憶装置14は、3次元座標系で定義された3次元形状の図形に関する形状データ(以下、3Dデータという)を1つ以上予め記憶している。また、記憶装置14は、上記3Dデータとして、上記図形を構成する各面(例えば、上面、底面、側面)が、平面あるいは曲面であるかといった面の種別に関する情報も記憶している。さらに、記憶装置14は、上記3Dデータとして、上記図形を構成する平面の法線ベクトルに関するデータも当該平面のデータと関連付けて記憶している。   The storage device 14 stores in advance one or more shape data (hereinafter referred to as 3D data) related to a three-dimensional figure defined in a three-dimensional coordinate system. The storage device 14 also stores information regarding the type of surface, such as whether each surface (for example, the upper surface, the bottom surface, and the side surface) constituting the graphic is a plane or a curved surface as the 3D data. Furthermore, the storage device 14 also stores, as the 3D data, data related to the normal vector of the plane constituting the graphic in association with the data of the plane.

また、制御装置15による上記3Dデータの読み込み処理により、記憶装置14に記憶された3Dデータが読み出され、制御装置15に送られる。また、記憶装置14には、制御装置15において行われた演算結果が記憶される。なお、記憶装置14は、例えば、ハードディスク装置や、フラッシュメモリで構成される。   Further, the 3D data read process by the control device 15 reads the 3D data stored in the storage device 14 and sends it to the control device 15. In addition, the storage device 14 stores the calculation results performed in the control device 15. The storage device 14 is composed of, for example, a hard disk device or a flash memory.

次に、制御装置15について、図2に基づいて説明する。
制御装置15は、図2に示すとおり、インターフェイス部21と、メモリ22と、制御部23とを備えている。また、制御部23は、3次元座標値算出部31と、判定部(判定手段)32と、補正処理部(補正手段)33と、座標値指定部34とを備えている。さらに、判定部32は、平面判定部(平面判定手段)41と、垂直判定部(垂直判定手段)42と、曲面判定部(曲面判定手段)43と、平行判定部(平行判定手段)44とを備えている。なお、制御部23および制御部23内の各部は機能ブロックであり、これらのブロックにおける処理は、後述するCPUにより実行されるソフトウェアによって実現される。
Next, the control device 15 will be described with reference to FIG.
As shown in FIG. 2, the control device 15 includes an interface unit 21, a memory 22, and a control unit 23. The control unit 23 includes a three-dimensional coordinate value calculation unit 31, a determination unit (determination unit) 32, a correction processing unit (correction unit) 33, and a coordinate value designation unit 34. Further, the determination unit 32 includes a plane determination unit (plane determination unit) 41, a vertical determination unit (vertical determination unit) 42, a curved surface determination unit (curved surface determination unit) 43, and a parallel determination unit (parallel determination unit) 44. It has. Note that the control unit 23 and each unit in the control unit 23 are functional blocks, and processing in these blocks is realized by software executed by a CPU described later.

インターフェイス部21は、制御部23から所定の指示を受けた場合、記憶装置14に記憶されている3Dデータを読み出すとともに、当該読み出した3Dデータをメモリ22に一時的に記憶させる。   When receiving a predetermined instruction from the control unit 23, the interface unit 21 reads 3D data stored in the storage device 14 and temporarily stores the read 3D data in the memory 22.

メモリ22は、RAM(Random Access Memory)等の揮発性の半導体メモリであり、制御装置15のCPU(図示せず)が直接データをやり取りする主記憶装置としての役割を果たす。メモリ22には、記憶装置14に記憶された上記3Dデータ等が一時的に記憶される。   The memory 22 is a volatile semiconductor memory such as a RAM (Random Access Memory), and serves as a main storage device in which a CPU (not shown) of the control device 15 directly exchanges data. The memory 22 temporarily stores the 3D data and the like stored in the storage device 14.

制御部23は、メモリ22に記憶されている3Dデータを読み出し、当該3Dデータで特定される図形の3次元形状を2次元座標系に投影し、当該3次元形状を2次元形状として表示装置13に表示させる。   The control unit 23 reads out the 3D data stored in the memory 22, projects the 3D shape of the figure specified by the 3D data onto the 2D coordinate system, and converts the 3D shape into a 2D shape. To display.

以下、制御部23の各部の処理について説明する。
3次元座標値算出部31は、2次元座標入力装置12を介して表示装置13に表示された2次元形状上の点の指定を制御部23が受け付けた場合、2次元座標系における座標値を3次元座標系における座標値へと変換する。より詳しくは、3次元座標値算出部31は、メモリ22に記憶された上記3Dデータに基づき、上記指定を受け付けた点の座標値を、上記3次元形状の面上の点の3次元座標系における座標値に変換する。
Hereinafter, processing of each unit of the control unit 23 will be described.
When the control unit 23 receives designation of a point on the two-dimensional shape displayed on the display device 13 via the two-dimensional coordinate input device 12, the three-dimensional coordinate value calculation unit 31 calculates the coordinate value in the two-dimensional coordinate system. Conversion into coordinate values in a three-dimensional coordinate system. More specifically, the three-dimensional coordinate value calculation unit 31 uses the three-dimensional coordinate system of the point on the surface of the three-dimensional shape as the coordinate value of the point that has received the designation based on the 3D data stored in the memory 22. Convert to coordinate value at.

例えば、3次元座標値算出部31は、図3に示す(x1,y1)といった指定を受け付けた点の2次元座標系の座標値を、図4に示す(X1,Y1,Z1)といった3次元座標系の座標値に変換する。なお、図3と図4とにおいては、2次元座標入力装置12によって指定されるカーソルの位置は同じとしている。   For example, the three-dimensional coordinate value calculation unit 31 uses the three-dimensional coordinate values (X1, Y1, Z1) shown in FIG. 4 as the coordinate values of the two-dimensional coordinate system of the point that has received the designation (x1, y1) shown in FIG. Convert to coordinate value of coordinate system. 3 and 4, the cursor position designated by the two-dimensional coordinate input device 12 is the same.

そして、3次元座標値算出部31は、変換後の座標値についての情報を判定部32に送る。   Then, the three-dimensional coordinate value calculation unit 31 sends information about the converted coordinate values to the determination unit 32.

判定部32は、3次元座標値算出部31より上記変換後の座標値の情報を受け取ると、上記3次元座標系の軸(X軸、Y軸、またはZ軸)と平行な線分であって、かつ上記変換後の座標値で特定される点を含む線分が、上記3次元形状の面上に存在するかを上記3Dデータに基づき判定する。   When the determination unit 32 receives the converted coordinate value information from the three-dimensional coordinate value calculation unit 31, the determination unit 32 is a line segment parallel to the axis (X axis, Y axis, or Z axis) of the three-dimensional coordinate system. In addition, it is determined based on the 3D data whether a line segment including a point specified by the converted coordinate value exists on the surface of the three-dimensional shape.

補正処理部33は、判定部32によって上記線分が存在すると判定された場合に、上記変換後の座標値を上記線分上に存在する他の座標値に補正する。より詳しくは、補正処理部33は、補正後の座標値(上記他の座標値)に関し、上記軸成分の値(例えば、座標値(X1,Y1,Z1)のうちX1)が、当該軸上(X軸上)に所定の間隔で並ぶように予め規定された値の一つとなり、かつ、当該軸成分の値と、上記変換後の座標値のうちの上記軸成分の値との差が所定値以下となるように補正する。   When the determination unit 32 determines that the line segment exists, the correction processing unit 33 corrects the converted coordinate value to another coordinate value existing on the line segment. More specifically, the correction processing unit 33 relates to the corrected coordinate value (the other coordinate value), and the value of the axis component (for example, X1 among the coordinate values (X1, Y1, Z1)) is calculated on the axis. It becomes one of the values defined in advance so as to be arranged at a predetermined interval (on the X axis), and the difference between the value of the axis component and the value of the axis component among the coordinate values after the conversion is Correction is made so that it is below a predetermined value.

具体的に説明すると以下のとおりである。
判定部32による判定の結果、X軸と平行な線分が存在したとする。また、X軸上において、各値が例えば1の間隔で並ぶように予め規定されているものとする。つまり、1,2,3,…,n−1,n,n+1,…といったように値が並んでいるとする(nは自然数)。また、このとき上記所定値を、0.5とする。
Specifically, it is as follows.
As a result of the determination by the determination unit 32, it is assumed that there is a line segment parallel to the X axis. In addition, it is assumed that the values are defined in advance on the X axis so that the values are arranged at intervals of 1, for example. That is, it is assumed that the values are arranged as 1, 2, 3,..., N−1, n, n + 1,. At this time, the predetermined value is set to 0.5.

この場合において、補正前の座標値が(X,Y,Z)=(7.2,Y1,Z1)であるとすると、X軸の成分の値である「7.2」を補正対象とするとともに、当該値「7.2」を上記並んだ値の一つに補正する。その際、値「7.2」は、上記並んだ値のうち「7」と「8」との間にある。また、値「7.2」と値「7」の差が0.2であり、値「7.2」と値「8」との差が0.8である。したがって、この場合には、差が所定値(0.5)以下となるのは値「7」であるので、値「7.2」を値「7」に補正する。その結果、補正後の値として、(X,Y,Z)=(7,Y1,Z1)が得られる。   In this case, assuming that the coordinate value before correction is (X, Y, Z) = (7.2, Y1, Z1), “7.2”, which is the value of the X-axis component, is to be corrected. At the same time, the value “7.2” is corrected to one of the above-described values. At this time, the value “7.2” is between “7” and “8” among the above-described values. The difference between the value “7.2” and the value “7” is 0.2, and the difference between the value “7.2” and the value “8” is 0.8. Accordingly, in this case, since the value “7” is equal to or less than the predetermined value (0.5), the value “7.2” is corrected to the value “7”. As a result, (X, Y, Z) = (7, Y1, Z1) is obtained as a corrected value.

ここで、上記所定値は、上記所定の間隔を2で割った値とすることが好ましい。このように設定することにより、上記並んだ値のうち、必ず上記差が所定値以下となる値が存在することになる。また、上記並んだ値のうち、上記差が所定値以下となる値が2つ存在した場合には、予め規則を設けておき、例えば、値が小さい方に補正する処理を行えばよい。   Here, the predetermined value is preferably a value obtained by dividing the predetermined interval by two. By setting in this way, there is a value in which the difference is always equal to or less than a predetermined value among the aligned values. Further, when there are two values of which the difference is equal to or less than a predetermined value among the aligned values, a rule is provided in advance, for example, a process of correcting the value to a smaller value may be performed.

また、判定部32による判定の結果、2軸(例えば、X軸とY軸)と平行な線分が存在した場合においても、上記と同様に、X座標に関する補正と、Y座標に関する補正とを行えばよい。   Further, as a result of the determination by the determination unit 32, even when there is a line segment parallel to two axes (for example, the X axis and the Y axis), the correction related to the X coordinate and the correction related to the Y coordinate are performed as described above. Just do it.

次に、判定部32が備える、平面判定部41、垂直判定部42、曲面判定部43、およびに平行判定部44ついて説明する。   Next, the plane determination unit 41, the vertical determination unit 42, the curved surface determination unit 43, and the parallel determination unit 44 included in the determination unit 32 will be described.

平面判定部41、垂直判定部42、曲面判定部43、およびに平行判定部44は、上記3次元座標系の軸と平行な線分であって、かつ上記変換後の座標値で特定される点を含む線分が、上記3次元形状の面上に存在するかを上記3Dデータに基づき判定するための機能ブロックである。   The plane determination unit 41, the vertical determination unit 42, the curved surface determination unit 43, and the parallel determination unit 44 are line segments that are parallel to the axis of the three-dimensional coordinate system and are specified by the coordinate values after the conversion. It is a functional block for determining whether a line segment including a point exists on the surface of the three-dimensional shape based on the 3D data.

平面判定部41は、上記3Dデータに基づき、上記変換後の座標値で特定される点を含む上記3次元形状の面が平面であるか否かを判定する。ここで、平面であると判定された場合には、上記変換後の座標値で特定される点を含む線分が、上記3次元形状の面上に存在することになる。   The plane determination unit 41 determines whether the surface of the three-dimensional shape including the point specified by the converted coordinate value is a plane based on the 3D data. If it is determined that the plane is a plane, a line segment including a point specified by the coordinate value after the conversion exists on the plane of the three-dimensional shape.

垂直判定部42は、平面判定部41により平面であると判定された場合、当該平面の法線が上記3次元座標系の軸と垂直か否かを3Dデータに基づき判定する。ここで、垂直であると判定された場合には、上記3次元形状の面(平面)上に存在する線分が、上記3次元座標系の軸と平行であることがわかる。   When the plane determination unit 41 determines that the plane is a plane, the vertical determination unit 42 determines whether the normal of the plane is perpendicular to the axis of the three-dimensional coordinate system based on the 3D data. Here, if it is determined to be vertical, it can be seen that the line segment existing on the plane (plane) of the three-dimensional shape is parallel to the axis of the three-dimensional coordinate system.

曲面判定部43は、上記3Dデータに基づき、上記変換後の座標値で特定される点を含む上記3次元形状の面が、円柱面であるか否かを判定する。ここで、円柱面であると判定された場合には、平行判定部44は、上記円柱面の中心軸が上記3次元座標系の軸と平行であるか否かを3Dデータに基づき判定する。ここで、平行であると判定された場合には、前記円柱面上に存在する線分が、上記3次元座標系の軸と平行であることがわかる。   The curved surface determination unit 43 determines whether the surface of the three-dimensional shape including the point specified by the coordinate value after the conversion is a cylindrical surface based on the 3D data. Here, when it is determined that the surface is a cylindrical surface, the parallel determination unit 44 determines whether the central axis of the cylindrical surface is parallel to the axis of the three-dimensional coordinate system based on the 3D data. Here, if it is determined to be parallel, it can be seen that the line segment existing on the cylindrical surface is parallel to the axis of the three-dimensional coordinate system.

ところで、補正処理部33によって補正された後の座標値を、ユーザが変更したい場合には、当該変更を受け付ける動作モードにおいて、3次元座標入力装置11を介してユーザが値の入力を行えばよい。当該値の入力を制御装置15が受け付けると、座標値指定部34は、メモリ22に記憶されている上記補正後の座標値を、当該受け付けた値の座標値に変更する。   By the way, when the user wants to change the coordinate value after being corrected by the correction processing unit 33, the user may input the value via the three-dimensional coordinate input device 11 in the operation mode in which the change is accepted. . When the control device 15 receives the input of the value, the coordinate value specifying unit 34 changes the corrected coordinate value stored in the memory 22 to the coordinate value of the received value.

以下、CADシステム1における処理内容を、具体例を挙げることにより、さらに具体的に説明する。   Hereinafter, the processing contents in the CAD system 1 will be described more specifically by giving specific examples.

なお、以下では、3次元座標入力装置11や2次元座標入力装置12を介したユーザからの指示により、制御装置15が記憶装置14から任意の3次元形状の図形に関する3Dデータを読み出した場合について説明する。また、上記3Dデータで特定される図形の3次元形状を2次元座標系に投影し、当該3次元形状を2次元形状として表示装置13に表示させた後の処理について説明する。さらに、読み出した3Dデータはメモリ22に一時的に記憶されているものとする。   In the following, a case where the control device 15 reads out 3D data related to a figure having an arbitrary three-dimensional shape from the storage device 14 in accordance with an instruction from the user via the three-dimensional coordinate input device 11 or the two-dimensional coordinate input device 12. explain. In addition, a process after a three-dimensional shape of a graphic specified by the 3D data is projected onto a two-dimensional coordinate system and the three-dimensional shape is displayed on the display device 13 as a two-dimensional shape will be described. Furthermore, it is assumed that the read 3D data is temporarily stored in the memory 22.

また、以下では、説明の便宜上、2次元座標系において指定する2次元形状上の点は、当該2次元形状に対応する3次元座標系における3次元形状の稜線に含まれる点や頂点に対応する点ではないとする。   In the following, for convenience of explanation, points on the two-dimensional shape specified in the two-dimensional coordinate system correspond to points or vertices included in the edge of the three-dimensional shape in the three-dimensional coordinate system corresponding to the two-dimensional shape. Not a point.

図5に示すとおり、2次元座標入力装置12により、2次元座標系において2次元形状上の任意の点P1を指定する(S1)。ステップS1の後は、3次元座標値算出部31により、ステップS1で指示された点P1の座標値(x,y)を、3次元座標系の座標値(X,Y,Z)に変換するとともに、当該変換後の座標値(X,Y,Z)を一時的にメモリ22に記憶させる(S2)。なお、以下では、座標値(X,Y,Z)で特定される3次元形状上の点をP2とする。   As shown in FIG. 5, the two-dimensional coordinate input device 12 designates an arbitrary point P1 on the two-dimensional shape in the two-dimensional coordinate system (S1). After step S1, the three-dimensional coordinate value calculation unit 31 converts the coordinate value (x, y) of the point P1 specified in step S1 into the coordinate value (X, Y, Z) of the three-dimensional coordinate system. At the same time, the converted coordinate values (X, Y, Z) are temporarily stored in the memory 22 (S2). Hereinafter, a point on the three-dimensional shape specified by the coordinate values (X, Y, Z) is P2.

ステップS2の後は、平面判定部41により、点P2が存在する3次元形状における面の種別が記憶装置14から取得される(S3)。ステップS3の後は、取得した面の種別に基づいて、点P2が存在する3次元形状における面が平面か否かが、平面判定部41により判断される(S4)。   After step S2, the plane determination unit 41 acquires the type of surface in the three-dimensional shape where the point P2 exists from the storage device 14 (S3). After step S3, the plane determination unit 41 determines whether the plane in the three-dimensional shape where the point P2 exists is a plane based on the acquired type of plane (S4).

ステップS4において平面であると判定された場合には、図6に示すステップS5に進む。一方、ステップS4において平面ではないと判定された場合には、取得した面の種別に基づいて、点P2が存在する3次元形状における面が円柱面か否かが、曲面判定部43により判断される(S20)。   If it is determined in step S4 that it is a plane, the process proceeds to step S5 shown in FIG. On the other hand, if it is determined in step S4 that the surface is not a plane, the curved surface determination unit 43 determines whether the surface in the three-dimensional shape where the point P2 exists is a cylindrical surface based on the acquired surface type. (S20).

ステップS20において円柱面であると判定された場合には、図7に示すステップS21に進む。一方、ステップS20において円柱面ではないと判定された場合には、ステップS19に進む。   If it is determined in step S20 that the surface is a cylindrical surface, the process proceeds to step S21 shown in FIG. On the other hand, when it determines with it not being a cylindrical surface in step S20, it progresses to step S19.

ここで、ステップS5に進んだ後の処理の流れを、図6に基づいて説明する。
まず、垂直判定部42は、上記平面の法線ベクトルをメモリ22から読み出す(S5)。ステップS5の後は、垂直判定部42は、読み出した法線ベクトルの長さを1に正規化した単位ベクトルVu=(Xu,Yu,Zu)を生成する(S6)。
Here, the flow of processing after proceeding to step S5 will be described with reference to FIG.
First, the vertical determination unit 42 reads the normal vector of the plane from the memory 22 (S5). After step S5, the vertical determination unit 42 generates a unit vector Vu = (Xu, Yu, Zu) in which the length of the read normal vector is normalized to 1 (S6).

ステップS6の後は、垂直判定部42は、S6において生成した単位ベクトルVuと、3次元座標系においてX軸に平行な単位ベクトルVx=(1,0,0)との内積の絶対値|Vu・Vx|を計算する(S7)。ステップS7の後は、垂直判定部42により、上記絶対値が、0に等しいか、または整数部が0であってかつ少数第1位から少数第m位(mは予め定めた自然数)までの値が全て0であるような0に十分近い値(例えば、0.00001)であるか否かが判定される(S8)。   After step S6, the vertical determination unit 42 calculates the absolute value | Vu of the inner product of the unit vector Vu generated in S6 and the unit vector Vx = (1, 0, 0) parallel to the X axis in the three-dimensional coordinate system. Calculate Vx | (S7). After step S7, the vertical determination unit 42 determines whether the absolute value is equal to 0 or the integer part is 0 and the first decimal place to the m-th decimal place (m is a predetermined natural number). It is determined whether or not the value is sufficiently close to 0 (for example, 0.00001) such that all the values are 0 (S8).

ステップS8において上記絶対値が0かあるいは0に十分近い値であると判定された場合には、補正処理部33は、上記点P2の座標値(X,Y,Z)におけるX軸成分の値について四捨五入(少数第一位が4以下なら切り捨て、少数第一位が5以上なら切り上げる処理)を行うことにより、当該X軸成分の値を整数とする(S9)。そして、ステップS9の後は、ステップS10に進む。一方、ステップS8において上記絶対値が0かあるいは0に十分近い値ではないと判定された場合には、ステップS10に進む。   If it is determined in step S8 that the absolute value is 0 or sufficiently close to 0, the correction processing unit 33 determines the value of the X-axis component in the coordinate value (X, Y, Z) of the point P2. Is rounded off (the process is rounded down if the first decimal place is 4 or less, and rounded up if the first decimal place is 5 or more), thereby making the value of the X-axis component an integer (S9). After step S9, the process proceeds to step S10. On the other hand, if it is determined in step S8 that the absolute value is not 0 or sufficiently close to 0, the process proceeds to step S10.

ステップS10においては、垂直判定部42は、上記単位ベクトルVuと、3次元座標系においてY軸に平行な単位ベクトルVy=(0,1,0)との内積の絶対値|Vu・Vy|を計算する。そして、ステップS10の後は、垂直判定部42により、ステップS8と同様に、上記絶対値が0に等しいかあるいは0に十分近い値であるか否かが判定される(S11)。   In step S10, the vertical determination unit 42 obtains the absolute value | Vu · Vy | of the inner product of the unit vector Vu and the unit vector Vy = (0, 1, 0) parallel to the Y axis in the three-dimensional coordinate system. calculate. After step S10, as in step S8, the vertical determination unit 42 determines whether the absolute value is equal to 0 or sufficiently close to 0 (S11).

ステップS11において上記絶対値が0かあるいは0に十分近い値であると判定された場合には、補正処理部33は、上記点P2の座標値(X,Y,Z)におけるY軸成分の値について四捨五入を行うことにより、当該Y軸成分の値を整数とする(S12)。そして、ステップS12の後は、ステップS13に進む。一方、ステップS11において上記絶対値が0かあるいは0に十分近い値ではないと判定された場合には、ステップS13に進む。   If it is determined in step S11 that the absolute value is 0 or sufficiently close to 0, the correction processing unit 33 determines the value of the Y-axis component in the coordinate value (X, Y, Z) of the point P2. Is rounded off to make the value of the Y-axis component an integer (S12). After step S12, the process proceeds to step S13. On the other hand, if it is determined in step S11 that the absolute value is not 0 or sufficiently close to 0, the process proceeds to step S13.

ステップS13においては、垂直判定部42は、上記単位ベクトルVuと、3次元座標系においてZ軸に平行な単位ベクトルVz=(0,0,1)との内積の絶対値|Vu・Vz|を計算する。そして、ステップS13の後は、垂直判定部42により、ステップS8と同様に、上記絶対値が0に等しいかあるいは0に十分近い値であるか否かが判定される(S14)。   In step S13, the vertical determination unit 42 calculates the absolute value | Vu · Vz | of the inner product of the unit vector Vu and the unit vector Vz = (0, 0, 1) parallel to the Z axis in the three-dimensional coordinate system. calculate. After step S13, as in step S8, the vertical determination unit 42 determines whether the absolute value is equal to 0 or sufficiently close to 0 (S14).

ステップS14において上記絶対値が0かあるいは0に十分近い値であると判定された場合には、補正処理部33は、上記点P2の座標値(X,Y,Z)におけるZ軸成分の値について四捨五入を行い、当該Z軸成分の値を整数とする(S15)。そして、ステップS15の後は、ステップS16に進む。一方、ステップS13において上記絶対値が0かあるいは0に十分近い値ではないと判定された場合には、ステップS16に進む。   If it is determined in step S14 that the absolute value is 0 or sufficiently close to 0, the correction processing unit 33 determines the value of the Z-axis component in the coordinate value (X, Y, Z) of the point P2. Is rounded off, and the value of the Z-axis component is an integer (S15). Then, after step S15, the process proceeds to step S16. On the other hand, if it is determined in step S13 that the absolute value is not 0 or sufficiently close to 0, the process proceeds to step S16.

ここで、図5に戻り、ステップS16においては、各軸成分に関し補正処理を行うことにより得られた座標値で特定される点が上記平面内にあるか否かが、上記3Dデータに基づき判定部32により判定される。   Here, returning to FIG. 5, in step S <b> 16, it is determined based on the 3D data whether or not the point specified by the coordinate value obtained by performing the correction process on each axis component is within the plane. Determined by the unit 32.

ステップS16において上記平面内にあると判断された場合には、制御装置15が、例えば図8に示すとおりの補正後の座標値を表示装置13に表示させる(S17)。そして、ステップS17の後、一連の処理を終了する。ここで、同図においては、Y軸成分の値が一例として整数となっていることから、上記点P2の座標値(X,Y,Z)におけるY軸成分の値について、四捨五入する補正が行われたことをユーザが容易に判別できる。   If it is determined in step S16 that the plane is within the plane, the control device 15 causes the display device 13 to display corrected coordinate values as shown in FIG. 8, for example (S17). Then, after step S17, a series of processing is terminated. Here, in the figure, since the value of the Y-axis component is an integer as an example, the correction of rounding off the value of the Y-axis component in the coordinate value (X, Y, Z) of the point P2 is performed. It is possible for the user to easily determine that the error has occurred.

なお、上記補正後の座標値で問題ないとユーザが判断した場合、同図に示す決定ボタンを2次元座標入力装置12を用いて選択することにより、補正後の座標値が確定する。そして、当該確定した座標値のデータは、制御装置15により、上記3Dデータの一部として、記憶装置14に記憶される。   When the user determines that there is no problem with the corrected coordinate value, the corrected coordinate value is determined by selecting the decision button shown in FIG. The determined coordinate value data is stored in the storage device 14 by the control device 15 as a part of the 3D data.

一方、ステップS16において上記平面内にないと判断された場合には、制御装置15は、ステップS2において一時的にメモリ22に記憶させていた、補正前の座標値(X,Y,Z)をメモリ22から読み出す(S18)。そして、ステップS18の後、制御装置15が補正前の座標値(X,Y,Z)を表示装置13に表示させる(S19)。そして、ステップS19の後、一連の処理を終了する。   On the other hand, if it is determined in step S16 that it is not within the plane, the control device 15 uses the uncorrected coordinate values (X, Y, Z) temporarily stored in the memory 22 in step S2. Read from the memory 22 (S18). Then, after step S18, the control device 15 displays the coordinate values (X, Y, Z) before correction on the display device 13 (S19). Then, after step S19, the series of processes is terminated.

次に、ステップS20において円柱面であると判定された場合について、図7に基づき説明する。   Next, the case where it is determined in step S20 that the surface is a cylindrical surface will be described with reference to FIG.

まず、平行判定部44は、円柱面の中心軸の方向ベクトルをメモリ22から読み出す(S21)。ステップS21の後は、平行判定部44は、読み出した方向ベクトルの長さを1に正規化した単位ベクトルVu′=(Xu′,Yu′,Zu′)を生成する(S22)。   First, the parallel determination unit 44 reads the direction vector of the central axis of the cylindrical surface from the memory 22 (S21). After step S21, the parallel determination unit 44 generates a unit vector Vu ′ = (Xu ′, Yu ′, Zu ′) in which the length of the read direction vector is normalized to 1 (S22).

ステップS22の後は、平行判定部44は、ステップS22において生成した単位ベクトルVu′と、3次元座標系においてX軸に平行な単位ベクトルVx=(1,0,0)との内積の絶対値|Vu′・Vx|を計算する(S23)。ステップS23の後は、平行判定部44により、上記絶対値が、1に等しいか、または0.999999等のように1に十分近い値であるか否かが判定される(S24)。   After step S22, the parallel determination unit 44 calculates the absolute value of the inner product of the unit vector Vu ′ generated in step S22 and the unit vector Vx = (1, 0, 0) parallel to the X axis in the three-dimensional coordinate system. | Vu ′ · Vx | is calculated (S23). After step S23, the parallel determination unit 44 determines whether the absolute value is equal to 1 or sufficiently close to 1 such as 0.999999 (S24).

ステップS24において上記絶対値が1かあるいは1に十分近い値であると判定された場合には、補正処理部33は、上記点P2の座標値(X,Y,Z)におけるX軸成分の値について四捨五入を行い、当該X軸成分の値を整数とする(S25)。そして、ステップS25の後は、図5に示すステップS16に進む。   If it is determined in step S24 that the absolute value is 1 or sufficiently close to 1, the correction processing unit 33 determines the value of the X-axis component in the coordinate value (X, Y, Z) of the point P2. Is rounded off, and the value of the X-axis component is set to an integer (S25). Then, after step S25, the process proceeds to step S16 shown in FIG.

一方、ステップS24において上記絶対値が1かあるいは1に十分近い値ではないと判定された場合には、平行判定部44は、ステップS22において生成した単位ベクトルVu′と、3次元座標系においてY軸に平行な単位ベクトルVy=(0,1,0)との内積の絶対値|Vu′・Vy|を計算する(S26)。ステップS26の後は、平行判定部44により、上記絶対値が、1に等しいか、または0.999999等のように1に十分近い値であるか否かが判定される(S27)。   On the other hand, when it is determined in step S24 that the absolute value is not 1 or sufficiently close to 1, the parallel determination unit 44 uses the unit vector Vu ′ generated in step S22 and Y in the three-dimensional coordinate system. The absolute value | Vu ′ · Vy | of the inner product with the unit vector Vy = (0, 1, 0) parallel to the axis is calculated (S26). After step S26, the parallel determination unit 44 determines whether the absolute value is equal to 1 or a value sufficiently close to 1 such as 0.999999 (S27).

ステップS27において上記絶対値が1かあるいは1に十分近い値であると判定された場合には、補正処理部33は、上記点P2の座標値(X,Y,Z)におけるY軸成分の値について四捨五入を行い、当該Y軸成分の値を整数とする(S28)。そして、ステップS28の後は、図5に示すステップS16に進む。   If it is determined in step S27 that the absolute value is 1 or sufficiently close to 1, the correction processing unit 33 determines the value of the Y-axis component in the coordinate value (X, Y, Z) of the point P2. Is rounded off, and the value of the Y-axis component is set to an integer (S28). After step S28, the process proceeds to step S16 shown in FIG.

一方、ステップS27において上記絶対値が1かあるいは1に十分近い値ではないと判定された場合には、平行判定部44は、ステップS22において生成した単位ベクトルVu′と、3次元座標系においてZ軸に平行な単位ベクトルVz=(0,0,1)との内積の絶対値|Vu′・Vz|を計算する(S29)。ステップS29の後は、平行判定部44により、上記絶対値が、1に等しいか、または0.999999等のように1に十分近い値であるか否かが判定される(S30)。   On the other hand, if it is determined in step S27 that the absolute value is not 1 or sufficiently close to 1, the parallel determination unit 44 uses the unit vector Vu ′ generated in step S22 and Z in the three-dimensional coordinate system. The absolute value | Vu ′ · Vz | of the inner product with the unit vector Vz = (0, 0, 1) parallel to the axis is calculated (S29). After step S29, the parallel determination unit 44 determines whether the absolute value is equal to 1 or sufficiently close to 1 such as 0.999999 (S30).

ステップS30において上記絶対値が1かあるいは1に十分近い値であると判定された場合には、補正処理部33は、上記点P2の座標値(X,Y,Z)におけるZ軸成分の値について四捨五入を行い、当該Z軸成分の値を整数とする(S31)。そして、ステップS31の後は、図5に示すステップS16に進む。一方、ステップS30において上記絶対値が1かあるいは1に十分近い値ではないと判定された場合には、補正を行うことなく、図5に示すステップS16に進む。   If it is determined in step S30 that the absolute value is 1 or sufficiently close to 1, the correction processing unit 33 determines the value of the Z-axis component in the coordinate value (X, Y, Z) of the point P2. Is rounded off, and the value of the Z-axis component is an integer (S31). Then, after step S31, the process proceeds to step S16 shown in FIG. On the other hand, when it is determined in step S30 that the absolute value is not 1 or sufficiently close to 1, the process proceeds to step S16 shown in FIG. 5 without performing correction.

以下では、上述した一連の処理により、座標値(X,Y,Z)が具体的にどのように補正されるのかを、図9から図14に基づいて説明する。   Hereinafter, how the coordinate values (X, Y, Z) are specifically corrected by the series of processes described above will be described with reference to FIGS. 9 to 14.

まず、図5のステップS4において平面であると判定された場合に、図6に示すステップS5以下の処理により、座標値(X,Y,Z)が具体的にどのように補正されるのかを、図9から図12に基づき説明する。   First, when it is determined in step S4 in FIG. 5 that the plane is a plane, how the coordinate values (X, Y, Z) are specifically corrected by the processing in step S5 and subsequent steps shown in FIG. This will be described with reference to FIGS.

図9に示すとおり、3次元座標系におけるX軸とY軸とから構成されるXY平面に平行な平面M1上に、上述した点P2が存在している場合を考える。この場合、点P2が存在する平面M1の法線ベクトルの長さを1に正規化した単位ベクトルVuは、(0,0,1)となる。したがって、単位ベクトルVuと、X軸に平行な単位ベクトルVxとの内積の絶対値、Y軸に平行な単位ベクトルVyとの内積の絶対値、およびZ軸に平行な単位ベクトルVzとの内積の絶対値は、それぞれ以下のとおりになる。   Consider the case where the above-described point P2 exists on a plane M1 parallel to the XY plane constituted by the X axis and the Y axis in the three-dimensional coordinate system as shown in FIG. In this case, the unit vector Vu obtained by normalizing the length of the normal vector of the plane M1 where the point P2 exists to 1 is (0, 0, 1). Therefore, the absolute value of the inner product of the unit vector Vu and the unit vector Vx parallel to the X axis, the absolute value of the inner product of the unit vector Vy parallel to the Y axis, and the inner product of the unit vector Vz parallel to the Z axis The absolute values are as follows.

|Vu・Vx|=|(0,0,1)・(1,0,0)|=0
|Vu・Vy|=|(0,0,1)・(0,1,0)|=0
|Vu・Vz|=|(0,0,1)・(0,0,1)|=1
上記計算の結果、VuとVxとの内積の絶対値と、VuとVyとの内積の絶対値とが0となっていることがわかる。このため、補正処理部33により、点P2の座標値(X,Y,Z)のX成分とY成分との値について四捨五入を行い、当該X軸成分の値とY軸成分の値とを整数値化する。
| Vu · Vx | = | (0,0,1) · (1,0,0) | = 0
| Vu · Vy | = | (0,0,1) · (0,1,0) | = 0
| Vu · Vz | = | (0,0,1) · (0,0,1) | = 1
As a result of the above calculation, it can be seen that the absolute value of the inner product of Vu and Vx and the absolute value of the inner product of Vu and Vy are zero. For this reason, the correction processing unit 33 rounds off the values of the X component and the Y component of the coordinate value (X, Y, Z) of the point P2, and adjusts the value of the X axis component and the value of the Y axis component. Digitize.

このような補正により、図10に示すとおり、上記点P2が、XY平面に平行な面上M1において間隔を1として形成されたグリッドにおけるグリッド交点のうち、当該点P2に最も近い交点(○で示された点)に移動したのと同様な効果を得ることができる。なお、同図においては、Z軸上に上記グリッド交点が位置するものとする。   As a result of such correction, as shown in FIG. 10, the point P2 is the closest intersection (in circles) to the point P2 among the grid intersections in the grid formed with an interval of 1 on the plane M1 parallel to the XY plane. The same effect as moving to the indicated point) can be obtained. In the figure, it is assumed that the grid intersection is located on the Z axis.

次に、図11に示すとおり、3次元座標系における各軸のうちY軸のみに平行な平面M2上に、上述した点P2が存在している場合を考える。また、当該点P2が存在する平面M2の法線ベクトルの長さを1に正規化した単位ベクトルVuが、(0.8,0,0.6)であるとする。   Next, consider the case where the above-described point P2 exists on the plane M2 parallel to only the Y axis among the axes in the three-dimensional coordinate system, as shown in FIG. Further, a unit vector Vu obtained by normalizing the length of the normal vector of the plane M2 where the point P2 exists to 1 is (0.8, 0, 0.6).

この場合、単位ベクトルVuと、X軸に平行な単位ベクトルVxとの内積の絶対値、Y軸に平行な単位ベクトルVyとの内積の絶対値、およびZ軸に平行な単位ベクトルVzとの内積の絶対値は、それぞれ以下のとおりになる。   In this case, the absolute value of the inner product of the unit vector Vu and the unit vector Vx parallel to the X axis, the absolute value of the inner product of the unit vector Vy parallel to the Y axis, and the inner product of the unit vector Vz parallel to the Z axis The absolute values of are as follows.

|Vu・Vx|=|(0.8,0,0.6)・(1,0,0)|=0.8
|Vu・Vy|=|(0.8,0,0.6)・(0,1,0)|=0
|Vu・Vz|=|(0.8,0,0.6)・(0,0,1)|=0.6
上記計算の結果、VuとVyとの内積の絶対値のみが0となっていることがわかる。このため、補正処理部33により、点P2の座標値(X,Y,Z)のY成分との値について四捨五入を行い、当該Y軸成分の値を整数値化する。
| Vu · Vx | = | (0.8,0,0.6) · (1,0,0) | = 0.8
| Vu · Vy | = | (0.8,0,0.6) · (0,1,0) | = 0
| Vu · Vz | = | (0.8,0,0.6) · (0,0,1) | = 0.6
As a result of the above calculation, it can be seen that only the absolute value of the inner product of Vu and Vy is zero. Therefore, the correction processing unit 33 rounds off the value of the coordinate value (X, Y, Z) of the point P2 with the Y component, and converts the value of the Y axis component into an integer value.

このような補正により、図12に示すとおり、上記点P2が、上述したグリッドを構成する線のうちY軸と垂直な線の上の点であって、かつ当該点P2に最も近い点(○で示された点)に移動したのと同様な効果を得ることができる。なお、同図においても、Z軸上に上記グリッド交点が位置するものとする。   By such correction, as shown in FIG. 12, the point P2 is a point on a line perpendicular to the Y axis among the lines constituting the grid described above and the point closest to the point P2 (◯ The same effect as moving to the point indicated by () can be obtained. In the same figure, it is assumed that the grid intersection is located on the Z axis.

次に、ステップS20において円柱面であると判定された場合に、図7に示すステップS21以下の処理により、座標値(X,Y,Z)が具体的にどのように補正されるのかを、図13および図14に基づき説明する。   Next, when it is determined in step S20 that the surface is a cylindrical surface, how the coordinate values (X, Y, Z) are specifically corrected by the processing in step S21 and subsequent steps shown in FIG. This will be described with reference to FIGS.

図13に示すとおり、3次元座標系において中心軸がZ軸と平行となる円柱面M4上に、上述した点P2が存在している場合を考える。この場合、上記円柱面M4の中心軸の方向ベクトルの長さを1に正規化した単位ベクトルVu′は、(0,0,1)となる。したがって、単位ベクトルVu′と、X軸に平行な単位ベクトルVxとの内積の絶対値、Y軸に平行な単位ベクトルVyとの内積の絶対値、およびZ軸に平行な単位ベクトルVzとの内積の絶対値は、それぞれ以下のとおりになる。   Consider the case where the above-described point P2 exists on a cylindrical surface M4 whose central axis is parallel to the Z-axis in the three-dimensional coordinate system as shown in FIG. In this case, the unit vector Vu ′ obtained by normalizing the length of the direction vector of the central axis of the cylindrical surface M4 to 1 is (0, 0, 1). Therefore, the absolute value of the inner product of the unit vector Vu ′ and the unit vector Vx parallel to the X axis, the absolute value of the inner product of the unit vector Vy parallel to the Y axis, and the inner product of the unit vector Vz parallel to the Z axis The absolute values of are as follows.

|Vu′・Vx|=|(0,0,1)・(1,0,0)|=0
|Vu′・Vy|=|(0,0,1)・(0,1,0)|=0
|Vu′・Vz|=|(0,0,1)・(0,0,1)|=1
上記計算の結果、VuとVzとの内積の絶対値が1となっていることがわかる。このため、補正処理部33により、点P2の座標値(X,Y,Z)のZ成分の値について四捨五入を行い、当該Z軸成分の値を整数値化する。
| Vu ′ · Vx | = | (0,0,1) · (1,0,0) | = 0
| Vu ′ · Vy | = | (0,0,1) · (0,1,0) | = 0
| Vu ′ · Vz | = | (0,0,1) · (0,0,1) | = 1
As a result of the above calculation, it can be seen that the absolute value of the inner product of Vu and Vz is 1. Therefore, the correction processing unit 33 rounds off the value of the Z component of the coordinate value (X, Y, Z) of the point P2, and converts the value of the Z axis component into an integer value.

ここで、図14に示すとおり、円柱面M4上に設けられるとともに、1の間隔で円柱面M4の中心軸と平行な座標軸(すなわちZ軸)に垂直な平面(すなわちXY平面)と平行に配されたグリッド線を有するグリッドを考える。この場合、上記補正により、同図に示すとおり、上記点P2が、上述したグリッド線上の点であって、かつ当該点P2に最も近い点(○で示す点)に移動したのと同様な効果を得ることができる。なお、同図においては、XY平面上にもグリッド線が位置するものとする。   Here, as shown in FIG. 14, it is provided on the cylindrical surface M4 and arranged in parallel with a plane (that is, XY plane) perpendicular to the coordinate axis (that is, the Z axis) parallel to the central axis of the cylindrical surface M4 at an interval of 1. Consider a grid with a defined grid line. In this case, as shown in the figure, the same effect as that when the point P2 is moved to the point on the grid line described above and the point closest to the point P2 (the point indicated by ◯) is obtained by the correction. Can be obtained. In the figure, it is assumed that grid lines are also located on the XY plane.

以上のように、実施例を示しつつ本実施の形態に係るCADシステム1を説明したが、上述した構成に限定されるものではない。   As described above, the CAD system 1 according to the present embodiment has been described with reference to examples, but is not limited to the above-described configuration.

上記においては、各軸上(例えばX軸上)に所定の間隔で並ぶように予め規定された値(軸成分の値)として、1,2,3,…,n−1,n,n+1,…といったような1の間隔で並んだ例を挙げた(nは自然数)。しかしながら、これに限定されず、例えば10や100といった2桁以上の間隔でもよいし、あるいは0.5といった小数点以下の値で規定される間隔でもよい。要は、CADシステム1において利用可能な間隔であって、ユーザ自身が選択した間隔であればよい。   In the above, 1, 2, 3,..., N-1, n, n + 1, as values (axis component values) defined in advance so as to be arranged at predetermined intervals on each axis (for example, on the X axis). An example is shown where 1 is arranged at intervals of 1 such as (n is a natural number). However, the present invention is not limited to this, and may be an interval of two or more digits such as 10 or 100, or may be an interval defined by a value after the decimal point such as 0.5. The point is that the interval can be used in the CAD system 1 and may be an interval selected by the user.

また、上記では、四捨五入を行う例を挙げたが、これに限定されるものではない。あくまでも、補正処理部33による補正の対象となる軸成分の値に関し、補正後の座標値に関する軸成分の値が、上記規定された値であって、かつ変換後の座標値(つまり、補正前の座標値)のうちの当該軸成分の値との差が所定値以下の値となる補正を行う構成であればよい。   Moreover, although the example which rounds off was given above, it is not limited to this. To the last, regarding the value of the axis component to be corrected by the correction processing unit 33, the value of the axis component related to the corrected coordinate value is the above-defined value and the converted coordinate value (that is, before correction) Of the coordinate value) of the axis component) may be corrected so that the difference from the value of the axis component becomes a value equal to or smaller than a predetermined value.

なお、上記間隔として10を選択した場合には、上述した四捨五入の処理の代わりに、例えば以下の処理を行えばよい。すなわち、一の位について4以下なら、十の位を補正せずに一の位および小数点以下の位を0とする補正を行い、一の位について5以上なら、十の位を1つ大きな値に補正するとともに一の位および小数点以下の位を0とする補正を行えばよい。なお、この場合、上記所定値としては例えば5となる。   If 10 is selected as the interval, for example, the following process may be performed instead of the rounding process described above. That is, if it is less than or equal to 4 for the one's place, it is corrected without correcting the tens place, and the place of the one's place and the decimal place is 0. If it is more than 5 for the one place, the tens place is increased by one. In addition, the correction may be performed so that the one's place and the place after the decimal point are zero. In this case, the predetermined value is, for example, 5.

また、上記間隔として0.5を選択した場合には、上述した四捨五入の処理の代わりに、以下の処理を行えばよい。すなわち、補正の対象となる軸成分の値に関し、補正後の座標値に関する軸成分の値が、上記規定された値(つまり、0.5,1.0,1.5,2.0,2.5,3.0,…,)の何れかの値であって、かつ変換後の座標値のうちの当該軸成分の値との差が所定値(例えば0.25)以下の値になる補正を行えばよい。   When 0.5 is selected as the interval, the following process may be performed instead of the rounding process described above. That is, with respect to the value of the axis component to be corrected, the value of the axis component related to the coordinate value after correction is the above defined value (that is, 0.5, 1.0, 1.5, 2.0, 2 ., 5, 3.0), and the difference between the converted coordinate value and the value of the axis component is a predetermined value (for example, 0.25) or less. Correction may be performed.

また、上記においては、3Dデータとして、面の種別に関する情報と、平面の法線ベクトルに関するデータとを予め記憶している構成を例に挙げて説明したが、これに限定されるものではない。例えば、上記種別を記憶させずに、制御装置15が上記3Dデータから種別を判別する構成としてもよい。また、上記法線ベクトルを記憶させずに、演算装置15が上記3Dデータから法線ベクトルを算出する構成としてもよい。   In the above description, the 3D data has been described by taking as an example a configuration in which information relating to the type of surface and data relating to the normal vector of the plane are stored in advance. However, the present invention is not limited to this. For example, the control device 15 may be configured to determine the type from the 3D data without storing the type. Further, the calculation device 15 may calculate the normal vector from the 3D data without storing the normal vector.

以上のような構成をCADシステム1が有するため、補正後の座標値で表される点を3次元形状の面上に存在させつつも、3次元座標系における座標値の成分の値を予め規定された値の一つ(例えば小数点以下の桁数が予め決められた値のような、所定の桁数で表現される値)に補正することができる。その結果、CADシステム1では、上記の補正を行わない構成の装置に比べ、演算処理の負荷の低減を図ることが可能となる。   Since the CAD system 1 has the above-described configuration, the value of the component of the coordinate value in the three-dimensional coordinate system is specified in advance while the point represented by the corrected coordinate value is present on the surface of the three-dimensional shape. It can be corrected to one of the values (for example, a value represented by a predetermined number of digits such as a value in which the number of digits after the decimal point is predetermined). As a result, in the CAD system 1, it is possible to reduce the processing load as compared with an apparatus configured not to perform the above correction.

また、小数点以下の桁数が少ない値に補正できるため、この値を表示装置13に表示させることにより、補正を行わない場合比べ、ユーザは補正が行われた軸成分の値を即座に読み取ることができる。   In addition, since the number of digits after the decimal point can be corrected to a smaller value, by displaying this value on the display device 13, the user can immediately read the corrected value of the axis component as compared with the case where the correction is not performed. Can do.

さらに、上記のようにユーザが即座に読み取ることができる軸成分の値については、上述した座標値指定部34により値を多少変更しても、変更後の座標値で特定される点が3次元座標系における3次元形状の同一面から離れる可能性が低い。一方で、小数部が例えば20桁もあるような軸成分の値は、少しでも変更すれば上記同一面から離れてしまうことがわかる。   Further, regarding the axis component value that can be read immediately by the user as described above, even if the value is slightly changed by the coordinate value designating unit 34 described above, the point specified by the changed coordinate value is three-dimensional. The possibility of moving away from the same plane of the three-dimensional shape in the coordinate system is low. On the other hand, it can be seen that the value of the axial component having a fractional part of, for example, 20 digits is far from the same plane if it is changed even a little.

したがって、上記補正処理後の座標値の各軸成分値をユーザが確認することにより、軸成分の値を変更すると変更後の座標値で特定される点が上記同一面から離れるか否かを、ユーザは容易に判断することができる。   Therefore, whether or not the point specified by the changed coordinate value is separated from the same plane when the value of the axis component is changed by the user confirming each axis component value of the coordinate value after the correction process, The user can easily make a judgment.

また、工業製品の部品設計においては、部品が設計図(3Dデータ)通りに製作されているか否かを検査工程で検査する。この際に、3Dデータに含まれる各数値の桁数が多い場合、このままの数値を用いることは検査工程の効率化の観点から好ましくない。しかしながら、本実施の形態で示した補正を行うことにより、検査工程の効率化を図ることもできる。   Further, in the part design of industrial products, it is inspected in an inspection process whether or not the part is manufactured according to the design drawing (3D data). At this time, when there are many digits of each numerical value included in the 3D data, it is not preferable to use the numerical value as it is from the viewpoint of increasing the efficiency of the inspection process. However, the inspection process can be made more efficient by performing the correction described in this embodiment.

また、上記の実施の形態においては、3次元座標系の軸と平行な線分であって、かつ上記変換後の座標値で特定される点を含む線分が、上記3次元形状の面上に存在するかを、判定部32が上記3Dデータに基づき判定する構成である。   In the above embodiment, a line segment that is parallel to the axis of the three-dimensional coordinate system and includes a point specified by the coordinate value after the conversion is on the surface of the three-dimensional shape. Is determined by the determination unit 32 based on the 3D data.

この構成において、上記線分は、少なくとも、上記所定の間隔(上述した予め規定された値に関する間隔(例えば、1、10、または0.5等))で示される長さの線分であることが好ましい。以下、理由を示す。   In this configuration, the line segment is at least a line segment having a length indicated by the predetermined interval (interval relating to the above-described predetermined value (for example, 1, 10, or 0.5)). Is preferred. The reason is shown below.

補正の対象となる軸成分に関し、軸成分の値が、当該軸上に所定の間隔で並ぶように予め規定された値の一つとなる座標値であって、かつ、当該軸成分の値と、前記変換後の座標値のうちの前記軸成分の値との差が所定値以下となる座標値で特定される点を特定点とする。このように特定点を定義すると、上記のように線分を少なくとも上記所定の間隔で示される長さとする構成により、上記特定点が上記線分上に必ず存在することになる。その結果、線分が存在する場合には、必ず、変換後の座標値を上記特定点の座標値に補正可能となる。それゆえ、上記線分の長さを、少なくとも、上記所定の間隔で示される長さとすることが好ましい。   With respect to the axis component to be corrected, the value of the axis component is a coordinate value that is one of the values defined in advance so as to be arranged at a predetermined interval on the axis, and the value of the axis component; A point specified by a coordinate value that makes a difference between the converted coordinate value and the value of the axis component equal to or less than a predetermined value is defined as a specific point. When the specific point is defined in this way, the specific point always exists on the line segment by the configuration in which the line segment is at least the length indicated by the predetermined interval as described above. As a result, when there is a line segment, the coordinate value after conversion can always be corrected to the coordinate value of the specific point. Therefore, it is preferable that the length of the line segment is at least the length indicated by the predetermined interval.

ここで、図15を参照して、本実施の形態に係るCADシステム1の具体的構成の一態様について説明する。同図は、CADシステム1として機能するコンピュータシステム100のハードウェア構成を表わすブロック図である。   Here, with reference to FIG. 15, one aspect of a specific configuration of CAD system 1 according to the present embodiment will be described. FIG. 1 is a block diagram showing a hardware configuration of a computer system 100 that functions as the CAD system 1.

コンピュータシステム100は、主たる構成要素として、プログラムを実行するCPU110と、コンピュータシステム100の使用者による指示の入力を受けるマウス120およびキーボード130と、CPU110によるプログラムの実行により生成されたデータ、又はマウス120若しくはキーボード130を介して入力されたデータを揮発的に格納するRAM140と、データを不揮発的に格納するハードディスク150と、CD−ROM(Compact Disk-Read Only Memory)駆動装置160と、モニタ170と、通信IF(Interface)180とを含む。各構成要素は、相互にデータバスによって接続されている。CD−ROM駆動装置160には、CD−ROM161が装着される。   The computer system 100 includes, as main components, a CPU 110 that executes a program, a mouse 120 and a keyboard 130 that receive input of instructions from a user of the computer system 100, data generated by execution of the program by the CPU 110, or a mouse 120. Alternatively, a RAM 140 that stores data input via the keyboard 130 in a volatile manner, a hard disk 150 that stores data in a nonvolatile manner, a CD-ROM (Compact Disk-Read Only Memory) drive device 160, a monitor 170, Communication IF (Interface) 180. Each component is connected to each other by a data bus. A CD-ROM 161 is attached to the CD-ROM drive device 160.

なお、CADシステム1における3次元座標入力装置11がキーボード130に該当し、2次元座標入力装置12がマウス120に該当し、表示装置13がモニタ170に該当し、記憶装置14がハードディスク150に該当し、メモリ22がRAM140に該当する。   In the CAD system 1, the three-dimensional coordinate input device 11 corresponds to the keyboard 130, the two-dimensional coordinate input device 12 corresponds to the mouse 120, the display device 13 corresponds to the monitor 170, and the storage device 14 corresponds to the hard disk 150. The memory 22 corresponds to the RAM 140.

コンピュータシステム100における処理は、各ハードウェアおよびCPU110により実行されるソフトウェアによって実現される。このようなソフトウェアは、ハードディスク150に予め記憶されている場合がある。また、ソフトウェアは、CD−ROM161その他の記憶媒体に格納されて、プログラムプロダクトとして流通している場合もある。あるいは、ソフトウェアは、いわゆるインターネットに接続されている情報提供事業者によってダウンロード可能なプログラムプロダクトとして提供される場合もある。このようなソフトウェアは、CD−ROM駆動装置160その他の読取装置によりその記憶媒体から読み取られて、あるいは、通信IF180を介してダウンロードされた後、ハードディスク150に一旦格納される。そのソフトウェアは、CPU110によってハードディスク150から読み出され、RAM140に実行可能なプログラムの形式で格納される。CPU110は、そのプログラムを実行する。   Processing in the computer system 100 is realized by each hardware and software executed by the CPU 110. Such software may be stored in the hard disk 150 in advance. The software may be stored in a CD-ROM 161 or other storage medium and distributed as a program product. Alternatively, the software may be provided as a program product that can be downloaded by an information provider connected to the so-called Internet. Such software is read from the storage medium by the CD-ROM driving device 160 or other reading device, or downloaded via the communication IF 180 and then temporarily stored in the hard disk 150. The software is read from the hard disk 150 by the CPU 110 and stored in the RAM 140 in the form of an executable program. CPU 110 executes the program.

同図に示されるコンピュータシステム100を構成する各構成要素は、一般的なものである。したがって、本発明の本質的な部分は、RAM140、ハードディスク150、CD−ROM161その他の記憶媒体に格納されたソフトウェア、あるいはネットワークを介してダウンロード可能なソフトウェアであるともいえる。なお、コンピュータシステム100の各ハードウェアの動作は周知であるので、詳細な説明は繰り返さない。   Each component constituting the computer system 100 shown in the figure is general. Therefore, it can be said that the essential part of the present invention is software stored in the RAM 140, the hard disk 150, the CD-ROM 161, or other storage medium, or software that can be downloaded via a network. Since the operation of each hardware of computer system 100 is well known, detailed description will not be repeated.

なお、記録媒体としては、CD−ROM、FD(Flexible Disk)、ハードディスクに限られず、磁気テープ、カセットテープ、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、IC(Integrated Circuit)カード(メモリカードを含む)、光カード、マスクROM、EPROM(Electronically Programmable Read-Only Memory)、EEPROM(Electronically Erasable Programmable Read-Only Memory)、フラッシュROMなどの半導体メモリ等の固定的にプログラムを担持する媒体でもよい。   The recording medium is not limited to a CD-ROM, FD (Flexible Disk), and hard disk, but is a magnetic tape, a cassette tape, an optical disk (MO (Magnetic Optical Disc) / MD (Mini Disc) / DVD (Digital Versatile Disc)). IC (Integrated Circuit) card (including memory card), optical card, mask ROM, EPROM (Electronically Erasable Programmable Read-Only Memory), EEPROM (Electronically Erasable Programmable Read-Only Memory), fixing of flash ROM and other semiconductor memories Alternatively, it may be a medium carrying a program.

ここでいうプログラムとは、CPUにより直接実行可能なプログラムだけでなく、ソースプログラム形式のプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。   The program here includes not only a program directly executable by the CPU but also a program in a source program format, a compressed program, an encrypted program, and the like.

今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。   The embodiment disclosed this time should be considered as illustrative in all points and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

本実施の形態に係るCADシステムの概略構成を示した図である。It is the figure which showed schematic structure of the CAD system which concerns on this Embodiment. 上記CADシステムにおける制御装置の概略構成を示した図である。It is the figure which showed schematic structure of the control apparatus in the said CAD system. 上記CADシステムにおける2次元座標入力装置を用いて、2次元座標系の点を指定している状態を示した図である。It is the figure which showed the state which has designated the point of the two-dimensional coordinate system using the two-dimensional coordinate input device in the said CAD system. 図3において指定した点を3次元座標系で特定した状態を示した図である。It is the figure which showed the state which specified the point designated in FIG. 3 by the three-dimensional coordinate system. 上記CADシステムで実行される処理の流れの一部を示したフローチャートである。It is the flowchart which showed a part of flow of the process performed with the said CAD system. 上記CADシステムで実行される処理の流れの他の一部を示したフローチャートである。It is the flowchart which showed a part of other flow of the process performed with the said CAD system. 上記CADシステムで実行される処理の流れのさらに他の一部を示したフローチャートである。It is the flowchart which showed another part of the flow of the process performed with the said CAD system. 上記制御装置で補正処理を行った後の3次元座標系における座標値を、表示装置で示した図である。It is the figure which showed the coordinate value in the three-dimensional coordinate system after performing a correction process with the said control apparatus with the display apparatus. 上記制御装置によって変換された後の座標値により特定される点が存在する、X軸とY軸とに平行な平面を示した図である。It is the figure which showed the plane parallel to the X-axis and the Y-axis in which the point specified by the coordinate value after conversion by the said control apparatus exists. 図9における点と、当該点の座標値を補正して得られる座標値により特定される補正後の点とを、図9と同じ平面に示した図である。It is the figure which showed the point in FIG. 9, and the point after the correction | amendment specified by the coordinate value obtained by correct | amending the coordinate value of the said point on the same plane as FIG. 上記制御装置によって変換された後の座標値により特定される点が存在する、Y軸にのみに平面を示した図である。It is the figure which showed the plane only to the Y-axis in which the point specified by the coordinate value after conversion by the said control apparatus exists. 図11における点と、当該点の座標値を補正して得られる座標値により特定される補正後の点とを、図11と同じ平面に示した図である。It is the figure which showed the point in FIG. 11, and the point after the correction | amendment specified by the coordinate value obtained by correct | amending the coordinate value of the said point on the same plane as FIG. 上記制御装置によって変換された後の座標値により特定される点が存在する、中心軸がZ軸に平行となる円柱面を示した図である。It is the figure which showed the cylindrical surface where the center specified by the coordinate value after conversion by the said control apparatus exists, and a central axis is parallel to a Z-axis. 図13における点と、当該点の座標値を補正して得られる座標値により特定される補正後の点とを、図13と同じ側面に示した図である。It is the figure which showed the point in FIG. 13, and the point after the correction | amendment specified by the coordinate value obtained by correct | amending the coordinate value of the said point on the same side as FIG. 上記CADシステムの具体的構成の一態様を示した図である。It is the figure which showed the one aspect | mode of the specific structure of the said CAD system.

符号の説明Explanation of symbols

1 CADシステム、11 3次元座標入力装置、12 2次元座標入力装置、13 表示装置、14 記憶装置、15 制御装置、22 記憶部、23 制御部、31 3次元座標値算出部、32 判定部、33 補正処理部、41 平面判定部、42 垂直判定部、43 曲面判定部、44 平行判定部。   1 CAD system, 11 3D coordinate input device, 12 2D coordinate input device, 13 display device, 14 storage device, 15 control device, 22 storage unit, 23 control unit, 31 3D coordinate value calculation unit, 32 determination unit, 33 correction processing unit, 41 plane determination unit, 42 vertical determination unit, 43 curved surface determination unit, 44 parallel determination unit.

Claims (8)

3次元座標系で定義された3次元形状を2次元座標系に投影することにより前記3次元形状を2次元形状として表示装置に表示させるとともに、入力装置を介して前記2次元形状上の点の指定を受け付けた場合、前記3次元形状の形状データに基づき、前記指定を受け付けた点の座標値を、前記3次元形状の面上の点の3次元座標系における座標値に変換する情報処理装置であって、
前記3次元座標系の軸と平行な線分であって、かつ前記変換後の座標値で特定される点を含む線分が、前記3次元形状の面上に存在するかを前記形状データに基づき判定する判定手段と、
前記判定手段により前記線分が存在すると判定された場合に、前記変換後の座標値を前記線分上に存在する他の座標値に補正する補正手段を備え、
前記他の座標値は、前記軸成分の値が、当該軸上に所定の間隔で並ぶように予め規定された値の一つとなる座標値であって、かつ、当該軸成分の値と、前記変換後の座標値のうちの前記軸成分の値との差が所定値以下となる座標値である、情報処理装置。
By projecting a three-dimensional shape defined in the three-dimensional coordinate system onto the two-dimensional coordinate system, the three-dimensional shape is displayed on the display device as a two-dimensional shape, and the points on the two-dimensional shape are displayed via the input device. An information processing apparatus that, when receiving a designation, converts the coordinate value of the point for which the designation is accepted into a coordinate value in a three-dimensional coordinate system of a point on the surface of the three-dimensional shape based on the shape data of the three-dimensional shape Because
Whether the line segment parallel to the axis of the three-dimensional coordinate system and including the point specified by the converted coordinate value exists on the surface of the three-dimensional shape is used as the shape data. Determining means for determining based on;
When the determination unit determines that the line segment is present, the correction unit includes a correction unit that corrects the converted coordinate value to another coordinate value existing on the line segment,
The other coordinate value is a coordinate value that is one of predetermined values so that the value of the axis component is arranged at a predetermined interval on the axis, and the value of the axis component, An information processing apparatus, wherein a difference between the converted coordinate value and the value of the axis component is a coordinate value that is a predetermined value or less.
前記線分は、少なくとも前記所定の間隔で示される長さの線分である、請求項1に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the line segment is a line segment having a length indicated by at least the predetermined interval. 前記判定手段は、
前記形状データに基づき、前記変換後の座標値で特定される点を含む、前記3次元形状の面が平面であるか否かを判定する平面判定手段と、
前記平面であると判定された場合、前記平面の法線が前記3次元座標系の軸と垂直か否かを前記形状データに基づき判定する垂直判定手段とを備える、請求項1または2に記載の情報処理装置。
The determination means includes
Plane determining means for determining whether or not the surface of the three-dimensional shape including a point specified by the coordinate value after the conversion is a plane based on the shape data;
The apparatus according to claim 1, further comprising: a vertical determination unit that determines, based on the shape data, whether or not a normal line of the plane is perpendicular to an axis of the three-dimensional coordinate system when the plane is determined to be the plane. Information processing device.
前記判定手段は、
前記形状データに基づき、前記変換後の座標値で特定される点を含む、前記3次元形状の面が、円柱面であるか否かを判定する曲面判定手段と、
円柱面であると判定された場合、前記円柱面の中心軸が前記3次元座標系の軸と平行であるか否かを前記形状データに基づき判定する平行判定手段とを備える、請求項1または2に記載の情報処理装置。
The determination means includes
Curved surface determination means for determining whether or not the surface of the three-dimensional shape including a point specified by the coordinate value after the conversion is a cylindrical surface based on the shape data;
Parallel determination means for determining, based on the shape data, whether or not a central axis of the cylindrical surface is parallel to an axis of the three-dimensional coordinate system when determined to be a cylindrical surface. 2. The information processing apparatus according to 2.
前記表示装置と前記入力装置とを備える請求項1から4の何れか1項に記載の情報処理装置。   The information processing apparatus according to claim 1, comprising the display device and the input device. 3次元座標系で定義された3次元形状を2次元座標系に投影することにより前記3次元形状を2次元形状として表示装置に表示させる表示ステップと、
入力装置を介して前記2次元形状上の点の指定を受け付けた場合、前記3次元形状の形状データに基づき、前記指定を受け付けた点の座標値を、前記3次元形状の面上の点の3次元座標系における座標値に変換する変換ステップと、
前記3次元座標系の軸と平行な線分であって、かつ前記変換後の座標値で特定される点を含む線分が、前記3次元形状の面上に存在するかを前記形状データに基づき判定する判定ステップと、
前記判定ステップにより前記線分が存在すると判定された場合に、前記変換後の座標値を前記線分上に存在する他の座標値に補正する補正ステップとを含み、
前記他の座標値は、前記軸成分の値が、当該軸上に所定の間隔で並ぶように予め規定された値の一つとなる座標値であって、かつ、当該軸成分の値と、前記変換後の座標値のうちの前記軸成分の値との差が所定値以下となる座標値である、情報処理方法。
A display step of causing the display device to display the three-dimensional shape as a two-dimensional shape by projecting the three-dimensional shape defined in the three-dimensional coordinate system onto the two-dimensional coordinate system;
When designation of a point on the two-dimensional shape is received via the input device, based on the shape data of the three-dimensional shape, the coordinate value of the point on which the designation has been received is calculated as the point on the surface of the three-dimensional shape. A conversion step for converting to a coordinate value in a three-dimensional coordinate system;
Whether the line segment parallel to the axis of the three-dimensional coordinate system and including the point specified by the converted coordinate value exists on the surface of the three-dimensional shape is used as the shape data. A determination step for determining based on;
A correction step of correcting the converted coordinate value to another coordinate value existing on the line segment when it is determined by the determination step that the line segment exists,
The other coordinate value is a coordinate value that is one of predetermined values so that the value of the axis component is arranged at a predetermined interval on the axis, and the value of the axis component, The information processing method which is a coordinate value from which the difference with the value of the said axis component among the coordinate values after conversion becomes below a predetermined value.
請求項6に記載の情報処理方法をコンピュータに実行させるためのプログラム。   A program for causing a computer to execute the information processing method according to claim 6. 請求項7記載のプログラムを記録したコンピュータ読取り可能な記録媒体。   A computer-readable recording medium on which the program according to claim 7 is recorded.
JP2008037705A 2008-02-19 2008-02-19 Information processing apparatus, information processing method, program, and computer-readable recording medium recording the program Expired - Fee Related JP4845054B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008037705A JP4845054B2 (en) 2008-02-19 2008-02-19 Information processing apparatus, information processing method, program, and computer-readable recording medium recording the program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008037705A JP4845054B2 (en) 2008-02-19 2008-02-19 Information processing apparatus, information processing method, program, and computer-readable recording medium recording the program

Publications (2)

Publication Number Publication Date
JP2009199167A JP2009199167A (en) 2009-09-03
JP4845054B2 true JP4845054B2 (en) 2011-12-28

Family

ID=41142622

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008037705A Expired - Fee Related JP4845054B2 (en) 2008-02-19 2008-02-19 Information processing apparatus, information processing method, program, and computer-readable recording medium recording the program

Country Status (1)

Country Link
JP (1) JP4845054B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07113928B2 (en) * 1986-01-16 1995-12-06 株式会社日立製作所 Figure layout display method
JPH10333819A (en) * 1997-05-28 1998-12-18 Nippon Telegr & Teleph Corp <Ntt> Method for inputting three-dimensional position
JP4414643B2 (en) * 2002-10-01 2010-02-10 株式会社ゼンリン Map display device, method for specifying position on map, computer program, and recording medium
JP2007140998A (en) * 2005-11-18 2007-06-07 Ricoh Co Ltd Three-dimensional shape processor, three-dimensional shape processing method, program and storage medium

Also Published As

Publication number Publication date
JP2009199167A (en) 2009-09-03

Similar Documents

Publication Publication Date Title
US20180036883A1 (en) Simulation apparatus, robot control apparatus and robot
WO2019082394A1 (en) Numerical control device
JP4845054B2 (en) Information processing apparatus, information processing method, program, and computer-readable recording medium recording the program
CN111951348B (en) Method and device for determining frame selection area and electronic equipment
CN108507563B (en) Cruise path generation method and device
JP6972800B2 (en) Assembly sequence generator, assembly sequence generator and assembly sequence generator
JP2007240848A (en) Display program, data structure and display device
JP2007066045A (en) Simulation device
JP4364133B2 (en) Local coordinate system determination program
JP7192603B2 (en) Program editing device, program editing method, and program editing program
JP2009301410A (en) Design support system and computer program
JP2005312014A (en) Resolution converting method
TWI656398B (en) Method for calculating pattern correction amount, method for calculating pattern correction amount, and recording medium
JP5290138B2 (en) Mesh changing device, mesh changing method, and program
JP2017126240A (en) Three-dimensional model display system and display method
JPH1031757A (en) Graphic processor and method for calculating shortest distance between elements
JP5277021B2 (en) Design information display program and design information display device
KR102156336B1 (en) Method for reconstructing three-dimensional shape
JP3872469B2 (en) Data processing method and data processing apparatus
JP2004348708A (en) Polygon creation method for geographical information system, and its device
JP6058243B1 (en) Waveform display device, waveform display method, and waveform display program
JP6238839B2 (en) Fillet shape creation device and creation method
JP7262655B2 (en) DIMENSIONING DEVICE, DIMENSIONING METHOD AND PROGRAM
EP1816607A2 (en) Graphics processing apparatus, method and program for constrained manipulation of 3D objects
KR20110129677A (en) Method generating offset curve according to bezier curve

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110829

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111005

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141021

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees