System for supporting multi-seat simulation training by single host

By using independent threads to process mouse device information in a single host system, independent operation and parallel display of each seat in a multi-seat simulation training system are realized, and the shortcomings of multiple people operating simultaneously and multi-mouse device action processing in the prior art are solved.

CN119718244APending Publication Date: 2025-03-28ARMY ENG UNIV OF PLA
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411754533.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-02
Publication Date
2025-03-28

AI Technical Summary

Technical Problem

The existing multi-mouse software cannot achieve the interactive effect of multiple people operating simultaneously in a single-player, multi-screen, multi-player operating environment, and multiple mouse devices will preempt the system mouse, resulting in the inability to effectively handle the simultaneous actions of multiple mouse devices.

Method used

A system that supports multi-seat simulation training by a single host is designed, and a separate thread is used to collect and analyze the mouse device information. Through the mouse information acquisition and storage module and the mouse information analysis operation module, independent operation and parallel display of each seat cabinet are realized.

Benefits of technology

It realizes that operators in multiple seats can control the simulation equipment in the simulation system through peripherals such as the control seat corresponding to the mouse, and present it on the display equipment of the seat without affecting each other, achieving the goal of multiple single-player operating simultaneously and each person is independent.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119718244A_ABST
    Figure CN119718244A_ABST
Patent Text Reader

Abstract

The invention discloses a system for supporting multi-seat simulation training by a single host. The system comprises the single host; the plurality of seat cabinets are respectively in communication connection with the single host, each seat cabinet comprises a display device and a mouse, the host comprises a processor, the processor is configured to allow each seat cabinet to operate independently and display in parallel at the same time, and the processor comprises a mouse information collecting and transferring module, a mouse information collecting and transferring module and a mouse information collecting and transferring module. The acquisition unit is configured to circularly and continuously acquire accessed mouse equipment information, and after the mouse equipment information acquired each time is transferred and stored, the next acquisition operation is immediately carried out; and the mouse information analysis operation module is configured to analyze the transferred mouse equipment information and transmit the transferred mouse equipment information to the application layer.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to the field of simulation technology, and more particularly, to a system for supporting multi-seat simulation training by a single host. Background Art

[0002] In the simulation system developed for training equipment, multiple people usually operate the simulation system at the same time. The simulation system usually needs to adopt a distributed architecture, with multiple computers and multiple displays corresponding to multiple simulation seats, forming a distributed system. In order to save computer hardware equipment and avoid the problem of state synchronization between different computers, a single-machine multi-screen multi-person operation solution can be adopted. However, in a single-machine multi-screen multi-person operation environment, multiple mouse devices need to be connected to the same computer, because only one mouse, namely the system mouse, is supported in the Windows system. When multiple mouse devices are inserted, multiple mouse devices will control the system mouse at the same time. Although the current multi-mouse software, such as Teamplayer, MultiMouse, etc., can simulate multiple mice for users to use, there is a problem of "grabbing focus", that is, among the multiple mice simulated by these software, only one can occupy the program focus at a certain time. If a mouse device clicks the left button, even if other mouse devices click the left button, Windows will not respond to the left-click event, and the ideal interactive effect of multi-person simultaneous operation cannot be achieved in actual use. Therefore, using the existing multi-mouse software to control the virtual simulator cannot achieve the purpose of multiple people operating a single machine at the same time and each person being completely independent of each other. Summary of the invention

[0003] Some embodiments of the present disclosure provide a system for supporting multi-seat simulation training by a single host, the system comprising:

[0004] Single host; and

[0005] Multiple seat cabinets are connected to the single host for communication, and each seat cabinet includes a display device and a mouse.

[0006] Wherein, the host includes a processor, and the processor is configured to allow each seat cabinet to operate independently and display in parallel at the same time, and the processor includes:

[0007] The mouse information collection and transfer module is configured to continuously collect the connected mouse device information in a loop, and immediately enter the next collection operation after transferring the collected mouse device information each time; and

[0008] The mouse information parsing operation module is configured to parse the transferred mouse device information and pass it to the application layer.

