Airspace incremental interactive rendering method and system
Patent Information
- Application Number
- CN202610763126.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-05-29
- Publication Date
- 2026-08-18
AI Technical Summary
[0005]本申请提供一种空域增量式交互绘制方法及系统,用以解决现有技术中多尺度网格绘制技术中绘制基准随视高频繁漂移、多类型空域要素表达碎片化、局部精细化拆分控制被动以及多尺度渲染性能受限的技术问题,全面提升空域绘制的作业效率与交互体验
[0015]Fourthly, this application provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the spatial incremental interactive drawing method of the first aspect described above.
Smart Images

Figure CN122593678A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of airspace management technology, and in particular to an incremental interactive airspace drawing method and system. Background Technology
[0002] With the large-scale and standardized development of the low-altitude economy, refined airspace management places higher demands on the accuracy, efficiency, and smoothness of visualization mapping. Airspace mapping is the core operational step in constructing airspace elements such as controlled areas, routes, and waypoints on digital airspace maps.
[0003] However, existing airspace rendering technologies are ill-suited to the practical needs of refined low-altitude control. On one hand, current technologies tightly couple the airspace grid hierarchy with the view height; zooming at view height directly alters the grid hierarchy, resulting in a lack of a stable spatial reference system. Local refinement requires a complete reconstruction of the entire rendering content, leading to extremely low reusability of rendering results. On the other hand, current technologies only support planar airspace plotting; there is no grid fusion and picking mechanism for linear and point features. Plotting multiple feature types requires frequent tool switching, making data consistency difficult to guarantee. Furthermore, the grid splitting process in current technologies is automatically triggered by the system based on preset conditions, rather than being actively controlled by the user based on rendering needs. Users cannot proactively split specific areas when they discover insufficient grid precision during the rendering process, nor can they continue the original rendering workflow after splitting. In addition, repeatedly switching grid levels requires reloading massive amounts of grid data, resulting in excessive multi-scale rendering overhead and frequent view rendering stutters, severely restricting performance.
[0004] Therefore, it is of great significance to solve the technical problems in existing multi-scale mesh rendering technology, such as the frequent drift of the rendering reference with the view height, the fragmentation of the expression of multiple types of spatial features, the passive control of local fine-grained splitting, and the limited performance of multi-scale rendering, so as to comprehensively improve the work efficiency and interactive experience of spatial rendering. Summary of the Invention
[0005] This application provides a spatial incremental interactive rendering method and system to solve the technical problems in existing multi-scale mesh rendering techniques, such as frequent drift of the rendering reference with view height, fragmentation of the expression of multiple types of spatial features, passive control of local fine-grained splitting, and limited multi-scale rendering performance, thereby comprehensively improving the operational efficiency and interactive experience of spatial rendering.
[0006] Firstly, this application provides a spatial incremental interactive drawing method, the method comprising: The drawing baseline level is determined based on the level locking operation; Based on the initial picking information of the target mesh at the drawing reference level, the initial spatial features of the target mesh are determined; According to the splitting instruction of the target grid, the target grid is split into sub-grids, and the inherited spatial features corresponding to the sub-grids are determined according to the initial spatial features. Obtain the incremental picking information of the sub-grid, and update the inherited spatial features of the sub-grid based on the incremental picking information; The target airspace is determined based on the inherited airspace features of the updated multiple subgrids.
[0007] Optionally, according to the spatial incremental interactive drawing method of this application, determining the inherited spatial features corresponding to the sub-grid based on the initial spatial features includes: The drawing state of the target grid is determined based on the coverage state of the initial spatial features in the target grid; When the drawing state is full-grid drawing state, the first grid code corresponding to the sub-grid is determined according to the full-grid drawing state, and the first inherited spatial feature corresponding to the sub-grid is determined according to the first grid code. When the drawing state is a non-full-grid drawing state, the second grid code of the sub-grid is determined according to the non-full-grid drawing state, and the second inherited spatial feature corresponding to the sub-grid is determined according to the second grid code.
[0008] Optionally, according to the spatial incremental interactive drawing method of this application, the initial spatial features include at least one of initial planar spatial features, initial linear spatial features, and initial point spatial features. The step of determining the initial spatial features of the target mesh based on the initial picking information of the target mesh at the rendering reference level includes: If the initial picking information is a target mesh bounding box, the complete mesh cell and target mesh code of the target mesh are determined according to the polygon collision algorithm and the target mesh bounding box, and the initial planar spatial feature is determined according to the complete mesh cell and target mesh code of the target mesh. When the initial picking information is the target mesh edge, the initial identifier line mask and target mesh code of the target mesh are determined according to the line collision detection algorithm and the target mesh edge, and the initial linear spatial feature is determined according to the initial identifier line mask and target mesh code of the target mesh. If the initial picking information is a target grid corner point, the initial identifier mask and target grid code of the target grid are determined according to the line collision detection algorithm and the target grid corner point, and the initial point spatial feature is determined according to the initial identifier mask and target grid code of the target grid.
[0009] Optionally, according to the spatial incremental interactive drawing method of this application, the inherited spatial features include at least one of inheriting planar spatial features, inheriting linear spatial features, and inheriting point spatial features. The step of updating the inherited spatial features of the sub-grid based on the incremental picking information includes: When the incremental picking information is a sub-mesh bounding box, the complete mesh cell and sub-mesh code of the sub-mesh are determined according to the polygon collision algorithm and the sub-mesh bounding box, and the inherited areal spatial features of the sub-mesh are updated according to the complete mesh cell and sub-mesh code of the sub-mesh. When the incremental picking information is a sub-mesh edge, the incremental identifier line mask and sub-mesh code of the sub-mesh are determined according to the line collision detection algorithm and the sub-mesh edge, and the inherited linear spatial features of the sub-mesh are updated according to the incremental identifier line mask and sub-mesh code of the sub-mesh. When the incremental picking information is a sub-mesh corner point, the incremental identifier point mask and sub-mesh code of the sub-mesh are determined according to the line collision detection algorithm and the corner point of the sub-mesh, and the inherited point spatial features of the sub-mesh are updated according to the incremental identifier point mask and sub-mesh code of the sub-mesh.
[0010] Optionally, according to the spatial incremental interactive drawing method of this application, the initial spatial features include at least one of initial planar spatial features and initial linear spatial features. The step of determining the first grid code corresponding to the sub-grid based on the full-grid drawing state, and determining the first inherited spatial feature corresponding to the sub-grid based on the first grid code, includes: When the initial spatial feature is an initial planar spatial feature, the first grid code corresponding to the sub-grid is determined according to the full-grid drawing state; the corner spatial coordinates of the sub-grid are determined according to the first grid code, and the first inherited spatial feature corresponding to the sub-grid is determined according to the corner spatial coordinates. When the initial spatial features are initial linear spatial features, according to the full-grid drawing state, a target subgrid containing the edge of the target grid is determined from the subgrid, and the first grid code corresponding to the target subgrid is determined; according to the first grid code, the coordinates of the edge vertex of the target subgrid are determined, and the first inherited spatial feature corresponding to the subgrid is determined according to the coordinates of the edge vertex of the target subgrid.
[0011] Optionally, according to the spatial incremental interactive drawing method of this application, the initial spatial features include at least one of initial planar spatial features and initial linear spatial features. The step of determining the second inherited spatial feature corresponding to the sub-grid based on the second grid code includes: When the initial spatial feature is an initial planar spatial feature, the second grid code is grouped according to the level of the second grid code and the preset level to obtain a planar grouping sequence; the second inherited spatial feature corresponding to the sub-grid is determined according to the planar grouping sequence. When the initial spatial element is an initial linear spatial element, the second grid code is grouped according to the level of the second grid code and the preset level to obtain a linear grouping sequence; the second inherited spatial element corresponding to the sub-grid is determined according to the linear grouping sequence.
[0012] Optionally, according to the spatial incremental interactive drawing method of this application, the step of grouping the second grid code according to the level of the second grid code and the preset level includes: If the level of the second grid code is equal to the preset level, the second grid code is added to the corresponding grouping sequence; If the level of the second grid code is greater than the preset level, the parent grid code corresponding to the second grid code is determined, and the parent grid code is added to the corresponding grouping sequence.
[0013] Secondly, this application provides a spatial incremental interactive rendering system, the system comprising: The locking module is used to determine the drawing baseline level based on the level locking operation; The first determining module is used to determine the initial spatial features of the target mesh based on the initial picking information of the target mesh at the drawing reference level. The inheritance module is used to split the target mesh into sub-mesh according to the splitting instruction of the target mesh, and to determine the inherited spatial features corresponding to the sub-mesh according to the initial spatial features; The update module is used to obtain the incremental picking information of the sub-grid and update the inherited spatial features of the sub-grid according to the incremental picking information. The second determination module is used to determine the target airspace based on the inherited airspace features of the updated multiple subgrids.
[0014] Thirdly, this application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the spatial incremental interactive drawing method as described in the first aspect above.
[0015] Fourthly, this application provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the spatial incremental interactive drawing method of the first aspect described above.
[0016] The incremental interactive spatial rendering method and system provided in this application effectively decouple the rendering reference from the view level by determining the rendering reference level based on the layer locking operation. This avoids the problems of context loss and rendering reference drift caused by frequent scaling, ensuring continuous operation under a stable spatial reference system. Furthermore, the target mesh is split into sub-mesh by the splitting command of the target mesh, and the inherited spatial features of the sub-mesh are determined based on the initial spatial features of the target mesh. This enables the method and system to accurately map and inherit the original mesh rendering content to the subdivided level, overcoming the technical defect that requires complete reconstruction for local refinement. Finally, the inherited spatial features of the sub-mesh are updated by incrementally picking information from the sub-mesh. Based on the updated inherited spatial features of multiple sub-mesh, the target spatial domain is determined. This method and system solve the technical problems of frequent rendering reference drift with view height, fragmented expression of multiple types of spatial features, passive control of local fine-grained splitting, and limited multi-scale rendering performance in existing multi-scale mesh rendering technologies, comprehensively improving the operational efficiency and interactive experience of spatial rendering. Attached Figure Description
[0017] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0018] Figure 1 This is one of the flowcharts of the incremental interactive drawing method for spatial domain provided in this application.
[0019] Figure 2 This is the second flowchart of the spatial incremental interactive drawing method provided in this application.
[0020] Figure 3 This is a flowchart illustrating the hierarchical locking operation provided in this application.
[0021] Figure 4 This is a flowchart illustrating the process of determining initial airspace elements provided in this application.
[0022] Figure 5 This is a flowchart illustrating the process of updating the inherited spatial features of the subgrid provided in this application.
[0023] Figure 6This is one of the example diagrams of the spatial incremental interactive drawing method provided in this application.
[0024] Figure 7 This is the second example diagram of the spatial incremental interactive drawing method provided in this application.
[0025] Figure 8 This is an example diagram of the spatial incremental interactive drawing system provided in this application.
[0026] Figure 9 This is a schematic diagram of the structure of the spatial incremental interactive drawing system provided in this application.
[0027] Figure 10 This is a schematic diagram of the structure of the electronic device provided in this application. Detailed Implementation
[0028] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.
[0029] Figure 1 This is one of the flowcharts illustrating the incremental interactive drawing method for spatial domain provided in this application, such as... Figure 1 As shown, the method may include: Step 110: Determine the base level for drawing based on the level locking operation; Step 120: Determine the initial spatial features of the target mesh based on the initial picking information of the target mesh at the drawing reference level; Step 130: According to the splitting instruction of the target grid, split the target grid into sub-grids, and determine the inherited spatial features corresponding to the sub-grids based on the initial spatial features; Step 140: Obtain the incremental picking information of the subgrid, and update the inherited spatial features of the subgrid based on the incremental picking information; Step 150: Determine the target airspace based on the inherited airspace features of the updated multiple subgrids.
[0030] It should be noted that the execution entity of the aforementioned incremental interactive airspace rendering method can be a computer device with computing, data processing, and graphics rendering capabilities. Specifically, this computer device can be a desktop computer, a graphics workstation, a server, or a smart terminal equipped with application software for airspace planning, low-altitude flight control, etc. This application does not impose specific limitations in this regard.
[0031] Unless otherwise specified, the following embodiments will use the computer device as the execution subject to illustrate the spatial incremental interactive drawing method of this application.
[0032] A layer locking operation refers to an interactive action that fixes the currently displayed grid layer as the drawing reference. For example, a layer locking operation can be triggered by a user through an interface button or right-click menu; it can also be triggered by a user through a preset shortcut key. This application does not specifically limit this.
[0033] The base level for drawing refers to the spatial grid scale level that remains unchanged during subsequent drawing operations after the level locking operation is triggered.
[0034] The target mesh refers to the grid cells and their associated geometric topology that the user selects based on actual operational needs at the drawing baseline level to generate target spatial content.
[0035] Initial pickup information refers to the triggering information generated when a user first interacts with the target grid, used to locate and select the core representation data of the grid. For example, initial pickup information can be single-selection pickup information generated by clicking on a part of the grid geometry; it can also be a set of batch pickup information generated by dragging a selection box with the mouse. This application does not specifically limit this.
[0036] Initial spatial features refer to the spatial content and its associated attributes that are initially located and generated on the target grid based on initial pick information.
[0037] The split command refers to the interactive control command used to subdivide the target mesh into sub-mesh when the target mesh is found to be insufficient in precision.
[0038] A submesh refers to a finer-scale mesh unit generated after the target mesh is recursively split according to a preset partitioning rule.
[0039] Inherited spatial features refer to the spatial content and associated attributes that a sub-mesh synchronously maps and retains from the target mesh before splitting.
[0040] Incremental picking information refers to the interactive trigger information that users use to supplement, correct, or cancel the drawing of specific areas on the sub-mesh after it has been generated.
[0041] The target airspace refers to the spatial region that finally meets the accuracy requirements after multiple grid splits and incremental rendering adjustments.
[0042] Specifically, in step 110, an initial target drawing layer suitable for the current task is selected, and a layer locking operation is issued. Based on the layer locking operation, the initial target drawing layer of the current task is fixed as the drawing reference layer. In this state, the impact of view height changes on the mesh layer can be shielded; view scaling only adjusts the display ratio without changing the mesh scale, ensuring that the mesh elements already built in the scene remain stable.
[0043] In step 120, at the drawing baseline level, the initial picking information of the target mesh is obtained. Based on the relevant collision detection algorithm of the integrated OSG (OpenSceneGraph, an open-source scene graphics engine), the initial picking information, and the preset picking logic, the geometric position of the target mesh is accurately located and associated with the corresponding target mesh code, thereby determining the initial spatial features of the target mesh.
[0044] In step 130, if it is determined during the operation that the initial spatial features already drawn have insufficient mesh accuracy in a local area, a splitting instruction is determined for the target mesh. According to the splitting instruction of the target mesh, the target mesh is recursively split into multiple sub-mesh levels according to the preset splitting rules. Unordered splitting across levels is strictly prohibited to ensure the consistency of the mesh topology.
[0045] During the grid splitting process, based on the initial spatial features of the target grid, the drawing content and associated attributes of the initial spatial features are mapped to the corresponding sub-grids, thereby accurately determining the inherited spatial features of the sub-grids.
[0046] In step 140, after the mesh is split, the sub-mesh and the original drawing base level mesh will be mixed and rendered in the same view, and operations can be continued directly on the sub-mesh.
[0047] The incremental picking information of the subgrid is obtained, and based on the incremental picking information, the areas on the subgrid that need further refinement are drawn, or the picking is canceled for specific subgrids that do not need to retain the original inherited content, thereby updating the inherited spatial features of the subgrid.
[0048] In step 150, the inherited spatial features of multiple updated subgrids are extracted and integrated to finally generate a target spatial domain that meets the accuracy requirements.
[0049] Figure 2 This is the second flowchart of the incremental interactive drawing method for spatial domain provided in this application, as shown below. Figure 2 As shown, in step 210, layer pre-selection and mesh rendering are performed. Enter the free layer mode, adjust the view height by zooming with the scroll wheel, select the initial target drawing layer that fits the current job, and simultaneously render the mesh corresponding to the initial target drawing layer to complete the drawing of mesh elements including corner points and edges, and assign a dedicated mask.
[0050] In step 220, initial layer locking is performed. Once a suitable initial target drawing layer is found, the initial target drawing layer is fixed as the drawing reference layer according to the layer locking operation, and the stable drawing operation mode is entered. The existing features and their dedicated masks remain unchanged.
[0051] In step 230, differential rendering is performed. Based on the initial picking information of the target mesh at the rendering reference level, differential rendering is performed to determine the initial spatial features of the target mesh.
[0052] In step 240, it is determined whether there are regions in the initial spatial features that require more refined representation. If no regions require more refined representation, the process jumps directly to step 280 to generate the spatial domain; if regions require more refined representation, it indicates that further subdivision is needed, and step 250 is executed.
[0053] In step 250, mesh splitting is performed. Recursive splitting is triggered for meshes with insufficient precision to obtain sub-mesh. After the sub-mesh is rendered, the corresponding features and mask are constructed. If the target mesh already has drawn content, the inherited spatial features corresponding to the sub-mesh are determined based on the initial spatial features.
[0054] In step 260, incremental drawing continues. Incremental picking information of the sub-grid is obtained, and the inherited spatial features of the sub-grid are updated based on the incremental picking information. For example, drawing can continue on the split sub-grid; alternatively, a de-picking operation can be performed on the already drawn content of the sub-grid to make drawing adjustments and supplement more refined spatial details.
[0055] In step 270, a judgment is made on whether the accuracy requirements are met. If the accuracy requirements are not met, the process returns to step 250 to continue the next round of mesh splitting and incremental drawing; if the accuracy requirements are met, the adjustment loop ends and step 280 is executed.
[0056] In step 280, spatial domain generation is performed based on the inherited spatial domain features of the updated subgrid.
[0057] In step 290, after the spatial domain is generated, the drawing results are saved. The hierarchical locking operation, the drawn spatial domain data, and the grid splitting records are saved to generate a complete spatial domain description file, thus completing one drawing loop.
[0058] Figure 3 This is a flowchart illustrating the hierarchical locking operation provided in this application, such as... Figure 3 As shown, it mainly includes the initial operation stage, the layer locking and stable drawing stage, and the layer switching and relocking stage. The specific implementation principle and steps are as follows: During the initial operation phase, the system defaults to free-level mode upon startup. In this mode, the view height can be adjusted using interactive devices such as the mouse wheel. When view height triggers a level switch, the grid level dynamically changes according to the view height-level mapping table. This is primarily used for quickly browsing multi-scale grids to filter and determine the most suitable initial target drawing level for the current drawing needs.
[0059] It is worth noting that during the dynamic switching of grid levels, the corresponding grid level will be rendered simultaneously, completing the drawing of grid elements (such as grid borders, grid corners, and grid edges) at that level, and assigning a dedicated mask, thereby preparing comprehensive data for subsequent drawing operations.
[0060] During the layer locking and stable drawing phase, after selecting the initial target drawing layer, the layer locking operation can be triggered through any method such as interface buttons, shortcut keys, or right-click menu. Based on the layer locking operation, the system will switch from free layer mode to fixed layer mode and fix the current layer (initial target drawing layer) as the drawing reference layer.
[0061] At this point, since rendering has been completed in the initial operation phase, and the mesh elements and their unique masks have been constructed, they do not need to be regenerated in subsequent drawing processes, greatly saving resource consumption. The specific execution logic in this phase includes: Upon initial locking, the layer at the time of the layer locking operation is recorded and used as the initial target drawing layer, and the elements corresponding to the initial target drawing layer are rendered synchronously.
[0062] During the locked state, the effect of view height on the mesh hierarchy is masked. For example, when adjusting the view using the mouse wheel, the view zoom operation will only adjust the display scale, without changing the physical scale and hierarchy of the mesh. This process solves the drawing reference drift problem caused by view zoom in traditional techniques, ensuring the continuity and stability of the drawing operation. Based on this, drawing work can be carried out stably based on already rendered features.
[0063] During the layer switching and relocking phase, manual layer unlocking is supported. After unlocking, the system reverts from fixed layer mode to free layer mode, allowing free switching to any new target layer. Upon switching to a new target layer, the mesh of that new target layer will be rendered synchronously, constructing new features and masks. It can be understood that when splitting to the next level to generate sub-mesh, if the target mesh contains already drawn content, the operation of synchronously splitting the already drawn content of the target mesh will be performed to ensure that the drawn content can be processed hierarchically.
[0064] After the operation is completed, you can manually trigger the locking operation again, that is, set the new target level after the current switch as the new drawing reference.
[0065] The incremental interactive spatial rendering method provided in this application determines the rendering reference level based on the layer locking operation, thereby effectively decoupling the rendering reference from the view level. This avoids the problems of context loss and rendering reference drift caused by frequent scaling, ensuring continuous operation under a stable spatial reference system. Furthermore, the method splits the target mesh into sub-mesh using the target mesh splitting command, and determines the inherited spatial features of the sub-mesh based on the initial spatial features of the target mesh. This enables precise mapping and inheritance of the original mesh rendering content to the subdivided level, overcoming the technical defect of requiring complete reconstruction for local refinement. Finally, the method updates the inherited spatial features of the sub-mesh by incrementally picking information, and determines the target spatial domain based on the updated inherited spatial features of multiple sub-mesh. This method solves the technical problems of frequent rendering reference drift with view height, fragmented expression of multiple types of spatial features, passive control of local fine-grained splitting, and limited multi-scale rendering performance in existing multi-scale mesh rendering techniques, comprehensively improving the operational efficiency and interactive experience of spatial rendering.
[0066] In one embodiment, determining the inherited spatial features corresponding to the sub-grid based on the initial spatial features includes: The drawing state of the target grid is determined based on the coverage state of the initial spatial features in the target grid. When the drawing state is full-grid drawing state, the first grid code corresponding to the sub-grid is determined according to the full-grid drawing state, and the first inherited spatial feature corresponding to the sub-grid is determined according to the first grid code. When the drawing state is not full-grid, the second grid code of the sub-grid is determined based on the not-full-grid drawing state, and the second inherited spatial feature corresponding to the sub-grid is determined based on the second grid code.
[0067] Specifically, coverage state refers to the area occupied, boundary overlap, or completeness of the initial spatial features within the target grid space. For example, coverage state can be a complete occupancy state where the entire target grid is picked and covered, i.e., a full-grid rendering state; or it can be an occupancy state where only a local area of the target grid is rendered, i.e., a non-full-grid rendering state. This application does not impose specific limitations on this.
[0068] Full-grid rendering refers to a state where the entire area or edge of the target grid is completely occupied by the initial spatial features.
[0069] The first grid code refers to the set of encoded data for all sub-grids generated by splitting the target grid in a full-grid rendering state. For example, the first grid code can be a sequence of encoded sub-grids of all the next-level sub-grids generated according to a preset partitioning rule. This application does not impose specific limitations on this.
[0070] The first inherited spatial element refers to the element generated by the sub-grid based on the first grid encoding that matches the full content of the target grid.
[0071] The non-full-grid rendering state refers to the state in which only local face areas or incomplete edge fragments of the target mesh are occupied by the initial spatial features.
[0072] The second grid encoding refers to the set of encoded data that matches only a portion of the target grid area when the drawing is not full-grid.
[0073] The second inherited spatial element refers to the element generated by the sub-grid based on the second grid encoding, which accurately reflects the local content of the target grid.
[0074] Specifically, the rendering state of the target grid is determined based on the coverage status of the initial spatial features within the target grid. For example, the target grid code and the current set of rendering features are obtained. By accurately determining the coverage status of the rendering feature set in the space corresponding to the target grid code, the occupancy level of the original rendering content can be assessed, and the rendering state of the target grid can be confirmed as either a full-grid rendering state or a partial-grid rendering state.
[0075] When the drawing state is full-grid drawing, it indicates that the initial spatial features have fully covered the target grid. At this point, based on the full-grid drawing state and according to the preset subdivision rules, the codes of all sub-grids generated by the step-by-step subdivision of the target grid are obtained, thereby determining the first grid code corresponding to the sub-grid. Subsequently, based on the first grid code, the first inherited spatial feature corresponding to the sub-grid is determined.
[0076] When the drawing state is not full-grid, it indicates that the initial spatial features only partially occupy the target grid. In this case, based on the non-full-grid drawing state, a precise selection is performed on only a local area of the target grid to extract a set of sub-grid codes within a specific range, which is then identified as the second grid code. Subsequently, based on the second grid code, the second inherited spatial features corresponding to the sub-grids are determined.
[0077] The incremental interactive spatial rendering method provided in this application determines the rendering state of the target grid by assessing the coverage state of initial spatial features within the target grid. This enables accurate evaluation and classification of existing spatial content within the target grid, providing a solid data foundation for subsequent differentiated inheritance processes. Furthermore, when the rendering state is full-grid rendering, the method determines the first grid code corresponding to the sub-grid based on the full-grid rendering state, and then determines the first inherited spatial features corresponding to the sub-grid based on the first grid code. Conversely, when the rendering state is not full-grid rendering, the method determines the second grid code of the sub-grid based on the non-full-grid rendering state, and then determines the second inherited spatial features corresponding to the sub-grid based on the second grid code. This method achieves accurate mapping and inheritance of the rendering content of the target grid to the sub-grids, avoiding the pain point of repetitive work on existing data after grid splitting, and comprehensively improving the efficiency and interactive experience of spatial rendering.
[0078] In one embodiment, the initial spatial features include at least one of initial areal spatial features, initial linear spatial features, and initial point spatial features. Based on the initial picking information of the target mesh at the baseline drawing level, the initial spatial features of the target mesh are determined, including: If the initial picking information is the target mesh bounding box, the complete mesh cell and target mesh code of the target mesh are determined according to the polygon collision algorithm and the target mesh bounding box, and the initial areal spatial features are determined according to the complete mesh cell and target mesh code of the target mesh. When the initial picking information is the target mesh edge, the initial identifier line mask and target mesh code of the target mesh are determined according to the line collision detection algorithm and the target mesh edge. The initial linear spatial features are then determined according to the initial identifier line mask and target mesh code of the target mesh. When the initial picking information is the corner point of the target grid, the initial marker mask and target grid code of the target grid are determined based on the line collision detection algorithm and the target grid corner point. The initial point spatial features are then determined based on the initial marker mask and target grid code of the target grid.
[0079] Specifically, the target mesh bounding box refers to the set of contour line segments that constitute the outermost physical boundary of the target mesh.
[0080] The target mesh edge line refers to the specific single boundary line around the target mesh.
[0081] It should be noted that in a planar grid system, each grid cell typically has four edges: the left edge, the top edge, the right edge, and the bottom edge. From the perspective of the completeness and uniqueness of spatial feature representation, by simply assigning any two edges of the target grid to that grid cell, a seamless and non-repetitive representation of all line features of the target grid can be achieved.
[0082] In this embodiment, the left and top edges of the target mesh are used as examples. However, in practical applications, any combination of two edges from the left, top, right, and bottom edges can be flexibly selected as the target mesh edges according to the coordinate system definition or business requirements. This application does not impose specific limitations on this.
[0083] The target grid corner refers to a specific vertex among the four vertices of the target grid. For example, the northwest corner, northeast corner, southwest corner, and southeast corner of the target grid.
[0084] It should be noted that in gridded airspace management, in order to achieve a unique mapping of all point features, any vertex of a planar grid cell can represent a point feature of the target grid.
[0085] In this embodiment, the northwest corner of the target grid is used as an example. In practical applications, any one of the northeast, southwest, or southeast corners can be selected as the target grid corner. This application does not impose specific limitations on this. The initial marker line mask and the initial marker point mask are unique identifiers assigned to different spatial features. For example, the initial marker line mask can be the identifier of the left or top edge of the target grid; the initial marker point mask can be the identifier of the northwest corner of the target grid. This application does not impose specific limitations on this.
[0086] Specifically, a relationship is established between "feature-mask-target grid code". An initial marker point mask is assigned and bound to the northwest corner point of the target grid, and an initial marker line mask is assigned and bound to the left or top edge of the target grid. It is important to note that the target grid bounding box is not bound to a specific dedicated mask. This ensures that in an incremental interactive rendering scenario in the spatial domain, all features to be picked and their corresponding masks are fully constructed.
[0087] Figure 4 This is a flowchart illustrating the process of determining initial airspace elements provided in this application, such as... Figure 4 As shown, first, enter the free layer mode, adjust the view height using the mouse wheel, and select the initial target drawing layer.
[0088] Next, the current layer's mesh is rendered, generating features and a mask. After the features and mask are constructed, a layer locking operation is triggered, entering fixed layer mode. At this point, the current layer is locked as the drawing reference layer, shielding the view height from the influence of the mesh layer.
[0089] If different precision requirements need to be adapted during drawing, i.e., the layer needs to be switched, you can manually unlock and switch to the target layer, and then the process will return to the "trigger layer lock operation" node; if different precision requirements do not need to be adapted during drawing, i.e., the layer does not need to be switched, you can directly proceed to the next drawing stage.
[0090] After establishing the rendering reference level, the initial spatial features of the target mesh can be determined based on the initial picking information of the target mesh at the rendering reference level. The initial spatial features include at least one of the following: initial planar spatial features, initial linear spatial features, and initial point spatial features.
[0091] Optionally, if the initial picked information is the target mesh bounding box, the picked target object is selected based on the polygon collision algorithm and the target mesh bounding box corresponding to the mouse coordinates. The complete mesh cell corresponding to the target mesh bounding box is locked, and the target mesh code corresponding to the complete mesh cell is obtained simultaneously. Subsequently, the initial areal spatial features are determined based on the complete mesh cell and target mesh code of the target mesh.
[0092] Optionally, if the initial picking information is the target grid edge, the left or top edge of the target grid is selected as the picking object to avoid interference from other irrelevant features. Then, based on the line collision detection algorithm and the left or top edge of the target grid pointed to by the mouse coordinates, the picked target object is selected, and the initial identifier line mask and target grid code of the target grid are determined. Subsequently, based on the initial identifier line mask and target grid code of the target grid, the corresponding edge is extracted as the basic generated line segment, thereby determining the initial linear spatial features.
[0093] Optionally, if the initial picking information is a target grid corner point, the northwest corner point of the target grid is selected as the picking object. Then, based on the line collision detection algorithm and the northwest corner point of the target grid pointed to by the mouse coordinates, the picked target object is selected, and the initial marker mask and target grid code of the target grid are determined. Subsequently, based on the initial marker mask and target grid code of the target grid, independent points are generated using the coordinates of this corner point, thereby determining the initial point-like spatial features.
[0094] It should be noted that the mouse coordinates mentioned in the above embodiments refer to the specific spatial position parameters of the interactive device in a three-dimensional or two-dimensional coordinate system, which are used to guide various collision detection algorithms to perform coordinate range retrieval and matching positioning.
[0095] Optionally, depending on the interaction habits, selecting the picked target object can be divided into the following three methods: The first method is a single-selection operation. Click the matched grid border (pick the corresponding face), edge (pick the corresponding line), or northwest corner point (pick the corresponding point) with the mouse. The located target feature will be automatically highlighted, completing the picking of a single feature and synchronously associating it with the target grid code.
[0096] The second method is batch operation. Hold down the mouse and drag to select the target area. This process automatically matches all masked northwest corner points, left lines, top lines and grid borders within the selected area, and locates the features respectively through their respective collision detection algorithms. After automatic deduplication, all selected feature sets are highlighted.
[0097] The third method, assisted multi-selection, allows you to add features to the selected set one by one by clicking the borders, edges, or northwest corners of different grids in sequence using the Shift key, thus supporting flexible selection of non-continuously distributed target features.
[0098] Optionally, differentiated feature generation processing can be performed for different types of initial pick information.
[0099] If the initial picking information is the target grid bounding box, the outer boundaries of the selected multiple target grids are extracted, and the target grids that can be merged are encoded and merged to finally generate a complete initial planar spatial feature.
[0100] If the initial information is the edge line of the target grid, the edge lines of multiple selected target grids are extracted, integrated into a complete polyline and output in a preset order. At the same time, the codes of mergeable target grids are merged to generate initial linear spatial features.
[0101] If the initial picking information is the corner point of the target grid, the target grid code of the associated target grid is obtained to generate the initial point spatial features. This process does not require additional boundary or edge extraction.
[0102] Optionally, after the initial spatial features are generated, they can be labeled and edited, such as color labeling and attribute parameter editing. After confirming that the editing is correct, the initial spatial features, target grid codes, and other data are saved.
[0103] The incremental interactive spatial rendering method provided in this application determines initial planar spatial features based on a polygon collision algorithm and the target grid bounding box when the initial pick information is the target grid bounding box. This enables accurate extraction of large-area spatial planning regions under the same stable spatial reference frame. Furthermore, it determines initial linear spatial features based on a line collision detection algorithm and the target grid edge when the initial pick information is the target grid edge line, and determines initial point spatial features based on a line collision detection algorithm and the target grid corner point when the initial pick information is the target grid corner point. This allows for the switching and picking of planar, linear, and point spatial features within the same grid system. This solves the problems of fragmented expression and poor data consistency caused by frequent tool switching required for multi-type feature plotting in existing technologies, greatly improving the efficiency and interactive experience of spatial rendering.
[0104] In one embodiment, inheriting spatial features includes inheriting at least one of areal spatial features, linear spatial features, and point spatial features. Based on the incremental picking information, update the inherited spatial features of the subgrid, including at least one of the following: When the incremental picking information is a sub-mesh bounding box, the complete mesh cell and sub-mesh code of the sub-mesh are determined according to the polygon collision algorithm and the sub-mesh bounding box, and the inherited areal spatial features of the sub-mesh are updated according to the complete mesh cell and sub-mesh code of the sub-mesh. When the incremental picking information is a sub-mesh edge, the incremental identifier line mask and sub-mesh code of the sub-mesh are determined according to the line collision detection algorithm and the sub-mesh edge, and the inherited linear spatial features of the sub-mesh are updated according to the incremental identifier line mask and sub-mesh code of the sub-mesh. When the incremental picking information is a subgrid corner point, the incremental identifier point mask and subgrid code of the subgrid are determined based on the line collision detection algorithm and the subgrid corner point. Then, the inherited point spatial features of the subgrid are updated based on the incremental identifier point mask and subgrid code of the subgrid.
[0105] Specifically, the sub-mesh bounding box refers to the set of outline line segments that constitute the outermost physical boundary of the split sub-mesh.
[0106] Sub-mesh edge refers to the specific single boundary line around the sub-mesh after it has been split.
[0107] It should be noted that, to ensure the consistency and standardization of spatial feature representation, the target grid and all its subgrids maintain an inheritance relationship in the selection rules for edges and corners. Once a specific combination of edges and corner orientations is used as a representation datum, this datum will be applied to the target grid and all its subgrids at all levels. For example, if the target grid selects the left and top edges as edge representation datums and the northwest corner as corner representation datum, then all subgrids under this target grid will automatically follow this rule, that is, all subgrids will uniformly use the left and top edges for edges and the northwest corner for corners.
[0108] Incremental marker line masks and incremental marker point masks refer to unique markers assigned and bound to different native features of a submesh during the submesh rendering stage. For example, an incremental marker line mask is bound to the left or top edge of the submesh; an incremental marker point mask is bound to the northwest corner of the submesh.
[0109] Figure 5 This is a flowchart illustrating the process of updating inherited spatial features of a subgrid provided in this application, as shown below. Figure 5 As shown, first, enter the start node to start the closed-loop process of spatial drawing.
[0110] Next, the process proceeds to determine the local mesh accuracy. During the fixed-level drawing process established by the layer locking operation, it is used to determine whether the mesh accuracy of the current area meets the requirements for fine-grained drawing. If the determination result is "no," the splitting logic is skipped, and the process directly proceeds to the next step of continuing the regular drawing operation and ends. If the determination result is "yes," the splitting command for the target mesh is triggered. For example, the triggering method for this splitting command can include double-clicking the mesh, clicking the split button, using the shortcut key (Ctrl+D), or any item in the right-click menu.
[0111] Subsequently, based on the corresponding triggering method, the target mesh with insufficient precision is selected.
[0112] Next, the subdivision to the next level is performed. In this step, the preset subdivision rules are strictly followed to ensure the consistency of the mesh topology and to complete two core operations. The first operation is to generate the sub-mesh geometry and encoding; the second operation is to synchronously subdivide the already drawn spatial content. If spatial content has already been drawn on the target mesh, this temporarily drawn spatial content will be subdivided along with it during the subdivision, corresponding synchronously with the sub-mesh subdivision (e.g., if the target mesh is subdivided into 4 smaller meshes, its already drawn spatial content will also be synchronously subdivided into 4 parts, corresponding to the 4 smaller meshes). Simultaneously, the core information of the target mesh is automatically inherited, such as the pre-generated drawing content of the target mesh (mesh border, northwest corner point, left edge, top edge), mask association records (point mask of the northwest corner point, line mask of the left edge / top edge), and target mesh encoding (sub-mesh encoding is an extension of the target mesh encoding). After the sub-mesh is generated, it is rendered synchronously to ensure that the sub-mesh elements, masks, and synchronously subdivided spatial content are all constructed.
[0113] After rendering is complete, the next drawing phase begins, where drawing can continue directly on the sub-mesh. During this process, it is necessary to determine the incremental picking information and execute the corresponding update logic based on different incremental picking information.
[0114] Optionally, when the incremental picking information is a sub-mesh bounding box, the complete mesh cell of the sub-mesh is accurately located by matching the corresponding sub-mesh bounding box using a polygon collision algorithm and mouse coordinates, and the corresponding sub-mesh code is obtained. Subsequently, the inherited areal spatial features of the sub-mesh are updated based on the complete mesh cell and sub-mesh code. It should be noted that if the target mesh already has areal drawing content, a de-picking operation can be performed on the inherited areal content of the synchronously split sub-mesh at this time to fine-tune the drawing boundary.
[0115] Optionally, when the incremental picking information is a sub-mesh edge, the edge object with the incremental identifier line mask is matched according to the line collision detection algorithm and the left or top edge of the sub-mesh pointed to by the mouse coordinates, and the corresponding sub-mesh code is obtained. Subsequently, based on the sub-mesh's incremental identifier line mask and sub-mesh code, continuous line segments are generated based on the corresponding edge, and the inherited linear spatial features of the sub-mesh are updated.
[0116] Optionally, when the incremental picking information is a subgrid corner point, the corner point object with the incremental marker point mask is matched according to the line collision detection algorithm and the northwest corner point of the subgrid pointed to by the mouse coordinates, and the corresponding subgrid code is obtained. Subsequently, based on the subgrid's incremental marker point mask and subgrid code, an independent point position is generated based on the spatial coordinates of the corner point, and the inherited point spatial features of the subgrid are updated.
[0117] After updating the inherited airspace elements, the process continues with the regular drawing operation.
[0118] The incremental interactive spatial rendering method provided in this application determines the inheritance of planar spatial features based on a polygon collision algorithm when the incremental picking information is a sub-mesh bounding box; determines the inheritance of linear spatial features based on a line collision detection algorithm when the incremental picking information is a sub-mesh edge; and determines the inheritance of point spatial features based on a line collision detection algorithm when the incremental picking information is a sub-mesh corner. This method enables the continuous rendering and inheritance of planar, line, and point spatial features at the sub-mesh level, solving the technical problem in existing technologies where global mesh reconstruction is necessary for local refinement requirements and rendering results cannot be reused. While significantly reducing rendering performance overhead, it greatly improves the efficiency and interactive experience of spatial rendering.
[0119] In one embodiment, the initial spatial features include at least one of initial planar spatial features and initial linear spatial features; Based on the full-grid drawing state, determine the first grid code corresponding to the sub-grid, and based on the first grid code, determine the first inherited spatial feature corresponding to the sub-grid, including at least one of the following: When the initial spatial features are initial planar spatial features, the first grid code corresponding to the sub-grid is determined according to the full-grid drawing state; the corner spatial coordinates of the sub-grid are determined according to the first grid code, and the first inherited spatial feature corresponding to the sub-grid is determined according to the corner spatial coordinates. When the initial spatial features are initial linear spatial features, based on the full-grid drawing state, the target subgrid containing the edge of the target grid is determined from the subgrids, and the first grid code corresponding to the target subgrid is determined; based on the first grid code, the coordinates of the edge vertex of the target subgrid are determined, and the first inherited spatial feature corresponding to the subgrid is determined based on the coordinates of the edge vertex of the target subgrid.
[0120] Specifically, corner coordinates refer to the geospatial location data of the four vertices of the subgrid.
[0121] The target submesh refers to the submesh generated by splitting, whose own boundary includes the edge of the target mesh that was picked.
[0122] Edge vertex coordinates refer to the geospatial location data of the two vertices at the two ends of a specific edge of a subgrid. This geospatial location data can include latitude and longitude coordinates, projected plane coordinates, or custom spatial rectangular coordinates. Optionally, when the initial spatial features are initial planar spatial features, based on the full-grid rendering state, all next-level sub-grids generated after the target grid is split are obtained, and the first grid codes corresponding to these sub-grids are acquired. Based on the first grid codes of the sub-grids, the spatial coordinates of the four corner points of the corresponding sub-grid are retrieved. Based on these four corner point coordinates, a matching planar region is drawn, and this planar region is determined as the first inherited spatial feature corresponding to the sub-grid. Through the above process, the synchronous and accurate inheritance of the full-grid planar content of the target grid to all sub-grids is achieved.
[0123] Optionally, when the initial spatial features are initial linear spatial features, the top or left edge of the target grid is fully captured and contains full-grid linear content. In this case, based on the full-grid drawing state, all sub-grids generated by the splitting are traversed, and the sub-grid containing the top or left edge of the target grid is extracted, thus determining the target sub-grid. Based on the target sub-grid, the first grid code corresponding to the target sub-grid is determined. The first grid code can be represented by {Code(N+1)}, where Code represents the grid's identifier code, and N+1 represents the sub-grid level split into the (N+1)th level. Based on the first grid code, the vertex coordinates of the left or top edge of the target sub-grid are determined. Based on these vertex coordinates, the corresponding line segment is drawn, and this line segment is determined as the first inherited spatial feature corresponding to the sub-grid. Through the above process, the full-grid linear content of the target grid is synchronously and accurately inherited to the corresponding sub-grid.
[0124] The incremental interactive spatial rendering method provided in this application determines the first grid code corresponding to the sub-mesh when the initial spatial features are initial planar spatial features, and then determines the first inherited spatial features corresponding to the sub-mesh. Furthermore, when the initial spatial features are initial linear spatial features, the method determines the target sub-mesh containing the edge of the target mesh from the sub-mesh, and then determines the first inherited spatial features corresponding to the sub-mesh. This method enables the sub-mesh to inherit the rendering content of the target mesh, avoids the loss of rendering content during local refinement, greatly reduces the workload of repetitive rendering, and comprehensively improves the efficiency and interactive experience of spatial rendering.
[0125] In one embodiment, the initial spatial features include at least one of initial planar spatial features and initial linear spatial features; Based on the grid coding information described in the second description, the second inherited spatial domain features corresponding to the sub-grid are determined, including at least one of the following: When the initial spatial features are initial planar spatial features, the second grid codes are grouped according to the level of the second grid code and the preset level to obtain a planar grouping sequence; based on the planar grouping sequence, the second inherited spatial features corresponding to the sub-grids are determined. When the initial spatial features are initial linear spatial features, the second grid code is grouped according to the level of the second grid code and the preset level to obtain a linear grouping sequence; based on the linear grouping sequence, the second inherited spatial features corresponding to the sub-grid are determined.
[0126] Specifically, the preset level can be a sub-grid level that is one level down from the target grid; or it can be a specific target level that is split across levels according to specific refinement requirements. This application does not impose any specific limitations on this.
[0127] Specifically, the target grid code Code(N) is obtained and parsed. Here, Code represents the grid's identifier code, N represents the Nth level, and Code(N) represents a grid code at the Nth level. The current grid level N can be determined from the length of the grid code Code. Simultaneously, the drawing type and drawing state can be obtained from the grid identifier code. The next level is N+1 derived from the current level N. When the drawing state is not a full-grid drawing state, corresponding operations are performed based on different initial spatial features.
[0128] Optionally, when the initial spatial features are initial planar spatial features, only a portion of the target mesh is drawn. In this case, all second mesh codes contained in the non-full-grid drawing area are traversed, and a hierarchy determination is performed for each second mesh code. After traversing all second mesh codes, a planar grouping sequence can be obtained based on the comparison result between the hierarchy of the second mesh code and the preset hierarchy. Based on the planar grouping sequence, the second inherited spatial features corresponding to the sub-mesh are determined.
[0129] Optionally, if the initial spatial features are initial linear spatial features, only a portion of the target grid is drawn. In this case, all second grid codes contained in the non-full-grid drawing area are traversed, and a hierarchy determination is performed for each second grid code. After traversing all second grid codes, a linear grouping sequence can be obtained based on the comparison result between the hierarchy of the second grid codes and the preset hierarchy. Based on the linear grouping sequence, the second inherited spatial features corresponding to the sub-grids are determined.
[0130] The incremental interactive spatial rendering method provided in this application, when the initial spatial features are initial planar spatial features, obtains a planar grouping sequence based on the level of the second grid code and a preset level, and then determines the second inherited spatial features corresponding to the sub-grids; and when the initial spatial features are initial linear spatial features, obtains a linear grouping sequence based on the level of the second grid code and a preset level, and then determines the second inherited spatial features corresponding to the sub-grids. This method enables accurate inheritance of sub-grids, ensures the integrity and standardization of inherited content, and comprehensively improves the efficiency and interactive experience of spatial rendering.
[0131] In one embodiment, grouping the second grid code according to the level of the second grid code and a preset level includes: If the level of the second grid code is equal to the preset level, the second grid code is added to the corresponding grouping sequence; If the level of the second grid code is greater than the preset level, determine the parent grid code corresponding to the second grid code and add the parent grid code to the corresponding grouping sequence.
[0132] Specifically, parent grid encoding refers to the grid encoding of the previous generation or multiple generations of ancestor nodes traced upwards according to the preset partitioning rules when the layer depth of a certain grid to be processed is greater than the preset layer.
[0133] Grouping sequences refer to grid-coded data sets that are at the same level or belong to the same parent node, used for temporary storage, classification and processing.
[0134] Specifically, all second grid codes are traversed, and a hierarchy determination is performed for each second grid code.
[0135] If the level of the second grid code is equal to the preset level, the second grid code is added to the corresponding grouping sequence. If the level of the second grid code is greater than the preset level, trace upwards to obtain the parent grid code of the second grid code, and add the parent grid code to the corresponding grouping sequence.
[0136] After traversing all the second grid codes, the group sequence will be traversed again to merge the drawing content of the sub-grids belonging to the same parent grid code.
[0137] When drawn content belonging to the same parent mesh code can be seamlessly merged into a complete region (for polygons) or a continuous line segment (for lines), a merge drawing operation can be performed, and the child mesh codes will be merged upwards to the parent mesh code.
[0138] If the drawn content belonging to the same parent mesh code cannot be seamlessly merged into a complete region (for polygons) or a continuous line segment (for lines), then it is drawn separately as a single sub-mesh or a single edge, so that all drawn content belongs to the corresponding parent mesh code.
[0139] The spatial incremental interactive drawing method provided in this application adds the second grid code to the corresponding grouping sequence when the level of the second grid code is equal to the preset level, and determines the parent grid code corresponding to the second grid code when the level of the second grid code is greater than the preset level, and adds the parent grid code to the corresponding grouping sequence. This method enables the accurate inheritance of local drawing content during the splitting process, and comprehensively improves the work efficiency and interactive experience of spatial drawing.
[0140] To facilitate a clearer understanding of the technical solutions of the various embodiments of this application, further explanation is provided.
[0141] Figure 6 This is one of the example diagrams of the incremental interactive drawing method for spatial domain provided in this application, such as... Figure 6 As shown in (a), enter the free layer mode, adjust the view height, and select a certain layer grid as the initial target drawing layer, such as layer 1. According to the layer locking operation, enter the fixed layer mode and use the initial target drawing layer as the drawing reference layer. For example, taking the polygon drawing mode as an example, the collision picking algorithm picks the grid coded as A in the drawing reference layer, completes the polygon drawing of the grid, and automatically records the code and drawing content of grid A. The drawing content covers the entire area of grid A.
[0142] like Figure 6 As shown in (b), the precision of the first-level mesh (coded as B) adjacent to mesh A is insufficient to meet the current spatial rendering requirements, necessitating local refinement. Using the split command for mesh B, the first-level mesh of mesh B is split according to preset partitioning rules. In this example, it is split into four second-level sub-meshes, corresponding to codes B1, B2, B3, and B4. During the splitting process, since the original mesh B has not undergone any rendering operations, the four sub-meshes only inherit the coding relationships of the original mesh B (sub-mesh codes B1, B2, B3, and B4 are generated based on the parent mesh B's coding extension), without inheriting any rendered content. After the splitting is complete, the four sub-meshes (B1, B2, B3, and B4) are rendered in the same viewport as mesh A, ensuring a clear mesh topology.
[0143] like Figure 6 As shown in (c), in the four split second-level sub-grids (B1, B2, B3, B4), the three sub-grids B1, B2, and B3 are picked in sequence through the surface drawing mode and collision picking algorithm to complete the surface drawing of these three sub-grids, and the encoding and drawing content of B1, B2, and B3 are recorded simultaneously.
[0144] Subsequently, it was determined that the precision of the remaining unpicked sub-mesh B4 still did not meet the drawing requirements, so a splitting command was triggered again. According to the preset splitting rules, the second-level sub-mesh B4 was further split into four third-level sub-meshes, with corresponding codes B41, B42, B43, and B44, respectively. Figure 6 As shown in (d), during the splitting process, since atomic mesh B4 was not drawn, the four sub-mesh only inherited the encoding relationship of atomic mesh B4, without inheriting any drawing content. The sub-mesh is mixed with the original meshes at each level (A, B1, B2, B3, B4) for rendering.
[0145] like Figure 6As shown in (e), among the four third-level sub-mesh (B41, B42, B43, B44), sub-mesh B41 is picked up using the planar drawing mode to complete the planar drawing of this sub-mesh, and the encoding and drawing content of B41 are recorded. After all mesh picking and drawing operations are completed, a save command is triggered to extract the boundary information of all picked and drawn meshes (A, B1, B2, B3, B41), merge the codes of mergeable meshes, integrate the outer boundaries of all drawing areas, generate a complete planar spatial domain, and save the split records and drawing content of each level of mesh, thus completing a complete spatial domain drawing loop, as shown. Figure 6 As shown in (f).
[0146] Figure 7 This is the second example diagram of the spatial incremental interactive drawing method provided in this application, as shown below. Figure 7 As shown in (a), enter the free layer mode, adjust the view height, and select a certain layer grid as the initial target drawing layer, such as layer 1. According to the layer locking operation, enter the fixed layer mode and use the initial target drawing layer as the drawing reference layer. Taking the polygon drawing mode as an example, the collision picking algorithm sequentially picks two grid cells coded as A and B in layer 1, completes the full-grid polygon drawing of the two grids, and records the codes and drawing content of grids A and B. The drawing content covers the complete area of the two grids, and grids A and B are both in the selected state after being picked.
[0147] like Figure 7 As shown in (b), when the picking range of the first-level mesh coded B is too large, since only a portion of the mesh needs to be selected, a splitting command for mesh B is triggered. According to the preset splitting rules (taking a division into 4 sub-meshes as an example), the first-level mesh coded B is recursively split into 4 second-level sub-meshes, corresponding to codes B1, B2, B3, and B4. During the splitting process, the polygonal content already drawn on the original mesh B is simultaneously split into the 4 sub-meshes. That is, the four sub-meshes B1, B2, B3, and B4 all inherit the drawn content of the original mesh B and are simultaneously in the selected state after being picked. They also inherit the coding association relationship of the original mesh B. After splitting, all sub-meshes are mixed and rendered within the same viewport as the original mesh A.
[0148] like Figure 7 As shown in (c), when it is not necessary to select the sub-grid coded B4, a deselection operation is triggered, the selection state of the B4 sub-grid is canceled, and the selection record of the sub-grid is cleared simultaneously. At this time, the three sub-grids B1, B2, and B3 are still in the selected state, and the inherited drawing content remains unchanged. The B4 sub-grid is in the unselected state, thereby achieving precise adjustment of the original selection range without redrawing the content of other sub-grids.
[0149] like Figure 7As shown in (d), after all picking operations are completed, a save command is triggered. The boundary information of all meshes in the picking selected state (the first-level mesh coded as A, and the second-level sub-mesh coded as B1, B2, and B3) is extracted. The codes of mergeable meshes are merged, and the outer boundaries of all selected areas are integrated to generate a complete planar spatial domain. At the same time, the splitting records of each level of mesh, the inheritance records of drawing content, and the picking and depicting records are persistently stored, completing the complete closed loop of "drawing—splitting—inheriting—adjusting—saving".
[0150] Optionally, Figure 8 This is an example diagram of the spatial incremental interactive drawing system provided in this application, such as... Figure 8 As shown, the spatial incremental interactive rendering system includes a multi-level mesh partitioning module, a hierarchical control module, a multi-feature rendering module, a recursive splitting module, a picking module, a hybrid rendering module, and a data storage module. Each module has a clear division of labor and works together to achieve core functions such as hierarchical locking, integrated multi-feature rendering, and incremental splitting.
[0151] The multi-level grid subdivision module is used to preset subdivision rules and grid coding systems, compatible with BeiDou grid and GeoSot (Geographic Coordinate Subdivision Grid with One Dimension Integer Coding). Tree, based on It uses mainstream meshing standards such as one-dimensional integer array geographic coordinate global mesh, and is responsible for storing the spatial coordinates and mesh codes of each level of mesh, providing basic spatial data support for drawing and picking.
[0152] The layer control module is used to switch and lock between two display modes: free layer and fixed layer, and to respond to view height changes and layer locking operations. For example, it enables bidirectional switching between free and fixed layer modes and quickly responds to layer locking and unlocking commands. Under layer locking, it can shield the impact of view height changes on the mesh layer, maintain the stability of the drawing reference, completely decouple view height from the drawing reference, and flexibly adapt to multi-scale drawing needs.
[0153] As the core execution module of the incremental interactive spatial drawing system, the multi-element drawing module works in deep collaboration with the picking module during the drawing process to achieve differentiated drawing mode switching for three types of spatial elements: area, line, and point. The multi-element drawing module can respond to interactive operations such as single selection, box selection, and Shift multi-selection, accepts the precise picking results from the picking module, and automatically completes the merging of adjacent elements and spatial element fitting by combining the grid spatial coordinate data provided by the multi-level grid subdivision module. Simultaneously, this module also has spatial element attribute editing and color annotation functions, and can push the final generated target spatial area to the data storage module for persistent storage, realizing a closed-loop process of drawing, editing, and storing. Furthermore, this module can automatically inherit and accept spatial elements in conjunction with the subdivision results of the recursive subdivision module, supporting continuous drawing and content adjustment directly on the subdivided subgrids, adapting to the needs of local incremental fine-grained drawing operations, and completely solving the core defects of existing technologies that can only draw area spatial areas and are fragmented in multi-element drawing.
[0154] The recursive splitting module responds to fast splitting commands, recursively splitting the mesh level by level according to preset splitting rules, and completing the inheritance mapping of the target mesh drawing content to the sub-mesh. The recursive splitting module can support single mesh splitting or batch splitting of multiple meshes, thereby achieving local incremental fine-grained drawing.
[0155] The picking module adapts to the actual picking method, integrating both OSG polygon collision and line collision picking algorithms to meet the picking needs of three types of spatial features: polygons, lines, and points. It works in conjunction with the mask in the multi-feature drawing module to achieve error-free and accurate picking. Before drawing the spatial region, the mesh features and corresponding masks are already built in the scene. During drawing, only the corresponding collision picking algorithm needs to be triggered; no additional adaptation is required, and existing collision picking logic can be directly reused.
[0156] The hybrid rendering module enables differentiated rendering of multi-precision meshes within a single view. It clearly distinguishes different mesh levels and different types of spatial features (area / line / point) through differences in line type, color, and transparency. The module renders only one corner point of the mesh (e.g., the northwest corner) or two edges (e.g., the left and top edges), eliminating the need to render all four edges and corner points. This simplifies the rendering process while ensuring clear visibility of the results. Furthermore, the module supports color annotation and attribute highlighting of the rendered output, further enhancing ease of use. During mesh rendering, the module simultaneously completes the drawing of the mesh's native features and assigns dedicated masks, ensuring that all features and masks are fully constructed before drawing the spatial domain.
[0157] The data storage module is responsible for storing preset subdivision rules, grid codes, drawing data of each spatial feature, mask association records, collision picking results and split records. It supports the reuse, query and subsequent editing of drawing results, completing the complete closed loop of "drawing-storage-reuse".
[0158] The incremental spatial interactive drawing system provided in this application is described below. The incremental spatial interactive drawing system described below can be referred to in correspondence with the incremental spatial interactive drawing method described above, and can achieve the same technical effect. It will not be repeated here.
[0159] Figure 9 This is a schematic diagram of the spatial incremental interactive drawing system provided in this application, as shown below. Figure 9 As shown, the system may include: The locking module 910 is used to determine the drawing reference level based on the level locking operation; The first determining module 920 is used to determine the initial spatial features of the target mesh based on the initial picking information of the target mesh at the drawing reference level. The inheritance module 930 is used to split the target grid into sub-grids according to the splitting instruction of the target grid, and to determine the inherited spatial features corresponding to the sub-grids according to the initial spatial features; The update module 940 is used to obtain the incremental picking information of the sub-grid and update the inherited spatial features of the sub-grid according to the incremental picking information. The second determination module 950 is used to determine the target airspace based on the inherited airspace features of the updated multiple subgrids.
[0160] In one embodiment, the inheritance module 930 is specifically used for: The drawing state of the target grid is determined based on the coverage state of the initial spatial features in the target grid; When the drawing state is full-grid drawing state, the first grid code corresponding to the sub-grid is determined according to the full-grid drawing state, and the first inherited spatial feature corresponding to the sub-grid is determined according to the first grid code. When the drawing state is a non-full-grid drawing state, the second grid code of the sub-grid is determined according to the non-full-grid drawing state, and the second inherited spatial feature corresponding to the sub-grid is determined according to the second grid code.
[0161] In one embodiment, the initial spatial features include at least one of initial planar spatial features, initial linear spatial features, and initial point spatial features; The first determining module 920 is specifically used for: If the initial picking information is a target mesh bounding box, the complete mesh cell and target mesh code of the target mesh are determined according to the polygon collision algorithm and the target mesh bounding box, and the initial planar spatial feature is determined according to the complete mesh cell and target mesh code of the target mesh. When the initial picking information is the target mesh edge, the initial identifier line mask and target mesh code of the target mesh are determined according to the line collision detection algorithm and the target mesh edge, and the initial linear spatial feature is determined according to the initial identifier line mask and target mesh code of the target mesh. If the initial picking information is a target grid corner point, the initial identifier mask and target grid code of the target grid are determined according to the line collision detection algorithm and the target grid corner point, and the initial point spatial feature is determined according to the initial identifier mask and target grid code of the target grid.
[0162] In one embodiment, the inherited spatial features include at least one of the following: inherited area spatial features, inherited line spatial features, and inherited point spatial features. The update module 940 is specifically used for: When the incremental picking information is a sub-mesh bounding box, the complete mesh cell and sub-mesh code of the sub-mesh are determined according to the polygon collision algorithm and the sub-mesh bounding box, and the inherited areal spatial features of the sub-mesh are updated according to the complete mesh cell and sub-mesh code of the sub-mesh. When the incremental picking information is a sub-mesh edge, the incremental identifier line mask and sub-mesh code of the sub-mesh are determined according to the line collision detection algorithm and the sub-mesh edge, and the inherited linear spatial features of the sub-mesh are updated according to the incremental identifier line mask and sub-mesh code of the sub-mesh. When the incremental picking information is a sub-grid corner point, the incremental identifier mask and sub-grid code of the sub-grid are determined according to the line collision detection algorithm and the sub-grid corner point, and the inherited point spatial features of the sub-grid are updated according to the incremental identifier mask and sub-grid code of the sub-grid.
[0163] In one embodiment, the initial spatial features include at least one of initial planar spatial features and initial linear spatial features; The inheritance module 930 is specifically used for: When the initial spatial feature is an initial planar spatial feature, the first grid code corresponding to the sub-grid is determined according to the full-grid drawing state; the corner spatial coordinates of the sub-grid are determined according to the first grid code, and the first inherited spatial feature corresponding to the sub-grid is determined according to the corner spatial coordinates. When the initial spatial features are initial linear spatial features, according to the full-grid drawing state, a target subgrid containing the edge of the target grid is determined from the subgrid, and the first grid code corresponding to the target subgrid is determined; according to the first grid code, the coordinates of the edge vertex of the target subgrid are determined, and the first inherited spatial feature corresponding to the subgrid is determined according to the coordinates of the edge vertex of the target subgrid.
[0164] In one embodiment, the initial spatial features include at least one of initial planar spatial features and initial linear spatial features; The inheritance module 930 is specifically used for: When the initial spatial feature is an initial planar spatial feature, the second grid code is grouped according to the level of the second grid code and the preset level to obtain a planar grouping sequence; the second inherited spatial feature corresponding to the sub-grid is determined according to the planar grouping sequence. When the initial spatial element is an initial linear spatial element, the second grid code is grouped according to the level of the second grid code and the preset level to obtain a linear grouping sequence; the second inherited spatial element corresponding to the sub-grid is determined according to the linear grouping sequence.
[0165] In one embodiment, the inheritance module 930 is specifically used for: If the level of the second grid code is equal to the preset level, the second grid code is added to the corresponding grouping sequence; If the level of the second grid code is greater than the preset level, the parent grid code corresponding to the second grid code is determined, and the parent grid code is added to the corresponding grouping sequence.
[0166] Figure 10 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 10 As shown, the electronic device may include: a processor 1010, a communications interface 1020, a memory 1030, and a communication bus 1040, wherein the processor 1010, the communications interface 1020, and the memory 1030 communicate with each other through the communication bus 1040. The processor 1010 can call logical instructions in the memory 1030 to execute the spatial incremental interactive drawing method described in any of the above embodiments, for example including: The drawing baseline level is determined based on the level locking operation; Based on the initial picking information of the target mesh at the drawing reference level, the initial spatial features of the target mesh are determined; According to the splitting instruction of the target grid, the target grid is split into sub-grids, and the inherited spatial features corresponding to the sub-grids are determined according to the initial spatial features. Obtain the incremental picking information of the sub-grid, and update the inherited spatial features of the sub-grid based on the incremental picking information; The target airspace is determined based on the inherited airspace features of the updated multiple subgrids.
[0167] Furthermore, the logical instructions in the aforementioned memory 1030 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0168] On the other hand, this application also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the spatial incremental interactive drawing method described in any of the above embodiments, for example including: The drawing baseline level is determined based on the level locking operation; Based on the initial picking information of the target mesh at the drawing reference level, the initial spatial features of the target mesh are determined; According to the splitting instruction of the target grid, the target grid is split into sub-grids, and the inherited spatial features corresponding to the sub-grids are determined according to the initial spatial features. Obtain the incremental picking information of the sub-grid, and update the inherited spatial features of the sub-grid based on the incremental picking information; The target airspace is determined based on the inherited airspace features of the updated multiple subgrids.
[0169] The system embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0170] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.
[0171] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.
Claims
1. A spatial incremental interactive drawing method, characterized in that, The method includes: The drawing baseline level is determined based on the level locking operation; Based on the initial picking information of the target mesh at the drawing reference level, the initial spatial features of the target mesh are determined; According to the splitting instruction of the target grid, the target grid is split into sub-grids, and the inherited spatial features corresponding to the sub-grids are determined according to the initial spatial features. Obtain the incremental picking information of the sub-grid, and update the inherited spatial features of the sub-grid based on the incremental picking information; The target airspace is determined based on the inherited airspace features of the updated multiple subgrids.
2. The spatial incremental interactive drawing method according to claim 1, characterized in that, The step of determining the inherited spatial features corresponding to the sub-grid based on the initial spatial features includes: The drawing state of the target grid is determined based on the coverage state of the initial spatial features in the target grid; When the drawing state is a full-grid drawing state, the first grid code corresponding to the sub-grid is determined according to the full-grid drawing state, and the first inherited spatial feature corresponding to the sub-grid is determined according to the first grid code. When the drawing state is a non-full-grid drawing state, the second grid code of the sub-grid is determined according to the non-full-grid drawing state, and the second inherited spatial feature corresponding to the sub-grid is determined according to the second grid code.
3. The spatial incremental interactive drawing method according to claim 1, characterized in that, The initial spatial features include at least one of the initial planar spatial features, initial linear spatial features, and initial point spatial features; The step of determining the initial spatial features of the target mesh based on the initial picking information of the target mesh at the rendering reference level includes: If the initial picking information is a target mesh bounding box, the complete mesh cell and target mesh code of the target mesh are determined according to the polygon collision algorithm and the target mesh bounding box, and the initial planar spatial feature is determined according to the complete mesh cell and target mesh code of the target mesh. When the initial picking information is the target mesh edge, the initial identifier line mask and target mesh code of the target mesh are determined according to the line collision detection algorithm and the target mesh edge, and the initial linear spatial feature is determined according to the initial identifier line mask and target mesh code of the target mesh. If the initial picking information is a target grid corner point, the initial identifier mask and target grid code of the target grid are determined according to the line collision detection algorithm and the target grid corner point, and the initial point spatial feature is determined according to the initial identifier mask and target grid code of the target grid.
4. The spatial incremental interactive drawing method according to claim 1, characterized in that, The inherited spatial features include at least one of the following: inherited area spatial features, inherited line spatial features, and inherited point spatial features. The step of updating the inherited spatial features of the sub-grid based on the incremental picking information includes: When the incremental picking information is a sub-mesh bounding box, the complete mesh cell and sub-mesh code of the sub-mesh are determined according to the polygon collision algorithm and the sub-mesh bounding box, and the inherited areal spatial features of the sub-mesh are updated according to the complete mesh cell and sub-mesh code of the sub-mesh. When the incremental picking information is a sub-mesh edge, the incremental identifier line mask and sub-mesh code of the sub-mesh are determined according to the line collision detection algorithm and the sub-mesh edge, and the inherited linear spatial features of the sub-mesh are updated according to the incremental identifier line mask and sub-mesh code of the sub-mesh. When the incremental picking information is a sub-grid corner point, the incremental identifier mask and sub-grid code of the sub-grid are determined according to the line collision detection algorithm and the sub-grid corner point, and the inherited point spatial features of the sub-grid are updated according to the incremental identifier mask and sub-grid code of the sub-grid.
5. The spatial incremental interactive drawing method according to claim 2, characterized in that, The initial spatial features include at least one of initial planar spatial features and initial linear spatial features; The step of determining the first grid code corresponding to the sub-grid based on the full-grid drawing state, and determining the first inherited spatial feature corresponding to the sub-grid based on the first grid code, includes: When the initial spatial feature is an initial planar spatial feature, the first grid code corresponding to the sub-grid is determined according to the full-grid drawing state; the corner spatial coordinates of the sub-grid are determined according to the first grid code, and the first inherited spatial feature corresponding to the sub-grid is determined according to the corner spatial coordinates. When the initial spatial features are initial linear spatial features, according to the full-grid drawing state, a target subgrid containing the edge of the target grid is determined from the subgrid, and the first grid code corresponding to the target subgrid is determined; according to the first grid code, the coordinates of the edge vertex of the target subgrid are determined, and the first inherited spatial feature corresponding to the subgrid is determined according to the coordinates of the edge vertex of the target subgrid.
6. The spatial incremental interactive drawing method according to claim 2, characterized in that, The initial spatial features include at least one of initial planar spatial features and initial linear spatial features; The step of determining the second inherited spatial feature corresponding to the sub-grid based on the second grid code includes: When the initial spatial feature is an initial planar spatial feature, the second grid code is grouped according to the level of the second grid code and the preset level to obtain a planar grouping sequence; the second inherited spatial feature corresponding to the sub-grid is determined according to the planar grouping sequence. When the initial spatial element is an initial linear spatial element, the second grid code is grouped according to the level of the second grid code and the preset level to obtain a linear grouping sequence; the second inherited spatial element corresponding to the sub-grid is determined according to the linear grouping sequence.
7. The spatial incremental interactive drawing method according to claim 6, characterized in that, The step of grouping the second grid code according to the level of the second grid code and the preset level includes: If the level of the second grid code is equal to the preset level, the second grid code is added to the corresponding grouping sequence; If the level of the second grid code is greater than the preset level, the parent grid code corresponding to the second grid code is determined, and the parent grid code is added to the corresponding grouping sequence.
8. A spatial incremental interactive rendering system, characterized in that, The system includes: The locking module is used to determine the drawing baseline level based on the level locking operation; The first determining module is used to determine the initial spatial features of the target mesh based on the initial picking information of the target mesh at the drawing reference level. The inheritance module is used to split the target mesh into sub-mesh according to the splitting instruction of the target mesh, and to determine the inherited spatial features corresponding to the sub-mesh according to the initial spatial features; The update module is used to obtain the incremental picking information of the sub-grid and update the inherited spatial features of the sub-grid according to the incremental picking information. The second determination module is used to determine the target airspace based on the inherited airspace features of the updated multiple subgrids.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that, When the processor executes the computer program, it implements the spatial incremental interactive drawing method as described in any one of claims 1 to 7.
10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the spatial incremental interactive drawing method as described in any one of claims 1 to 7.