A non-modal intelligent assistant interface system for industrial design software

CN122064417BActive Publication Date: 2026-09-04HEFEI JIEMO INTELLIGENT TECHNOLOGY CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202610498826.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-04-15
Publication Date
2026-09-04
Estimated Expiration
2046-04-15

AI Technical Summary

Technical Problem

[0007]为了克服现有技术中工业设计软件内的智能助手界面在持续交互过程中容易占用主界面显示区域、遮挡模型观察与操作区域,并且在执行辅助处理任务时容易影响主程序连续响应的缺陷,本发明提供一种用于工业设计软件的非模态智能助手交互界面系统,包括:

Benefits of technology

本申请通过在工业设计软件主界面中创建并显示智能助手界面容器,使智能助手的人机交互界面能够在同一软件工作环境下持续承载和显示,不需要频繁切换至外部独立程序或者反复打开、关闭独立对话框,从而减少辅助交互过程对当前建模、编辑和参数调整流程的打断,提高智能助手在工业设计软件中的连续可用性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122064417B_ABST
    Figure CN122064417B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of computer-aided design, and discloses a non-modal intelligent assistant interactive interface system for industrial design software, which comprises an interface container unit, a parking state management unit, a display shielding control unit, an asynchronous execution interactive unit and an interactive interface bearing unit; the interface container unit is used for creating and displaying an intelligent assistant interface container in an industrial design software main interface; the parking state management unit is used for controlling the interface container to switch between a parking state and a floating state; the display shielding control unit is used for adjusting display transparency according to the position of a mouse relative to the interface container when the interface container is in the floating state; and the interactive interface bearing unit is used for constructing a man-machine dialogue interface based on an embedded browser control and receiving a tool calling request. The application can continuously bear the intelligent assistant interface in the industrial design software main interface, reduces shielding interference on a model display area and an operation area, and is favorable for maintaining a continuous interactive process of a main program.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer-aided design technology, and more specifically, to a non-modal intelligent assistant interactive interface system for industrial design software. Background Technology

[0002] As intelligent question answering, command recommendation, and automated processing functions are gradually introduced into industrial design software, users often need to simultaneously call intelligent assistants to obtain operation prompts, generate processing results, or trigger auxiliary tools during modeling, editing, parameter adjustment, and object processing. Therefore, the way intelligent assistants are presented in industrial design software and the way they provide execution feedback directly affect the continuous operation experience of the main program and the usability of the workspace.

[0003] The auxiliary interactive interfaces in existing industrial design software are typically implemented using independent dialog boxes, fixed sidebars, or ordinary floating windows. When using independent dialog boxes, user interaction with the auxiliary interface can easily disrupt modeling, object editing, or command input operations on the main interface, leading to design workflow interruptions. While fixed sidebars can keep the auxiliary interface continuously displayed, they occupy a significant portion of the main interface's display area. In industrial design software with a large workspace or limited screen space, this can compress the actual design area, affecting the main interface's display of models, parameter panels, or object lists.

[0004] In addition, in the scheme of using ordinary floating windows to carry auxiliary interfaces, the auxiliary interfaces are usually overlaid on the model display area or operation area for a long time. When users need to view the design object at the same time and keep the auxiliary interface available, such floating interfaces can easily obstruct model observation, feature selection, command input or parameter adjustment. Users often need to repeatedly move the window position, switch the interface state or temporarily close the auxiliary interface and then resume use, making the interaction process less smooth.

[0005] Furthermore, when the existing auxiliary interface triggers tool calls, data processing, or script execution, the related processing is usually tightly coupled with the response process of the main interface of the industrial design software. When the execution involves object querying, batch processing, geometric calculations, or other time-consuming tasks, it can easily cause the main program to respond slowly, the interface to pause, or the current operation to be forced to wait, making it difficult for users to continue to operate the main interface of the industrial design software during the execution of auxiliary processing.

[0006] Therefore, existing technologies have at least the following problems: In industrial design software, existing intelligent assistants or auxiliary interactive interfaces cannot simultaneously take into account continuous interaction, reduce obstruction of the main interface work area, and maintain the continuous response of the main program, and are prone to interfering with the user's current design operation during interface display and tool execution. Summary of the Invention

[0007] To overcome the shortcomings of existing intelligent assistant interfaces in industrial design software, which tend to occupy the main interface display area and obscure the model observation and operation area during continuous interaction, and also easily affect the continuous response of the main program when performing auxiliary processing tasks, this invention provides a non-modal intelligent assistant interaction interface system for industrial design software, comprising: Interface container unit, used to create and display intelligent assistant interface containers in the main interface of industrial design software; The docking state management unit is used to control the switching of the interface container between the docked state and the floating state. In the docked state, the interface container is attached to the sidebar area of ​​the main interface of the industrial design software, and in the floating state, the interface container is detached from the sidebar area to form an independent floating window. The display avoidance control unit is used to detect the position of the mouse relative to the interface container when the interface container is in a floating state, and to reduce the display transparency of the interface container when the mouse is detected to be outside the interface container, and to restore the display transparency of the interface container when the mouse is detected to be inside the interface container. The interactive interface carrier unit is built based on embedded browser controls and is used to provide a human-computer dialogue interface and receive tool call requests initiated by users through the human-computer dialogue interface. The asynchronous execution interaction unit is used to send tool call requests to an independent worker thread for execution and return the tool execution results to the interaction interface carrier unit, so as to realize bidirectional data interaction between the interaction interface carrier unit and the main program of the industrial design software without blocking the operation of the main program of the industrial design software.

