Display method and device, equipment and storage medium

By determining the target key points and their movement direction in the simulation software, and calculating the target position in combination with user interaction operations, the problem of poor movement effect when users adjust the model structure is solved, and the execution efficiency of simulation services is improved.

CN119668764APending Publication Date: 2025-03-21CHENGDU GONGDING TECHNOLOGY CO LTD +2
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411843160.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-13
Publication Date
2025-03-21

AI Technical Summary

Technical Problem

In simulation software, when users adjust the model structure by dragging and dropping key points, the movement effect is poor, resulting in poor display effect and reducing the execution efficiency of simulation services.

Method used

By determining the target key point and its movement direction, combining the interaction vectors in user interaction operations, the target position of the target key point is calculated, and the three-dimensional model is adjusted according to the location to display the data.

Benefits of technology

Ensure that the distance of the target key points moving in the moving direction meets the constraints, and ensure that the moving three-dimensional model structure follows the constraints, thereby improving the execution efficiency of simulation services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119668764A_ABST
    Figure CN119668764A_ABST
Patent Text Reader

Abstract

The invention discloses a display method and device, equipment and a storage medium, and the method comprises the steps: determining a target key point of a target part, determining a moving direction of the target key point from a plurality of preset candidate directions, and carrying out the movement of the target key point after an end point of an interaction vector of a user in a user interface is operated according to the interaction of the user. And according to the endpoint of the interaction vector and the moving direction, determining a target position which can be used for representing the moving distance of the target key point along the moving direction after the interaction operation, and finally, according to the target position, determining display data. Thus, the moving distance of the target key point in the moving direction can be determined, under the condition that the moving direction follows the constraint condition, it can be naturally guaranteed that the moved three-dimensional model structure also follows the constraint condition, and the execution efficiency of simulation services is further guaranteed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a display method, device, equipment and storage medium. Background Art

[0002] With the development of computer technology, simulation software is used more and more widely in people's lives. During the simulation process, users are usually required to adjust the model structure in the simulation software according to their own needs.

[0003] Currently, for each component in the model structure, the component may have a corresponding key point, and the user may change the position or shape of the component by dragging the key point.

[0004] However, for each component, the display effect of the component is often not good during the movement. Based on this, the present application provides a display method. Summary of the invention

[0005] The present application provides a display method, device, equipment and storage medium to partially solve the above-mentioned problems existing in the prior art.

[0006] This application adopts the following technical solutions:

[0007] The present application provides a display method, which includes:

[0008] Determine the target key point, and determine the moving direction of the target key point from a plurality of preset candidate directions;

[0009] In response to the user's interactive operation, determining an endpoint of an interaction vector on the user interface;

[0010] According to the endpoint and the moving direction of the interaction vector, the target position of the target key point is determined. The target position is used to represent the moving distance of the target key point along the moving direction under the action of the interaction operation;

[0011] According to the target position of the target key point, the display data is determined and displayed.

[0012] Optionally, determining a target key point and determining a moving direction of the target key point from a plurality of preset candidate directions includes:

[0013] In response to the display request, determining a three-dimensional model corresponding to the display request, and displaying the three-dimensional model in a user interface;

[0014] Determine the target component according to the selection operation of the user in the user interface;

[0015] Determine a plurality of preset candidate directions of the target component, and present the plurality of preset candidate directions to the user;

[0016] Determine the moving direction according to the user's selection operation of the target candidate direction among the preset multiple candidate directions;

[0017] Determine the target key point from the key points corresponding to the target component.

[0018] Optionally, determining a target position of a target key point according to an endpoint and a moving direction of the interaction vector includes:

[0019] Determine a mapping relationship between the three-dimensional space where the three-dimensional model where the target key point is located and the two-dimensional space where the user interface is located;

[0020] Determine a designated vector corresponding to the interaction vector in the three-dimensional space according to the mapping relationship and the endpoints of the interaction vector;

[0021] The target vector is determined according to the specified vector and the moving direction, wherein the end point of the target vector is the target position of the target key point, and the target vector is used to represent the distance when the interaction vector is projected along the moving direction.

[0022] Optionally, determining a target vector according to a specified vector and a moving direction includes:

[0023] According to the moving direction, determine from the three-dimensional space an intermediate vector located in a first plane and a second plane at the same time, the first plane is a plane where the specified vector is located, the second plane is a plane where the moving direction is located, and the first plane and the second plane are perpendicular to each other;

[0024] Determine the projection of the specified vector on the intermediate vector as the first projection;