[0009] In some embodiments, the mouse information collection and transfer module includes:

[0010] A mouse information acquisition module, comprising a message processing function for replacing a default Windows process processing function of the Windows system, wherein the message processing function is used to receive a plurality of original mouse device information of the Windows system and perform custom processing on the original mouse device information, and the format of the message processing function is consistent with the WindowProc function format of the Windows system; and

[0011] The mouse information transfer module is configured to transfer the custom processed mouse device information to avoid the previous definition processed mouse device information being overwritten by the subsequent custom processed mouse device information.

[0012] In some embodiments, the mouse information parsing operation module includes:

[0013] A mouse information parsing module, configured to parse the mouse device information from the mouse information transfer module to obtain a custom mouse message, wherein the custom mouse message includes a mouse device ID number, a mouse position offset, and mouse action information;

[0014] The mouse information construction module is configured to construct the custom mouse message into a system mouse message, and the mouse message is configured to be transmitted using the Windows message mechanism.

[0015] In some embodiments, the custom mouse message has a SiRawMouse structure, wherein hDevice is the mouse device number, DeviceName stores the mouse device name, X and Y store the coordinates of the mouse on the screen, state and Laststate respectively record the states of the mouse in the current frame and the previous frame, and events records the mouse events;

[0016] The system mouse message has a mouse_event structure. Constructing the custom mouse message into a system mouse message includes setting mouse_event.dx=SiRawMouse.X, mouse_event.dy=SiRawMouse.Y, assigning mouse_event.dwExtraInfo to the mouse identification information, and assigning mouse_event.dwFlags to the mouse action information.

[0017] In some embodiments, the mouse information construction module includes a de-jitter module, and the de-jitter module is configured to discard the custom mouse message of the current frame when the change of the mouse coordinates of the current frame relative to the mouse coordinates of the previous frame is lower than a threshold.

[0018] In some embodiments, the processor includes:

[0019] An imaging screen construction module is configured to construct a plurality of imaging screens from the scene generated by the application layer, wherein the plurality of imaging screens correspond to the display devices of the plurality of seat cabinets,

[0020] The resolution of the imaging picture corresponds to the resolution of the display device of the corresponding seat cabinet.

[0021] Some embodiments of the present disclosure provide a method for supporting multi-seat simulation training by a single host, using the system for supporting multi-seat simulation training by a single host as described in the above embodiments, and the method includes:

[0022] Circularly collect mouse device information, perform custom processing on the mouse device information, and transfer the custom processed mouse device information;

[0023] Parse the mouse device information in the order of transfer to obtain custom mouse messages.

[0024] In some embodiments, the method further comprises:

[0025] The custom mouse message is constructed as a system mouse message and is passed to the application layer using the Windows message mechanism.

[0026] In some embodiments, before constructing the custom mouse message as a system mouse message and delivering it to the application layer using the Windows message mechanism, the method further includes:

[0027] Debounce the custom mouse message to determine whether the change of the mouse coordinates of the current frame relative to the mouse coordinates of the previous frame is lower than a threshold. If so, discard the custom mouse message of the current frame.

[0028] In some embodiments, the method further comprises:

[0029] The scene generated by the application layer is constructed into multiple imaging pictures, and the multiple imaging pictures correspond to the display devices of the multiple seat cabinets. The resolution of the imaging pictures corresponds to the resolution of the display devices of the corresponding seat cabinets.

[0030] According to an embodiment of the present disclosure, a solution is provided in which a single host supports multi-seat simulation training. A single host supports simultaneous operation of multiple training seats, and uses independent threads to respectively collect mouse device information and parse mouse device information, so that mouse processing of multiple seats can be independently and parallelly operated, so that operators on multiple seats can simultaneously control the simulation devices in the simulation system by controlling the mouse and other peripherals corresponding to the seats, and present them on the display device of the seats without affecting each other. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] The above and other features of the present disclosure will become more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which:

[0032] In the drawings, the same or similar structures are marked with the same or similar reference numerals.