[0008] Compared with related technologies, this application has the following advantages: This application creates and displays a smart assistant interface container in the main interface of industrial design software, enabling the human-computer interaction interface of the smart assistant to be continuously hosted and displayed in the same software working environment without frequently switching to external independent programs or repeatedly opening and closing independent dialog boxes. This reduces the interruption of the current modeling, editing and parameter adjustment process by the auxiliary interaction process, and improves the continuous usability of the smart assistant in industrial design software.

[0009] This application controls the interface container to switch between docked and floating states, enabling the smart assistant interface to adjust its display form between a sidebar-mounted mode and an independent floating mode according to the current usage scenario. When it is necessary to stably view the dialogue content or recommendation results, the docked state can be used to keep the interface position stable. When it is necessary to take into account the main interface display area, it can be switched to a floating state, thereby alleviating the problem of the fixed sidebar occupying the main work area for a long time and improving the adaptability of the interface layout.

[0010] This application detects the mouse position relative to the interface container when the container is floating, and reduces the display transparency when the mouse is outside the container and restores it when the mouse enters the container. This allows the intelligent assistant interface to remain visible while minimizing occlusion of the model display area, object selection area, and parameter operation area. Compared to existing methods that require repeated dragging or manual hiding of ordinary floating windows, this application reduces occlusion interference without canceling the interface display, thereby improving the continuity of main interface observation and interactive operations.

[0011] This application constructs a human-computer dialogue interface based on an embedded browser control, enabling the intelligent assistant's interactive content, recommended content, and tool call entry points to be uniformly presented and received within the interface container. This facilitates the carrying of richer interactive page content and processing results in industrial design software environments, thereby improving the scalability and integration capabilities of the auxiliary interactive interface.

[0012] This application organizes the receipt and execution of tool call requests, enabling users to directly initiate auxiliary tool calls through the human-computer dialogue interface and complete the corresponding processing within the industrial design software operating environment. This connects intelligent question answering, auxiliary operation, and tool execution into a continuous processing flow, reducing the breakpoints in the prior art where the auxiliary interface can only display information and is difficult to further link and execute, which is conducive to improving the efficiency of intelligent assistants in assisting actual design tasks.

[0013] When the tool invocation process is executed separately from the main interface response process, the impact of time-consuming processing on the current interface response of the industrial design software can be reduced. This allows users to continue observing the main interface or performing other operations while the auxiliary task is being executed, thereby further improving the problem of interface pauses and operation waiting caused by the execution process in the existing technology.

[0014] This application achieves a better balance between continuous interaction, reduced occlusion, and continuous operation of the main program by collaboratively designing the intelligent assistant interface's carrying method, display status control method, and tool call interaction method. This improves the stability, consistency, and usability of the auxiliary interaction process. Attached Figure Description

[0015] Figure 1 This application provides a block diagram of a non-modal intelligent assistant interactive interface system for industrial design software. Detailed Implementation

[0016] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0017] Please see Figure 1 As shown, this embodiment provides a non-modal intelligent assistant interactive interface system for industrial design software, including an interface container unit, a docking status management unit, a display and obstacle avoidance control unit, an interactive interface carrier unit, and an asynchronous execution interactive unit, with each unit connected via wired and / or wireless means.

[0018] An interface container unit is used to create and display the intelligent assistant interface container in the main interface of industrial design software; in specific implementation, the method includes: After the industrial design software completes the initialization of the main interface, it triggers the initialization process of the intelligent assistant interface system and obtains the preset interface configuration data. It then extracts the interface title, icon resources, default docking position, initial display size, minimum display size, and front-end page loading path from the preset interface configuration data as configuration inputs for the interface container creation and display process. Through this step, the basic parameters required for the creation of the interface container are obtained.

[0019] Based on the interface creation interface provided by the industrial design software, a dockable interface container is created in the main interface of the industrial design software, so that the interface container can be continuously called and displayed as a sidebar tab object or an independent floating window object in the main interface of the industrial design software; through this step, an interface container that establishes a display association with the main interface of the industrial design software is obtained.

[0020] Write the interface title and icon resources into the display properties of the interface container, and write the initial display size and minimum display size into the size properties of the interface container, so that the interface container has a recognizable title and an acceptable display range when it is first displayed; the minimum display size is used to prevent the interface container from being unable to fully display the human-computer dialogue content after it is shrunk; through this step, an interface container with basic display properties is obtained.

[0021] An embedded browser control is created inside the interface container, and a local data directory required for its operation is allocated. Then, the front-end page resources are loaded into the embedded browser control according to the front-end page loading path, thereby constructing an interactive interface carrier unit inside the interface container. The interactive interface carrier unit is used to provide a human-computer dialogue interface to display dialogue content, display execution results, receive text input, and respond to user operations. Through this step, the interactive interface carrier unit set inside the interface container and the human-computer dialogue interface provided by it are obtained.

[0022] The message receiving process is registered for the interactive interface carrier unit, and a message transmission channel is established between the front-end page and the main program of the industrial design software, so that the interactive data input by the user through the human-computer dialogue interface, the tool call requests initiated, and the interface control requests can be received by the main program of the industrial design software; through this step, the message input entry corresponding to the interactive interface carrier unit is obtained.

[0023] Based on the default docking position, the interface container is mounted to the sidebar area of ​​the main interface of the industrial design software and displayed for the first time. After the initial display is completed, the interactive interface carrier unit inside the interface container displays its corresponding human-computer dialogue interface. Through this step, the interface container and its internal interactive interface carrier unit that have been displayed in the main interface of the industrial design software are obtained.

[0024] After the initial display is completed, the current docking state, docking position, and display size of the interface container are saved, and the initialized interface container is used as a unified processing object for subsequent docking state switching, mouse position detection, and display transparency adjustment. At the same time, the interactive interface carrier unit is used as a processing object for subsequent tool call request reception and tool execution result return. Through this step, the basic interface object and basic interaction object that are continuously called in subsequent steps are formed.