[0025] The target vector is determined according to the first projection and the angle between the intermediate vector and the moving direction, wherein the projection of the target vector on the intermediate vector has the same length as the first projection.

[0026] Optionally, the target component is located in the target structure, and the display data is determined according to the target position of the target key point, including:

[0027] If there is only one key point of the target component corresponding to the target key point, the position of the target component is moved according to the target position, and the three-dimensional model of the target structure is adjusted according to the moved target component;

[0028] If the target key point corresponds to a plurality of key points of the target component, the three-dimensional structure of the target component is adjusted according to the target position, and the three-dimensional model of the target structure is adjusted according to the adjusted target component;

[0029] Determine the display data based on the adjusted three-dimensional model.

[0030] Optionally, it also includes:

[0031] Determine the constraint relationships corresponding to each component in the three-dimensional model;

[0032] Determine whether each component in the display data satisfies the constraint relationship;

[0033] If any result is no, a prompt message is sent, which is used to inform the user that there is an abnormality in the interactive operation.

[0034] Optionally, display data is determined according to the adjusted three-dimensional model, including:

[0035] Determine the starting position of the target key point, and determine the moving trajectory of the target key point based on the starting position and the target position;

[0036] Determine the display data based on the movement trajectory and the adjusted three-dimensional model.

[0037] The present application provides a display device, comprising:

[0038] A determination module is used to determine a target key point and determine a moving direction of the target key point from a plurality of preset candidate directions;

[0039] A response module, configured to determine an endpoint of an interaction vector on a user interface in response to an interaction operation of the user;

[0040] A mapping module is used to determine the target position of the target key point according to the endpoint and the moving direction of the interaction vector, and the target position is used to represent the moving distance of the target key point along the moving direction under the action of the interaction operation;

[0041] The display module is used to determine the display data according to the target position of the target key point and display the display data.

[0042] The present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the above-mentioned display method is implemented.

[0043] The present application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the above-mentioned display method when executing the program.

[0044] At least one of the above technical solutions adopted in this application can achieve the following beneficial effects:

[0045] By determining the target key point of the target component and determining the moving direction of the target key point from multiple preset candidate directions, after the endpoint of the interaction vector of the user in the user interface according to the user's interactive operation, the target position that can be used to characterize the moving distance of the target key point along the moving direction after the interactive operation is determined according to the endpoint of the interaction vector and the moving direction, and finally the display data is determined according to the target position.

[0046] In this way, the distance moved by the target key point in the moving direction can be determined. When the moving direction complies with the constraints, the three-dimensional model structure after the movement can naturally be guaranteed to comply with the constraints, further ensuring the execution efficiency of the simulation business. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0048] Figure 1 A flow chart of a display method provided in this application;

[0049] Figure 2 A schematic diagram of the target vector provided for this specification;

[0050] Figure 3 A schematic diagram of the structure of a display device provided in this application;

[0051] Figure 4 The corresponding Figure 1 Schematic diagram of electronic equipment. DETAILED DESCRIPTION

[0052] In order to make the purpose, technical solution and advantages of the present application clearer, the technical solution of the present application will be clearly and completely described below in combination with the specific embodiments of the present application and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present application.

[0053] It should be noted that all actions to obtain signals, information or data in this application are carried out in compliance with the relevant data protection laws and policies of the location and with the authorization given by the owner of the corresponding device.

[0054] The technical solutions provided by various embodiments of the present application are described in detail below in conjunction with the accompanying drawings.

[0055] At present, one of the most common simulation software is computer-aided interactive software, in which users are usually required to interact with the software through a mouse and a display screen. Therefore, during simulation, the vector formed by the sliding of the mouse or the part clicked by the user on the screen can be determined through the user's operation data on the mouse or the display screen, and the 3D model structure of the software can be changed according to the vector.

[0056] However, for each component, the moving direction of the component usually needs to follow certain constraints. When the user directly drags the key points of the component, it is easy for the component to not match the constraints after moving. For example, the moving direction of the component needs to follow the condition: move along the X direction. However, when the user directly drags the key points of the component, it is easy for the line between the final position and the starting position of the component to appear, that is, the moving direction of the component is not along the X direction.

[0057] In this case, the simulation software may not be able to change the three-dimensional model structure in the software based on the moved components and display the changed three-dimensional model structure to the user, resulting in poor display effect and reduced execution efficiency of the simulation business.