[0033] Figure 1 A schematic diagram of the structure of a system for supporting multi-seat simulation training by a single host provided by an embodiment of the present disclosure is shown;

[0034] Figure 2 for Figure 1 A block diagram of the processor in the host;

[0035] Figure 3 A flowchart of a method for supporting multi-seat simulation training by a single host is provided for some embodiments of the present disclosure. DETAILED DESCRIPTION

[0036] In order to make the purpose, technical solutions and advantages of the present application clearer, the present application is further described in detail below in conjunction with the accompanying drawings. It should be noted that the following description is only for illustration and is not intended to limit the present disclosure. In the following description, in order to provide a thorough understanding of the present disclosure, a large number of specific details are set forth. However, it is obvious to a person of ordinary skill in the art that these specific details do not have to be adopted to implement the present disclosure. In other examples, in order to avoid confusing the present disclosure, known circuits, materials or methods are not specifically described.

[0037] Throughout the specification, references to "one embodiment," "an embodiment," "an example," or "an example" mean that a particular feature, structure, or characteristic described in conjunction with the embodiment or example is included in at least one embodiment of the present disclosure. Therefore, the phrases "in one embodiment," "in an embodiment," "an example," or "an example" appearing in various places throughout the specification do not necessarily all refer to the same embodiment or example. In addition, particular features, structures, or characteristics may be combined in one or more embodiments or examples in any suitable combination and / or sub-combination. In addition, it will be appreciated by those of ordinary skill in the art that the figures provided herein are for illustrative purposes and that the figures are not necessarily drawn to scale. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.

[0038] In the related technology, a mouse device information receiving module, a mouse device information parsing module, a mouse drawing module under Unity, an object picking module under Unity and an NGUI extension module are installed on the simulation computer; the mouse device information receiving module, the mouse device information parsing module, the mouse drawing module under Unity, the object picking module under Unity and the NGUI extension module are compiled based on the C# language using the API provided by Windows under the Unity environment; the mouse device information receiving module is used to obtain the mouse device information of multiple mouse devices from the bottom layer of the Windows system; the mouse device information parsing module is used to parse the mouse device information to obtain the parsed mouse device information; according to the parsed mouse device information, the mouse drawing module under Unity draws the corresponding mouse icon on the Unity program interface; the object picking module under Unity uses the mouse icon to determine the picked up object; the NGUI extension module is used to drive the movement of objects picked up by multiple mouse devices. The mouse action information of all mouse devices is obtained from the bottom layer of the Windows system through the mouse device information receiving module, and then the mouse action information is parsed through the mouse device information parsing module. The parsed data is connected to the NGUI plug-in, and finally the NGUI plug-in is expanded to obtain the NGUI extension module to realize the support of the NGU extension module for multiple mice.

[0039] However, in the related art, the reception of mouse device information, the analysis of mouse device information, the mouse drawing in Unity, and the object picking in Unity are serial operations, and the subsequent operation steps will affect the reception of mouse device information, especially when multiple mouse devices are operated at the same time, the mouse device in the previous step has not yet responded that the operation is completed, and the subsequent mouse device information cannot be received, affecting the operation experience of the simulation system. In addition, the subsequent analysis of mouse device information in the related art mainly adopts a dedicated protocol transmission, does not support Windows message transmission, and has poor versatility.

[0040] In order to overcome the above problems, the present disclosure provides a system that supports multi-seat simulation training by a single host, the system comprising: a single host; and multiple seat cabinets, which are separately connected to the single host for communication, each seat cabinet comprising a display device and a mouse, wherein the host comprises a processor, the processor is configured to allow each seat cabinet to operate independently at the same time, the processor comprises: a mouse information collection and transfer module, configured to cyclically collect the connected mouse device information and transfer the collected mouse device information each time; and a mouse information parsing operation module, configured to parse the transferred mouse device information and pass it to the application layer. A single host supports the simultaneous operation of multiple training seats, and uses independent threads to respectively perform mouse device information collection and mouse device information parsing, so that the mouse processing of multiple seats can realize independent and parallel operation, so that operators on multiple seats can simultaneously control the simulation devices in the simulation system by controlling the mouse and other peripherals corresponding to the seat, and present them on the display device of the seat without affecting each other.