[0025] Through the above operations, a continuously displayed interface container is formed inside the main interface of the industrial design software. Inside the interface container, an interactive interface carrier unit for providing a human-computer dialogue interface is formed, so that the intelligent assistant interface does not exist as a temporary pop-up, but as a continuous object in the main interface of the industrial design software, participating in subsequent state switching, position detection, display transparency adjustment, tool call request reception, and execution result return processing.

[0026] To illustrate the creation and initial display process of the interface container, assume that the interface title recorded in the preset interface configuration data is "Smart Assistant", the icon resource is the local icon file path, the default docking position is the right sidebar position, the initial display size is 360 pixels wide and 900 pixels high, the minimum display size is 280 pixels wide and 500 pixels high, and the front-end page loading path is the local page resource path; after the main interface of the industrial design software is initialized, it first reads the preset interface configuration data, then creates a dockable interface container according to the interface creation interface, and writes the interface title, icon resource, initial display size, and minimum display size into the interface container; Subsequently, an embedded browser control is created inside the interface container, and front-end page resources are loaded according to the front-end page loading path to form the interactive interface carrier unit. Then, a message receiving process is registered for the interactive interface carrier unit, and the interface container is mounted to the right sidebar area to perform the initial display. After the initial display is completed, the human-computer dialogue interface is displayed inside the interface container, and the current docking state, current docking position, and display size are saved for subsequent docking state switching, mouse position detection, and tool call request reception. This example illustrates that there is a continuous data transmission and processing relationship between the creation of the interface container, the construction of the interactive interface carrier unit, and the initial display process.

[0027] The docking state management unit is used to control the switching of the interface container between docked and floating states. In the docked state, the interface container is attached to the sidebar area of ​​the main interface of the industrial design software, and in the floating state, the interface container is detached from the sidebar area to form an independent floating window.

[0028] In some implementations, the processing object is the interface container after the interface container unit is created and displayed; the initial input includes the current display state of the interface container, the current docking position, the current window coordinates, the current window size, and the boundary data of the sidebar area of ​​the main interface of the industrial design software; wherein, the docking state is the display state corresponding to when the interface container is attached to the sidebar area of ​​the main interface of the industrial design software, and the floating state is the display state corresponding to when the interface container is detached from the sidebar area and displayed as an independent floating window.

[0029] In practice, the steps for controlling the interface container to switch between docked and floating states include: After the interface container is first displayed, state record data is established for the interface container. The state record data includes at least the current state identifier, the current docking position, the current window coordinates, and the current window size. The current state identifier is used to indicate whether the interface container is currently mounted in the sidebar area or displayed as an independent floating window. This step forms the basis for continuously acquiring and updating the state during subsequent state switching processes.

[0030] Continuously monitor user drag-and-drop operations on the interface container; when user dragging of the interface container is detected, obtain the current position of the interface container, and compare the current position of the interface container with the boundary range of the sidebar area to determine whether the interface container is still within the sidebar area or has left the sidebar area; through this step, obtain the position comparison result required for state switching judgment.

[0031] In practice, the current position of the interface container is the position data of the current display area of ​​the interface container in the main interface coordinate system. The position data includes at least the coordinates of the top left corner of the interface container or the coordinates of the center point of the interface container. The boundary data of the sidebar area is the pre-read boundary range of the sidebar area, which includes at least the coordinates of the left boundary, top boundary, right boundary, and bottom boundary. When user dragging of the interface container is detected, the current position of the interface container is first read, and then the inclusion relationship between the current position of the interface container and the boundary range of the sidebar area is determined. If the current position of the interface container is between the left and right boundary coordinates and between the top and bottom boundary coordinates, it is determined that the interface container is still within the sidebar area. If the current position of the interface container exceeds the boundary range of the sidebar area, it is determined that the interface container has left the sidebar area. The interface position determination result is then output for subsequent processing of docked state maintenance or floating state switching.

[0032] When the current status indicator indicates that the interface container is in a docked state, and the position comparison result indicates that the interface container has detached from the sidebar area, the attachment relationship between the interface container and the sidebar area is released, and the interface container is switched to an independent floating window display mode. After the switch is completed, the current status indicator is updated to floating state, and the current window coordinates and window size of the interface container are written into the status record data. Through this step, the interface container in the floating state is obtained, and the position and size record corresponding to the floating state is formed.

[0033] When the current status indicator indicates that the interface container is in a floating state, and the position comparison result indicates that the interface container has entered the preset mounting range of the sidebar area, the interface container is remounted to the sidebar area, and the independent floating window display mode is canceled. After the switch is completed, the current status indicator is updated to docked state, and the current docking position is written to the status record data. The preset mounting range is formed based on the boundary data of the sidebar area and is used to determine whether the interface container meets the remounting conditions. Through this step, the interface container is obtained in the docked state again.

[0034] When the interface container is docked, it is displayed in the sidebar area according to its current docking position. When the interface container is floating, it is displayed as an independent floating window according to the window coordinates and window size in the status record data, while the interactive interface unit inside the interface container continues to display its human-computer dialogue interface. Through this step, the same interface container can be used continuously in two display states without the need to create a new interface object.

[0035] After the interface container is switched to floating state, the minimum and maximum display sizes of the interface container are constrained so that the interface container can be freely dragged and placed in the independent floating window state, avoiding the content display being affected by the size being too small, or the working area of ​​the industrial design software being excessively blocked by the size being too large; through this step, a floating interface container with size boundary control is obtained.

[0036] After each switch between docked and floating states, the updated current state identifier, current docking position, current window coordinates, and current window size are saved for use when obtaining the current state identifier later, and for use when restoring the interface state when the software is restarted. Through this step, interface state data is formed for subsequent state judgment and state restoration.