[0058] Based on this, this specification provides a display method, by determining the target key point of the target component and the moving direction of the target key point, after determining the endpoint of the user's interaction vector in the screen according to the user's interactive operation, according to the endpoint of the interaction vector and the moving direction, determine the target position that can be used to characterize the moving distance of the target key point along the moving direction after the interactive operation, and finally determine the display data according to the target position. In this way, the distance moved by the target key point in the moving direction can be determined. In the case where the moving direction follows the constraint conditions, it can naturally ensure that the three-dimensional model structure after the movement also follows the constraint conditions, further ensuring the execution efficiency of the simulation business.

[0059] Figure 1 A flowchart of a display method provided in this application.

[0060] S100: Determine a target key point, and determine a moving direction of the target key point from a plurality of preset candidate directions.

[0061] The embodiment of the present application provides a display method, and the execution process of the display method can be executed by electronic devices such as servers and terminals used to execute simulation services. Among them, the electronic external device can be a terminal held by a user such as a mobile phone, a tablet computer, a smart device, or a display panel provided by a service provider to a user. For the convenience of description, the following description will be made by taking a server used to execute services as an example of the execution subject of the display method.

[0062] In order to avoid the current situation in which the data after dragging cannot be displayed or the display effect is poor due to the user directly dragging the key point during simulation, the present specification provides a new display method, which determines the target key point of the target component and the moving direction of the target key point, and after determining the endpoint of the user's interaction vector in the user interface according to the user's interaction operation, determines the target position that can be used to characterize the moving distance of the target key point along the moving direction after the interaction operation according to the endpoint of the interaction vector and the moving direction, and finally determines the display data according to the target position.

[0063] Based on the above brief description of the display method in this specification, it is obvious that the server can first determine the target key point and the moving direction of the target key point.

[0064] Specifically, the server may determine the three-dimensional model of the target structure that needs to be operated in this simulation. Taking a vehicle as an example, the target structure may be the entire vehicle, or one of the structures that constitute the vehicle, such as a suspension or a base of the vehicle.

[0065] Then, the server may determine the target component from among the components included in the three-dimensional model, and determine the target key point from among the key points included in the target component.

[0066] Finally, the server may determine a plurality of candidate directions of the target component, and determine the moving direction of the target key point from the plurality of candidate directions, wherein the plurality of candidate directions of the target component may be preset.

[0067] It should be noted that the candidate directions corresponding to the components in the target structure may be the same direction or different directions.

[0068] S102: In response to an interactive operation of a user, determining an endpoint of an interaction vector on a user interface.

[0069] In one or more embodiments provided in this specification, as mentioned above, this specification needs to determine the target position of the target key point after the user performs an interactive operation. Therefore, the server may first determine the interaction vector corresponding to the user's interactive operation.

[0070] Specifically, the user may perform an interactive operation, wherein the interactive operation may be dragging a mouse, sliding a touch screen, or the like.

[0071] Therefore, when the user performs an interactive operation, the server may determine an interactive vector according to the interactive operation performed by the user.

[0072] In one example, taking the user performing a mouse drag operation as an example, when the user presses the left mouse button, the server can determine that the user starts to perform an interactive operation. At this time, the position of the mouse in the user interface coordinate system can be recorded as the starting endpoint of the interaction vector. As the user continues to operate, the system continuously updates the record until the user releases the left mouse button, and the server can determine that the user ends the interactive operation. At this time, the position of the mouse is the ending endpoint of the interaction vector. Among them, this interaction vector accurately represents the user's operating intention on the user interface (such as which direction to move the target key point) and displacement information (the distance of movement in the user interface coordinate system).

[0073] S104: Determine a target position of the target key point according to the endpoint of the interaction vector and the moving direction, wherein the target position is used to represent a moving distance of the target key point along the moving direction under the action of the interaction operation.

[0074] In one or more embodiments provided in this specification, as mentioned above, it is necessary to determine the target position of the target key point after the user performs an interactive operation and moves along the moving direction. Based on this, the server can determine the target position of the target key point according to the endpoint of the interactive vector and the moving direction.

[0075] Specifically, since the three-dimensional space where the user interface coordinate system and the three-dimensional model of the target structure are located are two different spaces, the server can first project the interaction vector into the three-dimensional space, and then determine the moving distance of the target key point in the moving direction based on the vector in the three-dimensional space.

[0076] Therefore, the server can transform the interaction vector from the user interface coordinate system to the three-dimensional space coordinate system. The server can transform the interaction vector from the user interface coordinate system to the three-dimensional space coordinate system through a projection matrix, a view matrix, and the like.