[0041] Figure 1 A schematic diagram of the structure of a system for supporting multi-seat simulation training by a single host provided by an embodiment of the present disclosure is shown. Figure 2 for Figure 1 The structural block diagram of the processor in the host. Figure 1 and Figure 2 As shown, some embodiments of the present disclosure provide a system 100 for supporting multi-seat simulation training by a single host, wherein the system includes a single host 10 and a plurality of seat cabinets 20 .

[0042] The single host 10 adopts Windows system and is used to construct multiple simulated imaging screens corresponding to multiple seat cabinets.

[0043] Multiple seat cabinets 20 are connected to the single host 10 in communication, and each seat cabinet 20 includes a display device and a mouse. The simulated operation is performed by the mouse, and the simulated imaging picture formed by the single host is presented on the display device to realize the simulated operation.

[0044] The host 10 includes a processor 11 , which is configured to allow each seat cabinet 20 to operate independently and display in parallel at the same time. The processor 11 includes a mouse information collection and transfer module 111 and a mouse information analysis and operation module 112 .

[0045] The mouse information collection and transfer module 111 is configured to continuously collect the connected mouse device information in a loop, and immediately enter the next collection operation after transferring the collected mouse device information each time. Specifically, the mouse information collection and transfer module 111 continuously collects the mouse device information of each seat cabinet 20, and transfers the collected mouse device information to the buffer area to prevent the collected mouse device information from being overwritten or unable to be effectively collected.

[0046] The mouse information parsing operation module 112 is configured to parse the transferred mouse device information and pass it to the application layer. Specifically, the mouse information parsing operation module 112 parses the mouse device information of each seat cabinet 20 and passes it to the application layer to present the corresponding operation on the corresponding simulated imaging screen. The operation of each seat cabinet 20 has no influence on each other, that is, synchronous operation.

[0047] Mouse information collection, transfer and processing and mouse information analysis operations are implemented using two independent threads. The first thread is used to execute real-time reception of mouse device information and complete the collection and transfer of mouse information. The second thread is used to parse and process the mouse device information. The two threads are processed in parallel without affecting each other, thereby improving processing efficiency.

[0048] In some embodiments, Figure 2 As shown, the mouse information collection and transfer module 111 includes a mouse information collection module 1111 and a mouse information transfer module 1112 .

[0049] The mouse information acquisition module 1111 has a message processing function for replacing the default Window process processing function of the Windows system. The message processing function is used to receive multiple original mouse device information of the Windows system and perform custom processing on the mouse device information. The format of the message processing function is consistent with the WindowProc function format of the Windows system. Specifically, the mouse device information acquisition module 111 obtains the original mouse device information of multiple mouse devices corresponding to multiple seat cabinets 20 from the bottom layer of the Windows system. In the Windows system, although multiple mouse devices can be connected, based on its own information mechanism, multiple mouse devices will conflict, resulting in multiple mouse devices controlling a system mouse at the same time. In this embodiment, a custom message processing function is set to replace the default Windows process processing function of the Windows system with the message processing function. The message processing function is used to receive multiple original mouse device information of the Windows system and process the original mouse device information to obtain the mouse device information after custom processing. The format of the message processing function is consistent with the WindowProc function format of the Windows system, so as to directly receive Windows messages in the custom function.

[0050] Obtain the number of standard mice actually connected to a single host 10, and record the device ID number provided by the Windows system to each mouse, and specify the program window that needs to use multiple mice as the message receiving window; the message processing function of the window program waits for the mouse message of Windows, and each program window will execute the message processing function after receiving the mouse message; the message processing function execution process: after receiving the Windows message, the message processing function determines the message type; if it is a WM_CLOSE (program window close command) message, restore the default Window process processing function; if it is a WM_INPUT (external input command) message, determine whether WM_INPUT (external input command) is a mouse message, if it is not a mouse message, continue to wait, if it is a mouse message, perform custom processing, obtain the mouse device ID number, mouse position offset and mouse action in the mouse message, and record them.

