Method for generating vector buffer area with specified area

Through the dichotomy method iteratively calculates the buffer distance and generates a vector buffer of a specified area, solving the problem that the buffer area cannot be accurately controlled in the prior art, and achieving rapid and automated generation of vector buffers for specified area.

CN120219142APending Publication Date: 2025-06-27KUNMING UNIV OF SCI & TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510279427.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-11
Publication Date
2025-06-27

AI Technical Summary

Technical Problem

The prior art cannot accurately control the area of ​​a vector buffer, and it is difficult to meet the requirement that the buffer has a specific area.

Method used

By entering geographic features, specifying the target area and area tolerance, using dichotomy to iterate the buffer distance until the area error is within the tolerance range, a vector buffer of the specified area is generated.

Benefits of technology

It realizes the rapid and automated generation of vector buffers of specified areas, improves the accuracy and controllability of the generation process, and makes up for the shortcomings of the inability to quickly create vector buffers through specified areas in the prior art.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120219142A_ABST
    Figure CN120219142A_ABST
Patent Text Reader

Abstract

The invention discloses a method for generating a vector buffer area with a specified area, which comprises the following steps of: inputting geographic elements of the buffer area needing to be created, setting the target area of the buffer area, the area tolerance, the initial minimum buffer area distance and the initial maximum buffer area distance, and continuously adjusting the buffer distance by utilizing dichotomy iterative calculation; the buffer distance at the moment is used for creating the vector buffer area with the specified area of the input element until the area of the generated temporary buffer area meets tolerance setting, and the vector buffer area of any point, line or surface element can be quickly and automatically generated according to the specified area; the defect that the current GIS platform can only pass through a specified distance and cannot quickly create the vector buffer area with high precision through a specified area is overcome.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of GIS spatial analysis, and particularly relates to a method for generating a vector buffer with a specified area. Background Art

[0002] At present, the analysis method of vector buffer is a GIS spatial analysis method that is based on point, line, and surface geographic elements in GIS and automatically establishes a buffer polygon layer at a certain distance around them to describe the spatial relationship between geographic elements. As a topological operation method for spatial graphic data, the vector buffer analysis method has been widely used in various fields such as spatial analysis, urban planning, and environmental protection. For example, creating a vector buffer at a specified distance in the field of urban planning can help urban planners delimit land use zones and better coordinate the relationship between various facilities, land use, and environmental protection; departments such as urban traffic management, environmental protection, and sanitation often need to balance the coverage of resources and the reasonable layout of functional areas during management and planning, and the analysis method of vector buffer can be conveniently used to assist in solving such problems.

[0003] A vector buffer is an information analysis method that forms a polygon entity with a certain range around a group or a class of geographic elements (points, lines, surfaces) according to the set distance condition, so as to realize the expansion of data in the two-dimensional space. The buffer analysis function in ArcGIS can generate different types of buffers according to the user's needs and data characteristics. The current technical solutions for establishing buffers in GIS software are as follows:

[0004] Creating a vector buffer based on a specified distance: The user specifies a fixed buffer distance for geographic elements such as points, lines, or surfaces, and the GIS system expands outward around these elements according to the specified distance. For example, for a line element, each line segment is translated to both sides according to the buffer distance to generate parallel lines, the endpoints of the parallel lines are connected, and semi-circular arcs are drawn at the starting point and the ending point of the line segment to form a closed buffer polygon and generate a buffer surrounding the original element. This technology can quickly generate a buffer, but it cannot accurately control the buffer area, and the buffer area generated by specifying a fixed distance depends on the shape and size of the original element, and it is impossible to ensure that the buffer can meet the specific area requirements. When it is required that the buffer has a specific area, the current method of creating a buffer based on distance is difficult to meet the requirements. Summary of the Invention

[0005] The purpose of the present invention is to provide a method for generating a vector buffer with a specified area to solve the problems raised in the above background art.