[0077] Then, according to the moving direction information, the converted interaction vector is scaled and positioned along the specified direction in the three-dimensional space, thereby determining the target position of the target key point in the three-dimensional space.

[0078] Among them, this target position accurately reflects the movement distance of the target key point along the set movement direction in three-dimensional space under the action of user interaction.

[0079] S106: Determine display data according to the target position of the target key point, and display the display data.

[0080] In one or more embodiments provided in this specification, after determining the target position of the target key point, the server may adjust the three-dimensional model of the target structure according to the target position to determine the display data, and display the determined display data.

[0081] Specifically, the server may adjust the target component according to the target position of the target key point, and update the three-dimensional model of the target structure according to the adjusted target component, and display the updated three-dimensional model as display data in a user interface (eg, a display screen).

[0082] In one example, the display data may also include the new coordinate value of the target key point (the specific position in the three-dimensional space coordinate system), the displacement of the target key point relative to the original position (including the displacement components in the directions of each coordinate axis), the direction information of the target key point after movement (such as the angle with the coordinate axis, etc.), and other geometric information related to the target key point (such as the relative position relationship in the model, the impact on the overall shape or structure of the model, etc.).

[0083] In one example, the server may display the display data on the user interface in an appropriate manner, such as displaying coordinate values ​​and displacements in text form in a specific area of ​​the user interface, displaying direction information in a graphical manner (such as arrows, lines, etc.), or displaying relevant geometric information in the form of a floating window next to the model, so that users can intuitively understand the operation results and make subsequent decisions.

[0084] like Figure 1 The display method shown determines the target key point of the target component, and determines the moving direction of the target key point from a plurality of preset candidate directions. After the endpoint of the interaction vector of the user in the user interface according to the user's interactive operation, the target position that can be used to characterize the moving distance of the target key point along the moving direction after the interactive operation is determined according to the endpoint of the interaction vector and the moving direction. Finally, the display data is determined according to the target position. In this way, the distance moved by the target key point in the moving direction can be determined. When the moving direction complies with the constraint conditions, the three-dimensional model structure after the movement can naturally be guaranteed to comply with the constraint conditions, thereby further ensuring the execution efficiency of the simulation business.

[0085] Further, step S100 may also include: in response to a display request, determining a three-dimensional model corresponding to the display request, and displaying the three-dimensional model in a user interface, determining a target component according to a selection operation of a user in the user interface, and then determining a plurality of preset candidate directions of the target structure, and displaying the plurality of candidate directions to the user, and determining a moving direction as a moving direction of a target key point according to a selection operation of a user on a target candidate direction among the plurality of candidate directions. Finally, a target key point is determined from the key points corresponding to the target component.

[0086] Specifically, when a user triggers a display request in an application (for example, clicking an "Open Model" button in a software interface or selecting a model to be operated in a specific model management interface), the server may receive the display request and determine a three-dimensional model of a target structure corresponding to the display request.

[0087] Afterwards, the server system can load the 3D model into memory and display it on the user interface according to preset display rules and current display settings (such as view mode, rendering style, etc.).

[0088] Then, the user can perform selection operations in the three-dimensional model displayed on the user interface (such as clicking a component of the model with a mouse, using a box selection tool to select multiple components in the target structure, etc.).

[0089] The server can monitor the user's operation, and when a selection operation is detected, the server determines the target component selected by the user based on the geometric relationship between the mouse click position or the selected area and the components in the model.

[0090] For a determined target component (which can be a single component or a substructure composed of multiple components), the server can determine its possible moving direction based on its geometric shape, functional characteristics, the constraints on the moving direction it needs to satisfy, and the three-dimensional space coordinate system it is in. For example, for a wheel in a vehicle suspension model, usually there is an axle connecting the left and right wheels, and the moving direction of the wheel can be the direction of the straight line where the axle is located.

[0091] Afterwards, the server may display its possible moving directions to the user, such as providing direction selection buttons on the interface, each button corresponding to a specific moving direction, and displaying the corresponding direction name or icon.

[0092] The user selects one of the displayed moving directions by clicking the mouse, using keyboard shortcuts, or other interactive methods. The system detects the user's selection operation in real time, and when the user selects a moving direction, it determines it as the moving direction of the target key point.

[0093] Finally, the key point information of the target component can be pre-defined in the server, and the server can determine the final target key point from multiple key points of the target component according to default rules (such as selecting the first key point, selecting the key point closest to the user-selected point, etc.) or providing the user with an interface for further selection (such as popping up a key point list for the user to select).