[0051] To obtain mouse information from the bottom layer of Windows, you first need to obtain the original mouse device information, then register the mouse device, and finally receive the mouse point information through the Windows window message loop. When the system receives the mouse point information, it needs to parse the mouse point information and convert it into recognizable position information. In the conversion process, the mouse information structure is customized. Its structure is as follows, where hDevice is the mouse device number, DeviceName stores the mouse device name, X and Y store the coordinates of the mouse on the screen respectively, state and Laststate record the mouse status of the current frame and the previous frame respectively, and events record mouse events. When the mouse point information is received, the processed data is saved to the SiRawMouse structure to form the customized processed mouse device information.

[0052] The mouse information transfer module 1121 is configured to transfer the custom processed mouse device information, specifically, to transfer the custom processed mouse device information in a cache in order to prevent the previous defined processed mouse device information from being overwritten by the subsequent custom processed mouse device information.

[0053] In some embodiments, Figure 2 As shown, the mouse information parsing operation module 112 includes: a mouse information parsing module 1121 and a mouse information constructing module 1122 .

[0054] The mouse information parsing module 1121 is configured to parse the mouse device information from the mouse information transfer module to obtain a custom mouse message, wherein the custom mouse message includes a mouse device ID number, a mouse position offset, and mouse action information. Specifically, the mouse information parsing module 1121 parses the mouse device information to obtain the specific mouse device ID number, the mouse position offset, and the mouse action information in the SiRawMouse structure. The mouse position offset is, for example, the position offset of the mouse relative to the reference origin, which can be understood as the mouse position coordinates in some embodiments.

[0055] The mouse information construction module 1122 is configured to construct the custom mouse message into a system mouse message, i.e., a standard Windows mouse message, and the mouse message is configured to be transmitted using the Windows message mechanism. Specifically, the information in the SiRawMouse structure is converted into a system mouse message, so that the information can be transmitted using the Windows message mechanism, thereby achieving universality of message transmission.

[0056] In some embodiments, the custom mouse message has a SiRawMouse structure, where hDevice is the mouse device number, DeviceName stores the mouse device name, X and Y store the coordinates of the mouse on the screen respectively, state and Laststate record the mouse status of the current frame and the previous frame respectively, and events records mouse events.

[0057] The system mouse message has a mouse_event structure, and constructing the custom mouse message into a system mouse message includes setting mouse_event.dx=SiRawMouse.X, mouse_event.dy=SiRawMouse.Y, assigning mouse_event.dwExtraInfo to the identity information of the mouse, and assigning mouse_event.dwFlags to the mouse action information. The mouse action information includes mouse click events, mouse slide events, mouse press events, mouse release events, and mouse hover events.

[0058] In this embodiment, the Windows message mechanism sendmessage method is used to send Windows system mouse messages to the application layer. In this way, when multiple mice are connected to the operating system at the same time, after being processed by this solution, each mouse action will notify the application layer of the action data in the form of a standard Windows system mouse message. Compared with the default Windows system mouse message mechanism, this method can distinguish the identities and actions of different mice while maintaining the basic Windows system mouse message structure and transmission response mechanism. Moreover, in the mouse-based human-computer interaction, when multiple mice act at the same time, they do not affect each other at the user experience level.

[0059] In some embodiments, the mouse information construction module 1122 includes a de-jitter module 11221, and the de-jitter module is configured to discard the custom mouse message of the current frame when the change of the mouse coordinates of the current frame relative to the mouse coordinates of the previous frame is lower than a threshold. Specifically, the coordinate information collected by the mouse with the same device number in adjacent frames is compared. If the difference between the mouse coordinates of the current frame and the mouse coordinates of the previous frame is lower than the threshold, the custom mouse message of the current frame is discarded. For example, the mouse coordinates of the current frame are (Xo, Yo), the mouse coordinates of the previous frame are (Xp, Yp), and the difference between the mouse coordinates of the current frame and the mouse coordinates of the previous frame is When d is smaller than a threshold value, for example, 5 pixels, it can be determined that the coordinate change of the mouse is a jitter of abnormal operation, and the custom mouse information collected in the current frame needs to be excluded.