[0037] By performing the above steps, the interface container can switch between stable display in the sidebar area and free display as an independent floating window. This balances reducing the long-term occupation of the main interface work area by the fixed interface and improving the flexibility of interface placement. It also provides the state prerequisite for subsequent mouse position detection and display transparency adjustment, which are only performed in the floating state.

[0038] In some implementations, to illustrate the switching process between docked and floating states of the interface container, it is assumed that the boundary range of the sidebar area in the main interface of the industrial design software is: left boundary coordinate 0, top boundary coordinate 0, right boundary coordinate 320, and bottom boundary coordinate 1080. When the interface container is first displayed, it is in a docked state; the current state is marked as docked, the current docking position is marked as the left docking position, the current window coordinates are (40, 120), and the current window size is marked as (300, 860). When the user drags the interface container and detects that the current position of the interface container has changed to (460, 140), since the horizontal coordinate of the current position has exceeded the right boundary coordinate 320, the position is adjusted. The comparison result determines that the interface container has detached from the sidebar area. Subsequently, the attachment relationship between the interface container and the sidebar area is released, the interface container is switched to an independent floating window display mode, and the current status indicator is updated to floating state. The current window coordinates (460, 140) and current window size (300, 860) are written into the status record data. As another example, when the user continues to drag the independent floating window and the center point of the interface container re-enters the preset attachment range corresponding to the sidebar area, the position comparison result is determined to meet the reattachment condition. Subsequently, the interface container is reattached to the left sidebar area, and the current status indicator is updated to docked state, and the current docking position is updated to the left docking position. This example illustrates that the interface container can continuously switch between docked and floating states based on the inclusion relationship between its current position and the boundary range of the sidebar area, and the current status indicator, current docking position, current window coordinates, and current window size obtained after the switch continue to be used as input for subsequent mouse position detection and display control.

[0039] In some implementations, the processing objects are a floating interface container and the current mouse; the initial input includes the current state identifier, the current mouse screen coordinates, and the window rectangular area data of the interface container in the screen coordinate system; the window rectangular area data includes at least the left boundary coordinates, the top boundary coordinates, the right boundary coordinates, and the bottom boundary coordinates.

[0040] In specific implementation, the detailed steps for the display avoidance control unit to detect the position of the mouse relative to the interface container when the interface container is in a floating state include: The current state identifier corresponding to the interface container is read, and the consistency of the current state identifier with the preset floating state identifier value is judged. When the judgment result is consistent, it is determined that the interface container is currently in a floating state, and the mouse position detection process is started. When the judgment result is inconsistent, it is determined that the interface container is not currently in a floating state, the current round of mouse position detection ends, and the current display state of the interface container remains unchanged. Through this step, the mouse position detection is limited to be performed when the interface container is in a floating state.

[0041] After determining that the interface container is in a floating state, the position detection process is triggered according to the preset detection interval to form a continuous detection time. The preset detection interval is set according to the real-time requirements of position detection and the requirements of processing resources. Through this step, a continuously triggered position detection time sequence is obtained.

[0042] At each detection moment, the current mouse screen coordinates are obtained, resulting in the mouse's horizontal and vertical coordinates. These mouse screen coordinates serve as input data for subsequent comparisons with the rectangular area of ​​the interface container window. This step yields the current mouse position input data.

[0043] After obtaining the current mouse screen coordinates, the window rectangle area data of the current floating window of the interface container in the screen coordinate system is obtained, and the coordinates of the left boundary, the top boundary, the right boundary, and the bottom boundary are obtained. The window rectangle area data and the mouse screen coordinates are in the same screen coordinate system to ensure that the same coordinate reference is used in the subsequent comparison process. Through this step, the interface boundary input data for comparison with the mouse position is obtained.

[0044] The mouse's horizontal coordinate is compared with the coordinates of the left and right boundaries, and the mouse's vertical coordinate is compared with the coordinates of the top and bottom boundaries. When the mouse's horizontal coordinate is between the coordinates of the left and right boundaries, and the mouse's vertical coordinate is between the coordinates of the top and bottom boundaries, the mouse is determined to be inside the interface container. Otherwise, the mouse is determined to be outside the interface container. Through this step, the current position of the mouse relative to the interface container is determined.

[0045] The current position determination result is written into the mouse position status result, which includes at least the detection time, the current position status, and the position change indicator compared with the previous detection result. The current position status is used to indicate whether the mouse is inside or outside the interface container, and the position change indicator is used to indicate whether the current detection result is consistent with the previous detection result. Through this step, position status data is obtained for the subsequent display transparency adjustment process.

[0046] The current mouse position state result is compared with the previous mouse position state result. When the two results are the same, the result of no change in position state is output. When the two results are different, the result of change in position state is output. The result of change in position state and the current position state are used together for the subsequent display transparency adjustment process. Through this step, a continuous connection method of position detection - position state result - display transparency adjustment input is formed.

[0047] During the continuous operation of the position detection process, the most recent mouse position state result is retained as the comparison benchmark for the next detection moment, so that each subsequent position detection can determine whether a position switch has occurred from inside to outside or from outside to inside. Through this step, a continuous basis for comparing mouse position states is formed.

[0048] Through the above operations, when the interface container is in a floating state, the position state result of whether the mouse is inside or outside the interface container is continuously and clearly formed, and the position state change result is used as the direct input for the display transparency adjustment in the fourth title, so that the subsequent display transparency change is based on the position judgment that can be repeatedly executed.