[0006] To achieve the above purpose, a method for generating a vector buffer with a specified area of the present invention is realized through the following technical solutions, and the specific steps are as follows:

[0007] Step 1: Input the geographic features for which a buffer needs to be created.

[0008] Step 2: Specify the target area of the buffer; set the area tolerance as the target area multiplied by a certain ratio, which is called the area error tolerance, and its value range is between 0 and 1. The specific calculation formula is as follows:

[0009] tolerance = A t ×n, (n ∈ (0, 1));

[0010] Step 3: Set the initial buffer distance: the minimum distance is 0; the maximum distance is the target area divided by the square root of π and then multiplied by 2. The specific calculation formula is as follows:

[0011]

[0012] Step 4: Define the area error: the area error should ultimately be less than the area tolerance. The specific calculation formula is as follows:

[0013] |A a - A t | < tolerance;

[0014] Step 5: Input the initial buffer distance, and use the bisection method to iteratively calculate the temporary buffer distance. If the area error is within the area tolerance range, then determine the temporary buffer distance at this time as the final buffer distance. If the area error is outside the area tolerance range, then continue the iteration. The specific calculation formula is as follows:

[0015]

[0016] Among them, r is the temporary buffer distance calculated by the bisection method iteration, r min is the initial minimum buffer distance; r max is the initial maximum buffer distance; A r represents the area of the temporary buffer created by the buffer distance r obtained from each bisection method iteration;

[0017] Step 6: Create a vector buffer with the specified area of the input feature based on the final buffer distance r.

[0018] Preferably, in Step 1, the input geographic features include three vector geometric features: points, lines, and polygons.

[0019] Preferably, in Step 2, tolerance is the area tolerance, A t is the target area of the buffer, and n is the area error tolerance.

[0020] Preferably, in Step 2, the value range of the area error tolerance is between 0 and 1.

[0021] Preferably, in step three, the initial maximum buffer distance is the upper bound when using the bisection method to calculate the buffer distance. Since under the condition of the same target area, the buffer distance of a point is greater than that of other lines or surfaces, the buffer distance calculation formula of the point is used for calculation; the calculated distance is multiplied by 2 as the initial maximum buffer distance, which further improves the iteration speed and accuracy of the bisection method for the point buffer distance, and can cover three elements: points, lines, and surfaces.

[0022] Preferably, in step three, r max is the initial maximum buffer distance, A t is the buffer target area, and π is the pi.

[0023] Preferably, in step four, A a is the actual area of the created buffer, A t is the target area, and tolerance is the area tolerance.

[0024] Compared with the prior art, the beneficial effects of the present invention are:

[0025] (1) The buffer distance of the specified area vector buffer within the area tolerance can be calculated.

[0026] (2) The precision of generating the specified area vector buffer can be controlled, and the generation process is standardized.

[0027] (3) The specified area vector buffers of three types of elements, points, lines, and surfaces, can be generated quickly and automatically. Description of the Drawings

[0028] Figure 1 is the flowchart of Embodiment 1 of the present invention;

[0029] Figure 2 is the schematic diagram of the distribution of areal elements of a large square in Hunan in Embodiment 2 of the present invention;

[0030] Figure 3 is the schematic diagram of the vector buffer with a specified area of 1000 m 2 established based on the areal elements of a large square in Hunan in Embodiment 2 of the present invention. Detailed Embodiments

[0031] The present invention will be further described in detail below with reference to the drawings and specific embodiments.

[0032] Embodiment 1:

[0033] A method for generating a specified area vector buffer, as Figures 1 - 3 shown, includes the following steps:

[0034] Step 1, input the initial point, line, or areal geographic elements for which the buffer is to be established;

[0035] Step 2: Specify the target area of the buffer; set the area tolerance as the target area multiplied by a certain ratio. This ratio is called the area error tolerance, and its value range is between 0 and 1. The specific calculation formula is as follows:

[0036] tolerance = A t ×n, (n ∈ (0, 1))