[0060] like Figure 2 As shown, in some embodiments, the processor 11 further includes an imaging screen construction module 113, and the imaging screen construction module 113 is configured to construct multiple imaging screens, and the multiple imaging screens correspond to the display devices of the multiple seat cabinets. The resolution of the imaging screen corresponds to the resolution of the display device of the corresponding seat cabinet. The host 10 simulates and constructs multiple simulated imaging screens corresponding to multiple seat cabinets 20, and the resolution of the imaging screen needs to match the resolution of the display device of the corresponding seat cabinet.

[0061] Specifically, the resolutions of the display devices of multiple seat cabinets 20 may be different. A single host 10 is connected to multiple seat cabinets 20. After the display devices of the multiple seat cabinets 20 are lit, the processor 11 of the host 10 obtains the resolution information and sequence information of the display devices of the multiple seat cabinets 20. The imaging screen construction module 113 of the processor 11 is constructed into multiple simulated imaging screens. The multiple simulated imaging screens correspond to the resolution information and sequence information of the display devices of the multiple seat cabinets 20. The processor 11 projects the multiple simulated imaging screens onto the corresponding display devices of the multiple seat cabinets 20.

[0062] This design ensures that the image clarity of the simulated training scene displayed on the display device interface of any seat cabinet meets the requirements of simulated training, and does not cause deformation such as compression and stretching. In addition, the resolution is also the basic basis for calculating the offset of the mouse on the current display device interface, and the offset is generally measured in resolution pixels.

[0063] In some embodiments, the multiple simulated imaging pictures constructed by the imaging picture construction module 113 of the processor 11 are spliced ​​in sequence into an integral simulated imaging picture.

[0064] Figure 3 A flowchart of a method for supporting multi-seat simulation training by a single host provided in some embodiments of the present disclosure, and a method for supporting multi-seat simulation training by a single host provided in some embodiments, such as Figure 3 As shown, the method comprises the following steps:

[0065] S301: cyclically collecting mouse device information, performing custom processing on the mouse device information, and transferring the custom processed mouse device information.

[0066] Specifically, the original mouse device information of multiple mouse devices corresponding to multiple seat cabinets is obtained from the bottom layer of the Windows system in a loop, and a custom message processing function is set to replace the default Windows process processing function of the Windows system with the message processing function. The message processing function is used to receive multiple original mouse device information of the Windows system and process the original mouse device information. The format of the message processing function is consistent with the WindowProc function format of the Windows system. The mouse device ID number, mouse position offset and mouse action in the mouse message are obtained and recorded, and the custom-processed mouse device information is transferred to the cache in sequence to avoid the previous definition-processed mouse device information being overwritten by the subsequent custom-processed mouse device information.

[0067] S303: parse the mouse device information in the order of transfer to obtain the custom mouse message.

[0068] Parse the mouse device information from the mouse information transfer module, obtain the custom mouse message, and obtain the specific mouse device ID number, mouse position offset, and mouse action information in the SiRawMouse structure.

[0069] In this solution, the first thread is used to receive the mouse device information in real time, complete the collection and transfer of the mouse information, and the second thread is used to parse and process the mouse device information. The two threads are processed in parallel without affecting each other, thereby improving processing efficiency.

[0070] In some embodiments, Figure 3 As shown, the method further comprises the following steps:

[0071] S305: construct the custom mouse message into a system mouse message, and transmit it to the application layer using the Windows message mechanism.

[0072] Specifically, the custom mouse message is constructed as a system mouse message, and the mouse message is configured to be transmitted using the Windows message mechanism. Specifically, the information in the SiRawMouse structure is converted into a system mouse message, so that the information can be transmitted using the Windows message mechanism, thereby achieving universality of message transmission.