[0049] To illustrate the mouse position detection process relative to the interface container, assume the interface container is currently floating, and the current state is identified as floating. The rectangular area data of the interface container in the screen coordinate system are: left boundary coordinates 520, top boundary coordinates 180, right boundary coordinates 860, and bottom boundary coordinates 760. At a certain detection moment, the current mouse screen coordinates are obtained as (610, 240). Since the mouse's horizontal coordinate 610 is between the left boundary coordinates 520 and the right boundary coordinates 860, and the mouse's vertical coordinate 240 is between the top boundary coordinates 180 and the bottom boundary coordinates 760, the current position is determined to be inside the interface container, and this current position is written into the mouse position status result. At the next detection moment, the current mouse screen coordinates are obtained as (910, 250). Since the mouse's horizontal coordinate 910 has exceeded the right boundary coordinates 860, the current position is determined to be outside the interface container. The current mouse position status result is then compared with the previous mouse position status result to obtain the result that the position status has changed. This example illustrates that the mouse position detection process can form the current position state and the position state change result based on the mouse screen coordinates and window rectangular area data in the same screen coordinate system, and then use the position state change result as input for the subsequent display transparency adjustment process.

[0050] In some implementations, the processing object is a floating interface container; the initial input includes the position state change result, the current position state, the current display transparency value of the interface container, the preset semi-transparent display transparency value, the preset full display transparency value, the transparency change duration, and the preset refresh interval; wherein, the preset semi-transparent display transparency value is used to characterize the target display transparency when the mouse is outside the interface container, and the preset full display transparency value is used to characterize the target display transparency when the mouse is inside the interface container.

[0051] In specific implementation, the display avoidance control unit, used to reduce the display transparency of the interface container when the mouse is detected outside the interface container while it is in a floating state, and to restore the display transparency of the interface container when the mouse is detected inside the interface container, includes the following implementation steps: Receive the position state change result and the current position state; when the position state change result indicates that the position state has not changed, keep the current display transparency value of the interface container unchanged; when the position state change result indicates that the position state has changed, enter the display transparency adjustment process. Through this step, the same transparency value is repeatedly set when the mouse is continuously hovering in the same position state.

[0052] When the current position indicates that the mouse is outside the interface container, the current display transparency value of the interface container is determined as the starting transparency value, and the preset semi-transparent display transparency value is determined as the target transparency value; when the current position indicates that the mouse is inside the interface container, the current display transparency value of the interface container is determined as the starting transparency value, and the preset fully transparent display transparency value is determined as the target transparency value. Through this step, the starting value and target value of this display transparency adjustment are obtained.

[0053] The duration of the transparency change corresponding to this display transparency adjustment is determined based on the current position state. When the current position state indicates that the mouse is outside the interface container, the time of leaving is obtained as the duration of transparency reduction. When the current position state indicates that the mouse is inside the interface container, the time of entering is obtained as the duration of transparency recovery. Through this step, the time control input corresponding to the current position state change is obtained.

[0054] Based on the initial transparency value, target transparency value, transparency change duration, and preset refresh interval, the number of transparency updates is determined, and the transparency setting value corresponding to each refresh moment is calculated to form a transparency change sequence arranged in chronological order. Each transparency setting value in the transparency change sequence corresponds to a refresh moment. Through this step, an intermediate transparency data sequence is obtained for gradually adjusting the display transparency.

[0055] In practice, the initial transparency value is the display transparency value of the interface container at the current moment, the target transparency value is the display transparency value to be achieved based on the current position and state, the transparency change duration is the total time taken from the initial transparency value to the target transparency value, and the preset refresh interval is the time interval between two adjacent transparency updates. When calculating the transparency change sequence, the number of transparency updates is first determined based on the transparency change duration and the preset refresh interval, and then the transparency change duration is divided into multiple consecutive refresh moments according to the number of transparency updates. Subsequently, for each refresh moment, the corresponding transparency setting value is calculated based on the time position of the refresh moment in the transparency change duration, so that the transparency setting value gradually approaches the target transparency value from the initial transparency value. After the transparency setting values ​​corresponding to all refresh moments have been calculated, the transparency setting values ​​are arranged in chronological order to form a transparency change sequence. This outputs the transparency change sequence arranged by time, which is used for subsequent writing of the display attributes of the interface container and performing smooth adjustment of the display transparency.

[0056] According to the transparency change sequence, the corresponding transparency setting value is written into the display property of the interface container one by one, so that the display transparency of the interface container gradually changes from the initial transparency value to the target transparency value, instead of jumping directly to the target transparency value at a single moment. Through this step, the display transparency of the interface container is smoothly adjusted.

[0057] When the target transparency value equals the preset semi-transparent display transparency value, the current display state of the interface container is updated to a low-occlusion display state; when the target transparency value equals the preset full-display transparency value, the current display state of the interface container is updated to a clear display state. Through this step, the same interface container reduces the occlusion of the industrial design software's working area when the mouse is not in the frame, and restores the readability of the interface content when the mouse enters the frame.

[0058] Once the display transparency of the interface container reaches the target transparency value, the target transparency value is written to the current display transparency record, and the current position state is written to the current position state record for use in the next round of position detection and the next display transparency adjustment. Through this step, the logic of position state result - display transparency adjustment - current transparency state update is formed.

[0059] Obtain preset transparency control configuration data and determine whether the transparency control configuration data indicates that custom parameters are enabled; when the transparency control configuration data indicates that custom parameters are enabled, read the semi-transparent target transparency value, departure time, entry time, and position detection interval from the transparency control configuration data, and replace the default parameters with the read semi-transparent target transparency value, departure time, entry time, and position detection interval; then, perform display transparency control of the interface container according to the replaced parameters. Through this step, adjustable display transparency control parameters are obtained.