[0037] where tolerance is the area tolerance, A t is the target area of the buffer, and n is the area error tolerance;

[0038] Step 3: Set the initial buffer distance: The minimum buffer distance is 0; the maximum buffer distance is the square root of the target area divided by π multiplied by 2. The specific calculation formula is as follows:

[0039]

[0040] where r max is the initial maximum buffer distance, A t is the target area of the buffer, and π is the pi;

[0041] Step 4: Define the area error: The area error should ultimately be less than the area tolerance. The specific calculation formula is as follows:

[0042] |A a - A t | < tolerance

[0043] where A a is the actual area of the created buffer, A t is the target area, and tolerance is the area tolerance;

[0044] Step 5: Input the initial buffer distance, and use the bisection method to iteratively calculate the temporary buffer distance. If the area error is within the area tolerance range, then determine the temporary buffer distance at this time as the final buffer distance. If the area error is outside the area tolerance range, continue the iteration. The specific calculation formula is as follows:

[0045]

[0046] where r is the temporary buffer distance calculated by using the bisection method iteration, r min is the initial minimum buffer distance; r max is the initial maximum buffer distance; A r represents the temporary buffer area created by using the buffer distance r obtained from each bisection method iteration;

[0047] Example 2:

[0048] Using the method for generating a vector buffer with a specified area in Example 1, taking ArcGIS as the GIS analysis platform and Python as the auxiliary programming language, and using the polygon feature of a large square in Hunan as the data, as Figure 2 shown below, the specific steps are as follows:

[0049] (1) Use the polygon feature of a large square in Hunan under the CGCS2000_3_Degree_GK_CM_105E projection coordinate system as the input geographic feature;

[0050] (2) Specify the target area of the buffer as 1000 m 2 ; set the area error tolerance to 0.1%, and the specific calculation formula for the area tolerance is as follows:

[0051] tolerance = A t ×n, (n ∈ (0, 1))

[0052] where tolerance is the area tolerance, A t is the target area of the buffer; n is the area error tolerance;

[0053] The calculated area tolerance is 1 m 2 ;

[0054] (3) Set the initial buffer distance: the minimum buffer distance is 0; the maximum buffer distance is the target area divided by the square root of π and then multiplied by 2, and the specific calculation formula is as follows:

[0055]

[0056] where r max is the initial maximum buffer distance, A t is the target area of the buffer, and π is the pi;

[0057] The calculated maximum buffer distance is approximately 35.68 m;

[0058] (4) Define the area error: the area error should ultimately be less than the area tolerance, and the specific calculation formula is as follows:

[0059] |A a - A t | < tolerance

[0060] where A a is the actual area of the created buffer, A t is the target area, and tolerance is the area tolerance;

[0061] (5) Input the initial buffer distance, and use the bisection method to iteratively calculate the temporary buffer distance. If the area error is within the area tolerance range, output the temporary buffer distance at this time. If the area error is outside the area tolerance range, continue the iteration. The specific calculation formula is as follows:

[0062]

[0063] Among them, r is the temporary buffer distance calculated by the bisection method iteration, r min is the initial minimum buffer distance; r max is the initial maximum buffer distance; A r represents the area of the temporary buffer created by the buffer distance r obtained by each bisection method iteration;

[0064] The calculated distance r for creating the final output buffer is approximately 2.15 m;

[0065] (6) Create a vector buffer with the specified area of the input feature based on the final buffer distance r.

[0066] (7) The calculated actual area of the finally created buffer is 1000.37 m 2 , and the difference between the buffer area and the target area is 0.37 m 2 , which is within the area tolerance range;