[0073] The Windows message mechanism sendmessage method is used to send Windows system mouse messages to the application layer. In this way, when multiple mice are connected to the operating system at the same time, after being processed by this solution, each mouse action will notify the application layer of the action data in the form of a standard Windows system mouse message. Compared with the default Windows system mouse message mechanism, this method can distinguish the identities and actions of different mice while maintaining the basic Windows system mouse message structure and transmission response mechanism. Moreover, in the mouse-based human-computer interaction, when multiple mice act at the same time, they do not affect each other at the user experience level.

[0074] like Figure 3 As shown, in some embodiments, before constructing the custom mouse message as a system mouse message and delivering it to the application layer using the Windows message mechanism, the method further includes:

[0075] S304: De-bounce the custom mouse message to determine whether the change in the mouse coordinates of the current frame relative to the mouse coordinates of the previous frame is lower than a threshold. If so, discard the custom mouse message of the current frame.

[0076] Specifically, the coordinate information collected by the mouse with the same device number in adjacent frames is compared. If the difference between the mouse coordinates of the current frame and the mouse coordinates of the previous frame is lower than the threshold, the custom mouse message of the current frame is discarded. For example, the mouse coordinates of the current frame are (Xo, Yo), the mouse coordinates of the previous frame are (Xp, Yp), and the difference between the mouse coordinates of the current frame and the mouse coordinates of the previous frame is When d is smaller than a threshold value, for example, 5 pixels, it can be determined that the coordinate change of the mouse is a jitter of abnormal operation, and the custom mouse information collected in the current frame needs to be excluded.

[0077] In some embodiments, Figure 3 As shown, the method further comprises the following steps:

[0078] S300: constructing a plurality of imaging screens from the scene generated by the application layer, wherein the plurality of imaging screens correspond to the display devices of the plurality of seat cabinets, and the resolution of the imaging screens corresponds to the resolution of the display devices of the corresponding seat cabinets.

[0079] Specifically, the resolutions of the display devices of multiple seat cabinets 20 may be different. A single host 10 is connected to multiple seat cabinets 20. After the display devices of the multiple seat cabinets 20 are lit, the processor 11 of the host 10 obtains the resolution information and sequence information of the display devices of the multiple seat cabinets 20. The imaging screen construction module 113 of the processor 11 constructs the scene generated by the application layer into multiple simulated imaging screens. The multiple simulated imaging screens correspond to the resolution information and sequence information of the display devices of the multiple seat cabinets 20. The processor 11 projects the multiple simulated imaging screens onto the corresponding display devices of the multiple seat cabinets 20.

[0080] This design ensures that the image clarity of the simulated training scene displayed on the display device interface of any seat cabinet meets the requirements of simulated training, and does not cause deformation such as compression and stretching. In addition, the resolution is also the basic basis for calculating the offset of the mouse on the current display device interface, and the offset is generally measured in resolution pixels.

[0081] Those skilled in the art will appreciate that the methods shown above are exemplary only. The methods disclosed herein are not limited to the steps and sequences shown above. Those skilled in the art may make many changes and modifications based on the teachings of the illustrated embodiments.

[0082] Although the present disclosure has been illustrated above in conjunction with the preferred embodiments of the present disclosure, it will be understood by those skilled in the art that various modifications, substitutions and changes may be made to the present disclosure without departing from the spirit and scope of the present disclosure. Therefore, the present disclosure should not be limited by the above embodiments, but by the attached claims and their equivalents.

Claims

1. A system that supports multi-seat simulation training with a single host, characterized in that: The system comprises: Single host; and Multiple seat cabinets are connected to the single host for communication, and each seat cabinet includes a display device and a mouse. Wherein, the host includes a processor, and the processor is configured to allow each seat cabinet to operate independently and display in parallel at the same time, and the processor includes: The mouse information collection and transfer module is configured to continuously collect the connected mouse device information in a loop, and immediately enter the next collection operation after transferring the collected mouse device information each time; and The mouse information parsing operation module is configured to parse the transferred mouse device information and pass it to the application layer.