[0060] Under the control of the above parameters, when the mouse is detected outside the interface container, the interface container reduces its display transparency according to the current parameters; when the mouse is detected inside the interface container, the interface container restores its display transparency according to the current parameters. Thus, while the interface container is continuously displayed, the occlusion of the interface container on the working area of ​​the industrial design software is reduced, and the readability and operability of the human-computer interaction interface are maintained.

[0061] To illustrate the transparency adjustment process, assume the current transparency value of the interface container is 1.00, the preset semi-transparent transparency value is 0.45, the preset full transparency value is 1.00, the leave duration is 0.30 seconds, the entry duration is 0.20 seconds, and the preset refresh interval is 0.05 seconds. When the position change indicates that the mouse has moved from inside the interface container to outside, 1.00 is determined as the initial transparency value, 0.45 is determined as the target transparency value, and 0.30 seconds is determined as the transparency change duration. Subsequently, the number of transparency updates is determined based on the transparency change duration and the preset refresh interval, and a transparency change sequence is calculated, such as 1.00, 0.91, 0.82, 0.73, 0.64, 0.55, 0.45. Then, the transparency is adjusted in chronological order. Each transparency setting is sequentially written into the display properties of the interface container, gradually reducing the container's transparency to 0.45 and updating the current display state to a low-occlusion state. As another example, when the mouse is subsequently detected re-entering the interface container, the current transparency value of 0.45 is determined as the initial transparency value, 1.00 as the target transparency value, and 0.20 seconds as the transparency recovery time. A transparency change sequence for recovery is calculated, such as 0.45, 0.59, 0.73, 0.86, and 1.00. Subsequently, the interface container's display properties are updated sequentially according to this transparency change sequence. Upon reaching the target transparency value of 1.00, the current display state is updated to a clear display state, and the target transparency value is written into the current transparency record. This example illustrates that the interface container can perform smooth transparency adjustments based on changes in mouse position, rather than abruptly changing the display, thus maintaining continuous interface usability while reducing occlusion of the industrial design software's working area.

[0062] In some implementations, the processing objects are the interactive interface carrier unit set inside the interface container, the human-computer dialogue interface, and the interactive data input by the user through the human-computer dialogue interface; the initial input includes front-end page resources, user input content, page operation event data, and tool call request data generated by the front-end page; wherein, the interactive interface carrier unit is built based on embedded browser controls and is used to carry and display the human-computer dialogue interface.

[0063] In specific implementation, the interactive interface carrier unit, built based on embedded browser controls, is used to provide a human-computer dialogue interface and receive tool call requests initiated by users through the human-computer dialogue interface. Detailed implementation steps include: Step 41: After creating the embedded browser control inside the interface container, use the embedded browser control to load the front-end page resources to form an interactive interface carrier unit. The interactive interface carrier unit provides a human-computer dialogue interface inside the interface container to display historical dialogue content, display tool execution results, display prompt information, and receive user input. Through this step, an interactive interface carrier unit based on the embedded browser control is formed.

[0064] Step 42: Receive user input content and page operation event data in the human-computer dialogue interface; user input content includes text input content, and page operation event data includes event data corresponding to sending operations, tool selection operations, or interface control operations. Through this step, the interactive input data initiated by the user through the human-computer dialogue interface is obtained.

[0065] Step 43: When a user triggers a send operation or tool call operation through the human-computer dialogue interface, the front-end page organizes the corresponding interactive input data to form a tool call request. The tool call request includes at least a tool identifier, tool parameters, and a request source identifier. The tool identifier is used to identify the target tool to be called, the tool parameters are used to identify the input parameters required for the target tool to execute, and the request source identifier is used to identify that the tool call request originates from the current human-computer dialogue interface. Through this step, structured tool call request data is obtained.

[0066] Step 44: The interactive interface carrier unit writes the tool call request into the message transmission channel and sends it to the message receiving process on the main program side of the industrial design software. This enables the main program of the industrial design software to receive the tool call request initiated by the user through the human-computer dialogue interface. Through this step, a tool call request transmission link is formed from the interactive interface carrier unit to the main program of the industrial design software.

[0067] Step 45: After the tool call request is sent, the interactive interface carrying unit retains the request identifier and interface context identifier corresponding to the current request so that when the tool execution result is returned later, the corresponding tool execution result is written back to the corresponding display position in the current human-computer dialogue interface. Through this step, the basis for the correspondence between the tool call request and the subsequent execution result is formed.

[0068] When the user continues to input new text content or trigger new page operation events in the human-computer dialogue interface, steps 42 to 45 are repeated to continuously receive new tool call requests and send them to the main program of the industrial design software. Through this step, the interactive interface carrier unit has the ability to continuously receive tool call requests. Through the above steps, the interactive interface carrier unit built based on embedded browser controls continuously provides the human-computer dialogue interface inside the interface container, and converts the tool call requests initiated by the user through the human-computer dialogue interface into structured request data that can be received by the main program of the industrial design software, thereby providing clear input for the subsequent asynchronous execution of the interaction process.

[0069] In some implementations, the processing objects are tool call requests, independent worker threads, tool execution results, and interactive interface units; the initial inputs include tool call requests, the request identifier corresponding to the tool call requests, and the tool execution interface provided by the main program of the industrial design software; wherein, the independent worker thread runs independently of the interface response process of the main interface of the industrial design software and is used to execute the tool processing tasks corresponding to the tool call requests.

[0070] In specific implementation, the asynchronous execution interaction unit is used to send tool call requests to an independent worker thread for execution and return the tool execution results to the interaction interface hosting unit. The implementation steps for achieving bidirectional data interaction between the interaction interface hosting unit and the main program of the industrial design software without blocking the main program's operation include: Step 51: After the main program of the industrial design software receives the tool call request, it parses the tool call request, extracts the tool identifier, tool parameters and request identifier, and determines the corresponding target tool execution process based on the tool identifier. Through this step, the execution object and execution parameters required for the subsequent tool execution process are obtained.

