Table operation method, apparatus and device for electronic whiteboard, and storage medium

By analyzing the user's gesture data on the electronic whiteboard, it automatically determines the operation of the operating action type and controls the merger or split of the form unit of the form. Essence

CN119337843AActive Publication Date: 2025-01-21GUANGZHOU LANGO ELECTRONICS TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411308484.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-19
Publication Date
2025-01-21
Estimated Expiration
2044-09-19

AI Technical Summary

Technical Problem

The table editing method of existing electronic whiteboards depends on button clicks or menu operations in the ribbon area. Users need to select cells and then operate buttons or menus for merging or splitting, which is inconvenient and inefficient.

Method used

By obtaining the user's gesture data, analyze and process the gesture data to determine the direction angle, speed change rate and trajectory length, determine the type of operating action based on these parameters, and control the cells in the table for merging or split operation.

Benefits of technology

A more convenient table operation is achieved and the operational efficiency is improved. Users can automatically complete the merger or split of cells through natural gesture operations, which improves the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119337843A_ABST
    Figure CN119337843A_ABST
Patent Text Reader

Abstract

The invention provides a table operation method and device for an electronic whiteboard, equipment and a storage medium, and the table operation method for the electronic whiteboard comprises the steps: obtaining gesture data of a user under the condition that the electronic whiteboard displays a table, carrying out the analysis processing of the gesture data, determining a direction angle, a speed change rate and a track length, and carrying out the recognition of the direction angle, the speed change rate and the track length. According to the direction angle, the speed change rate and the track length, the operation action type is determined, according to the operation action type, the table cells in the table are controlled to conduct merging operation or splitting operation, and by conducting multi-dimensional analysis on the direction angle, the speed change rate and the track length on the gesture data of the user, the operation action type is determined; and the cells are automatically combined or split, so that the operation is more convenient, and the operation efficiency is higher.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of electronic whiteboards, and in particular to a table operation method, device, equipment and storage medium for an electronic whiteboard. Background Art

[0002] In the application of electronic whiteboards, table tools are usually used to present and edit data, and the merging and splitting of cells are common functions of table tools. At present, the traditional table editing method on electronic whiteboards often relies on clicking function area buttons or menu operations. Users need to select cells and then operate buttons or menus to merge or split cells, which is inconvenient and inefficient. Summary of the invention

[0003] The embodiment of the present application provides a table operation method, device, equipment and storage medium of an electronic whiteboard to solve at least one problem existing in the related art. The technical solution is as follows:

[0004] In a first aspect, an embodiment of the present application provides a method for operating a table on an electronic whiteboard, comprising:

[0005] When the electronic whiteboard displays a table, obtaining the user's gesture data;

[0006] Analyzing and processing the gesture data to determine the direction angle, speed change rate, and trajectory length;

[0007] Determining the type of operation action according to the direction angle, the speed change rate and the trajectory length;

[0008] According to the operation action type, cells in the table are controlled to perform a merge operation or a split operation.

[0009] In one implementation, analyzing and processing the gesture data to determine the direction angle, speed, and trajectory length includes:

[0010] Determine, in the gesture data, the starting coordinates and the starting contact time of the starting contact point, the intermediate coordinates and the corresponding intermediate contact time of at least one intermediate contact point, and the ending coordinates and the ending contact time of the ending contact point;

[0011] Determine the direction angle according to the starting coordinates and the ending coordinates;

[0012] Determine a plurality of sub-trajectories and the length of each sub-trajectory according to the starting coordinate, at least one of the intermediate coordinates and the ending coordinate;

[0013] Determining the length of the trajectory according to the lengths of the sub-trajectories of the plurality of segments;

[0014] The speed change rates of adjacent sub-trajectories are determined according to the lengths of the sub-trajectories, the initial contact time, the intermediate contact time and the final contact time.

[0015] In one implementation, determining the direction angle according to the starting coordinates and the ending coordinates includes:

[0016] Determine a first difference between the ordinate of the end coordinate and the ordinate of the start coordinate;

[0017] Determine a second difference between the abscissa of the end coordinate and the abscissa of the start coordinate;

[0018] The ratio of the first difference to the second difference is determined, and the direction angle is obtained according to an inverse tangent function and the ratio.

[0019] In one embodiment, determining the speed change rate of adjacent sub-trajectories according to the lengths of the plurality of sub-trajectories, the start contact time, the middle contact time, and the end contact time comprises:

[0020] When one endpoint of the sub-trajectory is a starting contact point and the other endpoint is an intermediate contact point, calculating a first speed according to a length of the sub-trajectory and a time difference between the intermediate contact time and the starting contact time;

[0021] When both end points of the sub-trajectory are intermediate contact points, a second speed is calculated according to the length of the sub-trajectory and the time difference between the intermediate contact times corresponding to the intermediate contact points;

[0022] When one endpoint of the sub-trajectory is an intermediate contact point and the other endpoint is a terminal contact point, calculating a third speed according to a length of the sub-trajectory and a time difference between the terminal contact time and the intermediate contact time;

[0023] The speed change rates of the adjacent sub-trajectories are determined respectively according to the first speed, at least one of the second speeds, and the third speed.

[0024] In one implementation, determining the type of operation action according to the direction angle, the speed change rate, and the trajectory length includes:

[0025] Determine the angle differences between the direction angle and 0°, 90°, 180° and 270° respectively; if the angle difference between the direction angle and 0° or 180° is the smallest, determine that the direction of the gesture data is horizontal; if the angle difference between the direction angle and 90° or 270° is the smallest, determine that the direction of the gesture data is vertical;

[0026] When the speed change rate is greater than a change threshold, the gesture data is determined to be a curved motion; otherwise, the gesture data is determined to be a linear motion;

[0027] When the gesture data is a linear motion and the trajectory length is greater than a length threshold, a cell merging operation is determined. When the cell merging operation is determined, when the direction of the gesture data is horizontal, the operation action type is determined to be a horizontal cell merging, and when the direction of the gesture data is vertical, the operation action type is determined to be a vertical cell merging;

[0028] When the gesture data is a curve motion, it is determined that the operation action type is cell splitting.

[0029] In one implementation, controlling cells in the table to perform a merge operation or a split operation according to the operation action type includes:

[0030] When the operation action type is horizontal cell merging, a horizontal coverage range in the table is determined according to the gesture data, and a merging operation is performed on the cells in the horizontal coverage range;

[0031] When the operation action type is vertical cell merging, the vertical coverage range in the table is determined according to the gesture data, and a merging operation is performed on the cells in the vertical coverage range;

[0032] When the operation action type is cell splitting, a target cell in the table is determined according to the gesture data, and a splitting operation is performed on the target cell.

[0033] In one embodiment, the method further comprises at least one of the following:

[0034] Highlighting one of the horizontal coverage range, the vertical coverage range, and the target cell;

[0035] When the operation action type is determined, the operation action type is displayed through a confirmation dialog box for the user to review the operation action type. When the review is passed, the step of controlling the cells in the table to perform a merge operation or a split operation according to the operation action type is executed;

[0036] When a table is displayed on the electronic whiteboard, an operation area is generated to display the function buttons corresponding to cell merging and cell splitting respectively, and the user's historical gesture data is analyzed to determine the user's habitual operation action type. According to the habitual operation action type, the size of the function button corresponding to cell merging or cell splitting is adjusted.

[0037] In a second aspect, an embodiment of the present application provides a table operation device for an electronic whiteboard, comprising:

[0038] An acquisition module, used to acquire user gesture data when the electronic whiteboard displays a table;

[0039] An analysis module, used to analyze and process the gesture data to determine the direction angle, speed change rate and trajectory length;

[0040] A determination module, used to determine the type of operation action according to the direction angle, the speed change rate and the trajectory length;

[0041] The control module is used to control the cells in the table to perform a merge operation or a split operation according to the operation action type.

[0042] In one embodiment, the control module is further configured to perform at least one of the following:

[0043] Highlighting one of the horizontal coverage range, the vertical coverage range, and the target cell;

[0044] When the operation action type is determined, the operation action type is displayed through a confirmation dialog box for the user to review the operation action type. When the review is passed, the step of controlling the cells in the table to perform a merge operation or a split operation according to the operation action type is executed;

[0045] When a table is displayed on the electronic whiteboard, an operation area is generated to display the function buttons corresponding to cell merging and cell splitting respectively, and the user's historical gesture data is analyzed to determine the user's habitual operation action type. According to the habitual operation action type, the size of the function button corresponding to cell merging or cell splitting is adjusted.

[0046] In a third aspect, an embodiment of the present application provides an electronic device, comprising: a processor and a memory, wherein the memory stores instructions, and the instructions are loaded and executed by the processor to implement a method in any one of the above-mentioned embodiments.

[0047] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed, the method in any one of the above-mentioned embodiments is implemented.

[0048] The beneficial effects of the above technical solution include at least:

[0049] By displaying a table on an electronic whiteboard, the user's gesture data is obtained, the gesture data is analyzed and processed, the direction angle, speed change rate and trajectory length are determined, and the type of operation action is determined according to the direction angle, speed change rate and trajectory length. According to the type of operation action, the cells in the table are controlled to merge or split. By performing a multi-dimensional analysis of the direction angle, speed change rate and trajectory length of the user's gesture data, the type of operation action is determined, and the cells are automatically merged or split, which is more convenient and has higher operating efficiency.

[0050] The above summary is for illustrative purposes only and is not intended to be limiting in any way. In addition to the illustrative aspects, embodiments and features described above, further aspects, embodiments and features of the present application will be readily apparent by reference to the accompanying drawings and the following detailed description. BRIEF DESCRIPTION OF THE DRAWINGS

[0051] In the accompanying drawings, unless otherwise specified, the same reference numerals throughout the multiple drawings represent the same or similar parts or elements. These drawings are not necessarily drawn to scale. It should be understood that these drawings only depict some embodiments disclosed in the present application and should not be regarded as limiting the scope of the present application.

[0052] Figure 1 This is a schematic diagram of the steps of the table operation method of the electronic whiteboard according to an embodiment of the present application;

[0053] Figure 2 This is a structural block diagram of a table operation device of an electronic whiteboard according to an embodiment of the present application;

[0054] Figure 3 This is a structural block diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0055] In the following, only some exemplary embodiments are briefly described. As those skilled in the art will appreciate, the described embodiments may be modified in various ways without departing from the spirit or scope of the present application. Therefore, the drawings and descriptions are considered to be exemplary and non-restrictive in nature.

[0056] Reference Figure 1 , a flowchart of a table operation method of an electronic whiteboard according to an embodiment of the present application is shown. The table operation method of the electronic whiteboard may at least include steps S100-S400:

[0057] S100 . When the electronic whiteboard displays a table, obtain user gesture data.

[0058] S200: Analyze and process the gesture data to determine the direction angle, speed change rate, and trajectory length.

[0059] S300: Determine the type of operation action according to the direction angle, speed change rate and trajectory length.

[0060] S400: Control cells in the table to perform a merge operation or a split operation according to the operation action type.

[0061] The table operation method of the electronic whiteboard in the embodiment of the present application can be executed by the processor of the electronic whiteboard.

[0062] The technical solution of the embodiment of the present application obtains the user's gesture data when a table is displayed on an electronic whiteboard, analyzes and processes the gesture data, determines the direction angle, speed change rate and trajectory length, determines the type of operation action according to the direction angle, speed change rate and trajectory length, and controls the cells in the table to merge or split according to the type of operation action. By performing a multi-dimensional analysis of the direction angle, speed change rate and trajectory length of the user's gesture data, the type of operation action is determined, the cells are automatically merged or split, and the user's operation intention is automatically identified, which is more convenient, has higher operating efficiency and better user experience.

[0063] In one embodiment, when a user uses a table in an electronic whiteboard, the electronic whiteboard displays the table. When the electronic whiteboard displays the table, when the user needs to operate the table, such as merging or splitting cells, the user will make a gesture. At this time, the user's gesture is sensed to obtain the user's gesture data.

[0064] Optionally, after the gesture data is determined, filtering processing may be performed to remove noise signals to ensure the accuracy of the gesture data.

[0065] In one embodiment, step S200 includes steps S210-S250:

[0066] S210, determining in the gesture data, the starting coordinates and the starting contact time of the starting contact point, the intermediate coordinates and the corresponding intermediate contact time of at least one intermediate contact point, and the ending coordinates and the ending contact time of the ending contact point.

[0067] It should be noted that the gesture data may include the contact point, the time when the contact point is generated, and the coordinate position, specifically including the starting contact point, the starting coordinates (x_start, y_start) of the starting contact point and the starting contact time, at least one intermediate contact point, the intermediate coordinates of each intermediate contact point and the corresponding intermediate contact time, the ending contact point, the ending coordinates (x_end, y_end) of the ending contact point and the ending contact time.

[0068] S220: Determine the direction angle according to the starting coordinates and the ending coordinates.

[0069] Optionally, steps S2201-S2203 are included:

[0070] S2201. Determine a first difference between the ordinate of the end coordinate and the ordinate of the start coordinate.

[0071] Specifically, a first difference (y_end-y_start) between the ordinate y_end of the end coordinate and the ordinate y_start of the start coordinate is determined.