2. The system for supporting multi-seat simulation training by a single host according to claim 1, characterized in that: The mouse information collection and transfer module includes: A mouse information acquisition module, comprising a message processing function for replacing a default Windows process processing function of the Windows system, wherein the message processing function is used to receive a plurality of original mouse device information of the Windows system and perform custom processing on the original mouse device information, and the format of the message processing function is consistent with the WindowProc function format of the Windows system; and The mouse information transfer module is configured to transfer the custom processed mouse device information to avoid the previous definition processed mouse device information being overwritten by the subsequent custom processed mouse device information.

3. The system for supporting multi-seat simulation training by a single host according to claim 1, characterized in that: The mouse information parsing operation module includes: A mouse information parsing module, configured to parse the mouse device information from the mouse information transfer module to obtain a custom mouse message, wherein the custom mouse message includes a mouse device ID number, a mouse position offset, and mouse action information; The mouse information construction module is configured to construct the custom mouse message into a system mouse message, and the mouse message is configured to be transmitted using the Windows message mechanism.

4. The system for supporting multi-seat simulation training by a single host according to claim 3, characterized in that: The custom mouse message has a SiRawMouse structure, in which hDevice is the mouse device number, DeviceName stores the mouse device name, X and Y store the coordinates of the mouse on the screen, state and Laststate record the states of the mouse in the current frame and the previous frame, and events records the mouse events; The system mouse message has a mouse_event structure. Constructing the custom mouse message into a system mouse message includes setting mouse_event.dx=SiRawMouse.X, mouse_event.dy=SiRawMouse.Y, assigning mouse_event.dwExtraInfo to the mouse identification information, and assigning mouse_event.dwFlags to the mouse action information.

5. The system for supporting multi-seat simulation training by a single host according to claim 4, characterized in that: The mouse information construction module includes a de-jitter module, and the de-jitter module is configured to discard the custom mouse message of the current frame when the change of the mouse coordinates of the current frame relative to the mouse coordinates of the previous frame is lower than a threshold.

6. The system for supporting multi-seat simulation training by a single host according to any one of claims 1 to 5, characterized in that: The processor comprises: An imaging screen construction module is configured to construct a plurality of imaging screens from the scene generated by the application layer, wherein the plurality of imaging screens correspond to the display devices of the plurality of seat cabinets, The resolution of the imaging picture corresponds to the resolution of the display device of the corresponding seat cabinet.

7. A method for supporting multi-seat simulation training by a single host, using the system for supporting multi-seat simulation training by a single host as claimed in any one of claims 1 to 6, characterized in that: The method comprises: Circularly collect mouse device information, perform custom processing on the mouse device information, and transfer the custom processed mouse device information; Parse the mouse device information in the order of transfer to obtain custom mouse messages.

8. The method for supporting multi-seat simulation training by a single host according to claim 7, characterized in that: The method further comprises: The custom mouse message is constructed as a system mouse message and is passed to the application layer using the Windows message mechanism.

9. The method for supporting multi-seat simulation training by a single host according to claim 8, characterized in that: Before constructing the custom mouse message as a system mouse message and transmitting it to the application layer using the Windows message mechanism, the method further includes: Debounce the custom mouse message to determine whether the change of the mouse coordinates of the current frame relative to the mouse coordinates of the previous frame is lower than a threshold. If so, discard the custom mouse message of the current frame.

10. The method for supporting multi-seat simulation training by a single host according to claim 8, characterized in that: The method further comprises: The scene generated by the application layer is constructed into multiple imaging pictures, and the multiple imaging pictures correspond to the display devices of the multiple seat cabinets. The resolution of the imaging pictures corresponds to the resolution of the display devices of the corresponding seat cabinets.

Citation Information

Patent Citations

  • KVM (Keyboard, Video and Mouse) system based on mouse synchronization method

    CN104216531A

  • Virtual simulator and one-machine multi-mouse independent parallel control method

    CN106970720A

  • Data processing device that enables mouse-operated application programs to be operated from an operation pad, and an operation pad for use with the same

    US5550562A