[0071] Step 52: After determining the target tool execution process, do not directly execute the target tool execution process in the interface response process of the main interface of the industrial design software. Instead, create or call an independent working thread and send the tool call request to the independent working thread. Through this step, the tool execution process is separated from the interface response process of the main interface of the industrial design software.

[0072] Step 53: In an independent working thread, the corresponding target tool execution process is invoked based on the tool identifier, and the tool parameters are passed as input to the target tool execution process to execute the processing task corresponding to the tool invocation request. The processing task can be a data acquisition task, a data calculation task, an object query task, or other tool processing tasks supported by the main program of the industrial design software. Through this step, the tool execution result corresponding to the tool invocation request is obtained.

[0073] Step 54: After the target tool execution process is completed in an independent worker thread, the obtained tool execution results are organized into result return data. The result return data includes at least a request identifier, result content, and result status identifier. The request identifier is used to indicate which tool call request the tool execution result corresponds to, the result content is used to indicate the data content or prompt content obtained by the tool execution, and the result status identifier is used to indicate whether the tool execution result was successfully generated. Through this step, structured result data that can be returned to the interactive interface carrier unit is obtained.

[0074] Step 55 involves sending the result return data from the independent working thread to the result feedback process on the main program side of the industrial design software. The result feedback process then sends the result return data to the corresponding interactive interface carrier unit based on the request identifier. Through this step, a tool execution result feedback link is formed from the independent working thread to the interactive interface carrier unit.

[0075] Step 56: After receiving the result return data, the interactive interface carrying unit obtains the request identifier, result content and result status identifier, locates the display position corresponding to the request identifier in the current human-computer dialogue interface according to the request identifier, and then writes the result content into the display position to display the tool execution result in the human-computer dialogue interface. Through this step, the write-back display of the tool execution result in the interactive interface carrying unit is completed.

[0076] Step 57: During the execution of the target tool in the independent working thread, the interface response process of the main program of the industrial design software continues to run, so that the user can continue to operate the main interface and interactive interface carrier unit of the industrial design software without waiting for the current tool call request to finish. Through this step, an asynchronous interactive effect is achieved without blocking the operation of the main program of the industrial design software.

[0077] Step 58: When the interactive interface carrier unit continues to send new tool call requests, steps 51 to 57 are repeated to continuously realize bidirectional data interaction between the interactive interface carrier unit and the main program of the industrial design software based on tool call requests and tool execution results. Through this step, a continuous asynchronous interaction method is formed: request sending - independent work thread execution - result return - interface display.

[0078] Through the above operations, the tool call request initiated by the user through the interactive interface unit is handed over to an independent worker thread for execution. After the execution is completed, the tool execution result is returned to the interactive interface unit for display. This avoids the tool execution process occupying the interface response process of the industrial design software's main interface, ensuring that the main program of the industrial design software can continue to run during tool execution, and realizing bidirectional data interaction between the interactive interface unit and the main program of the industrial design software. In some implementations, to illustrate the asynchronous execution and result return process of tool call requests, it is assumed that a user inputs "count the number of bolts in the current assembly" in the human-machine interface and triggers a send operation. After receiving the user input, the interactive interface carrying unit organizes the interactive input data to form a tool call request. The tool identifier is "assembly object statistics tool," the tool parameters include the current assembly identifier and the statistics object type as "bolt," the request identifier is REQ-20260320-001, and the request source identifier is the current human-machine interface. Subsequently, the interactive interface carrying unit writes the tool call request into the message transmission channel and sends it to the message receiving process on the main program side of the industrial design software. After receiving the tool call request, the main program of the industrial design software parses the tool identifier, tool parameters, and request identifier, determines the target tool execution process based on the tool identifier, creates an independent working thread, and sends the tool call request to the independent working thread for execution. In an independent worker thread, the object set in the current assembly is read based on the current assembly identifier. The object types in the object set are then filtered and counted, resulting in a total of 48 bolt objects. Subsequently, the statistical results are organized into return data, which includes the request identifier REQ-20260320-001, the result content "The number of bolts in the current assembly is 48," and the result status identifier "Execution successful." The industrial design software main program sends the return data to the corresponding interactive interface unit based on the request identifier REQ-20260320-001. Upon receiving the return data, the interactive interface unit locates the corresponding display position in the human-computer dialogue interface based on the request identifier and writes the result content to that display position to show the tool execution result. This example illustrates that tool call requests can be executed by an independent worker thread without blocking the response process of the industrial design software main program interface, and the result is returned to the corresponding human-computer dialogue interface position, thus forming a continuous processing process of request sending, asynchronous execution, result return, and interface display.

[0079] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of protection of [the relevant authority / entity].

Claims