[0072] S2202: Determine a second difference between the abscissa of the end coordinate and the abscissa of the start coordinate.

[0073] Specifically, a second difference (x_end-x_start) between the abscissa x_end of the end coordinate and the abscissa x_start of the start coordinate is determined.

[0074] S2203, determining the ratio of the first difference to the second difference, and obtaining the direction angle according to the inverse tangent function arctan() and the ratio.

[0075] Specifically, the formula for the direction angle θ is:

[0076] θ=arctan[(y_end-y_start) / (x_end-x_start)].

[0077] S230 , determining a number of sub-trajectories and the length of each sub-trajectory according to the starting coordinate, at least one intermediate coordinate, and the ending coordinate.

[0078] Optionally, for example, assuming that there is one intermediate coordinate, that is, there is only one intermediate contact point, then a sub-trajectory of the starting coordinate and the intermediate coordinate, and a sub-trajectory of the intermediate coordinate and the ending coordinate can be determined; when there are two intermediate coordinates, then a sub-trajectory of the starting coordinate and the first intermediate coordinate, a sub-trajectory of the first intermediate coordinate and the second intermediate coordinate, and a sub-trajectory of the second intermediate coordinate and the ending coordinate can be determined; and when the number of intermediate coordinates is three or more, the same principle can be used to determine several sub-trajectories, and the length of each corresponding trajectory can be calculated based on the coordinates of the two endpoints of each sub-trajectory.

[0079] S240: Determine the track length according to the lengths of the plurality of sub-tracks.

[0080] Specifically, the length of all sub-trajectories is summed up to obtain the trajectory length.

[0081] S250, determining the speed change rate of adjacent sub-trajectories according to the lengths, the starting contact time, the middle contact time and the ending contact time of the plurality of sub-trajectories.

[0082] Optionally, steps S2501-S2504 are included:

[0083] S2501: When one endpoint of a sub-trajectory is a starting contact point and the other endpoint is an intermediate contact point, a first speed is calculated according to a length of the sub-trajectory and a time difference between the intermediate contact time and the starting contact time.

[0084] Optionally, when one endpoint of a sub-trajectory is a starting contact point and the other endpoint is an intermediate contact point, the time difference between the intermediate contact time and the starting contact time can be calculated, and then the first speed is calculated based on the length of the sub-trajectory of the starting coordinates and the intermediate coordinates.

[0085] S2502: When both end points of the sub-trajectory are intermediate contact points, calculate the second speed according to the length of the sub-trajectory and the time difference between the intermediate contact times corresponding to the intermediate contact points.

[0086] Optionally, when both endpoints of a sub-trajectory are intermediate contact points, for example, there are intermediate contact points A, B, and C, a second speed is calculated based on the length of the sub-trajectory between the intermediate contact points A and B, and the time difference between the intermediate contact times of the intermediate contact points A and B; a second speed is calculated based on the length of the sub-trajectory between the intermediate contact points B and C, and the time difference between the intermediate contact times of the intermediate contact points B and C. Similarly, a second speed can be determined between every two intermediate contact points.

[0087] S2503: When one endpoint of the sub-trajectory is an intermediate contact point and the other endpoint is a terminal contact point, calculate a third speed according to the length of the sub-trajectory and the time difference between the terminal contact time and the intermediate contact time.

[0088] Optionally, when one endpoint of a sub-trajectory is an intermediate contact point and the other endpoint is a terminal contact point, the time difference between the terminal contact time and the intermediate contact time, as well as the length of the sub-trajectory are determined, so that the third speed can be calculated, that is, the third speed is obtained by dividing the length by the time difference.

[0089] S2504: Determine the speed change rate of each adjacent sub-track according to the first speed, at least one second speed, and the third speed.

[0090] Optionally, based on the above calculation, the speed corresponding to each sub-track, such as the first speed, at least one second speed and the third speed, can be determined, so as to determine the speed change rate of each adjacent sub-track based on the difference between the speeds. For example, including the starting contact point Q, the intermediate contact points A, B, C and the ending contact point D, at this time, the absolute value of the difference between the first speed of QA and the second speed of AB can be determined, and a speed change rate can be determined. Similarly, the absolute value of the difference between the second speed of AB and the second speed of BC can be determined, and the absolute value of the difference between the second speed of BC and the third speed of CD can be determined.

[0091] In one implementation, step S300 includes steps S310-S340:

[0092] S310, respectively determine the angle differences between the direction angle and 0°, 90°, 180° and 270°; if the angle difference between the direction angle and 0° or 180° is the smallest, determine that the direction of the gesture data is horizontal; if the angle difference between the direction angle and 90° or 270° is the smallest, determine that the direction of the gesture data is vertical.

[0093] Optionally, the angle difference between the direction angle and 0° (equivalent to the positive direction of the X-axis), 90° (equivalent to the positive direction of the Y-axis), 180° (equivalent to the negative direction of the X-axis), and 270° (equivalent to the negative direction of the Y-axis) of the coordinate system is determined respectively. If the angle difference between the direction angle and 0° or 180° is the smallest, the direction of the gesture data is determined to be horizontal. More specifically, if the angle difference between the direction angle and 0° is the smallest, it is the positive direction of the horizontal direction, that is, rightward. If the angle difference between the direction angle and 180° is the smallest, it is the negative direction of the horizontal direction, that is, leftward. If the angle difference between the direction angle and 90° or 270° is the smallest, the direction of the gesture data is determined to be vertical. Specifically, if the angle difference between the direction angle and 90° is the smallest, it is the positive direction of the vertical direction, that is, upward. If the angle difference between the direction angle and 270° is the smallest, it is the negative direction of the vertical direction, that is, downward.

[0094] S320: When the speed change rate is greater than the change threshold, the gesture data is determined to be a curved motion; otherwise, the gesture data is determined to be a linear motion.

[0095] Optionally, the change threshold is based on experience or is set by the user; when the speed change rate is greater than the change threshold, the gesture data is determined to be a curved motion; if the speed change rate is less than or equal to the change threshold, the gesture data is determined to be a linear motion.

[0096] In the embodiment of the present application, whether the change is significant is determined by whether the rate of change exceeds a preset change threshold. A significant change in speed usually means that the acceleration or deceleration of the gesture trajectory during the period of time is large, which usually corresponds to a curved motion. It should be noted that in some cases, the user's gesture may be a slow curved motion, but it does not mean that the operation intention is to split the cell. For example, the user may just do a slow sliding operation instead of intentionally splitting. Therefore, judging the significance of the speed change rate based on the rate of change and the change threshold can effectively reduce misjudgment and ensure that the system can accurately understand the user's intention.

[0097] S330. When the gesture data is a linear motion and the trajectory length is greater than the length threshold, a cell merge operation is determined. When the cell merge operation is determined, when the direction of the gesture data is horizontal, the operation action type is determined to be a horizontal cell merge; when the direction of the gesture data is vertical, the operation action type is determined to be a vertical cell merge.

[0098] Optionally, the length threshold is based on experience or is set by the user; when the gesture data is a linear motion and the trajectory length is greater than the length threshold, a cell merge operation is determined. In addition, when determining a cell merge operation, when the direction of the gesture data is horizontal, the operation action type is determined to be a horizontal cell merge, and when the direction of the gesture data is vertical, the operation action type is determined to be a vertical cell merge.

[0099] In one embodiment, in step S400, when merging, when the operation action type is a horizontal cell merge, the position interval through which the trajectory passes in the table is determined based on the starting contact point and the ending contact point of the gesture data, specifically the horizontal coverage range in the table, and then the cells involved in the horizontal coverage range are determined (which can be more than two), and the cells are merged.

[0100] Similarly, when the operation action type is vertical cell merging, the vertical coverage range in the table is determined according to the gesture data, and then the cells involved in the vertical coverage range are determined (which can be more than two), and the cells are merged.

[0101] S340: When the gesture data is a curve motion, determine that the operation action type is cell splitting.

[0102] Optionally, when the gesture data is a curve motion, the operation action type is determined to be cell splitting.

[0103] Similarly, in step S400, when the operation action type is cell splitting, the target cell in the table is determined according to the gesture data. For example, the position interval through which the trajectory passes in the table is determined, specifically, the coverage range in the table, and then the target cells involved in the coverage range are determined (which may be one or more), and the cell splitting of one or more cells is realized at the same time.

[0104] In one embodiment, if it is detected that the user's gesture trajectory is abnormal, such as too fast speed or the trajectory does not meet the specifications, the system will actively prompt and recommend a more suitable operation method.

[0105] In one implementation, the table operation method of the electronic whiteboard in the embodiment of the present application may further include at least one of steps S510-S530:

[0106] S510: Highlight one of the horizontal coverage range, the vertical coverage range, and the target cell.

