Real estate surveying and mapping resource sharing system and method
By using heterogeneous primitive parsing, distributed index mapping, and view permission verification modules, the problems of topological misalignment, network congestion, and high-concurrency requests in traditional real estate surveying and mapping resource sharing systems have been solved, enabling dynamic data access and accurate distribution, and improving system performance and response speed.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- HOT GRP CO LTD
- Filing Date
- 2026-03-13
- Publication Date
- 2026-04-10
AI Technical Summary
Traditional real estate surveying and mapping resource sharing systems suffer from problems such as spatial topology misalignment due to semantic parsing bias, network bandwidth congestion, client loading delays, static data access granularity that cannot be dynamically adjusted, and I/O response blocking under high-concurrency cross-regional requests.
The heterogeneous primitive parsing module parses the mapping file to generate a topological correlation matrix and semantic feature set, the distributed index mapping module performs dimensionality reduction mapping and fragmented storage, the view domain permission verification module generates an authorization token through a ray cross-judgment algorithm, and the incremental data synchronization module performs differential packet calculation to achieve dynamic data access and accurate distribution.
It eliminates topology misalignment caused by differences in source data formats, reduces network bandwidth usage, reduces rendering loading latency, and solves I/O response blocking under high concurrency requests, enabling accurate distribution and real-time synchronization of real estate surveying resources in a multi-node collaborative environment.
Smart Images