[0094] In one example, the server may also receive a display request from the user for the target component, and display the three-dimensional model of the target component in the user interface according to the display request, and determine the target key point from the key points corresponding to the target component according to the user's selection operation.

[0095] This embodiment of the specification responds to display requests and determines the target key points according to the user's selection operation on the screen, so that the user can accurately select the parts and key points that he wants to operate in a complex three-dimensional model. This precise positioning helps to improve the pertinence of subsequent operations and avoid misoperation of other irrelevant parts, especially in large models or scenes containing many parts, which can significantly improve operation efficiency.

[0096] At the same time, by presetting the possible moving directions of the target component where the target key point is located, the user is provided with clear operation direction guidance. The user no longer needs to rely on experience or repeated attempts to determine the correct moving direction, reducing the blindness of the operation.

[0097] Further, step S104 may include: determining a mapping relationship between the three-dimensional space where the three-dimensional model where the target key point is located and the two-dimensional space where the user interface is located; determining a designated vector corresponding to the interaction vector in the three-dimensional space based on the mapping relationship and the endpoint of the interaction vector; determining the target vector based on the designated vector and the moving direction, wherein the position of the end point of the target vector is the target position of the target key point, and the target vector is used to represent the distance when the interaction vector is projected along the moving direction.

[0098] Specifically, first, the server can obtain the relevant parameters of the three-dimensional space coordinate system where the current three-dimensional model is located and the two-dimensional space coordinate system where the user interface is located, including the origin position, coordinate axis direction and unit scale, etc. Then, the mapping relationship between the two is determined by calculating the transformation matrix such as the projection matrix and the view matrix.

[0099] Then, the server can use the determined mapping relationship and the endpoint of the interaction vector to convert the interaction vector into a vector in the three-dimensional space through matrix transformation calculation. The specific calculation process is to multiply the endpoint coordinates in the user interface coordinate system by the inverse matrix in the mapping relationship to obtain the corresponding point coordinates in the three-dimensional space coordinate system, and then determine the specified vector in the three-dimensional space through these two three-dimensional point coordinates.

[0100] Finally, the server can find the projection of the specified vector in the moving direction from the three-dimensional space according to the predetermined moving direction as the target vector.

[0101] In this way, the server can determine the component of the designated vector along the moving direction in the three-dimensional space, and use the component of the designated vector along the moving direction as the target vector, thereby achieving the purpose of determining the target position of the target key point.

[0102] Furthermore, if the component of the designated vector along the moving direction is directly used as the target vector, the user's mouse may be moving, but the user's mouse moves 10 centimeters on the screen, but the key point only moves 2 centimeters. Obviously, this is poorly visible to the user, and it is easy to be unable to see with the naked eye whether the key point has moved into place. Based on this, the server can also determine the target vector in the following manner according to the direction of the designated vector and the moving direction in step S100. Therefore, the server can also determine the intermediate vector that is perpendicular to the designated vector and the moving direction in three-dimensional space, and then determine the target vector based on the intermediate vector.

[0103] Specifically, the server can obtain the coordinate system information of the three-dimensional space, and determine the intermediate vector that is located on the first plane where the specified vector is located and the second plane where the unit vector in the moving direction is located from the three-dimensional space. The first plane and the second plane are perpendicular. This intermediate vector is the projection of the specified vector on the second plane and the projection of the target vector on the first plane. It provides a key intermediate result for the subsequent calculation of the target vector.

[0104] Therefore, the server may determine, according to the angle between the designated vector and the intermediate vector, a projection of the designated vector in the direction of the intermediate vector as the first projection.

[0105] Finally, based on the first projection and the angle between the intermediate vector and the unit vector in the moving direction, the server can determine the target vector, wherein the projection of the target vector in the direction of the intermediate vector has the same length as the first projection.

[0106] like Figure 2 As shown, Figure 2 A schematic diagram of the target vector provided for this manual. The starting position of the mouse is a', and the end position of the mouse movement is b'. Both a' and b' are two-dimensional points. Assuming that the projection matrix between the three-dimensional space where the three-dimensional model is located and the two-dimensional space where the screen is located is M, and assuming that the positions corresponding to the mouse in the three-dimensional space are a and b, the following formula is obtained:

[0107] Ma=a′

[0108] M ―1 Ma=M―1 a′

[0109] M ―1 M=1

[0110] a=M ―1 a′