[0107] Optionally, after determining the horizontal coverage range, the vertical coverage range, and one of the target cells, the horizontal coverage range, the vertical coverage range, and one of the target cells are highlighted to let the user know the determined target, and simulate the effect of the actual selected target, provide a better feedback perspective, and enhance the user experience. For example, highlighting includes but is not limited to using different display colors inside the cell, changing the border color of the cell, or adding a flashing effect, etc., without specific limitation. At the same time, the user's gesture trajectory can also be displayed in real time on the screen of the electronic whiteboard, and the user can intuitively perceive the operation process.

[0108] S520. When determining the operation action type, the operation action type is displayed through a confirmation dialog box for the user to review the operation action type. When the review is passed, the step of controlling the cells in the table to merge or split according to the operation action type is executed.

[0109] Optionally, when determining the operation action type, the operation action type is displayed through a confirmation dialog box for the user to review the operation action type. For example, the user can touch and click a confirmation button, and the review is passed. When the review is passed, the step of controlling the cells in the table to merge or split according to the operation action type is executed, that is, step S400 is executed. If it is not passed, the user is prompted to re-operate, so as to determine one of the new horizontal coverage range, the new vertical coverage range, and the new target cell.

[0110] S530. When the electronic whiteboard displays a table, generate an operation area to display function buttons corresponding to cell merging and cell splitting, analyze the user's historical gesture data, determine the user's habitual operation action type, and adjust the size of the function button corresponding to cell merging or cell splitting according to the habitual operation action type.

[0111] Optionally, when the electronic whiteboard displays a table, the generated operation area displays the function buttons corresponding to the cell merging and cell splitting respectively. In addition to the gesture data analysis, a button control mode is also provided for the user to click to trigger the display of the function buttons corresponding to the cell merging and cell splitting, and then select the corresponding cell, thereby realizing the cell merging or cell splitting. In the embodiment of the present application, the user's historical gesture data is analyzed by an intelligent algorithm to determine the user's habitual operation action type, and the size of the function button corresponding to the cell merging or cell splitting is adjusted according to the habitual operation action type. For example, the number of times the function button of the cell merging and the function button of the cell splitting are used in the recent period of time can be analyzed. When the number of times the function button of the cell merging is used is greater, the size of the function button of the cell merging is increased; or, the number of times the function button of the cell merging and the function button of the cell splitting corresponding to different time periods is analyzed. When the current time period is a certain time period, if the number of times the function button of the cell splitting is used in the time period is greater, the size of the function button of the cell splitting is increased, the user's operation path is reduced, and the operation is more convenient.

[0112] In some embodiments, when determining the number of times a key is used within a period of time or certain time periods, it is possible to further determine whether the number of times is higher than a frequency threshold. If so, the size of the corresponding button is adjusted, otherwise the size of the button may not be adjusted; or, an intelligent analysis is performed to determine whether the content in the current table is suitable for adjusting the layout. For example, when the content in the table already occupies a preset proportion of the screen, no adjustment is made.

[0113] Reference Figure 2 , shows a structural block diagram of a table operation device of an electronic whiteboard according to an embodiment of the present application, and the device may include:

[0114] An acquisition module, used to acquire user gesture data when the electronic whiteboard displays a table;

[0115] An analysis module is used to analyze and process gesture data to determine the direction angle, speed change rate, and trajectory length;

[0116] A determination module is used to determine the type of operation action according to the direction angle, speed change rate and trajectory length;

[0117] The control module is used to control the cells in the table to merge or split according to the type of operation.

[0118] In one embodiment, the control module is further configured to perform at least one of the following:

[0119] Highlighting the horizontal coverage, vertical coverage, and one of the target cells;

[0120] When determining the operation type, the operation type is displayed in a confirmation dialog box for the user to review the operation type. When the review is passed, the steps of controlling the cells in the table to merge or split are executed according to the operation type;

[0121] When a table is displayed on the electronic whiteboard, an operation area is generated to display the function buttons corresponding to cell merging and cell splitting respectively, and the user's historical gesture data is analyzed to determine the user's habitual operation action type. According to the habitual operation action type, the size of the function button corresponding to cell merging or cell splitting is adjusted.

[0122] The functions of each module in each device in the embodiments of the present application can be found in the corresponding description in the above method, and will not be repeated here.

[0123] Reference Figure 3 , shows a structural block diagram of an electronic device according to an embodiment of the present application, the electronic device includes: a memory 310 and a processor 320, the memory 310 stores instructions that can be run on the processor 320, and the processor 320 loads and executes the instructions to implement the table operation method of the electronic whiteboard in the above embodiment. The number of the memory 310 and the processor 320 can be one or more.

