Design review support system and method for design models
Patent Information
- Application Number
- JP2026062218
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2026-04-05
- Publication Date
- 2026-09-09
- Estimated Expiration
- 2046-04-05
AI Technical Summary
【0007】 本発明によれば、設計モデル(三次元モデルおよび二次元図面を含む)の幾何解析結果に基づき、設計リスクの理由を説明する自然言語の応答と当該リスク箇所の視覚的な明示とを設計モデルの表示空間内で統合して提示できるため、設計上の不具合の見落としを効果的に抑制できる。また、従来の解析ツールでは困難であった解析結果と設計上の助言との断絶を解消し、対話形式による直感的な理解を促進することで、若手技術者への技能伝承や設計レビューの工数削減が可能となる。これにより、設計品質の標準化と開発リードタイムの短縮を実現し、製造プロセス全体における経済的合理性を高めるという優れた効果を奏する。
Smart Images

Figure 0007917960000001_ABST
Abstract
Description
[[Technical Field]]
[0001] The present invention relates to a system, a method, and a program for supporting interactive design review based on geometric analysis results of design models (including three-dimensional models and two-dimensional drawings). [[Background Art]]
[0002] In design reviews in the manufacturing industry, techniques for analyzing geometric features such as wall thickness and draft of a design model and visualizing the results with a heat map or the like are used. For example, attempts have been made to identify specific shape elements in response to user input, such as the natural language interface for three-dimensional CAD described in Patent Document 1. However, conventional analysis methods do not have a sufficient mechanism for presenting specific reasons and improvement measures in natural language for locations where defects are detected, while displaying the description content and precise positional coordinates on the design model in two-way synchronization. For this reason, it is difficult to quickly reflect analysis results in design judgments, and there is a problem that interpretation of analysis results tends to depend on individual engineers, particularly in the identification of design risks that require advanced specialized knowledge. [[Prior Art Documents]] [[Patent Documents]]
[0003] [[Patent Document 1]] US 9,613,020 B1 [[Summary of the Invention]] [[Problem to be Solved by the Invention]]
[0004] Conventional design model design reviews rely on visual inspection to check for geometric risks such as insufficient wall thickness or abrupt changes in cross-section, making them prone to oversight. While the technology described in Patent Document 1 allows for voice input for part searching, it cannot explain the results of geometric analysis in a format that directly relates to design decisions. Since the analysis results are shown only as numerical values and color coding, there is a problem in that the reasons for the problems cannot be intuitively grasped. Similar problems are common in design reviews based on two-dimensional drawings, where it is difficult for designers to intuitively grasp the results of dimensional checks and tolerance analyses.
[0005] This invention provides a mechanism for embedding positional information obtained through geometric analysis into natural language response information and reprojecting it as a visual marker onto a design model. The design model includes both a three-dimensional model and two-dimensional drawings. This integrates analysis results and design advice within the display space of the design model, enabling designers to interactively understand the reasons and locations of risks. The central objective is to eliminate the disconnect between analysis results and design decisions and efficiently support advanced design reviews. [Means for solving the problem]
[0006] This invention performs geometric analysis on acquired design model data (three-dimensional model data or two-dimensional drawing data) to generate geometric analysis information and reference information (three-dimensional reference information or two-dimensional reference information). Based on contextual information including these and user input questions, it generates natural language response information with embedded markers specifying the reference information, and superimposes visual markers onto the positions corresponding to the markers extracted from the response information. In this way, by creating a closed loop that presents the evaluation results from geometric analysis in conjunction with natural language explanations and positional specifications of the design model in the display space, the disconnect between analysis results and design issues is eliminated, enabling interactive understanding of the reasons and locations of design risks. [Effects of the Invention]
[0007] According to the present invention, based on the geometric analysis results of a design model (including a three-dimensional model and two-dimensional drawings), a natural language response explaining the reasons for design risks and a visual indication of the risk location can be integrated and presented within the display space of the design model, thereby effectively suppressing the oversight of design defects. Furthermore, it eliminates the disconnect between analysis results and design advice, which was difficult with conventional analysis tools, and promotes intuitive understanding through an interactive format, enabling skill transfer to younger engineers and reducing the man-hours required for design reviews. This results in the standardization of design quality, a reduction in development lead time, and excellent effects such as improving the economic rationality of the entire manufacturing process. [Brief explanation of the drawing]
[0008] [Figure 1] A document showing an example of the overall configuration of the system according to this embodiment. [Figure 2] This is a block diagram showing an example of a hardware configuration for a design review support device. [Figure 3] This is a flowchart showing the overall procedure of the design model design review support process according to this embodiment. [Figure 4] This is an explanatory diagram illustrating an example of changing the display format of visual markers according to the type of geometric analysis information and the degree of risk. [Figure 5] This figure shows an example of a user interface screen where visual markers are superimposed on a design model. [Figure 6] This is a conceptual diagram showing the data structure of response information with embedded markers and the corresponding three-dimensional reference information. [Figure 7] This is a schematic diagram illustrating the process of extracting analysis information when a user specifies a particular point on a design model. [Figure 8] This is a sequence diagram illustrating the parallel execution of tasks and priority control based on time budget by the analysis and control unit. [Figure 9] This flowchart shows the steps involved in searching for past failure cases and including them in the response information. [Figure 10]It is a perspective view showing a process of extracting an interference region between a plurality of bodies and setting it as three-dimensional reference information. MODE FOR CARRYING OUT THE INVENTION
[0009] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[0010] FIG. 1 shows the overall configuration of a design review support system 10 according to an embodiment of the present invention.
[0011] The system according to the present embodiment is the design review support system 10. The design review support system 10 has, for example, a hardware configuration as shown in FIG. 2.
[0012] The design review support system 10 is a system for supporting design review of a design model 510.
[0013] The design review support system 10 supports design and development processes in the manufacturing industry.
[0014] The design review support system 10 assists design engineers in the work of checking design risks of the design model 510.
[0015] The design review support system 10 provides a user interface screen 500, which is an interactive review environment based on design model data (see FIG. 5).
[0016] FIG. 1 is a block diagram showing an example of the overall configuration of the design review support system 10.
[0017] The design review support system 10 includes an acquisition unit 100.
[0018] The acquisition unit 100 executes an acquisition step S300 of acquiring target design model data (see FIG. 3). At this time, the acquisition unit 100 can extract an interference region 1010 between a plurality of bodies 1000 (see FIG. 10).
[0019] The design review support system 10 includes an analysis unit 110. The analysis unit 110 processes a task 800 related to geometric analysis under the control of an analysis control unit 140 (see FIG. 8).
[0020] The analysis unit 110 has a function of executing an analysis step S310 for performing geometric analysis on design model data.
[0021] The analysis unit 110 generates geometric analysis information including evaluation results based on geometric feature quantities. A display control unit 130 changes a display mode 420 of a visual marker 400 according to the type of geometric analysis information and a risk level 410 (see FIG. 4).
[0022] The analysis unit 110 generates reference information 620 corresponding to the geometric analysis information.
[0023] The design review support system 10 includes a response generation unit 120.
[0024] The response generation unit 120 has a function of executing a response generation step S320 for generating natural language response information 600.
[0025] The response generation unit 120 acquires context information including the geometric analysis information and the reference information 620.
[0026] The response generation unit 120 acquires question input data from a user. The user can input a question by specifying a specific point 700 on a design model 510 (see FIG. 7).
[0027] The response generation unit 120 generates the response information 600 while searching a defect case database 900 based on the context information and the question input from the user (see FIG. 9).
[0028] A marker 610 for specifying the reference information 620 is embedded in the generated response information 600 (see FIG. 6).
[0029] The design review support system 10 includes a display control unit 130 (see Figure 1).
[0030] The display control unit 130 has the function of extracting the marker 610 from the response information 600.
[0031] The display control unit 130 has the function of superimposing the visual marker 400 at the position corresponding to the marker 610 on the design model 510 (see Figures 4 and 5).
[0032] The design review support system 10 functions by coordinating the acquisition unit 100, the analysis unit 110, the response generation unit 120, and the display control unit 130.
[0033] The design review support system 10 may be connected to an external terminal via a communication network.
[0034] The design review support system 10 may be built as a cloud system implemented on a cloud server.
[0035] The design review support system 10 may be built as a server device deployed in an on-premise environment.
[0036] The design review support system 10 may be implemented as a plug-in to a computer-aided design tool that creates the design model 510.
[0037] The design model 510 acquired by the acquisition unit 100 is data created by a design engineer.
[0038] The acquisition unit 100 accepts the design model 510 as input.
[0039] The design model 510 received by the acquisition unit 100 is handed over to the analysis unit 110.
[0040] The analysis unit 110 processes the design model 510 handed over from the acquisition unit 100.
[0041] The analysis unit 110 analyzes the internal structure of the design model 510.
[0042] The geometric analysis information and reference information 620 generated by the analysis unit 110 are provided to the response generation unit 120.
[0043] The response generation unit 120 performs text generation processing using the provided geometric analysis information and reference information 620.
[0044] The response information 600 generated by the response generation unit 120 is provided to the display control unit 130 (see Figure 6).
[0045] The display control unit 130 analyzes the response information 600 and generates control data for visual display.
[0046] In this way, the design review support system 10 forms a series of data processing pipelines (see Figure 3).
[0047] Figure 2 shows an example of the hardware configuration of the design review support system 10.
[0048] Figure 2 is a hardware block diagram of the computer that makes up the design review support system 10.
[0049] The design review support system 10 is implemented by at least one computer.
[0050] The design review support system 10 includes a processor, as shown in Figure 2.
[0051] A processor is a central processing unit that performs various arithmetic and control processes.
[0052] The design review support system 10 is equipped with memory 210 as a storage device.
[0053] Memory 210 is a main memory unit that includes random access memory for temporarily storing programs executed by the processor and various data.
[0054] The design review support system 10 is equipped with storage 220.
[0055] Storage 220 is an auxiliary storage device that permanently stores various data and programs.
[0056] Storage 220 consists of hard disk drives or solid-state drives, etc.
[0057] The design review support system 10 is equipped with an input / output interface 230.
[0058] The input / output interface 230 is an interface for sending and receiving data with external devices and networks.
[0059] The processor is communicated via a bus to the memory 210, storage 220, and input / output interface 230.
[0060] Storage 220 stores a program for functioning as the design review support system 10.
[0061] The processor reads the program from storage 220 into memory 210, loads it, and then executes it.
[0062] The processor executes a program, thereby realizing the functions of each component shown in Figure 1.
[0063] In other words, the functions of the acquisition unit 100 are realized using the processor and memory 210.
[0064] The processing of the acquisition unit 100 is performed by the processor acquiring data according to the program's instructions and storing it in the memory 210.
[0065] The functions of the analysis unit 110 are realized using the CPU and memory 210, as shown in Figure 2.
[0066] The analysis unit 110 performs its processing by having the CPU read the design model 510 from memory 210 and perform geometric calculations.
[0067] The functions of the response generation unit 120 are realized using the CPU and memory 210.
[0068] The processing of the response generation unit 120 is performed by the CPU executing natural language processing based on context information in memory 210.
[0069] The functions of the display control unit 130 are realized using the CPU and memory 210.
[0070] The display control unit 130 performs its processing by having the CPU extract data from the response information 600 on the memory 210 and generate control signals for display.
[0071] A CPU may consist of one processor core or multiple processor cores.
[0072] In addition to the CPU, a processor specialized for image processing may also be used.
[0073] In addition to the CPU, a computing unit specifically designed for artificial intelligence inference processing may also be used.
[0074] Memory 210 enables high-speed memory access by the CPU.
[0075] Memory 210 stores the design model 510 in the process of being processed, as well as intermediate data from the geometric analysis.
[0076] Memory 210 stores the generated geometric analysis information and reference information 620.
[0077] Memory 210 holds context information, user question input, and generated response information 600.
[0078] Memory 210 stores the extraction results of marker 610 and the display data for visual marker 400.
[0079] As shown in Figure 2, past design models 510 may be stored in storage 220.
[0080] Storage 220 may store historical information from past design reviews.
[0081] The input / output interface 230 receives data from the user's terminal device via the communication network.
[0082] The data received by the input / output interface 230 includes design model data and question input text data sent from the user's terminal device.
[0083] The input / output interface 230 transmits data to the user's terminal device via the communication network.
[0084] The data transmitted by the input / output interface 230 includes the generated response information 600 (see Figure 6) and display control data for the visual marker 400 (see Figure 4).
[0085] Figure 1 is a block diagram showing an example of the overall configuration of the design review support system 10 according to this embodiment.
[0086] The design review support system 10 may consist of a single computer device, or it may be configured as a distributed processing system in which multiple computer devices work together.
[0087] In the case of a distributed processing system, the acquisition unit 100, analysis unit 110, response generation unit 120, display control unit 130, and analysis control unit 140 (see Figure 8) may be located on different servers.
[0088] Figure 2 is a block diagram showing an example of the hardware configuration of a computer device that implements the design review support system 10.
[0089] Each server is equipped with 200 CPUs and 210 memory units, and a similar configuration can be used even in a distributed processing system.
[0090] For the sake of clarity, the following explanation assumes that the design review support system 10 operates as a single logical system.
[0091] The design review support method for the design model is executed through the collaboration of the hardware and software that constitute the design review support system 10.
[0092] Figure 3 is a flowchart showing the flow of the design model design review support process performed by the design review support system 10.
[0093] The flowchart shown in Figure 3 represents each step of a computer-based design review support method for a design model, and this method includes control of the user interface screen 500 (see Figure 5) by the display control unit 130.
[0094] The design review support method includes an acquisition step S300 and an analysis step S310 (see Figures 7, 9, and 10). The analysis step S310 may include an analysis information extraction process 720 for the vicinity region 710 of a specific point 700, a search step S910 using a defect case database 900, and the extraction of interference regions 1010 between bodies 1000.
[0095] The design review support method includes a response generation step S320 and a display control step S330.
[0096] As shown in Figures 1 and 3, in acquisition step S300, the acquisition unit 100 of the design review support system 10 acquires design model data.
[0097] In acquisition step S300, data of the design model to be reviewed is entered into the design review support system 10.
[0098] In acquisition step S300, the acquisition of design model data is triggered by the user uploading a file on their terminal.
[0099] The user specifies the design model data file via a web browser.
[0100] The specified file is sent to the design review support system 10 via the input / output interface 230 shown in Figure 2.
[0101] The acquisition unit 100 stores the received design model data in memory 210 or storage 220.
[0102] The design model data acquired in acquisition step S300 may be in a general-purpose computer-aided design data format.
[0103] The data acquired in acquisition step S300 may include boundary representation data that represents the shape of the part.
[0104] The data acquired in acquisition step S300 may include data representing the shape of the part as a polygonal mesh.
[0105] The acquisition unit 100 may perform a format conversion of the acquired design model data in the acquisition step S300.
[0106] Format conversion transforms the design model data into a format suitable for display in a web browser.
[0107] Through format conversion, the design model data is converted into a mesh data format suitable for geometric analysis.
[0108] The format conversion process is performed by the acquisition unit 100.
[0109] During the format conversion process, the source data and destination data are held in memory 210.
[0110] Design model data may sometimes be assembly data consisting of multiple parts.
[0111] In the case of assembly data, the acquisition unit 100 may perform a process to select the data of the main components to be targeted.
[0112] The acquisition unit 100 may evaluate the number of polygons or vertices in the design model data.
[0113] If the number of polygons exceeds a predetermined threshold, the acquisition unit 100 may perform a process to simplify the data.
[0114] The data simplification process is performed by the acquisition unit 100 executing a polygon reduction algorithm using the memory 210.
[0115] Simplifying the data reduces the load on subsequent geometric analysis processes.
[0116] This makes it easier to complete the processing from analysis step S310 onward within a limited time.
[0117] Once the acquisition step S300 is completed, the process moves on to the analysis step S310 (see Figure 3).
[0118] In analysis step S310, the design review support system 10 (see Figure 1) performs geometric analysis on the design model data.
[0119] The analysis step S310 is performed by the analysis unit 110.
[0120] In the analysis step S310, the processor performs various calculations by referring to the design model data (see design model 510) that has been loaded into memory 210 (see Figure 2).
[0121] The analysis unit 110 performs calculations to extract the geometric features of the design model data.
[0122] The analysis unit 110 evaluates areas that could pose design risks based on their geometric characteristics.
[0123] As a result of the evaluation, geometric analysis information is generated that includes evaluation results based on geometric features.
[0124] Geometric analysis information includes numerical data about the shape and judgment results indicating whether or not there are problems.
[0125] Furthermore, in analysis step S310, the analysis unit 110 generates reference information 620 corresponding to the geometric analysis information.
[0126] Reference information 620 is information used to spatially indicate the position on the shape identified by geometric analysis.
[0127] Reference information 620 has a data structure that can identify a specific location or region in three-dimensional space (see Figure 6).
[0128] By generating reference information 620, the analysis results are linked not merely to numbers or strings, but to specific locations on the design model 510.
[0129] The analysis unit 110 stores the generated geometric analysis information and reference information 620 in the memory 210.
[0130] The geometric analysis in analysis step S310 may be performed not only using a single analysis method, but also by combining multiple different analysis methods.
[0131] When multiple analysis methods are used, separate reference information 620 may be generated for each analysis result.
[0132] The processing in analysis step S310 may be performed as a pre-calculation before the user inputs a question.
[0133] Alternatively, the processing in analysis step S310 may be performed dynamically after receiving a question input from the user.
[0134] In this embodiment, an example is taken in which, immediately after the completion of the acquisition step S300, the analysis step S310 is executed and the results are stored in the memory 210.
[0135] Once the analysis step S310 is completed, the process moves on to the response generation step S320 (see Figure 3).
[0136] In response generation step S320, the design review support system 10 generates natural language response information 600.
[0137] The response generation step S320 is performed by the response generation unit 120 (see Figure 1).
[0138] The processing of the response generation step S320 is triggered when a question input from the user is received.
[0139] User input questions are received via the input / output interface 230 (see Figure 2).
[0140] The question input is stored in memory 210 as text data.
[0141] The response generation unit 120 reads the question input from the memory 210.
[0142] Furthermore, the response generation unit 120 reads geometric analysis information and reference information 620 from the memory 210.
[0143] The response generation unit 120 configures the read geometric analysis information and reference information 620 as context information.
[0144] Contextual information is used as background knowledge to generate answers to questions.
[0145] Contextual information is composed of structured text or markup.
[0146] The response generation unit 120 combines contextual information and the user's question input to use as input data for language generation.
[0147] The response generation unit 120 uses the CPU to perform inference processing on a large-scale language model (hereinafter also simply referred to as "language model" or "LLM").
[0148] As a result of the inference process, a natural language answer to the question is generated.
[0149] The generated response may include references to specific parts of design model 510.
[0150] The response generation unit 120 embeds markers 610 that specify the corresponding reference information 620 at locations in the response text that refer to specific parts.
[0151] Marker 610 is a tag or code inserted into the text of the answer using a specific notation (see Figure 6).
[0152] With the marker 610 embedded, the response information 600 becomes data that integrates natural language text and references to spatial coordinates.
[0153] The embedding of marker 610 may be performed by the language model autonomously outputting it in an appropriate notation.
[0154] Alternatively, the response generation unit 120 may insert the marker 610 later using rule-based processing after text generation.
[0155] The generated response information 600 is temporarily stored in memory 210 (see Figure 2).
[0156] The response generation unit 120 transmits the generated response information 600 to the user's terminal via the input / output interface 230.
[0157] Once the response generation step S320 is completed, the process moves on to the display control step S330 (see Figure 3).
[0158] In the display control step S330, the design review support system 10 extracts the marker 610 from the response information 600 and displays the visual marker 400.
[0159] The display control step S330 is performed by the display control unit 130.
[0160] The display control unit 130 scans the response text 520, which is the text data of the generated response information 600 (see Figure 6).
[0161] The display control unit 130 extracts markers 610, which are written in a predetermined notation, from the response text 520.
[0162] The extraction process is performed by executing string analysis using regular expressions, etc.
[0163] Identification information and coordinate data related to the reference information 620 are read from the extracted marker 610.
[0164] The display control unit 130 determines, based on the data it has read, where on the design model 510 the visual marker 400 should be placed.
[0165] Visual markers 400 are graphic elements used to visually highlight specific locations on the design model 510.
[0166] The visual marker 400 may have the shape of an icon or pin placed in three-dimensional space, and its display form 420 may be changed according to the type of analysis information and the risk level 410 (see Figure 4).
[0167] The display control unit 130 adds placement information for the visual markers 400 to the control data for drawing the design model 510.
[0168] The display control unit 130 sends an instruction to the user's terminal to superimpose the visual marker 400.
[0169] On the user's terminal, a visual marker 400 is drawn on the viewer screen (user interface screen 500) of the design model 510 based on the received instructions (see Figure 5).
[0170] This allows the user to instantly see the specific location indicated by the response on the design model 510 while reading the response text 520.
[0171] The display control process in display control step S330 connects textual explanations with intuitive understanding through three-dimensional shapes.
[0172] The above is an overview of the basic configuration and operation flow of the design review support system 10 (see Figure 1).
[0173] This basic configuration includes an analysis information extraction process 720 based on the designation of specific points 700 (see Figure 7), and parallel execution based on the time budget 810 for task 800 (see Figure 8).
[0174] Furthermore, by searching the defect case database 900 (see Figure 9) and extracting interference regions 1010 between bodies 1000 (see Figure 10), three-dimensional data and natural language dialogue are linked bidirectionally.
[0175] The system outputs the evaluation results of the physical shape in a combination of verbal descriptions and visual positional displays.
[0176] These processes are achieved at high speed by sequentially performing calculations by the CPU 200 and temporarily holding data in the memory 210.
[0177] Each block in Figure 1 corresponds closely to each step in Figure 3.
[0178] The hardware operation of the acquisition unit 100 realizes step S300.
[0179] The hardware operation of the analysis unit 110 realizes the step in S310.
[0180] The hardware operation of the response generation unit 120 realizes the step in S320.
[0181] The hardware operation of the display control unit 130 realizes the step in S330.
[0182] The design review support system 10 achieves its objectives through a combination of these hardware and software functions.
[0183] The design review support system 10 automates the verification process that designers previously performed visually, using digital data.
[0184] The design review support system 10 operates by outputting automated verification results in an interactive format.
[0185] The operation of each part and the processing of each step will be described in more detail below.
[0186] The design review support system 10 handles data for various parts and products as the target design model data.
[0187] Examples of products include molded resin products, processed metal products, and assembled parts.
[0188] Depending on the type of design model data, the content of the geometric analysis performed by the analysis unit 110 is appropriately selected.
[0189] The acquisition unit 100 may determine the type of design model data based on the file name and file extension.
[0190] The judgment result is recorded in memory 210 and used to select the analysis method in the subsequent S310.
[0191] When the acquisition unit 100 reads the design model data into the memory 210, it is preferable to verify the data structure.
[0192] During data structure verification, CPU200 checks whether the file format conforms to the specifications and whether there is any corruption.
[0193] If invalid data is found, the acquisition unit 100 outputs an error and interrupts the process.
[0194] The system ensures stable operation by having only normal data delivered to the analysis unit 110.
[0195] The analysis unit 110 performs numerous spatial calculations on the data of the delivered design model 510 (see Figure 3).
[0196] Spatial calculations include calculating the distance between a point and a surface, determining the intersection of surfaces, and calculating curvature.
[0197] These calculations are processed quickly using the calculation functions in the configuration shown in Figure 2.
[0198] Intermediate data generated during the computation process is stored in the array or tree structure data expanded on memory 210.
[0199] This makes it possible to complete the analysis of even complex shapes in a short amount of time.
[0200] The analysis unit 110 aggregates the calculated numerical data and extracts statistical features.
[0201] Statistical features include maximum value, minimum value, mean, and variance.
[0202] Based on the extracted features, it is determined whether there is a deviation from the design baseline.
[0203] Areas that deviate from the standard values are identified as potential design risks.
[0204] Information about the identified locations is compiled as geometric analysis data.
[0205] Geometric analysis information is represented in a machine-readable data format.
[0206] Simultaneously, the coordinates in three-dimensional space where the identified location exists are calculated.
[0207] The calculated coordinate data is generated as part of the reference information 620 (see Figure 6).
[0208] Reference information 620 is linked to each risk location included in the geometric analysis information on a one-to-one or one-to-many basis.
[0209] The relationships between elements are managed by a database or associative array in memory 210.
[0210] In the processing of the response generation unit 120, this linking relationship plays an important role (see Figure 1).
[0211] The response generation unit 120 analyzes the content of the question input to determine what the user wants to know.
[0212] Based on the determination result, the response generation unit 120 selects appropriate geometric analysis information from the context information.
[0213] The reference information 620 associated with the selected geometric analysis information is also selected simultaneously.
[0214] The response generation unit 120 constructs a sentence based on the selected information.
[0215] A pre-trained natural language processing algorithm is used to construct the text.
[0216] The response generation unit 120 probabilistically generates a sequence of words according to the algorithm (see Figure 2).
[0217] A marker 610 is inserted within the sequence of words as a special string to indicate reference information 620.
[0218] Marker 610 may have unique prefixes and suffixes that distinguish it from ordinary text.
[0219] The marker 610 contains an identifier to identify the associated reference information 620 (see Figure 6).
[0220] This identifier maintains the link between the text data, response text 520, and the spatial data.
[0221] The entire generated text is completed as a single response information item, 600.
[0222] The display control unit 130 receives the completed response information 600 and searches for the prefix and suffix.
[0223] The search process identifies where marker 610 is located within the text.
[0224] The display control unit 130 extracts an identifier from the identified marker 610 and obtains the corresponding reference information 620.
[0225] The display control unit 130 determines the three-dimensional coordinates and display mode 420 of the visual marker 400 based on the acquired reference information 620 (see Figure 4).
[0226] The display control unit 130 generates drawing commands based on the determined three-dimensional coordinates.
[0227] Drawing commands are passed to the viewer on the user's terminal via the input / output interface 230.
[0228] The viewer, in accordance with the drawing command, composites and displays the visual markers 400 at the appropriate positions on the design model 510 (see Figure 5).
[0229] In this case, the response text 520 is also displayed simultaneously on the chat panel or similar on the user interface screen 500.
[0230] The synchronization of the response text 520 and the visual markers 400 enables visual and logical review support.
[0231] As described above, the design review support system 10 seamlessly integrates each stage of the acquisition unit 100, analysis unit 110, response generation unit 120, and display control unit 130 (see Figure 1).
[0232] The flow of information from the acquisition unit 100 to the display control unit 130 functions as a unidirectional pipeline under the control of the analysis control unit 140 (see Figure 8).
[0233] By repeating this pipeline multiple times, it becomes possible to have continuous interaction with the user, including specifying a particular point 700 (see Figure 7).
[0234] Each time the user enters a new question, the response generation step S320 and the display control step S330 are executed again, accompanied by a search of the malfunction case database 900 (see Figure 9) and identification of the interference region 1010 (see Figure 10) (see Figure 3).
[0235] If necessary, additional analysis steps in S310 may be performed for new questions.
[0236] As a result, the design review support system 10 operates as a dynamic interactive system rather than a static report generation tool.
[0237] The responsiveness of the dialogue system is supported by high-speed in-memory processing provided by the CPU200.
[0238] In the hardware configuration of the design review support system 10, it is desirable that the memory capacity 210 be sufficiently large to handle large-scale design model data and large-scale language model inference simultaneously.
[0239] The bandwidth of the input / output interface 230 is also configured to allow for the transmission and reception of large amounts of design model data without delay.
[0240] Storage 220 stores program files for each functional unit that are loaded into memory 210 when the system starts up.
[0241] Thus, the functional configuration shown in Figure 1, the hardware configuration shown in Figure 2, and the processing flow shown in Figure 3 are closely and inseparably linked to one another.
[0242] This connection enables the realization of a design review support system 10 that combines a geometric understanding of the design model with the ability to explain it in natural language.
[0243] Information obtained from design model data is converted into contextual information, used for text generation, and then converted back into a three-dimensional spatial representation.
[0244] This data transformation process constitutes the core technical features of this system.
[0245] The design review support system 10 according to this embodiment provides the basic framework for this process.
[0246] The specific data structures and calculation methods in each part of System 10 can be modified as needed.
[0247] For example, the acquisition unit 100 may include a module that converts design model data in multiple different formats into a unified intermediate format.
[0248] The analysis unit 110 may be configured to execute multiple modularized analysis engines in parallel.
[0249] The response generation unit 120 may include a communication client for calling an external language generation API.
[0250] The display control unit 130 may have a function to generate drawing scripts based on web standard technologies.
[0251] In all implementations, the basic structure remains the same: there are four fundamental functions—acquisition, analysis, response generation, and display control—and corresponding steps.
[0252] They also share the commonality of physically realizing information processing using hardware, specifically CPU200 and memory210.
[0253] This basic configuration offers versatility, making it applicable to a wide range of design fields and uses.
[0254] This concludes the explanation of the basic configuration and operation flow of the design review support system 10.
[0255] These explanations clarify how the design review support system 10 works as a whole, and what hardware resources it uses to operate.
[0256] In the subsequent details of the process, the more specific operating mechanisms of each functional unit will be explained along with the configurations shown in Figures 4 to 10.
[0257] The combination of components described in this block provides a basic means to achieve the objective of supporting the design review of design model 510.
[0258] The overall system architecture disclosed herein is consistent with the drawings in Figures 1, 2, and 3.
[0259] The operation of the design review support system 10 is defined as a series of logical information processing steps.
[0260] Each step from information input to output is reliably supported by calculations involving hardware resources, including access to memory 210.
[0261] This ensures the feasibility and reproducibility of the system, including the visual feedback shown in Figures 4 to 6.
[0262] The above is a detailed explanation of the basic configuration and operation flow of the design review support system 10.
[0263] Throughout the entire process, the roles and collaboration of the acquisition unit 100, analysis unit 110, response generation unit 120, and display control unit 130 were clearly demonstrated.
[0264] Figure 2 shows how these functions are supported by hardware resources such as memory 210, storage 220, and input / output interface 230.
[0265] Furthermore, the sequence of processing steps, including the acquisition step S300, analysis step S310, response generation step S320, and display control step S330, as shown in Figures 3, 9, and 10, was explained as a concrete data flow.
[0266] Based on this basic configuration, the design review support system 10 provides the user with a deep understanding of the design model 510 and intuitive feedback through the user interface screen 500 shown in Figure 5.
[0267] On top of this basic configuration, more advanced analytical information extraction processing 720 and interactive control by the analytical control unit 140 are constructed, as shown in Figures 7 and 8.
[0268] The above outlines the overall design review support system 10 according to this embodiment.
[0269] The implementation of the invention was specifically illustrated through a tripartite description of functional blocks, hardware configuration, and processing flow.
[0270] These components form the technical foundation for improving the work efficiency of design engineers.
[0271] This design review support system 10 plays a central role in promoting the digitalization of the design verification process in the manufacturing industry.
[0272] Each element of the system communicates and receives information from one another to achieve the overall objective.
[0273] The response information 600, which has a data structure like that shown in Figure 6 and is generated at each step, serves as a required input in the next step.
[0274] These data dependencies ensure the reliability of the entire pipeline process.
[0275] As a result, users can obtain visually supported answers to their natural language queries.
[0276] This provides a new form of design review based on design model data.
[0277] Proper management and allocation of hardware resources ensure that this advanced processing can be completed within a practical timeframe.
[0278] The overall system design is optimized to efficiently handle large amounts of computation and complex data transformations.
[0279] This optimized system configuration is the basic structure of this embodiment.
[0280] This concludes the explanation of the basic configuration and operation flow of the design review support system 10.
[0281] In the following sections, advanced functions will be explained sequentially, including the details of geometric analysis (see Figure 4), display control of the user interface screen 500 (see Figure 5), the data structure of response information 600 (see Figure 6), specifying a particular point 700 (see Figure 7), parallel processing of task 800 by the analysis control unit 140 (see Figure 8), searching using the failure case database 900 (see Figure 9), and extraction of interference regions 1010 between bodies 1000 (see Figure 10).
[0282] This explanation of the basic configuration is a prerequisite for understanding their applied functions.
[0283] Clarifying the basic configuration and operation flow makes it possible to understand the overall technical concept of the invention.
[0284] The operation of the design review support system 10 is achieved by faithfully executing each step of the flowchart shown in Figure 3.
[0285] The combination of elements shown in FIG. 1, FIG. 2, and FIG. 3 is an optimal, necessary and sufficient configuration example for implementing the present embodiment.
[0286] This comprehensively describes the operating principle of the design review support system 10 for the design model 510.
[0287] The present description, as part of the patent specification, provides a solid basis for supporting the technical scope.
[0288] The above description covers all elements specified in this block and provides appropriate elaboration thereof.
[0289] The analysis unit 110 performs geometric analysis on the data of the design model 510 acquired by the acquisition unit 100.
[0290] Geometric analysis is a process for performing evaluation based on the physical shape characteristics of the design model 510.
[0291] As a result of the geometric analysis by the analysis unit 110, geometric analysis information including an evaluation result based on geometric feature quantities is generated.
[0292] As an example, this geometric analysis information includes a wall thickness analysis result.
[0293] The geometric analysis information also includes a cross-sectional change analysis result.
[0294] Furthermore, the geometric analysis information includes a draft risk analysis result.
[0295] These analyses may be performed alone or in combination (see FIG. 3).
[0296] The analysis unit 110 selects an appropriate analysis according to the characteristics of the target design model 510.
[0297] Wall thickness analysis is a process that evaluates whether the wall thickness of design model 510 meets the design requirements.
[0298] In the wall thickness analysis, the analysis unit 110 identifies the center point of each surface that constitutes the surface of the design model 510.
[0299] Then, a ray is projected from the identified center point in the direction of the normal vector. To reduce artifacts caused by self-intersection, the ray's starting point may be a point offset by a small distance in the normal direction, rather than the center point of the face itself. As a preferred example, the minute distance ε may be a value obtained by multiplying the minimum dimension of the bounding box by a predetermined magnification (e.g., minimum dimension × 0.001), and a lower limit (e.g., 0.0001 mm) may be set.
[0300] The distance at which the projected ray intersects the opposing surface is measured.
[0301] The measured distance is calculated as the wall thickness at that location. Raycast results may include unusually large distance values resulting from openings or mesh defects in the model. As a suitable example, the influence of outliers may be suppressed by removing values exceeding the 99th percentile of the measured value, for example, based on the statistical data of the wall thickness.
[0302] The analysis unit 110 dynamically adjusts the number of rays to project according to the number of faces and complexity of the design model 510. As a suitable example, the number of rays projected in wall thickness analysis can be adaptively set in the range of, for example, 150 to 500 rays, depending on the number of faces in the design model, the curvature distribution, or the proportion of areas suspected to be thin-walled. For example, 500 rays may be used if the number of faces is less than 100,000, 250 rays if the number is between 100,000 and 300,000, and 150 rays if the number is 300,000 or more, taking into consideration the balance between accuracy and processing time. However, the threshold for the number of faces and the number of rays are not limited to these and can be adjusted according to the type of model and the required accuracy. Furthermore, ray projection is not limited to unidirectional projection. For example, rays may be projected from the center point of a surface in both the normal direction and the reverse normal direction, and the shorter intersection distance to the opposite surface may be adopted as the wall thickness at that position (bidirectional ray casting).
[0303] For example, in regions with large curvature or regions suspected of having thin walls, the ray density is set to be higher.
[0304] This achieves high-precision wall thickness analysis while suppressing computational load.
[0305] The calculated wall thickness data is compared with a preset threshold.
[0306] Regions below the threshold are detected as thin-walled hotspots. When a thin-walled hotspot is detected, as a preferred example, the analysis unit 110 may map the three-dimensional space to a grid divided into 5×5×5 = 125 cells, and group thin-walled points belonging to the same cell into clusters. For each cluster, the centroid coordinates, minimum wall thickness, average wall thickness, number of points, etc. may be calculated, and for example, the top 3 clusters in ascending order of minimum wall thickness may be selected as hotspots. The centroid coordinates of the selected hotspots are used as coordinate values in the reference information 620, and can be displayed as the visual marker 400 on a viewer via the marker 610 in the response information 600.
[0307] The coordinates and wall thickness values of the detected thin-walled hotspots are recorded as part of the geometric analysis information.
[0308] Next, cross-sectional change analysis will be described.
[0309] Cross-sectional change analysis is a process for evaluating changes in cross-sectional area along a specific axis of the design model 510.
[0310] The analysis unit 110 slices the design model 510 with a plurality of planes along an arbitrary axis.
[0311] For example, multiple slice cross-sections are generated for each of the three orthogonal axes. As a preferred example, the analysis unit 110 generates eight slice cross-sections at equal intervals along the X, Y, and Z axes of the bounding box of the design model 510. In this case, since the vicinity of the end faces at both ends may become noise, the slice positions may be placed within an effective range (L × 0.90) obtained by subtracting a margin of 5% (L × 0.05) from each end of the total length L of each axis.
[0312] For each generated slice cross-section, calculate the cross-sectional area.
[0313] Then, the cross-sectional areas of two adjacent slice sections (Si and Si+1) are compared, and the area change rate is calculated. A suitable example is the rate of change of area, |Cross-sectional area of Si+1 - Cross-sectional area of Si| / Cross-sectional area of max(Si,Si+1) It can be defined as follows. Locations where the rate of area change exceeds a predetermined standard value (e.g., 30%) may be detected as points of interest.
[0314] Identify locations where the calculated rate of area change exceeds a predetermined standard value. Furthermore, the baseline value for the area change rate can be set arbitrarily; for example, points of interest may be extracted where the area change rate between adjacent sections exceeds 30%. The coordinates of the point of interest may, as a preferred example, be defined as the midpoint of two adjacent slices (e.g., the average of the axial coordinates). Alternatively, the top three points of interest for each axis, ordered by the rate of change in area, may be reported as points of interest, and the coordinates of these points of interest may be included as reference information 620 in the marker 610 within the response information 600.
[0315] These areas are identified as points of interest with a high risk of stress concentration through analysis information extraction process 720 (see Figure 7).
[0316] The extracted coordinate and rate of change data of the points of interest are included as geometric analysis information in the reference information 620 contained in the response information 600 (see Figure 6).
[0317] Next, we will explain the draft risk analysis in analysis step S310 in Figure 3.
[0318] Draft risk analysis is a process that evaluates the risk associated with the drafting direction during the molding process.
[0319] The analysis unit 110 of the design review support system 10 (see Figures 1 and 2) sets a reference extraction direction vector for the design model 510 (see Figure 5).
[0320] The dot product of the set extraction direction vector and the normal vectors of each face of the design model 510 is calculated.
[0321] Based on the calculated dot product value, the risk of each surface is determined, and a risk score of 410 is calculated as shown in Figure 4. For example, surfaces where the dot product is below a predetermined negative threshold (e.g., -0.3 or less) have a large component in the opposite direction to the punching direction and are detected as candidates for undercuts.
[0322] Furthermore, surfaces whose dot product is near zero (for example, whose absolute value is below a predetermined threshold) have a normal that is approximately perpendicular to the cutting direction and can be detected as a candidate for a parting line.
[0323] Furthermore, surfaces whose dot product is greater than the negative threshold and less than 0 have a component opposite to the punching direction and can be detected as candidates for negative draft. Note that each of the thresholds can be adjusted according to the target part, mold structure, required accuracy, etc.
[0324] The analysis unit 110 groups the areas where risk exists by spatially clustering the detected candidate surfaces.
[0325] The representative coordinates and risk levels of the grouped regions are recorded as geometric analysis information and used for searching the failure case database 900 (see Figure 9), etc.
[0326] Furthermore, the analysis unit 110, under the control of the analysis control unit 140 (see Figure 8), performs analysis not only on single parts but also on assemblies consisting of multiple parts.
[0327] Specifically, as shown in Figure 10, interference regions 1010 between multiple bodies 1000 included in the data of the design model 510 are extracted and set as reference information 620.
[0328] The analysis unit 110 analyzes the relative positional relationships of multiple bodies 1000 arranged in three-dimensional space.
[0329] Intersection detection is performed between the surface meshes of each of the 1000 bodies.
[0330] The region where an intersection is detected is identified as an interference region 1010 where the bodies 1000 physically overlap.
[0331] The spatial extent and volume of the interference region 1010 are calculated.
[0332] Additionally, a process is performed to measure the minimum clearance between 1000 units of the body.
[0333] Areas that fall below the set allowable clearance are identified as high-risk areas due to excessive proximity.
[0334] The extracted interference region 1010 and clearance deficiency location data are retained as part of the geometric analysis information (see Figure 10).
[0335] This makes it possible to identify in advance the risks of physical interference and malfunctions during assembly.
[0336] Next, we will explain how to generate reference information 620 corresponding to geometric analysis information.
[0337] The analysis unit 110 links the evaluation results obtained from the geometric analysis to a specific location on the design model 510 (see Figure 6).
[0338] The data generated for this linking is reference information 620.
[0339] Reference information 620 takes various forms to specify the spatial location and extent on the design model 510.
[0340] Three-dimensional coordinates are used as the primary form of representation.
[0341] For example, the coordinates of a representative point of a identified thin-walled hotspot are set as reference information 620.
[0342] Three-dimensional coordinates can not only indicate a specific point (700), but can also represent a region as the vertex coordinates of a bounding box.
[0343] As a second form of representation, surface identifiers are used.
[0344] Each face that makes up design model 510 is assigned a unique face identifier.
[0345] The analysis unit 110 uses this surface identifier as reference information 620 to identify the surface where the risk was detected.
[0346] By using surface identifiers, objects can be identified based on their geometric topology, regardless of the coordinate system.
[0347] As a third form of representation, element identifiers are used.
[0348] This applies when design model 510 is mesh data used in methods such as the finite element method.
[0349] The element identifier assigned to the specific mesh element in which a risk was detected is recorded.
[0350] A fourth representation format is the use of voxel region identifiers.
[0351] The analysis unit 110 divides the three-dimensional space into multiple voxels.
[0352] Identify the set of voxels that contain the spatial region where risk exists.
[0353] The identified voxel identifiers are set as reference information 620 (see Figures 6 and 10).
[0354] By using voxel region identifiers, regions with complex shapes can be represented using a simple data structure.
[0355] From these diverse representation formats, the most suitable format is selected depending on the type and purpose of the analysis.
[0356] The reference information 620 in the selected representation format is stored in association with the corresponding geometric analysis information.
[0357] Next, we will explain the contextualization of geometric analysis information and the assignment of confidence levels.
[0358] The analysis unit 110 integrates the generated geometric analysis information and reference information 620.
[0359] The integrated data is converted into contextual information, a format suitable for subsequent natural language processing.
[0360] Contextual information is a structured text representation of the geometric features of design model 510.
[0361] For example, this includes the overall dimensions of design model 510, the presence or absence of risk in each analysis item, and the degree of risk.
[0362] Furthermore, the analysis unit 110 calculates the reliability of the geometric analysis for the design model 510 data.
[0363] Confidence level is an indicator of how accurate the analysis results are.
[0364] The quality of the input design model 510 data affects the calculation of reliability.
[0365] For example, if there are inconsistencies in the mesh data, such as holes, the confidence level will be calculated to be low.
[0366] The reliability also decreases if there are many extremely elongated degenerate surfaces.
[0367] The analysis unit 110 scores the reliability of each analysis task 800 based on these quality indicators (see Figure 8). A confidence status may be assigned to the results of each analysis task. As a good example, "valid" indicates that the analysis was completed successfully and the results are reliable, "degraded" indicates that the analysis was completed but has limitations in accuracy, and "skipped" indicates that the analysis was not performed. The reliability status, along with the reason for degradation, can be included in the contextual information.
[0368] The scored reliability is categorized into statuses such as valid, degraded, and skipped.
[0369] The valid status indicates that the analysis has completed successfully and the results are sufficiently reliable.
[0370] The degradation status indicates that the analysis is complete, but there are concerns about accuracy due to the quality of the input data.
[0371] The skip status indicates that the analysis could not be performed due to data deficiencies.
[0372] The confidence level calculated in this way is included in the context information.
[0373] The response generation unit 120 receives this context information (see response generation step S320 in Figure 3).
[0374] The contextual information includes both quantitative data and qualitative status information for the geometric analysis.
[0375] The response generation unit 120 generates response information 600 based on the user's question input and contextual information.
[0376] The user input consists of natural language text asking about design concerns and details of the analysis results.
[0377] The response generation unit 120 analyzes the intent of the question and derives an appropriate answer from the contextual information.
[0378] In this process, the response is generated by considering the confidence level information included in the contextual information.
[0379] For example, suppose the question concerns an analysis item whose reliability is in a degraded status.
[0380] The response generation unit 120 includes a warning regarding the accuracy of the analysis in its response.
[0381] Explain in natural language that the data may contain errors due to its low quality.
[0382] Additionally, if the status is skipped, the system will explain the reason and generate a response prompting for data correction.
[0383] This allows users to proceed with design reviews while understanding the limitations of the analysis results.
[0384] Figure 6 shows the data structure of response information 600 with marker 610 embedded and the corresponding reference information 620.
[0385] The response generation unit 120 embeds specific information in the process of generating a response text 520 in natural language.
[0386] This embedded information is marker 610.
[0387] The marker 610 plays a role in linking a specific context within the response text 520 to its location on the design model 510.
[0388] The response generation unit 120 refers to the context information and obtains reference information 620 corresponding to the risk location to be mentioned.
[0389] A marker 610 is generated as a formatted string to specify the acquired reference information 620.
[0390] Marker 610 is inserted inline into the response text 520.
[0391] For example, marker 610 is placed immediately after the sentence, "There is a thin-walled section near the bottom of this part."
[0392] The data structure of marker 610 is defined in a format that can be easily extracted using regular expressions, etc. (see Figure 6).
[0393] The data structure includes a value that indicates reference information 620 as a specific element.
[0394] When three-dimensional coordinates are used, they include numerical values for the X, Y, and Z coordinates.
[0395] When a surface identifier is used, it includes a unique ID string.
[0396] When indicating an interference region 1010, the identifiers of multiple bodies 1000 are included (see Figure 10).
[0397] Furthermore, the data structure of marker 610 includes label information for display.
[0398] Label information consists of short texts intended to inform the user, such as "thinnest point" or "point of abrupt change in cross-section."
[0399] Furthermore, the marker 610 includes type information indicating the type and severity of the risk. As a preferred example, the marker 610 is represented as a formatted string concatenating at least coordinate values, label information, and type information with a delimiter. For example, when using three-dimensional coordinates, marker 610 is, [point:X,Y,Z:Label:Type] The format may be as follows: where X, Y, and Z are coordinate values, the label is a short string to be presented to the user, and the type is an identifier indicating the type of risk. Examples of types include "info," "warning," and "error," which may correspond to information, warning, and critical, respectively. Of course, the vocabulary and number of levels for each type are not limited to these and may be added or changed depending on the application. When dealing with two-dimensional design models such as two-dimensional drawings, the same syntax rules are applied according to the number of dimensions. [point:X,Y:label:type] Two-dimensional coordinates can be used as shown above.
[0400] Information is categorized into stages such as simple information provision, warnings, and critical errors.
[0401] The response generation unit 120 combines these elements according to predetermined syntax rules to construct the marker 610.
[0402] The response information 600, including the constructed marker 610, is output to the subsequent processing module.
[0403] By adopting this data structure, machine-readable location information can be transmitted without losing the context of natural language.
[0404] The process of extracting the marker 610 from the response information 600 is performed by a predetermined parser.
[0405] The parser scans the entire response text 520 and identifies strings that match the defined syntax rules. The extraction process by the display control unit 130 can be performed, for example, by using a regular expression to extract substrings that match the format, and then separating the coordinate values, labels, and types from the extraction results.
[0406] From the identified string, the reference information 620, label information, type information, etc., are separated individually.
[0407] The separated data is stored in memory 210 as an array of structured objects.
[0408] This completes the conversion from the text-based response information 600 to a data format that is easy for the program to handle.
[0409] The extracted marker 610 data is used for visual representation on the design model 510.
[0410] If syntax errors or unknown formats are detected during the extraction process, appropriate error handling will be performed.
[0411] Invalid marker 610 is either ignored or the user is notified with an error message.
[0412] Only valid markers 610 are processed according to the specifications in reference information 620.
[0413] For example, consider the case where the extracted reference information 620 indicates the coordinates of the interference region 1010 (see Figure 10).
[0414] Using this coordinate data, the spatial position of the corresponding body 1000 is determined.
[0415] Based on the identified location information, preparations are made for viewpoint movement and highlighting on the user interface screen 500 (see Figure 5).
[0416] Furthermore, in generating context information, the analysis unit 110 may apply prohibition rules. These prohibition rules are intended to prevent non-existent coordinates or incorrect surface identifiers from being included in the context information.
[0417] Natural language generation models may infer and output reference information that is not explicitly stated within the context. Therefore, in this embodiment, a multi-layered defense may be applied to suppress hallucinations related to reference information. A suitable example of multi-layered defense includes the following four layers: Layer 1: Prompt constraints (controlled by response generation unit 120) Layer 2: Context coordinate limitation (controlled by analysis unit 110) Third layer: Generation parameter control (control by response generation unit 120) Layer 4: Client-side verification (control by display control unit 130) As the first layer, the response generation unit 120 may explicitly specify the following rules in the system prompt, for example. • Use only coordinate values explicitly stated within the context. Do not output coordinates based on estimations. If there is no basis for the coordinates, please answer using only text and without highlighting. • Set a limit on the number of markers per response (e.g., a maximum of 3). As a second layer, the analysis unit 110 may explicitly include a "list of available coordinates" in the context information. Only coordinates included in this list may be considered as potential markers. As a third layer, the response generation unit 120 may set a parameter (e.g., temperature) that adjusts the randomness of generation to a lower level to suppress speculative output. A suitable example would be a setting of 0.5 for a design review (normally) and 0.4 for modes requiring strict comparative descriptions. As a fourth layer, the display control unit 130 may perform numerical verification (e.g., exclusion of coordinates containing NaN or Infinity), duplicate removal, and upper limit control (e.g., a maximum of 5 per response) on the extracted markers 610, and display only the verified markers as visual markers 400.
[0418] The analysis unit 110 creates a list of known reference information 620 that were actually detected by geometric analysis.
[0419] Contextual information should include only the 620 reference entries included in this list.
[0420] When the response generation unit 120 generates the marker 610, it is also constrained to use only the values in this list. The response generation unit 120 may include a constraint statement in the input data for the language model, for example, "The coordinate values that may be used for markers are limited to those explicitly listed in the known coordinate list in the context information." Furthermore, if the coordinate values of the marker 610 included in the response text 520 are not included in the known coordinate list, the response generation unit 120 or the display control unit 130 may invalidate and exclude the marker, or trigger its regeneration.
[0421] This suppresses the occurrence of inconsistencies that would point to a fictitious location that does not exist in the design model 510.
[0422] This prevents the output of misinformation during the natural language generation process and enhances the reliability of design reviews.
[0423] Furthermore, the response information 600 may be generated in stages (see Figure 6).
[0424] For example, the results of analysis items with low computational load are contextualized in order, and a response is generated.
[0425] Subsequently, once the computationally intensive analysis is complete, additional response information 600 is generated.
[0426] In this way, response information 600, including markers 610, is output sequentially as the analysis progresses.
[0427] The response generation unit 120 can also generate a single response information 600 by associating multiple analysis results.
[0428] For example, we can explain this by combining a section of wall with a section where the cross-section changes abruptly in the vicinity.
[0429] This naturally points out that these multiple factors are working together to increase the risk.
[0430] In this case, multiple markers 610 corresponding to each factor may be embedded in the response text 520, and the display format 420 may be changed according to the risk level 410, etc. (see Figure 4).
[0431] This makes it possible to clearly present complex design risks that might be overlooked when analyzing only a single item.
[0432] Marker 610 can be embedded not only at the end of a sentence, but also at any appropriate location within the text.
[0433] For example, in a context like, "The distance between the hole at coordinate A and the edge at coordinate B is too short."
[0434] In this case, the first marker 610 is embedded immediately after the word related to the hole.
[0435] A second marker, 610, is embedded immediately after the word related to edge.
[0436] This placement of markers 610, closely tied to the context, makes it clear which explanation refers to which section.
[0437] The data structure of response information 600 also supports a format that is transmitted sequentially as a text stream. This is useful when a large-scale language model generates responses and outputs data sequentially. The response information 600 may be sent, for example, by a server-to-client streaming method (e.g., Server-Sent Events (SSE)).
[0438] As a preferred example, the response generation unit 120 may sequentially deliver the response text 520 in chunks using the Server-Sent Events (SSE) method. For example, each chunk can be represented in JSON format, containing a type indicating its type and data indicating its content. As an example of a chunk, data: {"type":"content","data":"The thinnest part of this component is..."} Events like the following are sent sequentially, and when the response is complete, data: {"type":"completed","mode":"cad",...} You may also send a completion event like this. For SSE connections, you may use, for example, the following headers. ·Content-Type: text / event-stream • Cache-Control: no-cache Connection: keep-alive
[0439] While receiving the stream data, the partially completed marker 610 is sequentially parsed and processed. The client side (including the display control unit 130) may buffer the incoming stream and start displaying the visual marker 400 by sequentially parsing it when the syntax of the marker 610 is partially complete. The display control unit 130 may sequentially parse the marker syntax for the received text (cumulative), and if the marker is incomplete, it may not update the display. It may only confirm the new marker and display the visual marker 400 when the marker syntax is complete. Additionally, while parsing is performed for each received chunk, if no new markers are detected, the viewer's redraw can be skipped to reduce the rendering load.
[0440] This allows information to be displayed on the design model in advance, without having to wait for a long response to complete.
[0441] This improves the immediacy of responses and enables a smoother, more interactive design review experience.
[0442] In the execution of geometric analysis, mesh simplification algorithms may be applied.
[0443] The analysis unit 110 reduces the processing load when the number of polygons in the acquired design model data is enormous.
[0444] The polygon count is reduced within the specified tolerance range.
[0445] Using simplified mesh data, wall thickness analysis and draft risk analysis are performed.
[0446] In this process, the impact of minute changes in shape due to simplification on the analysis results is evaluated.
[0447] If the impact is deemed significant, this fact will be recorded in the context information as confidence level information.
[0448] The response generation unit 120 includes in the response information 600 the possibility of errors resulting from analysis using a simplified model.
[0449] Reference information 620 is also calculated as coordinates on the simplified model.
[0450] This process involves reprojecting these coordinates onto the original high-resolution design model data.
[0451] Reprojection corrects any discrepancies in the location information presented to the user.
[0452] Thus, the configuration and procedure shown in Figures 1 to 3 achieve both efficient analysis and maintenance of positional accuracy.
[0453] In interference region extraction, as shown in Figure 10, the mesh resolution also affects the results.
[0454] The analysis unit 110 locally subdivides the mesh near the boundaries between the bodies 1000.
[0455] This allows for a more precise identification of the boundary of the interference region 1010.
[0456] The identified and precise boundary data is converted into reference information 620, which has a data structure as shown in Figure 6, as element identifiers and voxel region identifiers.
[0457] If the amount of data to be embedded in marker 610 becomes enormous, data compression or pass-by-reference is used.
[0458] For example, a large number of coordinates indicating a complex interference region 1010 are recorded in marker 610 as identifiers for a separate file.
[0459] By obtaining detailed data based on that identifier on the display processing side, the data size of response information 600 is prevented from becoming excessively large.
[0460] As described above, the entire process from the execution of geometric analysis (see Figure 8) to the generation of response information 600 is controlled in an integrated manner.
[0461] The analysis results and natural language are strongly linked via reference information 620.
[0462] As shown in Figures 5 and 9, combining display control and reference to past examples forms the foundation for advanced interactive design review support.
[0463] The geometric analysis information may include the calculation results of the centroid position to be displayed according to the risk level of 410, as shown in Figure 4.
[0464] The analysis unit 110 calculates the three-dimensional coordinates of the centroid based on the volume distribution of the design model 510.
[0465] The calculated centroid coordinates are added to the context information as reference information 620.
[0466] Additionally, the extreme coordinates of the bounding box are calculated.
[0467] The maximum and minimum vertex coordinates are extracted for each of the X, Y, and Z axes.
[0468] These extreme coordinates also serve as reference information 620 to describe the dimensions and arrangement of the entire model.
[0469] The response generation unit 120 refers to these when generating responses such as "The total width of this part is XX millimeters."
[0470] Embed markers 610 indicating both ends of the corresponding dimension line into the response text 520.
[0471] Furthermore, as shown in the analysis information extraction process 720 in Figure 7, analysis is also performed to detect specific geometric features such as holes and cylinders.
[0472] The analysis unit 110 calculates the discrete curvature of the mesh data and identifies the elements that constitute the cylindrical surface.
[0473] Circle fitting is performed on the identified set of elements to calculate the central axis and radius.
[0474] These feature details are recorded as reference information 620, which includes surface identifiers and center point coordinates.
[0475] The response generation unit 120 uses this information to answer questions regarding the position and diameter of holes.
[0476] Response information 600 is generated, which includes a marker 610 that points to a specific hole.
[0477] In draft risk analysis, the direction of withdrawal is not necessarily singular.
[0478] The analysis unit 110 performs analysis assuming a lateral extraction direction by the slide core, in addition to the primary extraction direction.
[0479] For each of the multiple extraction directions, a risk assessment is performed based on the dot product of the normals.
[0480] Undercut candidates and negative draft candidates are independently extracted for each draft direction.
[0481] This information is integrated as geometric analysis information, along with vector information indicating the extraction direction.
[0482] The response generation unit 120 refers to the relevant data when the user asks, "What are the risks in the sliding direction?"
[0483] A marker 610 is generated using reference information 620 related to the extraction direction from the side.
[0484] In wall thickness analysis, not only the distance to the opposing surface but also the gradient of thickness change is calculated.
[0485] Areas where the thickness changes abruptly are prone to molding defects such as shrinkage and warping.
[0486] The analysis unit 110 identifies the region where the gradient of this thickness change exceeds a threshold.
[0487] A representative point of the identified gradient anomaly region is set as reference information 620.
[0488] Contextual information includes data on the gradient of change, in addition to the absolute value of the thickness.
[0489] The response generation unit 120 generates text that points out these areas as potential locations for molding defects.
[0490] The corresponding marker 610 is embedded in the response information 600 along with the type of warning information.
[0491] In cross-sectional change analysis, the axial direction of slicing can sometimes be arbitrarily specified by the user.
[0492] The analysis unit 110 generates slice cross-sections along a specified oblique axis as shown in Figure 10 and calculates the change in area (see analysis step S310 in Figures 1, 2, and 3).
[0493] Locations of abrupt changes in cross-section in unusual directions are also extracted without fail and converted into reference information 620, similar to the analysis information extraction process 720 in Figure 7.
[0494] Interference region extraction may be performed considering not only the assembly state as shown in Figure 10, but also the motion trajectory of the movable parts.
[0495] As shown in Figure 10, a sweep volume is generated as the body 1000 moves along a defined trajectory, and intersection detection with other stationary bodies 1000 is performed.
[0496] This extracts the region 1010 that does not interfere when stationary but interferes when in operation.
[0497] Similarly, the interference region 1010 during operation is also converted into reference information 620 and contextualized.
[0498] The response generation unit 120 embeds the marker 610 in the context of "interference occurs when the part is rotated" (see Figures 4 and 5).
[0499] The type information within marker 610 identifies this as an operational risk.
[0500] The confidence level calculated by the analysis unit 110 can be not just a numerical value, but can also have factor categories (see Task 800 processing in Figure 8).
[0501] For example, factors such as "insufficient mesh resolution," "presence of non-manifold edges," and "incomplete surface data" can be cited.
[0502] The context information includes this factor category along with the confidence status.
[0503] The response generation unit 120 interprets this factor category through a search step S910 (see Figure 9) and other steps that search the defect case database 900, and generates specific improvement suggestions.
[0504] The response was something like, "The mesh is coarse, so it's possible that tiny undercuts are being overlooked."
[0505] In this way, assigning reliability levels enables interactive design support that goes beyond mere error display.
[0506] The voxel region identifier, as a representation of reference information 620, can have a hierarchical structure, as shown in Figure 6.
[0507] The space is divided into coarse voxels, and only the voxels containing risk are further subdivided.
[0508] This octvine structure allows for efficient representation of even vast interference regions of 10¹⁰ as a set of identifiers.
[0509] Marker 610 contains a route identifier and depth information that indicate this hierarchical structure.
[0510] This makes it possible to specify a region with the required precision while reducing the amount of data transferred.
[0511] The format of response information 600 can include not only plain text but also markup languages and JSON format (see Figures 1 and 6).
[0512] Within the design review support system 10 (see Figure 2), the text portion and the list of structured markers 610 may be managed separately.
[0513] In this case, parsing processing on the display frontend becomes easier, and the operation becomes more stable.
[0514] Furthermore, marker 610 may also be associated with a case ID from the past defect case database 900 (see Figure 9).
[0515] This is the ID of a past case that matches a similar risk shape extracted through geometric analysis.
[0516] This ID is embedded in marker 610 as an extended attribute.
[0517] Response text 520 includes phrases such as, "Please refer to countermeasures taken in similar past cases."
[0518] Reference information 620 and past knowledge are seamlessly combined using marker 610 as a hub.
[0519] This data structure and processing flow (see Figures 3 and 8) enables a high level of coordination from the execution of geometric analysis to the generation of response information.
[0520] Figure 5 shows an example of a user interface screen 500 in which a visual marker 400 (see Figure 4) is superimposed on the design model 510.
[0521] The display control unit 130 controls the display of the user interface screen 500 based on the generated response information 600.
[0522] The user interface screen 500 provides an integrated work environment for conducting design reviews.
[0523] This user interface screen 500 includes an area for drawing the target design model 510 (see Figure 10).
[0524] Furthermore, the user interface screen 500 includes an area for displaying response text 520 that shows the history of interactions with the user.
[0525] The display control unit 130 arranges the design model 510 and the response text 520 side by side within the same user interface screen 500.
[0526] This allows the user to simultaneously view the shape of the design model 510 and the response text 520 in natural language.
[0527] The layout of the user interface screen 500 is configured to be dynamically changed in response to user actions.
[0528] For example, the display area of the design model 510 can be enlarged, and the display area of the response text 520 can be reduced.
[0529] Conversely, it is also possible to enlarge the display area of the response text 520 and reduce the display area of the design model 510.
[0530] The display control unit 130 analyzes the location information contained in the response text 520 (see Figure 7).
[0531] Based on the analyzed location information, the display control unit 130 of the design review support system 10 (see Figures 1 and 2) identifies the corresponding location on the design model 510.
[0532] Visual markers 400 are superimposed on the identified locations (see Figure 5).
[0533] A visual marker 400 is a graphic element used to indicate a specific coordinate in three-dimensional space.
[0534] The superimposition of visual markers 400 visually highlights the specific location referred to in the response text 520.
[0535] As the user reads the response text 520, they can also intuitively grasp the problem areas on the design model 510 through the visual markers 400.
[0536] The display area of the design model 510 accepts changes in viewpoint through user input operations, including rotation, scaling, and translation, and the display control unit 130 updates the drawing of the design model 510 in real time in response to the viewpoint change operation.
[0537] The visual marker 400 fully follows the changes in viewpoint of the design model 510, and as the design model 510 rotates, the visual marker 400 also moves across the screen while maintaining the same relative position in three-dimensional space.
[0538] If the viewpoint is such that the visual marker 400 is hidden behind the design model 510, the display control unit 130 can notify the user of the presence of the visual marker 400, which is not directly visible from the current viewpoint, by either drawing the visual marker 400 semi-transparently or by drawing only the outline of the visual marker 400 hidden behind the design model 510 with a dashed line (see Figure 4).
[0539] The display area for response text 520 is configured as a chat-style interface.
[0540] This area displays the natural language questions entered by the user and the system's response text 520 in chronological order (see Figure 6).
[0541] The user can input any questions in natural language via an input form, including the specification of specific points 700 related to the design model 510 (see Figure 7).
[0542] For example, if a user enters a question about the thickness of a particular part, the system will interpret the intent behind that question.
[0543] Then, based on the analysis results obtained from the processing in analysis step S310 (see Figure 3), an appropriate response text 520 is generated and displayed on the user interface screen 500.
[0544] The display control unit 130 provides visual feedback in response to natural language question input (see Figure 8).
[0545] While the system is processing the question, the user interface screen 500 displays indicators that processing is in progress, such as searching the defect case database 900 (see Figure 9) or extracting interference areas 1010 (see Figure 10).
[0546] As the response text 520 is generated, an animation is played in which the corresponding visual marker 400 appears on the design model 510 (see Figures 1 and 3).
[0547] This visual feedback clearly communicates to the user that the design review support system 10 has understood the question and identified the relevant area.
[0548] In the user interface screen 500 shown in Figure 5, the design model 510 and the response text 520 are closely linked.
[0549] As shown in Figure 6, specific sentences or words within the response text 520 are highlighted and associated with visual markers 400.
[0550] When the user hovers the mouse pointer over a highlighted portion in the response text 520, the corresponding visual marker 400 on the design model 510 is highlighted.
[0551] One method of highlighting is to temporarily enlarge the size of the visual marker 400.
[0552] Additionally, it is possible to attract attention by displaying a ripple-like effect around the visual marker 400.
[0553] Conversely, the collaboration also works when the user hovers the mouse pointer over a specific visual marker 400 on the design model 510 (see Figure 7).
[0554] In this case, the display control unit 130 highlights the corresponding portion of the response text 520 and automatically scrolls the text to display the relevant section if necessary (see Figure 8).
[0555] This bidirectional collaboration allows for quick verification of the correspondence between the analysis results and their positions in three-dimensional space (see Figure 10).
[0556] If multiple visual markers 400 are displayed simultaneously, the display control unit 130 assigns an identification number to each of them.
[0557] By displaying the same identification number within the response text 520, it becomes clear which text corresponds to which marker 610.
[0558] A feature may be provided that automatically moves the camera viewpoint of the design model 510 when the user clicks on the response text 520.
[0559] This automatic camera viewpoint shift ensures that the corresponding visual marker 400 is displayed in the center of the screen at the optimal zoom level.
[0560] During automatic viewpoint movement, the display control unit 130 performs smooth interpolation calculations utilizing the hardware configuration shown in Figure 2 to prevent the user from losing track of spatial positional relationships.
[0561] If the response text 520 is long, it may include references to different visual markers 400 across multiple paragraphs.
[0562] The display control unit 130 highlights only the relevant visual markers 400 based on the paragraph that the user is presumed to be currently reading.
[0563] The user's reading position is estimated based on the screen scroll position and the mouse pointer position.
[0564] This prevents the information from becoming cluttered, even when there are a large number of visual markers 400 on the screen (see Figure 9).
[0565] Figure 4 is an explanatory diagram showing an example of changing the display form 420 of the visual marker 400 according to the type of geometric analysis information and the degree of risk 410.
[0566] The geometric analysis information includes information that indicates various design risks arising from the shape of design model 510.
[0567] As information indicating the degree of risk, a risk level of 410 is associated with each piece of geometric analysis information.
[0568] Risk level 410 is classified into multiple stages, such as informational, warning, and critical.
[0569] The display control unit 130 acquires the analyzed risk level 410 and dynamically changes the display mode 420 of the visual marker 400 according to the acquired risk level 410, as shown in Figure 4.
[0570] The change in display format 420 is made to allow users to intuitively recognize the severity of the risk.
[0571] One of the elements used to modify the display format 420 is the color of the visual marker 400.
[0572] For example, if the risk level 410 represents simply low information, the display control unit 130 displays the visual marker 400 in blue.
[0573] If a risk level of 410 indicates a moderate warning, the display control unit 130 displays the visual marker 400 in yellow.
[0574] When a risk level of 410 indicates a serious malfunction with a high risk level, the display control unit 130 displays the visual marker 400 in red on the user interface screen 500 as shown in Figure 5.
[0575] This change in color display format 420 allows users to quickly identify high-priority areas that need correction.
[0576] The display control unit 130 may take into consideration the diversity of color vision and may combine not only color changes but also differences in brightness and saturation.
[0577] As an element of changing the display format 420, changing the shape of the visual marker 400 is also an effective method.
[0578] For an information level risk of 410, a visual marker of 400 is displayed as a circular pin.
[0579] For a risk level of 410 (warning level), a visual marker of 400 is displayed as a triangular icon.
[0580] For a critical risk level of 410, a visual marker 400 is displayed, consisting of an octagonal icon or a shape including an exclamation mark.
[0581] Changing the display format 420 based on shape enables universal information transmission that does not depend solely on color.
[0582] The display control unit 130 may change the symbols drawn inside the visual marker 400 depending on the type of analysis.
[0583] For example, a symbol resembling a ruler is displayed on the visual marker 400 that indicates thin-walled areas based on wall thickness analysis.
[0584] Visual markers 400, which indicate undercut areas based on draft risk analysis, display arrow symbols indicating the mold's punching direction.
[0585] As shown in Figure 4, the visual marker 400, which indicates the risk of stress concentration based on cross-sectional change analysis, displays a lightning bolt symbol.
[0586] Thus, a variety of display formats 420 are defined by the combination of the risk level 410 and the type of analysis.
[0587] Animation effects can be used as a dynamic change to display mode 420.
[0588] For visual markers 400 with a critical risk level of 410, the display control unit 130 applies a flashing animation.
[0589] By shortening the flashing cycle, it is possible to emphasize that the risk is of a higher urgency.
[0590] On the other hand, the visual marker 400, which has an information level risk of 410, is displayed in a stationary state.
[0591] Additionally, at a moderate warning level, an animation may be applied that causes the visual marker 400 to slowly float up and down.
[0592] By changing the display format 420 in this way, the user's gaze can be effectively guided.
[0593] The size of the visual marker 400 is also used as a modification element for the display format 420 based on the risk level 410.
[0594] The higher the risk level (410), the larger the base size of the visual marker (400) should be set.
[0595] The large-displayed visual marker 400 is easily visible even on the reduced-size design model 510.
[0596] The display control unit 130 appropriately scales the size of the visual marker 400 according to the zoom magnification of the camera.
[0597] However, scaling calculations are performed in such a way that the relative magnitudes based on the risk level of 410 are maintained.
[0598] By adjusting the transparency of the visual marker 400, it is also possible to balance it with the visibility of the design model 510.
[0599] If the risk level 410 is low, increase the transparency so that the shape of the background design model 510 is visible through it.
[0600] If the risk level 410 is high, increase the opacity and make the visual marker 400 itself stand out clearly.
[0601] The rules for changing display format 420 may be customizable according to user settings.
[0602] Users can configure the system to preferentially assign a higher risk level of 410 to specific types of geometric analysis information.
[0603] This makes it possible to create a review environment specifically tailored to a particular manufacturing process.
[0604] As shown in Figure 5, the user interface screen 500 can include a legend area that shows the definition of the current display mode 420.
[0605] By checking the legend area, even first-time users of the system can accurately understand the meaning of display format 420 (see Figure 4).
[0606] Within the response text 520, an icon matching the display format 420 of the visual marker 400 is displayed inline.
[0607] For example, a flashing red icon might be placed next to the text, "This section contains a significant risk."
[0608] This allows for a stronger connection between the visual elements on design model 510 and natural language text.
[0609] Figure 7 is a schematic diagram showing the analysis information extraction process 720 when a user specifies a particular point 700 on the design model 510.
[0610] The user interface screen 500 (see Figure 5) not only displays responses from the system but also accepts interactive specification of specific points 700 by the user.
[0611] The user can click anywhere on the surface of the design model 510 using a pointing device via the input / output interface 230 (see Figure 2).
[0612] The clicked coordinates are acquired by the system as a specific point, 700.
[0613] The selection of a specific point (point 700) is done by left-clicking the mouse or tapping on a touch panel.
[0614] The display control unit 130 displays a temporary marker 610 at the coordinate position of a specific point 700 the moment the user specifies that point.
[0615] The temporary marker 610 serves as visual feedback to the user, indicating that their actions have been correctly recognized.
[0616] Users can input questions using natural language while specifying a particular point, 700.
[0617] For example, after clicking on a specific point 700, a question such as "Is the thickness of this part sufficient?" is submitted via a text input form.
[0618] The design review support system 10 starts processing by linking the input natural language with the spatial coordinates of 700 specified points (see Figure 6).
[0619] In this way, by combining natural language question input with the specification of specific points 700, it becomes possible to communicate intentions in an extremely intuitive manner.
[0620] The method for specifying a particular point (700) is not limited to a single click.
[0621] The user may specify a series of specific points 700 in order to draw a line on the surface of the design model 510 by dragging the mouse.
[0622] Alternatively, you can use rectangular or circular selection tools to specify a particular area on a surface to be enclosed.
[0623] When a specific point 700 is specified by the user, the design review support system 10 (see Figure 1) executes an analysis information extraction process 720 under the control of the analysis control unit 140 (see Figure 8).
[0624] The analysis information extraction process 720 is a process that narrows down the necessary information from the results of the prior geometric analysis of the entire design model 510 (see Figures 3, 9, and 10).
[0625] In the design review support system 10 shown in Figure 1, meaningful geometric analysis information may not be obtainable using only the coordinates of a specific point 700.
[0626] Therefore, as shown in Figure 7, in the analysis information extraction process 720, a neighboring region 710 centered on a specific point 700 is defined.
[0627] The neighboring region 710 is defined as a region within a certain distance range from a specific point 700 in three-dimensional space.
[0628] For example, a spherical space centered at a specific point 700 and having a predetermined radius is treated as the neighboring region 710.
[0629] The radius of the neighboring region 710 may be dynamically adjusted according to the overall size of the design model 510 and the user's zoom level.
[0630] If the user is zooming in to examine details, the radius of the neighboring area 710 is set smaller to extract more localized information.
[0631] When the user zooms out to view the entire image, the radius of the neighboring area (710 pixels) is increased to extract a wider range of surrounding information.
[0632] The definition of the neighboring region 710 is not limited to methods based on simple spatial distance.
[0633] Based on the mesh and topological structure of the design model 510, the neighboring region 710 can also be determined by traversing continuous surfaces.
[0634] It is also possible to detect the boundary edge of the surface to which a specific point 700 belongs and control the entire surface as a neighboring region 710.
[0635] This allows for the complete extraction of analytical information for the entire specific feature intended by the user.
[0636] The analysis information extraction process 720 searches for all data points of geometric analysis results that exist within the determined neighboring region 710.
[0637] For searching, data structures such as spatial index trees are used to achieve high-speed extraction.
[0638] The extracted geometric analysis information is used as context to generate answers to user questions regarding a specific point, 700.
[0639] For example, the minimum wall thickness value can be identified from the results of a wall thickness analysis within the neighboring region 710.
[0640] The identified minimum wall thickness value is passed to the natural language model as the basis data for generating the response text 520.
[0641] Furthermore, if the neighboring region 710 contains areas with a high draft risk, information about those areas will also be extracted.
[0642] The information extracted by the analysis information extraction process 720 may not be limited to a single event, but may be a combination of multiple analysis results.
[0643] After the extraction process is complete, the generated response text 520 is displayed on the user interface screen 500 (see Figure 5).
[0644] Response text 520 includes a statement such as, "Areas with a thickness below the specified value were detected around the specified point."
[0645] At the same time, the display control unit 130 superimposes a new visual marker 400 onto the specific problem area detected within the nearby region 710.
[0646] The visual marker 400 displayed at this time also has its display format 420 changed according to the extracted risk level 410.
[0647] The user can explore the system's analysis results locally and in detail, starting from a specific point 700 that they have designated.
[0648] The range of the neighboring region 710 itself may be displayed on the user interface screen 500 as a semi-transparent sphere or a colored area.
[0649] Visualizing the neighboring region 710 allows users to see the range of data the system considered when generating its response.
[0650] In some cases, there may be no particular geometric risks within the neighboring region 710 of a specific point 700.
[0651] In that case, the analysis information extraction process 720 returns a result indicating that no risk exists.
[0652] The system generates response text 520 stating, "No significant design risks were found in the specified area."
[0653] Feedback from such safety checks is also important information in design reviews.
[0654] By repeatedly specifying 700 particular points and asking questions, users can successively verify areas of interest in the design model 510.
[0655] The interactive point specification function can also be used to search for shapes similar to past failure cases.
[0656] Geometric features are extracted from the neighboring region 710 of a specific point 700 and used as a trigger to recall similar past cases.
[0657] Users operate the system by combining intuitive operation on the design model 510 with the flexible expressive power of natural language.
[0658] Analysis operations that previously required proficiency with conventional command-based CAD tools can now be easily performed through an interactive interface.
[0659] The display control unit 130 can also simultaneously acquire the normal vector when the user specifies a particular point 700.
[0660] By providing the acquired normal vector to the analysis information extraction process 720, the validity of the extraction direction can be evaluated more accurately.
[0661] The history of specific points (700) is saved within the system, allowing you to return to the previous specified position at any time during a session.
[0662] The user interface screen 500 may be configured to display a list of previously specified points 700 in a side panel.
[0663] The analysis information extraction process 720 related to a specific point 700 is executed in parallel on the system's backend.
[0664] Therefore, even with the massive design model 510, a response speed that does not interrupt the user's thought process is maintained.
[0665] The results of the analysis information extraction process 720 may indicate that numerous risk locations exist in the neighboring region 710 (see Figures 7 and 8).
[0666] In this case, to prevent information overload, the display control unit 130 displays only the top few pieces of information with the highest risk level 410, as shown in Figure 4, and displays the visual markers 400.
[0667] The response text 520 should include an interactive prompt such as, "There are three other minor risks. Would you like to see more details?"
[0668] The hidden visual marker 400 is only revealed if the user answers "yes".
[0669] By disclosing information in stages, the visibility of the user interface screen 500 shown in Figure 5 is maintained.
[0670] The designation of specific points 700 may also be applied to external spaces or internal cavities of the design model 510.
[0671] If a specific point 700 is designated in the cavity, the analysis information extraction process 720 recognizes the surrounding inner wall surface as a neighboring region 710.
[0672] This allows for the extraction of appropriate analytical information even in response to natural language questions about internal structure.
[0673] The display control unit 130 works in conjunction with the cross-sectional display function of the design model 510 to visualize the area around a specific point 700 designated inside.
[0674] When the cross-sectional view is enabled, the foreground shape is clipped, and the internal visual marker 400 can be clearly seen.
[0675] As the clipping plane is moved, the display format 420 of the visual markers 400 located near the cross-section may be highlighted.
[0676] This allows users to easily identify risks within complex assembly models and thick-walled parts.
[0677] The interactive point-specification interface is also intended to be combined with speech recognition in conjunction with the hardware configuration shown in Figure 2.
[0678] The user points to a specific point 700 on the screen and says, "What's going on here?"
[0679] The system converts the voice input into text and sends it to the analysis information extraction process 720 along with the coordinates of a specific point 700.
[0680] In the design review support system 10 shown in Figure 1, the user interface screen 500, which integrates visual, manual, and natural language input, provides extremely high operability.
[0681] Through the data structure shown in Figure 6, a high level of coordination between the design model 510 and the response text 520 is achieved.
[0682] Based on the processing procedure in Figure 3, changing the display format 420 of the visual marker 400 according to the risk level 410 accurately conveys the priority of the information.
[0683] Visual feedback, including the use of the failure case database 900 shown in Figure 9, makes the system's processing status transparent and increases user confidence.
[0684] A flexible verification environment is constructed through interactive specification of specific points 700 and analysis information extraction processing 720 based on neighboring regions 710, including the extraction of interference regions 1010 between bodies 1000 as shown in Figure 10.
[0685] The display control by the display control unit 130 (see Figure 4) and the interactive interface mechanism significantly streamline the design review process and contribute to preventing oversights.
[0686] Figure 8 is a sequence diagram illustrating the parallel execution of task 800 by the analysis control unit 140 and priority control based on the time budget 810.
[0687] The design review support system 10 (see Figures 1 and 2) includes an analysis control unit 140 to optimize the execution of geometric analysis.
[0688] The analysis control unit 140 manages the entire geometric analysis process for the design model 510 (see Figure 3).
[0689] In this management process, the analysis control unit 140 continuously monitors the processing load of the entire system.
[0690] The analysis control unit 140 first receives the design model 510 data passed from the acquisition unit 100.
[0691] The data of the received design model 510 is pre-evaluated by the analysis control unit 140 before the actual processing is carried out in the analysis unit 110.
[0692] The analysis control unit 140 divides the geometric analysis that needs to be performed into multiple tasks 800.
[0693] The division into Task 800 is primarily carried out logically for each type of analysis (see Figure 8). For example, processes related to wall thickness analysis, cross-sectional change analysis, or draft risk analysis are each defined as independent Task 800.
[0694] The analysis control unit 140 can not only determine the type of analysis, but also physically divide the task 800 according to the geometric region of the design model 510.
[0695] For example, in the case of a large-scale design model 510, the space is divided into multiple bounding boxes to generate individual tasks 800.
[0696] Alternatively, if the design model 510 consists of multiple bodies 1000, the task 800 is divided among the bodies 1000 (see Figure 10).
[0697] By subdividing Task 800 in this way, the efficiency of parallel processing can be maximized.
[0698] The subdivision granularity of task 800 is dynamically adjusted according to the data size and polygon count of design model 510.
[0699] If the data size is large, the number of Task 800 divisions is increased to evenly reduce the processing load per task. If the data size is small, the number of Task 800 divisions is minimized to reduce the overhead of task switching.
[0700] The analysis control unit 140 registers the generated tasks 800 into an internal task queue.
[0701] Task 800, registered in the task queue, remains in a waiting state until computing resources are allocated (see Figure 8).
[0702] Here, the analysis control unit 140 calculates an influence score for each registered task 800.
[0703] The impact score is a quantitative indicator of how important Task 800 is in the design review.
[0704] The impact score is calculated using the results of an initial analysis with a coarse mesh of design model 510.
[0705] For example, Task 800, which includes areas where extremely thin walls are likely to exist, will be assigned a relatively high impact score.
[0706] Additionally, Task 800, which corresponds to areas where problems frequently occur based on past design change history, will be assigned a high score.
[0707] Task 800, which includes areas with abrupt cross-sectional changes, also has a high risk of molding defects and therefore receives a high impact score.
[0708] The analysis control unit 140 determines the order within the task queue based on the calculated impact score, so that tasks with higher scores (800) are assigned higher priority.
[0709] After determining the priority, the analysis control unit 140 sets a time budget 810 for the entire process.
[0710] The time budget 810 is determined taking into account the allowable time that the user can wait for a response from the design review support system 10.
[0711] For example, in order to maintain interactive usability, the time budget of 810 is set to a practical length, such as a few tens of seconds. As a preferred example, the analysis control unit 140 may set a time budget of 20 seconds 810 for the entire geometric analysis. As a preferred example, the analysis control unit 140 may execute multiple analysis tasks in order of priority within the time budget 810. For example, you could set priorities such as (1) mesh quality evaluation (always run), (2) cross-sectional profiling (always run), (3) wall thickness analysis (run when the number of surfaces is less than or equal to a predetermined value and the remaining time is greater than or equal to a predetermined value), and (4) draft risk analysis (run when the remaining time is greater than or equal to a predetermined value). As an example of the execution conditions for wall thickness analysis, the analysis may be executed when the number of surfaces is 500,000 or less and the remaining time is 5 seconds or more. If there is insufficient remaining time or the number of surfaces exceeds the limit, the analysis may be skipped. As an example of the conditions for performing a draft risk analysis, it may be performed if there are 2 seconds or more remaining time, and skipped if there is insufficient time remaining.
[0712] The time budget of 810 may be statically maintained as a system-wide setting.
[0713] Alternatively, the time budget 810 may be dynamically changed depending on user specifications, required accuracy, or network conditions.
[0714] Once the time budget 810 is finalized, the analysis control unit 140 starts parallel execution of task 800.
[0715] At this time, the analysis control unit 140 allocates computing resources in order from the highest priority task 800.
[0716] Multiple tasks 800 are processed in parallel using multiple threads or cores of the system's CPU.
[0717] The analysis control unit 140 periodically monitors the execution status and progress of task 800 and obtains the progress rate of each task 800 in real time.
[0718] The analysis control unit 140 constantly tracks the consumption of the set time budget 810.
[0719] When the remaining time for the time budget 810 decreases, the analysis control unit 140 adjusts the execution control strategy.
[0720] For example, task 800, which has a low priority and has not yet been executed, will be removed from the task queue and its execution will be canceled.
[0721] Alternatively, the processing accuracy parameter for task 800, which has a low priority and is waiting to be executed, can be intentionally lowered to complete the processing in a shorter time.
[0722] In this way, the analysis control unit 140 operates in a manner that completes as many important geometric analyses as possible within the time budget 810.
[0723] When the time budget of 810 is completely exhausted, the analysis control unit 140 forcibly terminates any low-priority processes that are currently running.
[0724] Only the geometric analysis information obtained from task 800, which has been successfully executed, is passed on to the subsequent processing step.
[0725] Information regarding incomplete or canceled Task 800 will be treated as skipped in this response cycle.
[0726] However, the analysis control unit 140 records in the system log the existence of the skipped task 800 and the reason for it.
[0727] This record is used as part of the context information when the response generation unit 120 generates the response information 600.
[0728] For example, an additional notification to the user could be included stating that some analysis was skipped due to a time budget constraint of 810.
[0729] As a background process, it is also possible to continue executing the incomplete task 800 and later present the results asynchronously.
[0730] Because high-impact tasks (Task 800) are prioritized, the chances of missing critical geometric risks are minimized.
[0731] As shown in Figure 8, by dividing the geometric analysis into multiple tasks 800 and executing them in parallel, and prioritizing the execution of the tasks 800 with the highest impact within a predetermined time budget 810, the completion of processing within the time budget 810 is guaranteed, enabling rapid response generation as an interactive interface.
[0732] This preferential parallel execution control is particularly effective when dealing with the data of the highly complex and polygon-heavy design model 510.
[0733] Furthermore, the analysis control unit 140 is also responsible for fallback control in the event that a calculation error occurs during the execution of task 800.
[0734] If a calculation error or insufficient memory occurs in a particular task 800, only that task 800 will be discarded, while the execution of other healthy tasks 800 will continue.
[0735] This effectively prevents a single parsing error from causing a system-wide shutdown.
[0736] The analysis control unit 140 records in detail the actual calculation time required to execute each task 800 as a log.
[0737] This execution time log will be used to optimize the allocation of the time budget 810 in the next processing step and to automatically adjust the granularity of task 800.
[0738] As shown in Figure 8, the execution order of tasks 800 is determined by considering the dependencies between tasks in parallel processing. Tasks 800 that do not have dependencies on each other are executed independently and simultaneously in parallel, while tasks 800 with dependencies are started only after the completion and output of the prerequisite task 800.
[0739] If resolving dependencies within the time budget of 810 is predicted to be difficult within that timeframe, a decision may be made to skip the relevant group of dependent tasks.
[0740] In this way, the analysis control unit 140 intelligently controls itself to obtain the greatest overall analysis effect while strictly adhering to the time budget 810.
[0741] Figure 9 is a flowchart showing the steps involved in searching for past failure cases and including them in the response information 600.
[0742] To further improve the quality of design reviews, the design review support system 10 operates in conjunction with the defect case database 900.
[0743] The Defect Case Database 900 stores records of problems, defect reports, and correction histories from past design projects.
[0744] The defect case database 900 may be located on an external cloud server, or it may be built in a local environment to maintain confidentiality.
[0745] This defect case database 900 stores various geometric features in a structured manner, associating them with the defect events that occurred in relation to them.
[0746] For example, the defect case database 900 records, along with detailed text, cases of injection molding defects in a specific wall thickness range, part breakage at a specific cross-sectional change rate, and even mold galling due to insufficient draft angle.
[0747] Once the latest geometric analysis information generated by the analysis unit 110 is obtained, the design review support system 10 executes the search step S910.
[0748] In the search step S910, the geometric analysis information of the currently targeted design model 510 is used as the search query.
[0749] Based on these extracted queries, a high-speed search process is performed against the defect case database 900.
[0750] The search step S910 calculates the similarity between the geometric features contained in the geometric analysis information and the features of past cases in the defect case database 900.
[0751] Similarity calculations often utilize methods such as dot product calculations using vectorized representations of features, or distance functions in multidimensional spaces.
[0752] If there are past cases where the calculated similarity exceeds a predetermined threshold, the design review support system 10 extracts them as related defect cases.
[0753] The extracted defect cases contain a wealth of metadata, including the root cause of the problem, the countermeasures taken, and the relevant part numbers.
[0754] In search step S910, if multiple defect cases match, they are sorted in descending order of similarity, and only the top few are selected (see Figure 9).
[0755] Furthermore, considering the constraints of the overall system time budget 810 (see Figure 8), a strict upper limit may be imposed on the execution time of the search step S910 itself.
[0756] Once the search is complete, the system proceeds to the reference addition step S920.
[0757] In the reference addition step S920, the information of the searched defect cases is integrated into contextual information to be passed to the natural language generation model.
[0758] Specifically, unique document identifiers and reference information such as URLs of internal systems are obtained to identify specific malfunction cases.
[0759] The response generation unit 120, when generating natural language response information 600, includes a reference to this malfunction case within the text.
[0760] By going through the reference addition step S920, the generated response information 600 will have specific justifications based on past knowledge added to it.
[0761] For example, the response text 520 may contain a hyperlink to a document describing past failure cases involving similar parts.
[0762] This allows users to instantly determine whether the identified geometric risk is merely theoretical or based on actual past occurrences.
[0763] Furthermore, providing detailed information about the problem in the natural language model's prompts improves the accuracy of the response.
[0764] Natural language models can summarize past countermeasures and present users with specific modification suggestions for the current design.
[0765] This allows us to not only point out the existence of risks, but also to provide answers that include successful design change approaches from the past.
[0766] In this way, a more persuasive and sophisticated design review is achieved by making full use of the past knowledge accumulated within the organization.
[0767] By searching for past failure cases related to geometric analysis information and including the reference to those failure cases in response information 600, past knowledge can be directly reflected in the design review.
[0768] In the reference addition step S920, reference information may be embedded within the text using a dedicated syntax similar to that of marker 610.
[0769] This allows the display control unit 130 to place link icons for past examples in conjunction with the visual markers 400 on the design model 510.
[0770] When a user clicks the link icon, the details screen for the 900 bug cases database pops up on the same screen.
[0771] Alternatively, a function is provided that retrieves the design model data registered in past cases and displays it for comparison with the current design model 510.
[0772] In the search step S910, a fallback process is also provided in case no matching cases are found.
[0773] In that case, the system explicitly notifies the user in response information 600 that this is a new risk with no similar cases in the past.
[0774] This gives users an opportunity to make more careful and multifaceted design decisions when faced with unfamiliar challenges.
[0775] The malfunction case database 900 is continuously updated as the system operates (see Figure 9).
[0776] The value of the database gradually increases as users discover new design problems and register them in the system along with solutions.
[0777] Through this data accumulation and learning loop, the accuracy of the system's natural language model's responses and its ability to make suggestions will continuously improve.
[0778] The response generation unit 120 can also change the tone and warning level of the response information 600 it generates according to the severity of the detected defect.
[0779] If a past incident that caused a major recall is detected, a response message 600 is generated with a strong warning tone to draw attention.
[0780] In cases where only minor rework was required, response information 600 is generated in a mild tone, serving as reference information or recommendations.
[0781] This makes it easier for users to intuitively grasp the importance and urgency of a risk.
[0782] Furthermore, the 900 defect case database can integrate not only internal company cases but also industry-standard defect case collections and publicly available guidelines.
[0783] In that case, as shown in Figure 9, the search step S910 searches both the company's own data and external standard data across both systems.
[0784] Search results from external data are always accompanied by reference metadata that clearly indicates the source of the information.
[0785] The information added in the reference addition step S920 is not limited to text-based documents; it may also include links to images or inspection graphs.
[0786] For example, links to cross-sectional images or microscopic images of past defective products can be directly included in the response information 600.
[0787] Providing visual evidence of past cases further enhances the specificity and persuasiveness of design reviews.
[0788] As shown in Figure 8, the parallel execution of task 800 by the analysis control unit 140 and the search process of the defect case database 900 can also be performed completely asynchronously.
[0789] The system is configured so that the search step S910 is triggered sequentially using the results of the high-impact tasks 800 as they are completed.
[0790] This allows for the sequential generation and rapid display of a portion of the response information 600 to the user without waiting for all tasks 800 to be completed.
[0791] To make the most of the 810 hour budget, the database search process itself is strictly controlled under time constraints.
[0792] If the search takes longer than expected, the search will be interrupted by a timeout process, and the system will switch to generating response information 600 using only the analysis results.
[0793] All of these complex scheduling and control processes are centrally managed by the analysis control unit 140.
[0794] The analysis control unit 140 constantly optimizes the balance between computational resources for geometric analysis and network resources for searching the failure case database 900 (see Figures 1 and 8).
[0795] As a result, users can receive the most valuable past design feedback with stress-free response times.
[0796] Actively utilizing the 900-data database of defect cases plays a very significant role in the practical transfer of knowledge to younger engineers (see Figure 9).
[0797] This is because the tacit knowledge accumulated by veteran engineers through past experiences can be retrieved as easily understandable answers in natural language through the 900-database of defect cases.
[0798] The past failure cases and proposed solutions presented by the design review support system 10 function as readily available learning materials within the design process.
[0799] The design review support system 10 acts more than just a geometric error checking tool; it functions as an intelligent support agent for the organization (see Figure 2).
[0800] This search step S910 is also highly effective when the user interactively specifies a particular part of the design model 510 and asks a question (see Figure 7).
[0801] When geometric analysis information for a specified area is precisely extracted, past cases that exactly match it are prioritized in the search.
[0802] The reference addition step S920 directly reflects in the response information 600 a deep insight specific to the part the user is focusing on (see Figure 6).
[0803] Thus, the precise control of the task 800 by the analysis control unit 140 and its coordination with the failure case database 900 form a crucial mechanism that underlies the design review support system 10.
[0804] The analysis unit 110 extracts the maximum informational value from the design model 510 within a limited time budget 810 and effectively utilizes it to generate a natural language model (see Figure 3).
[0805] These advanced processes are performed completely transparently on the user interface screen 500. As shown in Figure 5, the visual markers 400 are superimposed on the design model 510.
[0806] Users can gain advanced insights through natural language interaction alone, without having to enter complex settings or intricate search queries.
[0807] The close coordination of each processing step dramatically reduces the likelihood of overlooking geometric risks inherent in the design model 510. As shown in Figure 4, the display form 420 of the visual marker 400 can be changed according to the risk level 410.
[0808] Addressing these risks effectively in the early stages of design significantly reduces rework costs in later stages.
[0809] The division and parallel processing of task 800, and the search of the defect case database 900, are preferably performed scalably on a cloud environment (see Figure 10). As shown in Figure 10, the process of extracting interference regions 1010 between multiple bodies 1000 can also be performed efficiently.
[0810] By dynamically allocating computing resources as needed, even very large design model 510 data can be processed within a time budget of 810.
[0811] Furthermore, even when running in a local environment due to security requirements, the system is optimally controlled to maximize the use of available CPU resources.
[0812] In this way, the design review support system 10 is designed to consistently provide stable performance in a variety of operating environments and constraints.
[0813] In the embodiments described above, a three-dimensional model was used as an example of the design model, but the present invention is not limited thereto. Below, embodiments where the design model is a two-dimensional drawing will be described. In this specification, reference information 620 can take the form of either three-dimensional reference information or two-dimensional reference information. When a three-dimensional model is targeted, three-dimensional reference information including three-dimensional coordinates (X, Y, Z) is generated, and when a two-dimensional drawing is targeted, two-dimensional reference information including two-dimensional coordinates (X, Y) is generated. The core patterns, from geometric analysis to context injection, marked LLM response, and superimposed display of visual markers on the design model, are realized with a common architecture for both three-dimensional models and two-dimensional drawings.
[0814] (Acquisition and conversion of 2D drawing data) The acquisition unit 100 receives technical drawing files in DXF, DWG, or PDF format as two-dimensional drawing data and determines the format. In the case of vector drawings in DXF or DWG format, the acquisition unit 100 structurally extracts entities (lines, arcs, dimension lines, text annotations) using a CAD parser (e.g., ezdxf) and generates structured drawing metadata. In the case of technical drawings in PDF format, the acquisition unit 100 performs high-resolution rendering (300-600 DPI) on a page-by-page basis, extracts dimension values, tolerance symbols, and annotations using a visual recognition model, and similarly generates structured drawing metadata. The acquisition unit 100 further converts the drawing into an image or SVG for display in a web browser and outputs JSON drawing metadata for analysis.
[0815] (Dimensional check on 2D drawings) The analysis unit 110 performs a dimension check on the two-dimensional drawing data. Specifically, the analysis unit 110 takes a list of dimension values extracted from the drawing metadata as input, enumerates all dimension values on the drawing (linear dimensions, angular dimensions, radius / diameter dimensions), and identifies the unit, reference plane, and direction of each dimension. The analysis unit 110 compares the data with design standards (e.g., JIS standards, in-house standards) and detects missing dimensions (locations where dimensions are insufficient for a given shape) and duplicate or inconsistent dimensions (inconsistent dimension values for the same shape). The output includes a dimension list, the two-dimensional coordinate position of each dimension, and a coordinate list of the problematic locations.
[0816] (Dimensional tolerance analysis for 2D drawings) The analysis unit 110 performs dimensional tolerance analysis on two-dimensional drawing data. The analysis unit 110 takes dimensional values and tolerance values from the drawing metadata as input and extracts the tolerance values (± tolerance, one-sided tolerance, fit tolerance, etc.) assigned to each dimension. Furthermore, it performs a tolerance grade validity check (detection of excessive or insufficient precision for the manufacturing method), tolerance accumulation calculation (tolerance stack-up, verification that the accumulation of related dimensional tolerances is within the acceptable range in the case of assembly drawings), and reference plane consistency check (confirmation of agreement between dimensional reference and tolerance reference). As output, the tolerance analysis results and a two-dimensional coordinate list of problem areas are generated.
[0817] (Geometric tolerance (GD&T) verification for 2D drawings) The analysis unit 110 performs geometric tolerance (GD&T) verification on two-dimensional drawing data. The analysis unit 110 takes geometric tolerance symbols, datums, and tolerance values from the drawing metadata as input and recognizes geometric tolerance symbols (straightness, flatness, roundness, cylindricity, line profile, surface profile, parallelism, perpendicularity, inclination, position, concentricity, symmetry, circumferential runout, etc.) in accordance with ASME Y14.5 or ISO 1101. Furthermore, it performs datum reference consistency checks (whether the specified datum is defined on the drawing and whether the order of datum references is appropriate), tolerance value validity checks (whether the geometric tolerance values do not contradict dimensional tolerances and whether they are realistic tolerance values for the manufacturing method), and geometric tolerance symbol placement verification (whether the symbols are linked to the correct geometric elements). As output, the GD&T verification results, the two-dimensional coordinate positions of each symbol, and a coordinate list of problem areas are generated.
[0818] (Generation of two-dimensional reference information) When dealing with two-dimensional drawings, the analysis unit 110 generates two-dimensional reference information. The coordinate system of the two-dimensional drawing is defined as having the lower left corner of the drawing as the origin (0,0), with the rightward direction being positive for X and the upward direction being positive for Y. The units of the coordinate values are mm (actual dimension coordinates on the drawing) or pixels (coordinates on the rendered image), and are explicitly indicated in the context information. The types of two-dimensional reference information may include not only indications of specific positions on the drawing using two-dimensional coordinates (X,Y), but also dimension line identifiers (references to specific dimension lines), note identifiers (references to text notes), and area identifiers (references to rectangular areas on the drawing).
[0819] (Generating context for 2D drawings) The response generation unit 120, similar to the case of a three-dimensional model, uses a context loader for two-dimensional drawings to inject the following information as structured text into the LLM system prompt. Specifically, this includes drawing metadata (file format, drawing size, part name, drawing number, material, etc. in the title block), a list of dimensions (type of each dimension, dimension value, tolerance value, coordinate location on the drawing), a list of geometric tolerances (type of tolerance, tolerance value, datum, target geometric element, coordinate location), a list of detected problems (warning content and coordinate location), and a list of available marker coordinates. This allows the LLM to generate a markered response that references the exact coordinate location based on the context of the two-dimensional drawing.
[0820] (Visual marker display on the 2D drawing viewer) The display control unit 130 overlays visual markers in the 2D drawing viewer using a two-layer configuration: a base layer (for displaying the drawing image or SVG, and supporting pan and zoom operations) and an overlay layer (for displaying visual markers). For 2D drawings, 2D pin icons or circular markers are used as visual markers, and the color scheme rules (info=blue, warning=orange, error=red) are the same as for 3D models. Labels are displayed as tooltips on hover or are always displayed, and area highlighting is achieved by rectangular or circular semi-transparent overlays. Text markers in the chat panel are associated with 2D pins on the 2D drawing viewer, and when the user selects a marker in the text, the corresponding location on the drawing is highlighted.
[0821] (Commonality between processing 3D models and 2D drawings) The embodiments for two-dimensional drawings and three-dimensional models described above share the same architecture in the following processes: context injection, which converts geometric analysis results into structured text and injects it into the LLM system prompt; marker syntax using a unified format of [point:coordinate:label:type] (only the number of dimensions differs); marker syntax extraction using regular expression parsing (only the coordinate parsing part branches between 2D and 3D); hallucination prevention constraints that use only known coordinates within the context; SSE streaming processing with sequential response delivery and partial marker parsing; type display change using color coding according to info / warning / error; and confidence assignment processing that includes the confidence level of the analysis in the context. All of these are common to both three-dimensional and two-dimensional models. The only differences are the content of the geometric analysis and the dimensions of the viewer; the overall pipeline architecture is the same.
[0822] In the embodiments described above, unless the word "only" is used, such as "based only on A," "according only to B," or "in the case of C only," it should be noted that in this specification, additional information may also be considered.
[0823] Furthermore, please note that, as an example, the statement "If a, then do b" does not necessarily mean "always do b if a occurs" or "do b immediately after a occurs," unless explicitly stated otherwise.
[0824] Furthermore, the phrase "each a that constitutes A" does not necessarily mean that A is composed of multiple components, but rather includes the possibility that a component is singular.
[0825] Furthermore, for the sake of clarity, even if there are aspects of operation in some method, program, terminal, device, server, or system (hereinafter referred to as "method, etc.") that differ from the operation described herein, each aspect of the present invention is intended to cover the same operation as any of the operations described herein, and the existence of operation different from the operation described herein does not mean that such method, etc. is outside the scope of each aspect of the present invention. [Explanation of Symbols]
[0826] 10. Design Review Support System 100 Acquisition Department 110 Analysis Department 120 Response generation unit 130 Display Control Unit 140 Analysis Control Unit 210 memory 220 storage 230 Input / Output Interfaces 400 visual markers 410 Risk level 420 Display format 500 User Interface Screens 510 Design Model 520 Response Text 600 Response Information 610 markers 620 Reference Information 700 specific points 710 Neighboring Regions 720 Analysis Information Extraction Process 800 tasks 810 hour budget 900 Defect Case Database 1000 Body 1010 Interference region CPU200 Processor S300 Acquisition Steps S310 Analysis Step S320 Response generation step S330 Display control step S910 Search Steps S920 Add Reference Step
Claims
1. A system to support the design review of design models, An acquisition unit that acquires the target design model data, An analysis unit performs geometric analysis on the aforementioned design model data and generates geometric analysis information including evaluation results based on geometric features, and reference information corresponding to the geometric analysis information. A response generation unit generates natural language response information embedded with a marker specifying the reference information, based on context information including the geometric analysis information and the reference information, and a question input from the user. A display control unit extracts the marker from the response information and superimposes a visual marker on the design model at the position corresponding to the marker. A system that includes these features.
2. The system according to claim 1, The marker includes at least coordinate values, label information, and type information corresponding to the reference information, The display control unit is a system that extracts the markers by string analysis including regular expressions.
3. The system according to claim 1, The aforementioned reference information includes a system that includes either coordinates, model element identifiers, or region identifiers.
4. A system according to any one of claims 1 to 3, The aforementioned design model data includes three-dimensional model data. The aforementioned reference information includes three-dimensional reference information, and is part of a system.
5. A system according to any one of claims 1 to 3, The aforementioned design model data includes two-dimensional drawing data. The aforementioned reference information includes two-dimensional reference information, and is part of a system.
6. The system according to claim 4, The aforementioned geometric analysis is a system that includes at least one of the following: wall thickness analysis, cross-sectional change analysis, or draft risk analysis.
7. The system according to claim 5, The aforementioned geometric analysis system includes at least one of the following: dimensional checking, dimensional tolerance analysis, or verification of geometric tolerances.
8. The system according to claim 1, The display control unit is a system that changes the display form of the visual marker according to the type of geometric analysis information or the degree of risk.
9. The system according to claim 1, The analysis unit calculates the reliability of the geometric analysis with respect to the design model data, The response generation unit is a system that generates response information by including the information indicating the reliability level in the context information.
10. The system according to claim 1, The user's input includes an input specifying a particular point on the design model, The analysis unit is a system that extracts geometric analysis information in the vicinity of a specified point.
11. The system according to claim 1, A system comprising an analysis control unit that divides the aforementioned geometric analysis into multiple tasks and executes them in parallel, prioritizing the execution of tasks with the highest impact within a predetermined time budget.
12. A method for assisting in the design review of a design model, which is performed by a computer. Steps to obtain the target design model data, The steps include performing a geometric analysis on the aforementioned design model data to generate geometric analysis information including evaluation results based on geometric features, and reference information corresponding to the geometric analysis information, A step of generating natural language response information embedded with a marker specifying the reference information, based on context information including the geometric analysis information and the reference information, and a question input from the user, The steps include: extracting the marker from the response information and superimposing a visual marker at the position corresponding to the marker on the design model; Methods that include...
13. A method according to claim 12, A method comprising the steps of searching for past failure cases related to the geometric analysis information and including a reference to the failure case in the response information.
14. The method according to claim 13, A method comprising the steps of extracting interference regions between multiple bodies included in the design model data and setting said interference regions as reference information.
15. A program for causing a computer to perform the method according to any one of claims 12 to 14.
Citation Information
Patent Citations
Method and device for CAD, user computer, and cloud computer
JP2015212922A
Three-d link
JP2021163501A
Natural language user interface for computer-aided design systems
US20180033435A1
Natural language user interface for computer-aided design systems
US9613020B1