1. A non-modal intelligent assistant interactive interface system for industrial design software, characterized in that, include: Interface container unit, used to create and display intelligent assistant interface containers in the main interface of industrial design software; The docking state management unit controls the switching of the interface container between docked and floating states. In the docked state, the interface container is attached to the sidebar area of ​​the main interface of the industrial design software; in the floating state, the interface container detaches from the sidebar area to form an independent floating window. The method for controlling the switching between docked and floating states includes: after the interface container is first displayed, establishing state record data, including the current state identifier, current docking position, current window coordinates, and current window size; listening for drag operations on the interface container, and obtaining the current position of the interface container when a drag operation is detected; determining the inclusion relationship between the current position of the interface container and the boundary range of the sidebar area to obtain a position comparison result; when the current state identifier indicates that the interface container is in the docked state and the position comparison result indicates that the interface container has detached from the sidebar area, switching the interface container to an independent floating window and updating the current state identifier, current window coordinates, and current window size; when the current state identifier indicates that the interface container is in the floating state and the position comparison result indicates that the interface container has entered a preset attachment range, switching the interface container to the docked state and updating the current state identifier and current docking position. The display avoidance control unit is used to detect the position of the mouse relative to the interface container when the interface container is in a floating state, and to reduce the display transparency of the interface container when the mouse is detected outside the interface container, and to restore the display transparency of the interface container when the mouse is detected to enter the interface container. The method for reducing or restoring the display transparency of the interface container includes: when the mouse is detected outside the interface container, determining a starting transparency value based on the current display transparency value of the interface container, determining a target transparency value based on a preset semi-transparent display transparency value, and obtaining the time of departure as the transparency change duration; when the mouse is detected to enter the interface container, determining a starting transparency value based on the current display transparency value of the interface container, determining a target transparency value based on a preset full display transparency value, and obtaining the time of entry as the transparency change duration; calculating a transparency change sequence based on the starting transparency value, the target transparency value, the transparency change duration, and a preset refresh interval, and updating the display transparency of the interface container according to the transparency change sequence. The interactive interface carrier unit is built based on embedded browser controls and is used to provide a human-computer dialogue interface and receive tool call requests initiated by users through the human-computer dialogue interface. The asynchronous execution interaction unit is used to send tool call requests to an independent worker thread for execution and return the tool execution results to the interaction interface carrier unit, so as to realize bidirectional data interaction between the interaction interface carrier unit and the main program of the industrial design software without blocking the operation of the main program of the industrial design software.

2. The non-modal intelligent assistant interactive interface system for industrial design software according to claim 1, characterized in that, The method for creating and displaying the intelligent assistant interface container includes: after the main interface is initialized in the industrial design software, obtaining preset interface configuration data, and extracting the interface title, icon resources, default docking position, initial display size, minimum display size, and front-end page loading path from the preset interface configuration data; creating a dockable interface container according to the interface creation interface, and writing the interface title, icon resources, initial display size, and minimum display size into the interface container; creating an embedded browser control inside the interface container, and loading the front-end page resources according to the front-end page loading path to construct the interactive interface carrier unit; registering a message receiving process for the interactive interface carrier unit; and mounting the interface container to the sidebar area according to the default docking position and performing the initial display.

3. The non-modal intelligent assistant interactive interface system for industrial design software according to claim 1, characterized in that, The method for constructing a human-computer dialogue interface and receiving tool call requests initiated by users through the human-computer dialogue interface includes: loading front-end page resources using an embedded browser control to form an interactive interface carrier unit, and having the interactive interface carrier unit provide the human-computer dialogue interface; receiving user input content and page operation event data in the human-computer dialogue interface; and organizing the interactive input data to form a tool call request when the user triggers a send operation or tool call operation through the human-computer dialogue interface.

4. The non-modal intelligent assistant interactive interface system for industrial design software according to claim 1, characterized in that, A method for achieving bidirectional data interaction between the interactive interface carrier unit and the main program of the industrial design software without blocking the operation of the main program includes: after the main program of the industrial design software receives a tool call request, it parses the tool call request and determines the execution process of the target tool based on the parsing result; it creates or calls an independent working thread and sends the tool call request to the independent working thread; it executes the execution process of the target tool in the independent working thread to obtain the tool execution result, while the interface response process of the main program of the industrial design software remains running and organizes the tool execution result into result return data; and it sends the result return data to the corresponding interactive interface carrier unit according to the request identifier, so that the interactive interface carrier unit displays the tool execution result in the human-computer dialogue interface.

5. A non-modal intelligent assistant interactive interface system for industrial design software according to claim 1, characterized in that, The current position of the interface container is the position data of the current display area of ​​the interface container in the coordinate system of the main interface. The position data includes the coordinates of the upper left corner of the interface container or the coordinates of the center point of the interface container. The boundary range of the sidebar area includes the coordinates of the left boundary, the upper boundary, the right boundary, and the lower boundary. When the current position of the interface container is between the coordinates of the left boundary and the right boundary, and between the coordinates of the upper boundary and the lower boundary, it is determined that the interface container is located within the sidebar area.

6. A non-modal intelligent assistant interactive interface system for industrial design software according to claim 1, characterized in that, After updating the display transparency of the interface container according to the transparency change sequence, when the target transparency value is equal to the preset semi-transparent display transparency value, the current display state of the interface container is updated to the low occlusion display state. When the target transparency value equals the preset full display transparency value, the current display state of the interface container is updated to the clear display state, and the target transparency value is written into the current display transparency record.

7. A non-modal intelligent assistant interactive interface system for industrial design software according to claim 5, characterized in that, The returned data includes the request identifier, the result content, and the result status identifier; After receiving the result return data, the interactive interface carrying unit obtains the request identifier, result content, and result status identifier, and locates the corresponding display position in the human-computer dialogue interface according to the request identifier, writes the result content into the corresponding display position, and displays the tool execution result.

8. A non-modal intelligent assistant interactive interface system for industrial design software according to claim 1, characterized in that, The method for reducing or restoring the display transparency of an interface container also includes: obtaining preset transparency control configuration data and determining whether the transparency control configuration data indicates that custom parameters are enabled; when the transparency control configuration data indicates that custom parameters are enabled, reading the preset semi-transparent display transparency value, leave duration, enter duration and preset refresh interval in the transparency control configuration data, and replacing the default parameters with the read preset semi-transparent display transparency value, leave duration, enter duration and preset refresh interval.

Citation Information

Patent Citations

  • Display device and focus control method

    CN116339570A

  • Resource recommendation method and device and storage medium

    CN120256728A