[0124] In one embodiment, the electronic device also includes a communication interface 330 for communicating with external devices and performing data exchange transmission. If the memory 310, the processor 320 and the communication interface 330 are implemented independently, the memory 310, the processor 320 and the communication interface 330 can be interconnected through a bus and complete mutual communication. The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 3 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0125] Optionally, in a specific implementation, if the memory 310, the processor 320 and the communication interface 330 are integrated on a chip, the memory 310, the processor 320 and the communication interface 330 can communicate with each other through an internal interface.

[0126] An embodiment of the present application provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the table operation method of the electronic whiteboard provided in the above embodiment.

[0127] An embodiment of the present application also provides a chip, which includes a processor for calling and executing instructions stored in the memory from the memory, so that a communication device equipped with the chip executes the method provided by the embodiment of the present application.

[0128] An embodiment of the present application also provides a chip, including: an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected via an internal connection path, and the processor is used to execute the code in the memory. When the code is executed, the processor is used to execute the method provided in the embodiment of the application.

[0129] It should be understood that the processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc. It is worth noting that the processor may be a processor supporting the advanced RISC machines (ARM) architecture.

[0130] Further, optionally, the above-mentioned memory may include a read-only memory and a random access memory, and may also include a non-volatile random access memory. The memory may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may include a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may include a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available. For example, static RAM (SRAM), dynamic random access memory (DRAM), synchronous DRAM (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM) and direct rambus RAM (DR RAM).

[0131] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function according to the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.

[0132] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example" or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. Moreover, the described specific features, structures, materials or characteristics may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine different embodiments or examples described in this specification and the features of different embodiments or examples, unless they are contradictory.

[0133] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of this application, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.

[0134] Any process or method description in the flow chart or otherwise described herein can be understood to represent a module, fragment or portion of a code including one or more executable instructions for implementing the steps of a specific logical function or process. And the scope of the preferred embodiment of the present application includes other implementations, in which the functions may not be performed in the order shown or discussed, including in a substantially simultaneous manner or in a reverse order according to the functions involved.

[0135] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, which can be embodied in any computer-readable medium for use by an instruction execution system, apparatus or device (such as a computer-based system, a system including a processor or other system that can fetch instructions from an instruction execution system, apparatus or device and execute instructions), or used in combination with these instruction execution systems, apparatuses or devices.

[0136] It should be understood that the various parts of the present application can be implemented with hardware, software, firmware or a combination thereof. In the above embodiments, multiple steps or methods can be implemented with software or firmware stored in a memory and executed by a suitable instruction execution system. All or part of the steps of the above embodiment method can be completed by instructing the relevant hardware through a program, which can be stored in a computer-readable storage medium, and when the program is executed, it includes one of the steps of the method embodiment or a combination thereof.

[0137] In addition, each functional unit in each embodiment of the present application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into one module. The above-mentioned integrated module can be implemented in the form of hardware or in the form of a software functional module. If the above-mentioned integrated module is implemented in the form of a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. The storage medium can be a read-only memory, a disk or an optical disk, etc.

[0138] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of various changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A table operation method for an electronic whiteboard, characterized in that: include: When the electronic whiteboard displays a table, obtaining the user's gesture data; Analyzing and processing the gesture data to determine the direction angle, speed change rate, and trajectory length; Determining the type of operation action according to the direction angle, the speed change rate and the trajectory length; According to the operation action type, cells in the table are controlled to perform a merge operation or a split operation.

2. The table operation method of the electronic whiteboard according to claim 1, characterized in that: The analyzing and processing the gesture data to determine the direction angle, speed and trajectory length includes: Determine, in the gesture data, the starting coordinates and the starting contact time of the starting contact point, the intermediate coordinates and the corresponding intermediate contact time of at least one intermediate contact point, and the ending coordinates and the ending contact time of the ending contact point; Determine the direction angle according to the starting coordinates and the ending coordinates; Determine a plurality of sub-trajectories and the length of each sub-trajectory according to the starting coordinate, at least one of the intermediate coordinates and the ending coordinate; Determining the length of the trajectory according to the lengths of the sub-trajectories of the plurality of segments; The speed change rates of adjacent sub-trajectories are determined according to the lengths of the sub-trajectories, the initial contact time, the intermediate contact time and the final contact time.