[0111] Therefore, through the above formula, we can get the specified vector of the interaction vector in three-dimensional space In this case, assuming The space plane where it is located is parallel to the screen, then we can assume that the unit vector of the normal vector of the space plane is At the same time, assume that the unit vector in the moving direction is Then through and You can build a The first plane where The second plane where the vector is located is determined by the intersection of the first plane and the second plane. The vector is taken as an example of an intermediate vector. Not in the first plane.

[0112] The server can then and The angle between Model, confirm In this The first projection in the direction, that is,

[0113] Finally, the server can and The angle between Model, confirm Back Projection to The target vector in the direction, that is,

[0114] In one example, the first plane may be The second plane can be and The first plane and the second plane are perpendicular to each other. Therefore, the server can determine the plane perpendicular to and Unit vector of the plane Then determine the perpendicular and The unit vector of the plane, as the middle vector That is, through and The intermediate vector can be determined Obviously, is the normal vector of the second plane, And Vertical, so Obviously, it is in the second plane. is disposed with the normal vector of the first plane, so Obviously, it is in the first plane. In this way, we get the intermediate vector that is in both the first plane and the second plane.

[0115] In one example, suppose and The angle between them is α, and The angle between them is β, then and cosα and cosβ can be determined.

[0116] In one example, using the above formula, we can have and Therefore, we can get Based on this formula, the target vector can be obtained

[0117] It should be noted that the dotted line in the figure does not represent and The positional relationship between them, such as parallel or perpendicular, etc.

[0118] Further, step S104 may include: if there is only one key point of the target component corresponding to the target key point, moving the position of the target component according to the target position; if the target key point corresponds to multiple key points of the target component, changing the three-dimensional structure of the target component according to the target position; and determining the display data based on the changed target component and the three-dimensional model.

[0119] Specifically, if the target component corresponding to the target key point has only one key point, the system directly moves the position of the target component according to the calculated target position. If the target component corresponding to the target key point has multiple key points, the system changes the three-dimensional structure of the target component according to the target position. This may involve adjusting the coordinates of multiple key points, thereby causing the component to deform or change shape.

[0120] Finally, the server may determine the display data based on the status of the target component and the entire 3D model after the change.

