This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2010-247751, filed Nov. 4, 2010, the entire contents of which are incorporated herein by reference.
Embodiments described herein relate generally to a design aiding apparatus, a design aiding method, and a computer program product.
Some types of three-dimensional computer-aided design (CAD) (design aiding apparatuses) are known to be able to specify and change attribute information of a surface of a three-dimensional model of a part.
In such a conventional three-dimensional CAD, when attribute information are to be specified all at once with respect to a plurality of surfaces, a plurality of target surfaces need to be selected. This necessitates the operator to select the surfaces one by one using a mouse or the like, resulting in a heavy operational burden on the operator.
A general architecture that implements the various features of the invention will now be described with reference to the drawings. The drawings and the associated descriptions are provided to illustrate embodiments of the invention and not to limit the scope of the invention.
In general, according to one embodiment, a design aiding apparatus comprises a display controller, a receiving module, and a selecting module. The display controller is configured to display on a display module a three-dimensional part model having a plurality of surfaces defined by a coordinate system defined by three coordinate axes that are perpendicular to one another. The receiving module is configured to receive an operation designating one of the coordinate axes as a designated coordinate axis. The selecting module is configured to select surfaces corresponding to the designated coordinate axis from the surfaces based on corresponding axis identification information that identifies a surface corresponding to each of the coordinate axes.
Exemplary embodiments will be described in detail below with reference to the accompanying drawings.
As illustrated in
The design aiding apparatus 10 comprises a display module 11, an input module 12, a controller 13, and a storage module 14.
The display module 11 may be, for example, a liquid crystal display (LCD) for displaying text, images, etc., and displays a three-dimensional part model M (see
The input module 12 includes an input device such as a keyboard and a mouse, and is used for inputting various types of information in response to the operation of an operator.
The controller 13 may be a computer, and comprises a central processing unit (CPU) that centrally controls various operations and each of the modules of the design aiding apparatus 10, a read only memory (ROM) that stores various computer programs and various types of data, a random access memory (RAM) that temporarily stores various computer programs and stores various types of data in a rewritable manner, and a communication interface (all not illustrated). The display module 11, the input module 12, and the storage module 14 are connected to the CPU in the controller 13, which enables the controller 13 to control each of the modules. The communication interface in the controller 13 is connected to the database 100 in a communicative manner.
In the controller 13, the CPU executes a computer programs stored in a storage unit such as the ROM to implement functional modules as illustrated in
The storage module 14 is a storage device such as a hard disk drive (HDD), and stores computer programs and various types of data for causing the CPU in the controller 13 to operate.
Referring back to
Among various processes performed by the CPU in the controller 13 according to the computer programs, a process including a surface selecting process will now be described. By performing this process, the CPU in the controller 13 implements the functional modules of the display controller 21, the receiving module 22, the selecting module 23, and the attribute setting module 24 illustrated in
The display controller 21 causes the display module 11 to display a three-dimensional part model M as illustrated in
The three-dimensional part model M is defined by a coordinate system defined by three coordinate axes that are perpendicular to one another. Therefore, a plurality of surfaces F of the three-dimensional part model M are defined using the coordinate system defined by the three coordinate axes that are perpendicular to one another. A three-dimensional part model M1 illustrated in
The receiving module 22 receives an operation designating one of the three coordinate axes of the three-dimensional part model M as a designated coordinate axis. This designating operation is an operation performed on the input module 12. The receiving module 22 recognizes that the input module 12 has been operated, and receives the selecting operation. At this time, the input module 12 designates one of the X axis indicator 51, the Y axis indicator 52, and the Z axis indicator 53 in response to the specifying operation.
The selecting module 23 selects one or more surfaces F corresponding to the designated coordinate axis from the surfaces F on the three-dimensional part model M based on corresponding axis identification information for identifying a coordinate axis (the X axis, the Y axis, or the Z axis) corresponding to each surface F on the three-dimensional part model M.
The corresponding axis identification information comprises angles between the normal line of a surface F on the three-dimensional part model M and the respective coordinate axes (the X axis, the Y axis, and the Z axis). The selecting module 23 selects a surface F having a normal line thereof forming an angle within a specified range including 90 degrees with the designated coordinate axis. An example of the specified range of angles is 80 degrees to 100 degrees. In this manner, according to the embodiment, the selecting module 23 can select a surface F located around each of the axes (the X axis, the Y axis, and the Z axis). For example, in the three-dimensional part model M1 illustrated in
At this time, the display module 11 displays a surface group information window D1 presenting information about the surfaces F as a pop-up window. In the surface group information window D1, a continuous surface group information section D1a presenting information about a continuous surface group G is displayed for each continuous surface group G. A continuous surface group G comprises a plurality of continuous surfaces F among those selected from the surfaces F of the three-dimensional part model M by the selecting module 23. In this example, the three-dimensional part model M1 comprises a first continuous surface group G1 and a second continuous surface group G2 as continuous surface groups G. The continuous surface group information section D1a comprises an identification information section D1b indicating identification (ID) information of the surfaces F included in the continuous surface group G, an attribute information section D1c indicating the attribute information (additional information) of the continuous surface group G, and a button section D1d. In this embodiment, the attribute information of the continuous surface group G is tolerable distance information specifying a tolerable distance between a surface F included in the continuous surface group G and another part. The tolerable distance information specifies the maximum tolerable distance (upper limit) that is the maximum distance tolerated as a distance between the surface F and another part, and the minimum tolerable distance (lower limit) that is the minimum distance tolerated as a distance between the surface F and another part. The tolerable distance information corresponds to a specified condition. The tolerable distance information is stored in the database 100 in association with the three-dimensional part model M in a rewritable manner. The button section D1d has buttons “Select”, “Edit”, “Delete”, “OK”, “Reset”, and “Cancel”. In
When there are a plurality of continuous surface groups G comprising continuous surfaces F among those selected from the surfaces F of the three-dimensional part model M, the selecting module 23 receives an operation specifying one of the continuous surface groups G as a selection-to-be-cancelled surface group, and cancels the selection of the surfaces F included in the selection-to-be-cancelled surface group. More specifically, when a check box D1e in the continuous surface group information section D1a is unchecked by an operation of the input module 12, the selecting module 23 cancels the selection of the surfaces F included in the continuous surface group G having the check box D1e unchecked. In this case, the unchecking operation of the check box D1e performed with the input module 12 corresponds to the operation of specifying one of the continuous surface groups G as a selection-to-be-cancelled surface group.
The selecting module 23 receives a change instructing operation instructing to make a change on the selection of the surfaces F of the three-dimensional part model M, and changes the selection of the surfaces F of the three-dimensional part model M based on the change instructing operation. More specifically, when the “Select” button is selected by the operation of the input module 12 while the check box D1e is checked, an edit window D2 (
The edit window D2 illustrated in
The attribute setting module 24 sets an attribute of a continuous surface group G containing the continuous surfaces F among those selected by the selecting module 23. More specifically, when an input is made to the attribute information section D1c in the surface group information window D1 illustrated in
A sequence of a surface setting process will be described with reference to
If a coordinate axis is designated through the input module 12 (Yes at S2), the receiving module 22 receives the specifying operation, and the selecting module 23 extracts and selects the surfaces F corresponding to the coordinate axis (S3). The selecting module 23 then waits for an instruction for changing the selection of the surfaces, an instruction for changing an attribute of a continuous surface group G, or an instruction for ending the surface selecting process (No at S4, No at S6, and No at S8). If an instruction for changing the selection of the surfaces is entered through the input module 12 (Yes at S4), the selecting module 23 changes the selection of surfaces (S5). If an instruction for changing an attribute of the continuous surface group G is made with the input module 12 (Yes at S6), the attribute setting module 24 changes the attribute of the continuous surface group G based on the instructed change (S7).
If the “OK” button on the surface group information window D1 is selected with the input module 12 (Yes at S8), the controller 13 returns to S2. In this manner, an attribute setting can be repeatedly performed for a plurality of continuous surface groups G.
Besides, if another process is instructed through a predetermined operation (Yes at S9), the controller 13 performs the other process (S10).
A clearance checking process executed by the CPU in the controller 13 according to the computer program will now be explained.
In the clearance checking process, the CPU in the controller 13 implements the functional modules of the display controller 21, the first identifying module 25, the detector 26, and the second identifying module 27 illustrated in
The first identifying module 25 identifies a three-dimensional part model M with respect to which clearance checking is to be performed (clearance-to-be-checked three-dimensional part model M). For example, if one three-dimensional part model M21 of the two three-dimensional part models M21 and M3 displayed on the display module 11 (
The three-dimensional part model M21 illustrated in
The detector 26 calculates the distance between the clearance-to-be-checked three-dimensional part model M2 and the other three-dimensional part model M3 located near the clearance-to-be-checked three-dimensional part model M2, and detects a surface that does not satisfy a specified condition about the distance between the surface and the other three-dimensional part model from a plurality of surfaces on the clearance-to-be-checked three-dimensional part model M. More specifically, the detector 26 calculates the distance between the clearance-to-be-checked three-dimensional part model M2 and the three-dimensional part model M3 located near the clearance-to-be-checked three-dimensional part model M2 using the form data and the plotting data of the three-dimensional part models M2 and M3. The specified condition for the distance between a plurality of surfaces of the clearance-to-be-checked three-dimensional part model M and the other three-dimensional part model is the tolerable distance information, as mentioned earlier. It is assumed here that the clearance-to-be-checked three-dimensional part model M2 according to the embodiment, such as the three-dimensional part model M21 illustrated in
When the detector 26 detects a plurality of surfaces, the second identifying module 27 identifies one of these surfaces located nearest to the other three-dimensional part model M3 as an error surface. When the detector 26 detects a plurality of surfaces and there are a plurality of surfaces located nearest to the other three-dimensional part model M3, the second identifying module 27 identifies a surface with the most connections with the other surfaces as the error surface. In the example of
At this time, the display controller 21 causes the display module 11 to display that, among the surfaces detected by the detector 26, only the error surface (the bottom surface 21a) does not satisfy the specified condition about the distance between the surface and the other three-dimensional part model M3. For example, the display controller 21 displays the bottom surface 21a in the highlighted manner, as illustrated in
At this time, as other examples of the clearance-to-be-checked three-dimensional part model M2, an example of three-dimensional part model M22 (the second clearance-to-be-checked model) illustrated in
The three-dimensional part model M22 illustrated in
The three-dimensional part model M23 illustrated in
When the detector 26 detects a plurality of surfaces and there are a plurality of surfaces that are located nearest to the other three-dimensional part model M3 and are symmetrical in shape, the second identifying module 27 determines one of the symmetric surfaces as the error surface. For example, a three-dimensional part model M24 (the forth clearance-to-be-checked model) illustrated in
When the detector 26 detects a plurality of surfaces and there are a plurality of surfaces that are located nearest to the other three-dimensional part model M3, and when such surfaces have the same shape, the second identifying module 27 identifies one of such surfaces as the error surface. For example, a three-dimensional part model M25 (the fifth clearance-to-be-checked model) illustrated in
A sequence of the clearance checking process will now be described with reference to
As described above, according to the embodiment, when the receiving module 22 receives an operation designating one of the three coordinate axes of the three-dimensional part model M as the designated coordinate axis, the selecting module 23 selects the surfaces F corresponding to the designated coordinate axis from a plurality of surfaces F of the three-dimensional part model M. Therefore, the operator can simply perform an operation of specifying one of the axes using the input module 12 to have the surfaces F corresponding to the axis selected automatically. Therefore, the operation burden of the operator can be reduced.
Moreover, in the clearance checking process according to the embodiment, the pseudo error surfaces are excluded and the error surface is identified. Thus, the results of clearance checks (defective portions) that the operator has to confirm are reduced. As a result, the burden of the operator can be reduced.
In this manner, according to the embodiment, the operation burden of the operator can be reduced.
A computer program can be executed on a computer to realize the same function as the design aiding apparatus 10 of the embodiment. The computer program may be provided as being stored in a computer-readable recording medium, such as a compact disk read-only memory (CD-ROM), a flexible disk (FD), a compact disk recordable (CD-R), and a digital versatile disk (DVD), as a file in an installable or an executable format.
The computer program may also be stored in a computer connected via a network such as the Internet and downloaded therefrom via the network. Further, the computer program may be provided or distributed over a network such as the Internet.
The various modules of the systems described herein can be implemented as software applications, hardware and/or software modules, or components on one or more computers, such as servers. While the various modules are illustrated separately, they may share some or all of the same underlying logic or code.
While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel embodiments described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.
| Number | Date | Country | Kind |
|---|---|---|---|
| 2010-247751 | Nov 2010 | JP | national |