3. The table operation method of the electronic whiteboard according to claim 2, characterized in that: The determining the direction angle according to the starting coordinates and the ending coordinates comprises: Determine a first difference between the ordinate of the end coordinate and the ordinate of the start coordinate; Determine a second difference between the abscissa of the end coordinate and the abscissa of the start coordinate; The ratio of the first difference to the second difference is determined, and the direction angle is obtained according to an inverse tangent function and the ratio.

4. The table operation method of the electronic whiteboard according to claim 2, characterized in that: Determining the speed change rate of adjacent sub-trajectories according to the lengths of the plurality of sub-trajectories, the start contact time, the middle contact time, and the end contact time comprises: When one endpoint of the sub-trajectory is a starting contact point and the other endpoint is an intermediate contact point, calculating a first speed according to a length of the sub-trajectory and a time difference between the intermediate contact time and the starting contact time; When both end points of the sub-trajectory are intermediate contact points, a second speed is calculated according to the length of the sub-trajectory and the time difference between the intermediate contact times corresponding to the intermediate contact points; When one endpoint of the sub-trajectory is an intermediate contact point and the other endpoint is a terminal contact point, calculating a third speed according to a length of the sub-trajectory and a time difference between the terminal contact time and the intermediate contact time; The speed change rates of the adjacent sub-trajectories are determined respectively according to the first speed, at least one of the second speeds, and the third speed.

5. The table operation method of the electronic whiteboard according to any one of claims 1 to 4, characterized in that: Determining the type of operation action according to the direction angle, the speed change rate, and the trajectory length includes: Determine the angle differences between the direction angle and 0°, 90°, 180° and 270° respectively; if the angle difference between the direction angle and 0° or 180° is the smallest, determine that the direction of the gesture data is horizontal; if the angle difference between the direction angle and 90° or 270° is the smallest, determine that the direction of the gesture data is vertical; When the speed change rate is greater than a change threshold, the gesture data is determined to be a curved motion; otherwise, the gesture data is determined to be a linear motion; When the gesture data is a linear motion and the trajectory length is greater than a length threshold, a cell merging operation is determined. When the cell merging operation is determined, when the direction of the gesture data is horizontal, the operation action type is determined to be a horizontal cell merging, and when the direction of the gesture data is vertical, the operation action type is determined to be a vertical cell merging; When the gesture data is a curve motion, it is determined that the operation action type is cell splitting.

6. The table operation method of the electronic whiteboard according to claim 5, characterized in that: According to the operation action type, controlling the cells in the table to perform a merge operation or a split operation includes: When the operation action type is horizontal cell merging, a horizontal coverage range in the table is determined according to the gesture data, and a merging operation is performed on the cells in the horizontal coverage range; When the operation action type is vertical cell merging, the vertical coverage range in the table is determined according to the gesture data, and a merging operation is performed on the cells in the vertical coverage range; When the operation action type is cell splitting, a target cell in the table is determined according to the gesture data, and a splitting operation is performed on the target cell.

7. The table operation method of the electronic whiteboard according to claim 6, characterized in that: The method further comprises at least one of the following: Highlighting one of the horizontal coverage range, the vertical coverage range, and the target cell; When the operation action type is determined, the operation action type is displayed through a confirmation dialog box for the user to review the operation action type. When the review is passed, the step of controlling the cells in the table to perform a merge operation or a split operation according to the operation action type is executed; When a table is displayed on the electronic whiteboard, an operation area is generated to display the function buttons corresponding to cell merging and cell splitting respectively, and the user's historical gesture data is analyzed to determine the user's habitual operation action type. According to the habitual operation action type, the size of the function button corresponding to cell merging or cell splitting is adjusted.

8. A table operation device for an electronic whiteboard, characterized in that: include: An acquisition module, used to acquire user gesture data when the electronic whiteboard displays a table; An analysis module, used to analyze and process the gesture data to determine the direction angle, speed change rate and trajectory length; A determination module, used to determine the type of operation action according to the direction angle, the speed change rate and the trajectory length; The control module is used to control the cells in the table to perform a merge operation or a split operation according to the operation action type.

9. An electronic device, characterized in that: include: A processor and a memory, wherein the memory stores instructions, and the instructions are loaded and executed by the processor to implement the method according to any one of claims 1 to 7.

10. A computer-readable storage medium, wherein a computer program is stored in the computer-readable storage medium, and when the computer program is executed, the method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Cell merging and splitting method for interactive electronic whiteboard software

    CN105760170A

  • Table management method and device, storage medium and electronic equipment

    CN115495189A

  • Gesture recognition method and gesture recognition apparatus

    US20150301609A1