Figure CN121833712A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of geographic information processing, and particularly relates to a real estate surveying and mapping resource sharing system and method. BACKGROUND
[0002] The technical field of geographic information processing relates to comprehensive technical means for collecting, storing, analyzing and visualizing spatial data. Among them, the traditional real estate surveying and mapping resource sharing system refers to a hardware architecture that stores surveying and mapping paper and attribute data by using a centralized server, and provides query and download services to authorized terminals through a standardized API interface.
[0003] The traditional architecture uses a centralized server to deal with heterogeneous surveying and mapping data, which causes semantic analysis deviation and leads to spatial topological relationship dislocation. The full-quantity transmission mode based on the file system ignores the spatial distribution sparsity characteristics of vector elements, thereby causing network bandwidth congestion and client loading delay. The preset static permission list cannot dynamically adjust the data access granularity according to the real-time geographic coordinates of the terminal. The single centralized indexing mechanism causes I / O response blocking and data synchronization lag when processing cross-regional high-concurrency retrieval requests. SUMMARY
[0004] The purpose of the present application is to solve the shortcomings in the prior art and propose a real estate surveying and mapping resource sharing system and method.
[0005] In order to achieve the above-mentioned purpose, the present application adopts the following technical scheme, a real estate surveying and mapping resource sharing system comprises: A heterogeneous graph element analysis module is used to analyze original surveying and mapping files to extract geometric vertex coordinate sequences, calculate the Euclidean distance and connectivity between vertices in the geometric vertex coordinate sequences to construct a topological correlation matrix, and transform unstructured attribute information based on a metadata mapping dictionary to generate a semantic feature set; A distributed index mapping module is used to call a Hilbert filling curve algorithm to reduce the dimension of two-dimensional geographic location coordinates in the semantic feature set to generate a location hash code, and write the topological correlation matrix and the semantic feature set into a sharded storage node according to the numerical interval of the location hash code; A view permission verification module is used to collect positioning data and viewport range parameters of a request end through a hardware interface, count the number of intersection points of rays drawn from the positioning data and real estate unit polygons by using a ray intersection determination algorithm to calculate a containment state, and generate an authorization token according to the containment state; An incremental data synchronization module is used to respond to the authorization token and retrieve vector data from the sharded storage node according to the viewport range parameters, and calculate the element difference package to be updated by comparing the difference between the local cache hash fingerprint and the vector data.
[0006] As a further aspect of the present invention, the heterogeneous primitive parsing module specifically includes: The coordinate sequence extraction submodule is used to read the binary stream data of the original mapping file, identify the header and end labels that identify geometric primitives, and decode the data segment between the header and end labels to obtain the geometric vertex coordinate sequence. The topology matrix construction submodule is used to traverse all vertices in the geometric vertex coordinate sequence, calculate the Euclidean distance between vertices based on a preset adjacency determination threshold, and establish the topology correlation matrix that represents the spatial connection relationship between vertices. The attribute semantic transformation submodule is used to extract text annotations and layer attributes from the original mapping file, call the metadata mapping dictionary to match standardized classification codes, and reorganize the text annotations and layer attributes into the semantic feature set.
[0007] As a further aspect of the present invention, the distributed index mapping module specifically includes: The spatial dimensionality reduction coding submodule is used to obtain the two-dimensional geographic location coordinates in the semantic feature set, and recursively map the two-dimensional geographic location coordinates into one-dimensional integer values through the Hilbert filling curve algorithm to generate the location hash code; The interval routing and distribution submodule is used to obtain the value of the location hash code, determine the storage partition index to which the value belongs according to the preset load balancing strategy, and route the topology association matrix and the semantic feature set to the corresponding shard storage node. The persistent storage submodule is used to receive and serialize the topological association matrix and the semantic feature set, and write them into the underlying database of the sharded storage node in the form of key-value pairs.
[0008] As a further aspect of the present invention, the view permission verification module specifically includes: The request parameter acquisition submodule is used to monitor the input signals of the hardware interface in real time, parse the global navigation satellite system data stream of the requesting end to obtain positioning data, and at the same time read the rendering matrix of the graphics processing unit to obtain the viewport range parameters. The ray interaction calculation submodule is used to draw virtual rays from the location data in any fixed direction, traverse all the real estate unit polygons in the current area, and use the ray intersection determination algorithm to count the number of intersections between the virtual rays and the polygon boundaries. The authorization token generation submodule is used to determine whether the requesting party is located inside the polygon of the real estate unit based on the parity of the number of intersections. When the determination result is inside, an authorization token with an expiration time is generated.
[0009] As a further aspect of the present invention, the incremental data synchronization module specifically includes: The vector data retrieval submodule is used to verify the validity of the authorization token, parse the viewport range parameter to determine the geographical boundary of the current visible area, and download vector data covering the geographical boundary in parallel from the corresponding shard storage node. The fingerprint difference comparison submodule is used to calculate the real-time hash digest of the downloaded vector data, obtain the local cache hash fingerprint, and locate the data block index that is inconsistent between the two through bitwise XOR operation; The difference package encapsulation submodule is used to extract the latest geometric features and attribute information corresponding to the data block index, compress and encode the differences, and generate the feature difference package to be updated.
[0010] As a further aspect of the present invention, the process of constructing the topological correlation matrix specifically includes: Initialize a zero matrix with dimensions equal to the total number of vertices, and use a double loop to traverse any two pairs of vertices in the geometric vertex coordinate sequence to calculate the Euclidean distance between the vertex pairs; Determine whether the Euclidean distance is less than a preset connectivity threshold. If it is less, determine that there is a physical connection between the vertex pairs. Update the corresponding row and column element values in the all-zero matrix to the inverse weight of the Euclidean distance to generate the topological correlation matrix with a sparse structure. The topological incidence matrix is subjected to a Laplace transform, and the matrix eigenvalues are calculated to verify the number of connected components in the graph structure. Row and column data corresponding to isolated vertices are removed to generate an optimized incidence matrix.
[0011] As a further aspect of the present invention, the process of generating the location hash code specifically includes: The geographic region containing the two-dimensional geographic location coordinates is divided into a multi-level nested grid system, and the row and column indices of the two-dimensional geographic location coordinates in the highest-level grid are determined. Following the recursive traversal order of the Hilbert filling curve algorithm, the row and column indices are converted into corresponding binary interleaved codes, and the binary interleaved codes are merged into a unique long integer value through bitwise operations. A region hierarchy identifier is added to the prefix of the long integer value, and the combined value is Base64 encoded to generate the location hash code with hierarchical spatial index characteristics.
[0012] As a further aspect of the present invention, the calculation process including the state specifically includes: Obtain the coordinates of the location data and the boundary set of the candidate real estate unit polygons, construct a virtual ray vector pointing horizontally to the right, and traverse each edge vector in the boundary set. Use the vector cross product operation to determine whether there is a geometric intersection between the virtual ray vector and the edge vector. If there is an intersection, increment the counter by one and repeat until all edges have been traversed. The inclusion state of the requesting terminal relative to the polygon of the real estate unit is calculated based on the following determination model: ; in, This represents the inclusion status; a value of 1 indicates inclusion, and a value of 0 indicates non-inclusion. This represents the total number of side segments of the polygon of the real estate unit. The function representing the intersection determination of a ray and an edge segment. The coordinate vector representing the location data. The vector parameter represents the k-th polygonal side segment.
[0013] As a further aspect of the present invention, the calculation process of the feature difference package to be updated specifically includes: The downloaded vector data is divided into multiple logical data blocks according to a preset spatial granularity, and the MD5 digest value of each logical data block is calculated to form a real-time fingerprint list. Traverse the historical digest values in the local cache hash fingerprint and compare them item by item with the real-time fingerprint list to filter out the changed data block IDs whose digest values do not match; Retrieve the feature object corresponding to the changed data block ID, identify the type of operation (add, modify, or delete) for that object, and encapsulate the operation type instruction and the changed geometric attribute data into a binary format feature difference package to be updated.
[0014] A method for sharing real estate surveying and mapping resources, the method being executed based on the aforementioned real estate surveying and mapping resource sharing system, includes the following steps: S1: Parse the original mapping file to extract the geometric vertex coordinate sequence, calculate the Euclidean distance and connectivity between vertices in the geometric vertex coordinate sequence to construct a topological association matrix, and transform unstructured attribute information based on the metadata mapping dictionary to generate a semantic feature set; S2: Call the Hilbert filling curve algorithm to perform dimensionality reduction mapping on the two-dimensional geographic location coordinates in the semantic feature set to generate a location hash code, and write the topological association matrix and the semantic feature set to the sharded storage node according to the numerical range of the location hash code; S3: Collect the location data and viewport range parameters of the requesting end through the hardware interface, use the ray intersection determination algorithm to count the number of intersections between the rays drawn from the location data and the real estate unit polygon to calculate the inclusion status, and generate an authorization token based on the inclusion status. S4: Respond to the authorization token and retrieve vector data from the sharded storage node according to the viewport range parameter, and calculate the feature difference package to be updated by comparing the difference between the local cache hash fingerprint and the vector data.
[0015] Compared with the prior art, the advantages and positive effects of the present invention are as follows: In this invention, spatial topological misalignment caused by differences in source data formats is eliminated by constructing a heterogeneous data semantic mapping matrix. The vector element differential transmission mechanism based on terminal viewpoint coordinates reduces network bandwidth usage and client rendering loading latency. The dynamic geofencing judgment algorithm achieves adaptive adjustment of data access granularity based on real-time physical location. The distributed consistent hash sharding index logic replaces the centralized retrieval mode to solve the I / O response blocking problem under cross-regional high-concurrency requests, ensuring accurate distribution and real-time synchronization of massive real estate surveying resources in a multi-node collaborative environment. Attached Figure Description
[0016] Figure 1 This is a flowchart illustrating the principle of the real estate surveying and mapping resource sharing system of the present invention. Figure 2 This is a flowchart of the heterogeneous primitive parsing module of the present invention; Figure 3 This is a flowchart of the operation of the distributed index mapping module of the present invention; Figure 4 This is a flowchart of the operation of the view permission verification module of the present invention; Figure 5 This is a flowchart of the incremental data synchronization module operation of the present invention. Detailed Implementation
[0017] To make the objectives, technical solutions, and advantages of this invention clearer, the software-based technical solution is described in detail below with reference to system architecture diagrams and embodiments. It should be understood that the specific embodiments described herein are only for explaining the technical solutions of this invention and do not constitute a limitation on the scope of protection.
[0018] In the description of this invention, the system architecture relationships or data processing flows indicated by terms such as "layer," "module," "interface," "data flow," "client," and "server" are all defined based on the architecture diagram or flowchart corresponding to the embodiments. This way of describing is only used to clearly illustrate the logical relationships between the elements in the technical solution, and not to limit the physical deployment form. The term "multiple" includes two or more technical units, including but not limited to multiple data nodes, processing threads, service instances, or functional components and other scalable elements. The specific number is determined according to the actual business scenario and needs to be specifically specified.
[0019] Please see Figure 1 and Figure 2This invention provides a technical solution: a real estate surveying and mapping resource sharing system comprising: The heterogeneous primitive parsing module is used to parse the original mapping file to extract the geometric vertex coordinate sequence, calculate the Euclidean distance and connectivity between vertices in the geometric vertex coordinate sequence to construct the topological association matrix, and transform unstructured attribute information based on the metadata mapping dictionary to generate a semantic feature set. The heterogeneous primitive parsing module specifically includes: The coordinate sequence extraction submodule is used to read the binary stream data of the original mapping file, identify the header and end labels that identify geometric primitives, and decode the data segment between the header and end labels to obtain the geometric vertex coordinate sequence. The topology matrix construction submodule is used to traverse all vertices in the geometric vertex coordinate sequence, calculate the Euclidean distance between vertices based on a preset adjacency threshold, and establish a topology correlation matrix that represents the spatial connection relationship between vertices. The attribute semantic transformation submodule is used to extract text annotations and layer attributes from the original surveying and mapping files, call the metadata mapping dictionary to match standardized classification codes, and reorganize the text annotations and layer attributes into a semantic feature set. The process of constructing the topological correlation matrix specifically includes: Initialize a zero matrix with dimensions equal to the total number of vertices. Use a double loop to traverse any two pairs of vertices in the geometric vertex coordinate sequence and calculate the spatial Euclidean distance between the vertex pairs. Determine whether the spatial Euclidean distance is less than the preset connectivity threshold. If it is less, determine that there is a physical connection between the vertex pairs. Update the corresponding row and column element values in the all-zero matrix to the inverse weight of the spatial Euclidean distance to generate a topological correlation matrix with a sparse structure. The topological incidence matrix is subjected to a Laplace transform, and the matrix eigenvalues are calculated to verify the number of connected components in the graph structure. Row and column data corresponding to isolated vertices are removed to generate an optimized incidence matrix.
[0020] The heterogeneous primitive parsing module, serving as the system's data access point, incorporates a high-concurrency processing engine. It parses raw mapping files to extract geometric vertex coordinate sequences, calculates the Euclidean distance and connectivity between vertices in the geometric vertex coordinate sequences to construct a topological correlation matrix, and transforms unstructured attribute information based on a metadata mapping dictionary to generate semantic feature sets. This module employs a parallel stream processing architecture, capable of simultaneously mounting CAD, GIS, or custom binary mapping format files from multiple storage volumes.
[0021] The aforementioned parallel stream processing architecture refers to a computing system design pattern that decomposes a data stream into multiple independent sub-streams and executes processing tasks simultaneously on multiple processor cores or computing nodes to improve data throughput and processing speed.
[0022] The coordinate sequence extraction submodule connects to the file system's I / O interface to read the binary stream data of the original surveying file. It identifies header and end markers that identify geometric primitives and decodes the data segments between these markers to obtain the geometric vertex coordinate sequence. This submodule first establishes a memory-mapped file channel with a 16MB buffer and scans the binary stream in little-endian mode. When a specific hexadecimal header marker identifying the beginning of a primitive is encountered, such as a specific entity segment marker in DXF format, the state machine is triggered to enter read mode. In read mode, the submodule parses the data into a coordinate component every 64 bits (8 bytes) according to the IEEE 754 double-precision floating-point standard. For 2D surveying data, two consecutive 64-bit data blocks are read as the X and Y axes, respectively; for 3D data, three are read. This process continues until an end marker is detected. The parsed coordinate values are immediately stored in a dynamic array container, pre-allocated with 10,000 vertices to reduce memory fragmentation. The resulting geometric vertex coordinate sequence contains the precise location information of all wall corners, boundary points, and ancillary facilities in the surveying map.
[0023] The above-mentioned little-endian refers to a byte order in which the least significant byte of data is stored at the lowest memory address, while the most significant byte is stored at the highest memory address. It is commonly used in computer systems based on the Intel x86 architecture.
[0024] The topology matrix construction submodule receives the aforementioned coordinate sequence and iterates through all vertices in the geometric vertex coordinate sequence. Based on a preset adjacency threshold, it calculates the Euclidean distance between vertices and establishes a topological correlation matrix representing the spatial connectivity between vertices. Internally, this submodule runs a spatial neighborhood search algorithm. For a sequence containing N vertices, the submodule constructs a sparse matrix structure of dimension N by N. During processing, the submodule utilizes a KD-Tree spatial index to accelerate nearest neighbor search, rather than brute-force round-robin. For any baseline vertex... The system retrieves candidate vertices within its radius R. The straight-line distance between the two elements is calculated. The adjacency determination threshold here is set after training with a large amount of field survey data. According to the experimental data shown in Table 1, the threshold setting has a significant impact on the accuracy of topology construction under different survey accuracy requirements.
[0025] Table 1. Comparison of Adjacency Determination Threshold Parameter Settings and Accuracy Rate ; As shown in Table 1, for 1:500 high-precision urban cadastral mapping, the adjacency determination threshold is set to 0.05 meters. This value is derived from the statistical sum of the ±2 cm error typically present in surveying instruments and the small offsets during manual point sampling. When the calculated Euclidean distance is less than or equal to 0.05 meters, the submodule determines that the two points are physically connected and writes a non-zero weight value in the corresponding position of the matrix, thereby establishing a high-fidelity topological association matrix.
[0026] The aforementioned KD-Tree refers to a data structure that partitions a k-dimensional data space. It is mainly used for searching key data in multi-dimensional space, such as range search and nearest neighbor search. It organizes point data by recursively dividing the space into hyperrectangular regions.
[0027] The attribute semantic transformation submodule connects to the system's configuration database to extract text annotations and layer attributes from the original surveying files. It then calls a metadata mapping dictionary to match standardized classification codes, recombining the text annotations and layer attributes into a semantic feature set. This submodule first scans the non-geometric data areas of the file using a regular expression engine, extracting unstructured text such as "brick-concrete structure" and "layer 010101". Subsequently, it loads the metadata mapping dictionary stored in the Redis cache, which is based on the "Rules for Setting and Coding Real Estate Units". For example, when a layer attribute is extracted as a specific wall identifier, the submodule queries the dictionary and maps it to the standard classification code "100100"; it converts the text annotation "layer 3" into the numerical attribute "3". The converted codes and values are encapsulated into JSON-formatted key-value pairs and appended to the corresponding geometric primitive ID, achieving an upgrade from graphic data to semantically rich data.
[0028] The construction of the topological incidence matrix is executed in the high-performance computing unit, specifically including: the computing unit first allocates space in the video memory, initializes a zero matrix with dimensions equal to the total number of vertices, and uses a double loop to traverse any two vertex pairs in the geometric vertex coordinate sequence, calculating the spatial Euclidean distance between the vertex pairs. To improve efficiency, the system calls the CUDA core for parallel computation. For vertices... and Its Euclidean distance The calculation logic is as follows Assuming the total number of vertices N is 5000, the computing unit starts 5000 thread blocks to process the distance calculation task for each row in parallel. The logic judgment unit receives the calculation results and determines whether the spatial Euclidean distance is less than a preset connectivity threshold. If it is less, it determines that there is a physical connection between the vertex pairs, updates the corresponding row and column element values in the all-zero matrix to the inverse weight of the spatial Euclidean distance, and generates a sparse topological inclination matrix. Here, the connectivity threshold reuses the aforementioned 0.05-meter standard. At that time, the system does not simply label it as 1, but instead calculates the weight. This reciprocal weight design ensures that vertices that are closer together are more tightly bound in the graph structure, which is beneficial for subsequent graph neural network analysis. If the distance is greater than a threshold, the matrix elements remain 0. The matrix optimization unit performs a Laplace transform on the topological incidence matrix, calculates the matrix eigenvalues to verify the number of connected components in the graph structure, removes the row and column data corresponding to isolated vertices, and generates an optimized incidence matrix. This unit first bases the optimization on the adjacency matrix. Construct the degree matrix A degree matrix is a diagonal matrix, and its diagonal elements are... For the adjacency matrix, the first... Sum all elements in the row. Then perform the operation. The Laplace matrix is obtained. The system uses the Lanczos algorithm to solve it quickly. The eigenvalues of a matrix. If the calculated eigenvalues contain... A zero indicates that there is a zero in the graph. The system detects the node indices whose corresponding feature vectors are 0, identifies vertices that do not belong to any major connected component, sets the corresponding rows and columns of these vertices to zero in the matrix and marks them as invalid. The final optimized correlation matrix output removes most of the mapping noise data.
[0029] in, This represents the connection weight between vertex i and vertex j; This represents the Euclidean distance between vertex i and vertex j; This represents a tiny quantity to prevent the denominator from being zero, and its value is... ; Represents the Laplace matrix; Representation matrix; This represents the adjacency matrix.
[0030] Please see Figure 1 and Figure 3 The distributed index mapping module is used to call the Hilbert filling curve algorithm to perform dimensionality reduction mapping on the two-dimensional geographic location coordinates in the semantic feature set to generate location hash codes. Based on the numerical range of the location hash codes, the topological association matrix and the semantic feature set are written to the sharded storage node. The distributed index mapping module specifically includes: The spatial dimensionality reduction coding submodule is used to obtain two-dimensional geographic location coordinates from the semantic feature set, and recursively map the two-dimensional geographic location coordinates into one-dimensional integer values through the Hilbert filling curve algorithm to generate location hash codes. The interval routing and distribution submodule is used to obtain the value of the location hash code, determine the storage partition index to which the value belongs according to the preset load balancing strategy, and route the topology association matrix and semantic feature set to the corresponding shard storage node. The persistent storage submodule is used to receive and serialize the topological association matrix and semantic feature set, and write them into the underlying database of the sharded storage node in the form of key-value pairs. The process of generating a location hash code specifically includes: The geographic region containing the two-dimensional geographic location coordinates is divided into a multi-level nested grid system, and the row and column indices of the two-dimensional geographic location coordinates in the highest-level grid are determined. Following the recursive traversal order of the Hilbert filling curve algorithm, the row and column indices are converted into corresponding binary interleaved codes, and the binary interleaved codes are merged into a unique long integer value through bitwise operations. A region hierarchy identifier is added to the prefix of the long integer value, and the combined value is Base64 encoded to generate a location hash code with hierarchical spatial index characteristics.
[0031] The distributed index mapping module, acting as the central scheduling hub for data storage, invokes the Hilbert fill curve algorithm to perform dimensionality reduction mapping on the two-dimensional geographic coordinates in the semantic feature set to generate location hash codes. Based on the numerical range of the location hash codes, the topological association matrix and the semantic feature set are written to the sharded storage nodes. This module is deployed on the control node of the Kubernetes cluster and aims to solve the problem of physical storage fragmentation for massive spatial data, ensuring that geographically adjacent features are stored as adjacently as possible on the physical disk.
[0032] The spatial dimensionality reduction coding submodule is the core computational component, used to obtain two-dimensional geographic location coordinates from the semantic feature set. It recursively maps these coordinates to one-dimensional integer values using the Hilbert filling curve algorithm, generating a location hash code. This submodule first determines the spatial bounding box of the current mapping area; for example, the area covering a city might be between longitude 120.0 and 121.0 and latitude 30.0 and 31.0. This area is then divided into... The grid in which This represents the order of the Hilbert curve. After extensive IO throughput testing, as shown in Table 2, the order... The choice of which directly affects the efficiency of spatial queries.
[0033] Table 2 Comparison of Hilbert curve order and space query performance ; As shown in Table 2, the sub-modules are selected. As the default order, the grid resolution is approximately 1.5 meters, which satisfies the distinguishability of real estate units while keeping the query response time to around 45ms. The submodule reads the coordinates of the center point (120.554, 30.223) in the semantic feature set, normalizes them, and maps them to the 16th-order grid coordinate system. Then, it uses the state transition table to find the traversal index of the grid on the Hilbert curve, obtaining a 64-bit long integer hash value.
[0034] The Hilbert filling curve algorithm mentioned above refers to a continuous fractal curve that can fill a multidimensional space and has good locality preservation properties, that is, neighboring points in the multidimensional space remain neighboring after being mapped to a one-dimensional curve.
[0035] The interval routing and distribution submodule connects to the storage cluster configuration center to obtain the location hash code value. Based on a preset load balancing strategy, it determines the storage partition index to which the value belongs and routes the topology association matrix and semantic feature set to the corresponding sharded storage node. This submodule maintains a consistent hash ring with 256 virtual nodes mapped to 10 actual physical storage servers. The submodule then calculates the location hash code pairs... After taking the modulo, the hash is projected onto the hash ring, and the nearest virtual node is found clockwise. If the physical server corresponding to that node is overloaded (over 80%), the load balancing strategy will trigger a rehashing mechanism to route the data to the next less loaded node, ensuring that no single node becomes a hotspot bottleneck.
[0036] The aforementioned consistent hash ring refers to a distributed hash table algorithm that maps data items and storage nodes into a ring space connected end to end. Through monotonicity, it ensures that when nodes are added or removed, only the data distribution of adjacent nodes is affected, thereby minimizing the amount of data migration.
[0037] The persistent storage submodule, serving as the write interface, receives and serializes the topological association matrix and semantic feature set, writing them as key-value pairs to the underlying database of the sharded storage nodes. This submodule uses Protocol Buffers for data serialization, compressing the complex matrix structure and JSON attributes into compact binary blocks. The underlying database employs an LSM-Tree key-value storage engine. During writing, the key is designed as "RegionID:HilbertHash," and the value is the serialized binary block. This design allows the database head to sequentially read contiguous disk sectors during range queries, improving data throughput by over 300% compared to traditional B+ tree random read / write.
[0038] The LSM-Tree structure mentioned above refers to the log structure merge tree, a data structure optimized for write-intensive loads. It first writes data to a sort tree in memory, then asynchronously flushes it to an immutable sort file on disk, and cleans up old data and fragments through a background merge operation.
[0039] The generation process of the location hash code is pipelined in the FPGA accelerator card, specifically including: the logic gate array first divides the geographical region where the two-dimensional geographic location coordinates are located into a multi-level nested grid system, and determines the row and column indices of the two-dimensional geographic location coordinates in the highest-level grid. The system sets the highest-level grid hierarchy. For the input latitude and longitude... Through formula and Calculate the row and column indices. For example, calculate the row and column indices. It is 524288. The index value is 262144. These index values are all converted into 20-bit binary strings. The bitwise operation unit, following the recursive traversal order of the Hilbert fill curve algorithm, converts the row and column indices into corresponding binary interleaving codes, and then merges the binary interleaving codes into a unique long integer value through bitwise operations. This process differs from simple Z-curve interleaving; the Hilbert algorithm requires adjusting the combinational logic of the binary bits according to the rotation direction of the current quadrant. The FPGA has a built-in lookup table to handle this rotation. Specifically, for each bit, it determines whether the current bit needs to be flipped based on the state of the previous bit. Finally, a 40-bit integer value is generated through bit concatenation, which maintains the proximity in two-dimensional space and the proximity in one-dimensional numerical value. The encoder adds a region hierarchy identifier to the prefix of the long integer value, performs Base64 encoding on the combined value, and generates a position hash code with hierarchical spatial index characteristics. The system concatenates an 8-bit region ID before the 40-bit integer to form 48-bit data. Then, Base64 encoding is performed to convert the binary stream into an ASCII character sequence. This encoding method not only shortens the index length but also makes the index URL-friendly, facilitating direct transmission in Web APIs.
[0040] Please see Figure 1 and Figure 4 The view domain permission verification module is used to collect the location data and viewport range parameters of the requesting end through the hardware interface, use the ray intersection judgment algorithm to count the number of intersections between the rays drawn from the location data and the real estate unit polygon to calculate the inclusion status, and generate an authorization token based on the inclusion status. The view permission verification module specifically includes: The request parameter acquisition submodule is used to monitor the input signals of the hardware interface in real time, parse the global navigation satellite system data stream of the requesting end to obtain positioning data, and read the rendering matrix of the graphics processing unit to obtain the viewport range parameters. The ray interaction calculation submodule is used to draw virtual rays from the location data in any fixed direction, traverse all real estate unit polygons in the current area, and use the ray intersection determination algorithm to count the number of intersections between the virtual rays and the polygon boundaries. The authorization token generation submodule is used to determine whether the requesting party is located inside the real estate unit polygon based on the parity of the number of intersections. When the determination result is inside, an authorization token with an expiration time is generated. The calculation process involving the state specifically includes: Obtain the coordinates of the location data and the boundary set of the candidate real estate unit polygons, construct a virtual ray vector pointing horizontally to the right, and traverse each edge vector in the boundary set. Use the vector cross product operation to determine whether there is a geometric intersection between the virtual ray vector and the edge vector. If there is an intersection, increment the counter by one and repeat until all edges have been traversed. The inclusion status of the requesting end relative to the real estate unit polygon is calculated based on the following determination model: ; in, This represents the inclusion status; a value of 1 indicates inclusion, and a value of 0 indicates non-inclusion. This represents the total number of side segments of the polygon representing the real estate unit. The function representing the intersection determination of a ray and an edge segment. The coordinate vector representing the location data. The vector parameter represents the k-th polygonal side segment.
[0041] The viewport permission verification module is the system's security gateway. It collects location data and viewport range parameters from the requesting end via a hardware interface, uses a ray intersection algorithm to count the number of intersections between rays emanating from the location data and the polygons of the real estate units to calculate the inclusion status, and generates an authorization token based on the inclusion status. This module is directly integrated into the underlying SDK of the mobile terminal, ensuring rapid response of permission verification locally or at the edge, and preventing location fraud.
[0042] The request parameter acquisition submodule directly interfaces with the mobile device's hardware abstraction layer (HAL) to monitor input signals from the hardware interface in real time. It parses the GNSS data stream from the requesting end to obtain positioning data and simultaneously reads the rendering matrix from the graphics processing unit to obtain viewport range parameters. This submodule starts a 1Hz listening thread to capture the NMEA-0183 protocol statements output by the GNSS module. From this, it extracts longitude, latitude, altitude, and horizontal precision factor. The system is configured so that if the horizontal precision factor value is greater than 2.0, the positioning accuracy is considered insufficient, and the data frame is automatically discarded. Simultaneously, the submodule calls the OpenGLES interface to read the current camera's 4x4 transformation matrix and derivates the world coordinates of the four corner points of the current screen's visible range as viewport range parameters.
[0043] The NMEA-0183 protocol statement mentioned above refers to a standard data format for communication between marine electronic devices. It is widely used in GPS receivers to transmit information such as position, speed, time, and satellite status.
[0044] The ray-based interactive calculation submodule receives precision-filtered positioning coordinates and uses them to draw virtual rays in any fixed direction from the positioning data. It traverses all real estate polygon units within the current area and uses a ray intersection determination algorithm to count the number of intersections between the virtual rays and polygon boundaries. The submodule first constructs an R-Tree index to load all real estate polygon data within the current viewport. For positioning points... The system defines a ray that extends infinitely in the positive X-axis direction. Then, the submodule extracts each edge of the polygon. Its endpoints are and Calculate the relationship between rays and line segments. The intersection point. To avoid floating-point calculation errors, the system introduces a tolerance value. Only when the X-coordinate of the intersection point is strictly greater than... The counter increments by 1 only when the intersection point is located inside the line segment.
[0045] The R-Tree index mentioned above refers to a tree-like data structure used to process multidimensional spatial data. It efficiently supports spatial range queries and nearest neighbor queries by enclosing spatial objects in minimum bounding rectangles and organizing these rectangles hierarchically.
[0046] The permission token generation submodule, based on the calculation results, determines whether the requesting client is located inside the polygon of the real estate unit based on the parity of the number of intersections. If the result is that the client is inside, a time-limited authorization token is generated. If the number of intersections is odd, according to the Jordan curve theorem, the user is determined to be inside the polygon and has physical presence permission to view detailed information about the real estate. The submodule then calls an encryption algorithm, combining the user ID, current timestamp, polygon ID, and a system private key to generate a JWT string. This token is set to be valid for 300 seconds; once it expires, the location must be re-verified, thus realizing dynamic geofencing access control.
[0047] The Jordan curve theorem mentioned above is a fundamental theorem in topology, which states that a simple closed curve divides a plane into two disjoint regions, namely the interior region and the exterior region.
[0048] The state calculation process involves rigorous geometric algebra operations, specifically including: First, the computational logic obtains the coordinates of the location data and the boundary set of candidate real estate unit polygons; second, it constructs a virtual ray vector pointing horizontally to the right; and third, iterates through each edge segment vector in the boundary set. Finally, it sets the location. The polygon boundary set contains 5 vertices, forming 5 edge segments. Virtual ray vector. The core geometry uses vector cross product to determine if there is a geometric intersection between the virtual ray vector and the edge segment vector. If an intersection exists, the counter is incremented, and this process is repeated until all edges have been traversed. The system then determines the endpoints of the edges. and Does it cross the Y-coordinate of the ray? If this condition is met, further calculate the X-coordinate of the intersection point between the ray and the line containing the edge segment. If the X-coordinate of the intersection point is greater than the X-coordinate of the positioning point, it is determined to be a valid intersection point, and the counter increments. For example, after traversal calculation, it is found that the ray intersects the first and third edges of the polygon, and the final value of the counter is 2. The determination model calculates the inclusion state of the requesting end relative to the real estate unit polygon according to the following formula: ; in, This represents the inclusion status; a value of 1 indicates inclusion, and a value of 0 indicates non-inclusion. The total number of side segments representing the polygon of the real estate unit; This function determines the intersection of a ray and an edge segment. It returns 1 if the ray and the edge segment have a valid intersection point, and 0 otherwise. The coordinate vector representing the location data; The vector parameter represents the k-th polygonal side segment.
[0049] Substitute the above example data into the formula. The summation term results in 2. Calculate... Since the result is 0, the system determines... Since the polygon does not contain state information, the user is located outside the polygon, and the generation of an authorization token is refused. The advantage of this decision model is that it transforms complex geometric topological relationships into binary logic through modulo-2 operations, and the algorithm's complexity is only linear time, making it suitable for the low-power computing needs of mobile devices. Experimental data shows that when processing a complex polygon with 1000 vertices, the algorithm takes only 0.12ms.
[0050] Please see Figure 1 and Figure 5 The incremental data synchronization module is used to respond to the authorization token and retrieve vector data from the sharded storage node according to the viewport range parameter. It calculates the feature difference package to be updated by comparing the difference between the local cache hash fingerprint and the vector data. The incremental data synchronization module specifically includes: The vector data retrieval submodule is used to verify the validity of the authorization token, parse the viewport range parameter to determine the geographic boundary of the current visible area, and download the vector data covering the geographic boundary in parallel from the corresponding sharded storage node. The fingerprint difference comparison submodule is used to calculate the real-time hash digest of the downloaded vector data, obtain the local cache hash fingerprint, and locate the data block index that is inconsistent between the two through bitwise XOR operation; The difference package encapsulation submodule is used to extract the latest geometric features and attribute information corresponding to the data block index, compress and encode the difference parts, and generate the feature difference package to be updated. The calculation process for the feature difference package to be updated specifically includes: The downloaded vector data is divided into multiple logical data blocks according to a preset spatial granularity, and the MD5 digest value of each logical data block is calculated to form a real-time fingerprint list. Traverse the historical digest values in the local cache hash fingerprint, compare them item by item with the real-time fingerprint list, and filter out the changed data block IDs whose digest values do not match; Retrieve the feature object corresponding to the changed data block ID, identify the type of operation (add, modify, or delete) for that object, and encapsulate the operation type instruction and the changed geometric attribute data into a binary format feature difference package to be updated.
[0051] The incremental data synchronization module is a network optimization component of the system. It responds to authorization tokens and retrieves vector data from sharded storage nodes based on viewport range parameters. It calculates the feature difference packet to be updated by comparing the difference between the local cache hash fingerprint and the vector data. This module is designed for weak network environments, such as 4G signal edge areas, minimizing bandwidth consumption by transmitting only changed data.
[0052] The vector data retrieval submodule connects to the communication module to verify the validity of the authorization token, parse the viewport range parameter to determine the geographical boundary of the currently visible area, and download vector data covering that geographical boundary in parallel from the corresponding sharded storage node. The submodule first verifies the signature and validity period of the JWT token; if successful, it reads the viewport range parameter. Based on this range, it initiates a range query request to the server's API. The server uses the aforementioned Hilbert index to quickly return the latest vector data snapshot within that area. To accelerate the download, HTTP / 2 multiplexing technology is employed, opening four concurrent streams to pull data simultaneously.
[0053] The fingerprint difference comparison submodule operates on the local SQLite cache to calculate the real-time hash digest of the downloaded vector data, obtain the local cache hash fingerprint, and locate the index of the data block that is inconsistent between the two through bitwise XOR operations. This submodule aligns the locally cached data with the newly downloaded metadata. The system uses a MerkleTree structure to organize the fingerprints. The hash value of the root node represents the state of the entire dataset. If the root hash is inconsistent, the child nodes are recursively traversed. For example, if the hash of a leaf node in the local cache is 0xA1, and the corresponding node returned by the server has a hash of 0xB2, the result of the XOR operation is not zero, thus accurately locating the data block corresponding to that node that has been changed.
[0054] The Merkle Tree mentioned above refers to a Merkle tree, a data structure that is connected hierarchically by hash fingerprints, where each non-leaf node is the hash value of the combination of all its child nodes. It is mainly used to efficiently verify the integrity and consistency of large-scale data structures.
[0055] The differential packet encapsulation submodule is responsible for constructing the transport payload, which extracts the latest geometric features and attribute information corresponding to the data block index, compresses and encodes the differences, and generates the feature differential packet to be updated. For identified changed data blocks, the submodule uses the VCDIFF differential encoding standard. Assuming the change only involves the movement of a corner coordinate of a building by 1 meter, the VCDIFF algorithm does not transmit the entire building data, but instead generates a sequence containing copy and add instructions. Subsequently, the GZIP algorithm is used to perform secondary compression on this instruction sequence, so that the final generated differential packet size is typically only 5% to 10% of the full data.
[0056] The aforementioned VCDIFF differential encoding standard refers to a general differential data compression format and algorithm defined in RFC3284. It uses copy instructions to reference data blocks in the source file and append instructions to insert new data to compactly represent the differences between two files.
[0057] The calculation process for the updated feature difference package involves sophisticated data partitioning logic: First, the partitioning logic divides the downloaded vector data into multiple logical data blocks according to a preset spatial granularity, calculates the MD5 summary value for each logical data block, and forms a real-time fingerprint list. The system sets the spatial granularity to a 100m x 100m map sheet unit. For all vector objects within each unit, their binary data is concatenated to calculate a 128-bit MD5 value. For example, the real-time summary value for map sheet A is a specific 32-bit hexadecimal string. The comparison logic iterates through the historical summary values in the local cache hash fingerprint, performing an item-by-item equal-value comparison with the real-time fingerprint list, filtering out changed data block IDs whose summary values do not match. Assuming that the historical summary value of map sheet A in the local cache matches the real-time value, while the historical value of map sheet B differs from the real-time value, the comparison logic adds the ID of map sheet B to the change list. The encapsulation logic retrieves the feature object corresponding to the changed data block ID, identifies the object's add, modify, or delete operation type, and encapsulates the operation type instruction and the changed geometric attribute data into a binary format feature difference package to be updated. The system analyzes the data in image B and finds that the object with ID 99 has been deleted, and the object with ID 100 has had its attributes modified. The encapsulated logic generates a binary instruction stream. This differential packet is ultimately sent to the front-end rendering engine, which only needs to execute these few instructions to complete the view update without redrawing the entire scene, significantly reducing GPU and memory overhead on mobile devices.
[0058] A method for sharing real estate surveying and mapping resources, wherein the method is executed based on the aforementioned real estate surveying and mapping resource sharing system, includes the following steps: S1: Parse the original mapping file to extract the geometric vertex coordinate sequence, calculate the Euclidean distance and connectivity between vertices in the geometric vertex coordinate sequence to construct the topological association matrix, and transform the unstructured attribute information based on the metadata mapping dictionary to generate a semantic feature set; S2: Call the Hilbert filling curve algorithm to perform dimensionality reduction mapping on the two-dimensional geographic location coordinates in the semantic feature set to generate location hash codes. Write the topological association matrix and semantic feature set to the sharded storage node according to the numerical range of the location hash codes. S3: Collect the location data and viewport range parameters of the requesting end through the hardware interface, use the ray intersection determination algorithm to count the number of intersections between the rays drawn from the location data and the real estate unit polygon to calculate the inclusion status, and generate an authorization token based on the inclusion status. S4: Respond to the authorization token and retrieve vector data from the sharded storage node based on the viewport range parameter. Calculate the feature difference package to be updated by comparing the difference between the local cache hash fingerprint and the vector data.
[0059] The above embodiments illustrate preferred embodiments of the present invention. Any equivalent adjustments to the technical solution based on software engineering methods are within the scope of protection, including but not limited to: implementing algorithm logic using different programming languages, refactoring functional modules into services, adjusting data interaction protocols, and optimizing resource scheduling strategies. Any implementation scheme derived from reasonable modifications to the data processing flow, service call chain, or system architecture layer without departing from the core technology of the present invention should be considered within the protection scope defined by the technical solution of the present invention.
Claims
1. A real estate surveying and mapping resource sharing system, characterized in that, The system includes: The heterogeneous primitive parsing module is used to parse the original mapping file to extract the geometric vertex coordinate sequence, calculate the Euclidean distance and connectivity between vertices in the geometric vertex coordinate sequence to construct a topological correlation matrix, and transform unstructured attribute information based on the metadata mapping dictionary to generate a semantic feature set. The distributed index mapping module is used to call the Hilbert filling curve algorithm to perform dimensionality reduction mapping on the two-dimensional geographic location coordinates in the semantic feature set to generate a location hash code, and write the topological association matrix and the semantic feature set to the sharded storage node according to the numerical range of the location hash code. The view domain permission verification module is used to collect the positioning data and viewport range parameters of the requesting end through the hardware interface, use the ray intersection judgment algorithm to count the number of intersections between the rays drawn from the positioning data and the polygon of the real estate unit to calculate the inclusion status, and generate an authorization token based on the inclusion status. The incremental data synchronization module is used to respond to the authorization token and retrieve vector data from the sharded storage node according to the viewport range parameter, and calculate the feature difference package to be updated by comparing the difference between the local cache hash fingerprint and the vector data.
2. The real estate surveying and mapping resource sharing system according to claim 1, characterized in that, The heterogeneous primitive parsing module specifically includes: The coordinate sequence extraction submodule is used to read the binary stream data of the original mapping file, identify the header and end labels that identify geometric primitives, and decode the data segment between the header and end labels to obtain the geometric vertex coordinate sequence. The topology matrix construction submodule is used to traverse all vertices in the geometric vertex coordinate sequence, calculate the Euclidean distance between vertices based on a preset adjacency determination threshold, and establish the topology correlation matrix that represents the spatial connection relationship between vertices. The attribute semantic transformation submodule is used to extract text annotations and layer attributes from the original mapping file, call the metadata mapping dictionary to match standardized classification codes, and reorganize the text annotations and layer attributes into the semantic feature set.
3. The real estate surveying and mapping resource sharing system according to claim 1, characterized in that, The distributed index mapping module specifically includes: The spatial dimensionality reduction coding submodule is used to obtain the two-dimensional geographic location coordinates in the semantic feature set, and recursively map the two-dimensional geographic location coordinates into one-dimensional integer values through the Hilbert filling curve algorithm to generate the location hash code; The interval routing and distribution submodule is used to obtain the value of the location hash code, determine the storage partition index to which the value belongs according to the preset load balancing strategy, and route the topology association matrix and the semantic feature set to the corresponding shard storage node. The persistent storage submodule is used to receive and serialize the topological association matrix and the semantic feature set, and write them into the underlying database of the sharded storage node in the form of key-value pairs.
4. The real estate surveying and mapping resource sharing system according to claim 1, characterized in that, The view permission verification module specifically includes: The request parameter acquisition submodule is used to monitor the input signals of the hardware interface in real time, parse the global navigation satellite system data stream of the requesting end to obtain positioning data, and at the same time read the rendering matrix of the graphics processing unit to obtain the viewport range parameters. The ray interaction calculation submodule is used to draw virtual rays from the location data in any fixed direction, traverse all the real estate unit polygons in the current area, and use the ray intersection determination algorithm to count the number of intersections between the virtual rays and the polygon boundaries. The authorization token generation submodule is used to determine whether the requesting party is located inside the polygon of the real estate unit based on the parity of the number of intersections. When the determination result is inside, an authorization token with an expiration time is generated.
5. The real estate surveying and mapping resource sharing system according to claim 1, characterized in that, The incremental data synchronization module specifically includes: The vector data retrieval submodule is used to verify the validity of the authorization token, parse the viewport range parameter to determine the geographical boundary of the current visible area, and download vector data covering the geographical boundary in parallel from the corresponding shard storage node. The fingerprint difference comparison submodule is used to calculate the real-time hash digest of the downloaded vector data, obtain the local cache hash fingerprint, and locate the data block index that is inconsistent between the two through bitwise XOR operation; The difference package encapsulation submodule is used to extract the latest geometric features and attribute information corresponding to the data block index, compress and encode the differences, and generate the feature difference package to be updated.
6. The real estate surveying and mapping resource sharing system according to claim 2, characterized in that, The process of constructing the topological correlation matrix specifically includes: Initialize a zero matrix with dimensions equal to the total number of vertices, and use a double loop to traverse any two pairs of vertices in the geometric vertex coordinate sequence to calculate the Euclidean distance between the vertex pairs; Determine whether the Euclidean distance is less than a preset connectivity threshold. If it is less, determine that there is a physical connection between the vertex pairs. Update the corresponding row and column element values in the all-zero matrix to the inverse weight of the Euclidean distance to generate the topological correlation matrix with a sparse structure. The topological incidence matrix is subjected to a Laplace transform, and the matrix eigenvalues are calculated to verify the number of connected components in the graph structure. Row and column data corresponding to isolated vertices are removed to generate an optimized incidence matrix.
7. The real estate surveying and mapping resource sharing system according to claim 3, characterized in that, The process of generating the location hash code specifically includes: The geographic region containing the two-dimensional geographic location coordinates is divided into a multi-level nested grid system, and the row and column indices of the two-dimensional geographic location coordinates in the highest-level grid are determined. Following the recursive traversal order of the Hilbert filling curve algorithm, the row and column indices are converted into corresponding binary interleaved codes, and the binary interleaved codes are merged into a unique long integer value through bitwise operations. A region hierarchy identifier is added to the prefix of the long integer value, and the combined value is Base64 encoded to generate the location hash code with hierarchical spatial index characteristics.
8. The real estate surveying and mapping resource sharing system according to claim 4, characterized in that, The calculation process involving the state specifically includes: Obtain the coordinates of the location data and the boundary set of the candidate real estate unit polygons, construct a virtual ray vector pointing horizontally to the right, and traverse each edge vector in the boundary set. Use the vector cross product operation to determine whether there is a geometric intersection between the virtual ray vector and the edge vector. If there is an intersection, increment the counter by one and repeat until all edges have been traversed. The inclusion state of the requesting terminal relative to the polygon of the real estate unit is calculated based on the following determination model: ; in, This represents the inclusion status; a value of 1 indicates inclusion, and a value of 0 indicates non-inclusion. This represents the total number of side segments of the polygon of the real estate unit. The function representing the intersection determination of a ray and an edge segment. The coordinate vector representing the location data. The vector parameter represents the k-th polygonal side segment.
9. The real estate surveying and mapping resource sharing system according to claim 5, characterized in that, The calculation process of the feature difference package to be updated specifically includes: The downloaded vector data is divided into multiple logical data blocks according to a preset spatial granularity, and the MD5 digest value of each logical data block is calculated to form a real-time fingerprint list. Traverse the historical digest values in the local cache hash fingerprint and compare them item by item with the real-time fingerprint list to filter out the changed data block IDs whose digest values do not match; Retrieve the feature object corresponding to the changed data block ID, identify the type of operation (add, modify, or delete) for that object, and encapsulate the operation type instruction and the changed geometric attribute data into a binary format feature difference package to be updated.
10. A method for sharing real estate surveying and mapping resources, characterized in that, The method is used to implement the real estate surveying and mapping resource sharing system according to any one of claims 1-9, and includes the following steps: S1: Parse the original mapping file to extract the geometric vertex coordinate sequence, calculate the Euclidean distance and connectivity between vertices in the geometric vertex coordinate sequence to construct a topological association matrix, and transform unstructured attribute information based on the metadata mapping dictionary to generate a semantic feature set; S2: Call the Hilbert filling curve algorithm to perform dimensionality reduction mapping on the two-dimensional geographic location coordinates in the semantic feature set to generate a location hash code, and write the topological association matrix and the semantic feature set to the sharded storage node according to the numerical range of the location hash code; S3: Collect the location data and viewport range parameters of the requesting end through the hardware interface, use the ray intersection determination algorithm to count the number of intersections between the rays drawn from the location data and the real estate unit polygon to calculate the inclusion status, and generate an authorization token based on the inclusion status. S4: Respond to the authorization token and retrieve vector data from the sharded storage node according to the viewport range parameter, and calculate the feature difference package to be updated by comparing the difference between the local cache hash fingerprint and the vector data.
Citation Information
Patent Citations
Automatic construction and publishing method based on UE5
CN119396368A
Automatic processing method for real estate surveying and mapping
CN120123412A
Micro-grid resource visual topological index generation method and system
CN120744002A
Permission credible mutual recognition method, device and system of cross-domain agent
CN120893027A