[0121] In one example, the display data may include the new position information of the target component (coordinate value in the three-dimensional space coordinate system), shape change information (such as shape comparison before and after deformation, deformation amount, etc.), changes in relative position relationship with other components (such as distance to adjacent components, angle changes, etc.) and changes in overall geometric properties of the entire three-dimensional model (such as changes in the model's volume, center of gravity position, etc.).

[0122] In one example, the display data may also include a moving track of the target key point. Therefore, the server may determine the starting position of the target key point, and determine the moving track of the target key point according to the starting position and the target position of the target key point. Finally, the server may determine the display data according to the moving track and the adjusted three-dimensional model.

[0123] In one example, the movement track can be superimposed on the three-dimensional model for display, and its color is different from the color of the three-dimensional model. In another example, when the user moves the mouse to the target key point, the user interface will actively display the target key point.

[0124] For components with only one key point, the overall position can be simply moved to maintain the integrity of the component; for components with multiple key points, their three-dimensional structure can be changed according to the target position to achieve richer deformation and adjustment operations. In this way, different processing methods can be used according to the number of key points of the target component, and the purpose of being able to flexibly adapt to various types of component structures can be achieved.

[0125] In addition, the server may also pre-define and store the constraint relationships between the components in the three-dimensional model. These constraint relationships may include geometric constraints (such as the fit, alignment, parallelism, and perpendicularity between components), physical constraints (such as the connection method between components, the force transmission relationship, etc.), and functional constraints (such as the motion matching relationship between components, the assembly sequence, etc.). Therefore, in step S106, the server may also check whether each component involved in the display data satisfies the pre-defined constraint relationship one by one. If so, the display data will be displayed. If any component is found to not satisfy the constraint relationship during the inspection process, the system will send a prompt message to the user.

[0126] Based on the same idea, the present application provides a structural schematic diagram of a display device, such as Figure 3 shown.

[0127] Figure 3 A schematic diagram of a display device provided for this application, wherein:

[0128] The determination module 200 is used to determine the target key point and determine the moving direction of the target key point from a plurality of preset candidate directions.

[0129] The response module 202 is used to determine the endpoint of the interaction vector on the user interface in response to the user's interaction operation.

[0130] The mapping module 204 is used to determine the target position of the target key point according to the endpoint and the moving direction of the interaction vector, and the target position is used to represent the moving distance of the target key point along the moving direction under the action of the interaction operation.

[0131] The display module 206 is used to determine display data according to the target position of the target key point and display the display data.

[0132] Optionally, the determination module 200 is used to: determine the three-dimensional model corresponding to the display request in response to a display request, and display the three-dimensional model in the user interface; determine the target component according to the user's selection operation in the user interface; determine multiple preset candidate directions of the target component, and display the preset multiple candidate directions to the user; determine the moving direction according to the user's selection operation of the target candidate direction in the preset multiple candidate directions; determine the target key point from the key points corresponding to the target component.

[0133] Optionally, the mapping module 204 is used to determine the mapping relationship between the three-dimensional space where the three-dimensional model of the target key point is located and the two-dimensional space where the user interface is located; determine the designated vector corresponding to the interaction vector in the three-dimensional space based on the mapping relationship and the endpoint of the interaction vector; determine the target vector based on the designated vector and the moving direction, wherein the position of the end point of the target vector is the target position of the target key point, and the target vector is used to represent the distance when the interaction vector is projected along the moving direction.

[0134] Optionally, the mapping module 204 is used to: determine, according to the moving direction, from the three-dimensional space, an intermediate vector that is simultaneously located in the first plane and the second plane, the first plane being the plane where the specified vector is located, the second plane being the plane where the moving direction is located, and the first plane and the second plane being perpendicular to each other; determine the projection of the specified vector on the intermediate vector as the first projection; determine the target vector according to the first projection and the angle between the intermediate vector and the moving direction, wherein the projection of the target vector on the intermediate vector has the same length as the first projection.

[0135] Optionally, the mapping module 204 is used to: if there is only one key point of the target component corresponding to the target key point, move the position of the target component according to the target position, and adjust the three-dimensional model of the target structure according to the moved target component; if there are multiple key points of the target component corresponding to the target key point, adjust the three-dimensional structure of the target component according to the target position, and adjust the three-dimensional model of the target structure according to the adjusted target component; determine the display data based on the adjusted three-dimensional model.

[0136] Optionally, the mapping module 204 is used to: determine the constraint relationships corresponding to the components in the three-dimensional model; determine whether the components in the display data satisfy the constraint relationships; if any result is no, send a prompt message, the prompt message is used to prompt the user that there is an abnormality in the interactive operation.

[0137] Optionally, the mapping module 204 is used to: determine a starting position of the target key point, and determine a moving trajectory of the target key point according to the starting position and the target position; and determine display data according to the moving trajectory and the adjusted three-dimensional model.

[0138] The present application also provides a computer-readable storage medium, which stores a computer program, which can be used to execute the above Figure 1 The display method shown.

[0139] This application also provides Figure 4 The schematic structure diagram of the electronic device shown in FIG. Figure 4 As mentioned above, in terms of hardware units, the electronic device includes a processor, an internal bus, a network interface, a memory, and a non-volatile memory, and may also include other hardware required for the business. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it to achieve the above Figure 1 Of course, in addition to the software implementation, this application does not exclude other implementations, such as logic devices or a combination of software and hardware, etc., that is, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0140] In the 1990s, improvements to a technology could be clearly distinguished as hardware improvements (for example, improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the method flow). However, with the development of technology, many improvements to the method flow today can be regarded as direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that an improvement in a method flow cannot be implemented using a hardware entity module. For example, a programmable logic device (PLD) (such as a field programmable gate array (FPGA)) is such an integrated circuit whose logical function is determined by the user's programming of the device. Designers can "integrate" a digital system on a PLD by programming it themselves, without having to ask a chip manufacturer to design and produce a dedicated integrated circuit chip. Moreover, nowadays, instead of manually making integrated circuit chips, this kind of programming is mostly implemented by "logic compiler" software, which is similar to the software compiler used when developing and writing programs, and the original code before compilation must also be written in a specific programming language, which is called hardware description language (HDL). There is not only one HDL, but many kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones are VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also know that it is only necessary to program the method flow slightly in the above-mentioned hardware description languages ​​and program it into the integrated circuit, and then it is easy to obtain the hardware circuit that implements the logic method flow.