[0067] In this embodiment, the planar feature of a large square in Hunan Province is used as the input data, as Figure 2 shown; There are 30 tons of existing cement for laying a 10-cm-thick concrete road surface around the square. It is known that about 30 kg of cement is required for laying each square meter of the road surface, and the total cement consumption allows an adjustment range of 0.1%. According to the target requirements, after calculation, it can be known that: a vector buffer with a specified area of 1000 m 2 and an area tolerance range of 1 m 2 should be established. The main process data is shown in Table 1; Therefore, in order to achieve precise laying of the concrete road surface, a 2.15-meter-wide concrete road surface should be laid around the large square, and the remaining 11.1 kg of cement is within the allowed adjustment range of 30 kg, ensuring the uniform distribution and covering effect of the road surface, as Figure 3 shown; By using this scientific spatial analysis method to precisely control the buffer area, material waste is avoided, and resources are optimally configured.

[0068] Table 1

[0069]

[0070] The method for generating a vector buffer with a specified area includes inputting the geographical features for which a buffer needs to be created, setting the target area of the buffer, the area tolerance, the initial minimum buffer distance, and the initial maximum buffer distance, and using the bisection method to iteratively calculate and continuously adjust the buffer distance until the area of the generated temporary buffer meets the tolerance setting. The buffer distance at this time is used to create a vector buffer with the specified area for the input features. The present invention can quickly and automatically generate vector buffers for any point, line, or surface feature according to the specified area, making up for the deficiency that the current GIS platform can only create vector buffers quickly and with high precision by specifying the distance rather than the area.

[0071] As described above, the above is only a preferred specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any changes or substitutions that can be easily thought of by those familiar with the technology within the technical scope disclosed by the present invention, whether it is replacing the GIS platform or the programming language, as long as it is implemented through the steps described by the method of the present invention, should be covered within the protection scope of the present invention. Therefore, the protection scope of the present invention should be subject to the protection scope of the claims.

Claims

1. A method for generating a specified area vector buffer, characterized in that: The following steps are involved: Step 1: Input the geographic features for which a buffer zone needs to be established; Step 2: Specify the target area of ​​the buffer zone; set the area tolerance to the target area multiplied by a certain ratio. The specific calculation formula is as follows: tolerance=A t ×n,(n∈(0,1)); Step 3. Set the initial buffer distance: the minimum distance is 0; the maximum distance is the target area divided by the square root of π multiplied by 2. The specific calculation formula is as follows: Step 4: Define the area error: The area error should eventually be smaller than the area tolerance. The specific calculation formula is as follows: |A a -A t |<tolerance; Step 5. Enter the initial buffer distance and use the dichotomy method to iteratively calculate the temporary buffer distance. If the area error is within the area tolerance range, the temporary buffer distance at this time is determined as the final buffer distance. If the area error is outside the area tolerance range, continue to iterate. The specific calculation formula is as follows: Among them, r is the temporary buffer distance calculated by iterative dichotomy, r min is the initial minimum buffer distance; r max is the initial maximum buffer distance; A r represents the temporary buffer area created using the buffer distance r obtained in each bisection iteration; Step 6. Create a specified area vector buffer of the input feature based on the final buffer distance r.

2. A method for generating a specified area vector buffer according to claim 1, characterized in that: In step one, the input geographic elements include three types of vector geometric elements: points, lines, and surfaces.

3. A method for generating a specified area vector buffer according to claim 1, characterized in that: In step 2, tolerance is the area tolerance, A t is the target area of ​​the buffer zone, and n is the area error tolerance.

4. A method for generating a specified area vector buffer according to claim 1, characterized in that: In step 2, the area error tolerance ranges from 0 to 1.

5. The method for generating a specified area vector buffer according to claim 1, characterized in that: In step 3, the initial maximum buffer distance is the upper bound of the buffer distance when using the bisection method.

6. A method for generating a specified area vector buffer according to claim 1, characterized in that: In step 3, r max is the initial maximum buffer distance, A t is the target area of ​​the buffer zone, and π is the ratio of a circle to a circle.

7. A method for generating a specified area vector buffer according to claim 1, characterized in that: In step 4, A a A is the actual area of ​​the created buffer zone. t is the target area, and tolerance is the area tolerance.