[0141] The controller can be implemented in any appropriate manner, for example, the controller can take the form of a microprocessor or processor and a computer-readable medium storing a computer-readable program code (such as software or firmware) that can be executed by the (micro)processor, a logic gate, a switch, an application-specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320. The memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art also know that in addition to implementing the controller in a purely computer-readable program code manner, the controller can be implemented in the form of a logic gate, a switch, an application-specific integrated circuit, a programmable logic controller, and an embedded microcontroller by logically programming the method steps. Therefore, this controller can be considered as a hardware component, and the devices included therein for implementing various functions can also be regarded as structures within the hardware component. Or even, the devices for implementing various functions can be regarded as both software modules for implementing the method and structures within the hardware component.

[0142] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.

[0143] For the convenience of description, the above device is described in various units according to their functions. Of course, when implementing the present application, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0144] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.

[0145] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0146] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0147] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0148] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0149] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0150] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0151] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0152] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.

[0153] The present application may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The present application may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.

[0154] Each embodiment in this application is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0155] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims

1. A display method, comprising: Determine a target key point, and determine a moving direction of the target key point from a plurality of preset candidate directions; In response to the user's interactive operation, determining an endpoint of an interaction vector on the user interface; Determine a target position of the target key point according to the endpoint of the interaction vector and the moving direction, wherein the target position is used to represent a moving distance of the target key point along the moving direction under the action of the interaction operation; According to the target position of the target key point, display data is determined, and the display data is displayed.

2. The method according to claim 1, wherein determining the target key point and determining the moving direction of the target key point from a plurality of preset candidate directions comprises: In response to a display request, determining a three-dimensional model corresponding to the display request, and displaying the three-dimensional model in the user interface; Determining a target component according to a selection operation of the user in the user interface; Determining the plurality of preset candidate directions of the target component, and presenting the plurality of preset candidate directions to a user; Determining the moving direction according to the user's selection operation of a target candidate direction among the preset multiple candidate directions; The target key point is determined from the key points corresponding to the target component.

3. The method according to claim 1, wherein determining the target position of the target key point according to the endpoint of the interaction vector and the moving direction comprises: Determine a mapping relationship between the three-dimensional space where the three-dimensional model where the target key point is located and the two-dimensional space where the user interface is located; Determining, according to the mapping relationship and the endpoints of the interaction vector, a designated vector corresponding to the interaction vector in the three-dimensional space; A target vector is determined according to the designated vector and the moving direction, wherein the end point of the target vector is the target position of the target key point, and the target vector is used to represent the distance of the interaction vector when projected along the moving direction.

4. The method according to claim 3, wherein determining the target vector according to the specified vector and the moving direction comprises: According to the moving direction, determining, from the three-dimensional space, an intermediate vector located in a first plane and a second plane at the same time, the first plane being a plane where the designated vector is located, the second plane being a plane where the moving direction is located, and the first plane and the second plane being perpendicular to each other; Determine a projection of the designated vector on the intermediate vector as a first projection; The target vector is determined according to the first projection and the angle between the intermediate vector and the moving direction, wherein the projection of the target vector on the intermediate vector has the same length as the first projection.

5. The method according to any one of claims 1 to 4, wherein the target component is located in a target structure, and the step of determining the display data according to the target position of the target key point comprises: If there is only one key point of the target component corresponding to the target key point, the position of the target component is moved according to the target position, and the three-dimensional model of the target structure is adjusted according to the moved target component; If the target key point corresponds to a plurality of key points of the target component, adjusting the three-dimensional structure of the target component according to the target position, and adjusting the three-dimensional model of the target structure according to the adjusted target component; The display data is determined according to the adjusted three-dimensional model.

6. The method of claim 5, further comprising: Determine the constraint relationships corresponding to the components in the three-dimensional model; Determine whether each component in the display data satisfies the constraint relationship; If any result is no, a prompt message is sent, where the prompt message is used to prompt the user that there is an abnormality in the interactive operation.

7. The method according to claim 5, wherein determining the display data according to the adjusted three-dimensional model comprises: Determine the starting position of the target key point, and determine the moving trajectory of the target key point according to the starting position and the target position; The display data is determined according to the movement trajectory and the adjusted three-dimensional model.

8. A display device, comprising: A determination module, used to determine a target key point and determine a moving direction of the target key point from a plurality of preset candidate directions; A response module, configured to determine an endpoint of an interaction vector on a user interface in response to an interaction operation of the user; A mapping module, used to determine a target position of the target key point according to the endpoint of the interaction vector and the moving direction, wherein the target position is used to represent a moving distance of the target key point along the moving direction under the action of the interaction operation; The display module is used to determine display data according to the target position of the target key point and display the display data.

9. A computer-readable storage medium, wherein the storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.

10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method according to any one of claims 1 to 7 when executing the program.