An intersection determination method suitable for ray tracing technology in dense urban scenarios
By simplifying polygon intersection determination using support functions and intersection determination triangles, the computational complexity and accuracy issues of ray tracing technology in dense urban scenarios are resolved, achieving efficient and accurate channel information calculation.
Patent Information
- Application Number
- CN202411710732.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-27
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2044-11-27
AI Technical Summary
Existing ray tracing technology suffers from high computational complexity, large memory consumption, and insufficient accuracy in polygon intersection determination algorithms in dense urban scenarios, making it difficult to meet the requirements for real-time performance and high precision.
The problem of polygon intersection is simplified by using support functions. Vertices are calculated by constructing support directions and angles, and intersection judgment triangles are used to determine whether polygons intersect. New ray beams are generated by combining mirror reflection, and channel information is calculated.
It improves the computational efficiency and accuracy of polygon intersection determination, shortens simulation time, and enhances the efficiency and accuracy of channel information acquisition.
Smart Images

Figure CN119814198B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to an intersection determination method for ray tracing technology applicable to dense urban scenes, belonging to the field of wireless communication technology. Background Technology
[0002] In the field of wireless communication, channel modeling is a fundamental tool for the design, optimization, and evaluation of wireless communication systems. Ray tracing, as a deterministic channel modeling method, analyzes the propagation characteristics of radio waves based on geometric optics and uniform diffraction theory. After calibration with measured data, the channel model achieves high accuracy. Based on different implementation methods, ray tracing methods can be broadly classified into two types: the Shooting and Bouncing Ray Method (SBR) and the Image Method (IM). The SBR offers faster simulation speed but lower accuracy compared to the Image Method, while the Image Method offers higher accuracy but slower simulation speed. In complex scenarios, the simulation time of the Image Method increases exponentially with the number of objects in the scene; therefore, the Image Method is relatively unsuitable for large-area urban scenarios with numerous objects.
[0003] In relatively complex, dense urban communication scenarios, the ray-bouncing method is more widely used. The ray-bouncing method uniformly emits tens of thousands of rays at the transmitting end. These rays propagate through the scene until the number of interactions, such as reflection or diffraction, reaches a preset order. By determining the rays reaching the receiving end and calculating their paths, the multipath information between the transmitting and receiving ends can be accurately calculated. Using this multipath information, such as power, delay, and angle, precise channel characteristics can be calculated. Polygon intersection determination is a key factor determining the simulation efficiency and accuracy of ray-tracing channel models, often accounting for more than 90% of the simulation time. Existing intersection determination algorithms in ray-tracing channel models have significant redundancy and limited accuracy, restricting the development of high-performance ray-tracing technology.
[0004] Despite significant progress in polygon intersection detection techniques, existing technologies still face limitations in computational complexity, memory consumption, accuracy, and applicability as application demands continue to increase. Traditional intersection detection algorithms suffer from high computational complexity when handling complex polygons, making them unsuitable for real-time performance. When processing large-scale polygon data, existing algorithms often require substantial memory, impacting system performance and stability. In certain high-precision applications, insufficient accuracy leads to high false positive rates, affecting the reliability of results. Furthermore, existing technologies lack versatility when handling specific types of polygons. Therefore, there is an urgent need for an efficient, accurate, and universal polygon intersection detection method to address the shortcomings of existing technologies and meet the pressing needs of various fields for polygon intersection detection. Summary of the Invention
[0005] The technical problem to be solved by this invention is to provide an intersection determination method for ray tracing technology in dense urban scenes. This method simplifies the polygon intersection problem by using support functions and calculates vertices through support functions to quickly determine whether polygons intersect, thus meeting the demand of ray tracing technology for efficient and accurate polygon intersection determination in dense urban scenes.
[0006] To solve the above-mentioned technical problems, the present invention adopts the following technical solution:
[0007] An intersection determination method for ray tracing technology in dense urban scenes is provided to determine whether a ray beam emitted in a dense urban scene intersects with obstacles in the scene, and then calculate the channel information in the dense urban scene. The method includes the following steps:
[0008] Step 1: Construct a 3D polygon in a dense urban scene. Using the center of the 3D polygon as the emission point, emit a ray beam to each face of the 3D polygon. The face corresponding to each ray beam is the bottom polygon of the ray beam, and the vertex of the face corresponding to each ray beam is the vertex of the bottom polygon of the ray beam.
[0009] Step 2: Select one of the ray beams and construct the support function of the corresponding ray beam base polygon;
[0010] Step 3: Treat obstacles in the dense urban scene as polygons within the scene, construct support directions for the polygons within the scene, and construct support angles for the bottom polygons of the ray beam based on the support directions.
[0011] Step 4: Calculate the support points of the polygons in the scene based on the support direction, calculate the support points of the polygons on the bottom surface of the ray beam based on the support angle, and use the above two support points to calculate the vertex.
[0012] Step 5: Construct an intersection determination triangle based on the vertices calculated in Step 4. Use the positional relationship between the intersection determination triangle and the origin to determine whether the polygon in the scene intersects with the polygon on the bottom of the ray beam. The origin is the origin of the Cartesian coordinate system, that is, the center point of the solid polygon. The X and Y axes of the Cartesian coordinate system are perpendicular to the propagation direction of the ray beam.
[0013] Step 6: For polygons in the scene that intersect with the polygons on the bottom surface of the ray beam, generate new ray beams using the principle of mirror reflection, and repeat steps 2-5 until there are no polygons in the scene that intersect with the polygons on the bottom surface of the ray beam or all ray beams reach the preset upper limit of reflection times. Calculate the channel information in the dense urban scene by covering the information of the ray beams at the receiving point.
[0014] As a preferred embodiment of the present invention, the specific process of step 2 is as follows:
[0015] Step 2.1: Calculate the normal vectors pointing outward from each side of the polygon at the bottom of the ray beam, and transform the normal vectors into polar coordinates, recording the angle values of each normal vector transformed into polar coordinates;
[0016] Step 2.2: Record the angle values and the corresponding edges of the ray beam base polygons in a list in ascending order of angle values. This list is the support function of the ray beam base polygons.
[0017] As a preferred embodiment of the present invention, the specific process of step 3 is as follows:
[0018] Step 3.1: If this is the first time constructing the support direction, then assign the support direction the value of vector [1,0].
[0019] Step 3.2: If a support direction has already been constructed once, the support direction is assigned as a unit vector pointing from the vertex to the origin; the vertex is the vertex generated in step 4 based on the constructed support direction.
[0020] Step 3.3: If at least two support directions have already been constructed, then the support direction is assigned the following value:
[0021]
[0022] in, The vector representing the support direction is s1 and s2, which are the vertices generated in step 4 based on the constructed support direction, respectively. o is the origin, and × is the cross product of the vectors. Let s1 be the vector pointing to s2. s1 is the unit vector pointing to the origin;
[0023] Step 3.4: Based on the support direction constructed in Steps 3.1, 3.2 or 3.3, convert the opposite direction of the support direction to the polar coordinate system and record the angle value converted to the polar coordinate system. This angle value is the support angle.
[0024] As a preferred embodiment of the present invention, the specific process of step 4 is as follows:
[0025] Step 4.1: Calculate the support points of the polygons in the scene based on the support direction;
[0026] Step 4.1.1: Construct a vector whose origin points to each vertex of the polygon within the scene. It is the vector from the origin to the k-th vertex of the polygon within the scene;
[0027] Step 4.1.2, convert each vector Multiply the distance d by the support direction constructed in steps 3.1, 3.2, or 3.3. k ;
[0028] Step 4.1.3: The vertex of the polygon within the scene corresponding to the maximum distance value is the support point s of the polygon within the scene. sce ;
[0029] Step 4.2: Calculate the support points of the polygonal base of the ray beam based on the support angle;
[0030] Step 4.2.1: Query within the support function of the ray beam base polygon to determine the range of angle values for the support angle in the support function list [a]. i ,a i+1 ), a i ,a i+1 For two adjacent increasing angle values in the support function list;
[0031] Step 4.2.2, based on the angle value range [a i ,a i+1 Find the angle value a. i ,a i+1 The intersection of the two corresponding sides of the polygon at the base of the ray beam is the support point s of the polygon at the base of the ray beam. ra ;
[0032] Step 4.3, utilize the support points s of the polygons within the scene. sce Support point s of the polygonal base of the ray beam ra The vertex s is calculated as follows: Let be the vector pointing from the origin to s. For s sce Pointing to s ra The vector.
[0033] As a preferred embodiment of the present invention, the specific process of step 5 is as follows:
[0034] Step 5.1: If the current is the first time to construct the support direction, then take the vertex s obtained in step 4 as the first vertex s1 of the intersection judgment triangle and return to step 3.
[0035] Step 5.2: If a support direction has already been constructed once, then the vertex s obtained in Step 4 is used as the second vertex s2 of the intersection determination triangle. Based on the positional relationship between s1, s2 and the origin, it is determined whether the ray beam base polygon intersects with the polygon within the scene; specifically as follows:
[0036] Step 5.2.1: Calculate the vector product of vertices s1 and s2 of the two constructed intersection judgment triangles with the origin o.
[0037] Step 5.2.2, if The polygon on the bottom of the ray beam does not intersect with the polygon in the scene; return to step 2, select the remaining unselected ray beams, and continue with steps 2-6.
[0038] Step 5.2.3, if Then return to step 3;
[0039] Step 5.3: If two support directions have already been constructed, then the vertex s obtained in Step 4 is used as the third vertex s3 of the intersection determination triangle. Based on the positional relationships of s1, s2, and s3 with the origin, it is determined whether the ray beam base polygon intersects with the polygons within the scene; specifically as follows:
[0040] Step 5.3.1: If the intersection determination triangle formed by s1, s2 and s3 includes the origin, then the ray beam base polygon intersects with the polygon in the scene; if it does not include the origin, proceed to step 5.3.2.
[0041] Step 5.3.2, if satisfied Then replace s2 with s3 as the new s2, and return to step 3; if the condition is satisfied... Then replace s1 with s3 as the new s1, and return to step 3.
[0042] As a preferred embodiment of the present invention, the specific process of step 6 is as follows:
[0043] Step 6.1: For the polygons in the scene that intersect with the polygons on the bottom of the ray beam, generate new ray beams using the principle of mirror reflection, and allow the new ray beams to continue to propagate within the scene.
[0044] Step 6.2: Preset the number of mirror reflections. When no new ray beams are generated, determine whether all ray beams cover the receiving point. Calculate the channel information of the receiving point based on the ray beam information covering the receiving point.
[0045] A computer device includes a memory, a processor, and a computer program stored in the memory and capable of running on the processor, wherein the processor executes the computer program to implement the steps of the intersection determination method for ray tracing technology applicable to dense urban scenes.
[0046] A computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the intersection determination method for ray tracing technology applicable to dense urban scenes.
[0047] Compared with the prior art, the present invention, employing the above technical solution, has the following technical effects:
[0048] 1. This invention constructs support points for polygons by using support direction and support angle, thereby creating an intersection determination triangle for determining the intersection of two polygons. By successively constructing the vertices of the intersection determination triangle and determining the positional relationship between the vertices and the origin, the steps for determining polygon intersection are greatly simplified, and the accuracy of the intersection determination results is ensured.
[0049] 2. Compared with existing polygon intersection determination methods, this invention can obtain accurate intersection determination results with higher computational efficiency, acquire accurate channel information in a shorter simulation time, and has extremely high simulation efficiency in scenarios with a large number of receiving points. Attached Figure Description
[0050] Figure 1 This is a flowchart of an intersection determination method for ray tracing technology applicable to dense urban scenes according to the present invention;
[0051] Figure 2 This is a schematic diagram of the intersection determination method of the present invention;
[0052] Figure 3 This is a schematic diagram illustrating the application of the method of the present invention to channel modeling and measurement;
[0053] Figure 4 This is a schematic diagram illustrating the results of channel modeling simulation when the method of this invention is applied. Detailed Implementation
[0054] Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present invention, and should not be construed as limiting the present invention.
[0055] In dense urban scenes with numerous obstacles, ray tracing algorithms suffer from low computational efficiency. Therefore, this invention proposes an intersection determination method for ray tracing in dense urban scenes. It simplifies polygon intersection by utilizing support functions, calculating vertices through these functions to quickly determine whether polygons intersect, thus meeting the demand for efficient and accurate polygon intersection determination in ray tracing technology. Figure 1 As shown, the specific steps are as follows:
[0056] Step S1: Emit several beams of light from the emission point as the source point; specifically including:
[0057] S1.1 Construct a cube with a side length of 1 meter. The launching point is located at the center of the cube. Using the six faces of this cube as the base and the center of the cube as the vertex, construct six square pyramids. These pyramids can be cubes, cuboids, or other solid polygons.
[0058] S1.2. Use the vertices of the six generated square pyramids as the source points of the projection ray beams, and the base of the square pyramids as the base of the projection ray beams to generate six projection ray beams.
[0059] Step S2: Select one emitted ray beam and construct the support function of its base polygon; specifically including:
[0060] S2.1 Calculate the normal vectors pointing outward from each side of the polygon at the bottom of the ray beam, convert these normal vectors to the polar coordinate system, and record their angle values in the polar coordinate system [0, 360°) in ascending order;
[0061] S2.2 Record these angle values and their corresponding sides in a list. This list is the support function of the ray beam bottom polygon.
[0062] Step S3: Construct support directions for polygons within the scene, and construct support angles for the polygons at the bottom of the ray beam; specifically including:
[0063] S3.1 If the support direction has not been constructed before, assign the support direction to the vector [1,0];
[0064] S3.2 If a support direction has been constructed once before and the corresponding vertex has been generated, the support direction is assigned as a unit vector whose direction is the vertex pointing to the origin; the origin is the origin of the Cartesian coordinate system, that is, the center point of the cube, and the X and Y axes of the Cartesian coordinate system are perpendicular to the propagation direction of the ray beam.
[0065] S3.3 If the support direction has been constructed more than once and the corresponding vertex has been generated, then the support direction is assigned the following value:
[0066]
[0067] in, To support the direction, s1 and s2 are the vertices generated in the first two iterations, o is the origin, and × is the cross product of the vectors;
[0068] S3.4. Convert the opposite direction of the support direction to the polar coordinate system and record the angle value corresponding to it in the polar coordinate system [0, 360°). This angle value is the support angle a.
[0069] Step S4: Calculate the support points of the polygons within the scene based on the support direction, calculate the support points of the polygons on the bottom surface of the ray beam using the support angle, and perform vector operations using the two types of support points to obtain new vertices; specifically including:
[0070] S4.1 Calculate the support points of the polygons within the scene based on the support direction; details are as follows:
[0071] S4.1.1 Construct a vector whose origin points to each vertex of the polygon within the scene. It is the vector from the origin to the k-th vertex of the polygon within the scene;
[0072] S4.1.2, Transform the vector With support direction Dot product yields the distance value d. k ;
[0073] S4.1.3, The vertex with the maximum distance value is the support point s of the scene polygon. sce .
[0074] S4.2 Calculate the support points of the polygonal base of the ray beam based on the support angle; details are as follows:
[0075] S4.2.1 Within the support function of the polygon at the base of the ray beam, perform a query to calculate the interval [a] of the support angle corresponding to the support function angle in the list of support function angles. i ,a i+1 ), where a i The angle value of the normal vector of the edge formed by the i-th and i+1-th vertices of the supporting function;
[0076] S4.2.2 According to the i-th interval corresponding to the support angle in the list of support function angles, the (i+1)-th vertex of the ray polygon is the support point s. ra .
[0077] S4.3, Based on the support points s of the polygons within the scene sce Support point s of the polygonal base of the ray beam ra Calculate the new vertex s, the calculation method is as follows:
[0078] Step S5: Construct an intersection determination triangle based on the new vertices, and use the positional relationship between the intersection determination triangle and the origin to determine whether the polygons in the scene intersect with the polygons on the bottom surface of the ray beam; specifically including:
[0079] S5.1 If a new vertex s is constructed for the first time, record this vertex s as the first vertex s1 of the intersection determination triangle, and return to step S3;
[0080] S5.2 If the vertex of the intersection determination triangle is constructed for the second time, record this vertex s as the second vertex s2 of the intersection determination triangle. Determine whether the ray beam base polygon intersects with the polygon in the scene based on the positional relationship between the two recorded vertices and the origin; the details are as follows:
[0081] S5.2.1 Calculate the vector product of vertices s1 and s2 of the two constructed intersection judgment triangles with the origin o.
[0082]
[0083] S5.2.2, if The polygon on the bottom of the ray beam does not intersect with the polygons in the scene;
[0084] S5.2.3, if Then return to step S3.
[0085] S5.3 If the vertices of the intersection determination triangle have been constructed at least 3 times, record this vertex s as the 3rd vertex s3 of the intersection determination triangle. Determine whether the ray beam base polygon intersects with the polygon in the scene based on the positional relationship between the three vertices s1, s2, and s3 and the origin; the details are as follows:
[0086] S5.3.1 The three vertices of the intersection determination triangle are s1, s2, and s3. If the intersection determination triangle contains the origin, then the ray beam base polygon intersects with the polygon in the scene.
[0087] S5.3.2 If the intersection triangle does not contain the origin, then vertex s1 or s2 needs to be replaced with vertex s3. If the condition is met... Then replace vertex s2 with vertex s3; if the following conditions are met... Then replace vertex s1 with vertex s3;
[0088] S5.3.3, Based on the replaced vertices s1 and s2, return to step S3.
[0089] Step S6: For the polygons within the scene that intersect with the polygon on the bottom surface of the ray beam, generate a new ray beam using the principle of specular reflection. Channel information within this scene can be calculated by using the information of the ray beam covering the receiving point; specifically including:
[0090] S6.1 For polygons within the scene that intersect with the polygon at the bottom of the ray beam, generate new ray beams using the principle of mirror reflection, and allow the new ray beams to continue propagating within the scene.
[0091] S6.2 Calculate whether all ray beams cover the receiving point, and calculate the channel characteristics of this receiving point based on information such as the propagation distance of the ray beams that cover the receiving point.
[0092] Example
[0093] S1. Emit a ray beam, where a certain ray beam needs to be determined to intersect with polygons within the scene. Figure 2 The trapezoid shown is the polygon at the base of the ray beam, and the triangle is the polygon within the scene.
[0094] S2. Calculate the normal vectors pointing outwards from each side of the polygon at the bottom of the ray beam. Transform these normal vectors to a polar coordinate system and record their increasing angle values in the polar coordinate system [0, 360°). The angle values obtained here are: 26.57°, 90°, 153.43°, and 270°. These four angle values correspond to the right side, top side, left side, and bottom side of the trapezoid, respectively.
[0095] S3, Structural Support Direction The support angle is calculated to be 0° based on its opposite direction.
[0096] S4. Calculate the support points of the scene polygons according to the support direction. In this support direction, the leftmost vertex of the polygon (triangle) in the scene will obtain the maximum distance value. Therefore, record its leftmost vertex as the polygon support point s of the scene. sce The support point of the ray polygon is calculated based on the support angle. Since the support angle is 0°, it is determined that the ray polygon lies within the interval [270°, 26.57° + 360°). Therefore, the rightmost vertex of the ray beam's base polygon (trapezoidal shape) is the support point s. ra .according to Calculate the first vertex s1 of the intersection determination triangle.
[0097] S5. At this point, only the vertex s1 of the intersection judgment triangle has been constructed for the first time, therefore the support direction will be... Modify the first vertex to point in the direction of the origin, and simultaneously calculate the support angle. Construct the second vertex s2 of the intersection determination triangle, as follows: Figure 2 As shown.
[0098] At this point, the vertices of the intersection determination triangle have been constructed twice, and the calculations have been performed. The calculated result is less than 0. Therefore, it is not yet possible to determine whether the polygons intersect, and a third vertex needs to be constructed. Calculate the new support direction and support angle, and construct the third vertex s3 of the intersection determination triangle.
[0099] At this point, the vertices of the intersection determination triangle have been constructed three times. Based on the calculations:
[0100]
[0101]
[0102] Therefore, the constructed intersection determination triangle includes the origin, and the ray beam base polygon intersects with the polygon in the scene.
[0103] S6. Transmit a new ray beam and calculate the channel characteristics of the receiving point based on the ray beam covering the receiving point.
[0104] Figure 3 This diagram illustrates the application of the present invention to channel modeling. The ray tracing channel modeling method is used in... Figure 3 Simulations were performed in the constructed scenario to obtain channel characteristics such as received power. Figure 4 The diagram illustrates the simulation results of applying the present invention to channel modeling. Compared with the traditional intersection determination method, the channel modeling method using the intersection determination method of the present invention obtains more accurate channel information.
[0105] Table 1 shows the improvement in computational efficiency of the present invention. When applied to channel modeling and simulation methods, the present invention can improve the simulation speed by at least 100 times under different reflection order settings.
[0106] Table 1
[0107] Reflection order 1 2 3 4 5 Simulation time (seconds) using traditional methods 6685 9894 11120 12032 13009 Simulation time (seconds) for the method of this invention 2.68 7.45 17.05 32.84 58.03 The simulation time of this invention is reduced by (%) 99.96 99.92 99.85 99.73 99.55
[0108] Based on the same inventive concept, embodiments of this application provide a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps of the aforementioned intersection determination method applicable to ray tracing technology in dense urban scenes.
[0109] Based on the same inventive concept, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the aforementioned intersection determination method applicable to ray tracing technology in dense urban scenes.
[0110] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0111] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0112] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0113] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0114] The above embodiments are merely illustrative of the technical concept of the present invention and should not be construed as limiting the scope of protection of the present invention. Any modifications made to the technical solutions based on the technical concept proposed in this invention shall fall within the scope of protection of this invention.
Claims
1. A method for determining intersection in ray tracing technology applicable to dense urban scenes, used to determine whether a ray beam emitted in a dense urban scene intersects with obstacles in the scene, and then calculates channel information within the dense urban scene, characterized in that... Includes the following steps: Step 1: Construct a 3D polygon in a dense urban scene. Using the center of the 3D polygon as the emission point, emit a ray beam to each face of the 3D polygon. The face corresponding to each ray beam is the bottom polygon of the ray beam, and the vertex of the face corresponding to each ray beam is the vertex of the bottom polygon of the ray beam. Step 2: Select one of the ray beams and construct the support function of the corresponding ray beam base polygon; Step 3: Treat obstacles in the dense urban scene as polygons within the scene, construct support directions for the polygons within the scene, and construct support angles for the bottom polygons of the ray beam based on the support directions. Step 4: Calculate the support points of the polygons in the scene based on the support direction, calculate the support points of the polygons on the bottom surface of the ray beam based on the support angle, and use the above two support points to calculate the vertex. Step 5: Construct an intersection determination triangle based on the vertices calculated in Step 4. Use the positional relationship between the intersection determination triangle and the origin to determine whether the polygon in the scene intersects with the polygon on the bottom of the ray beam. The origin is the origin of the Cartesian coordinate system, that is, the center point of the solid polygon. The X and Y axes of the Cartesian coordinate system are perpendicular to the propagation direction of the ray beam. Step 6: For polygons in the scene that intersect with the polygons on the bottom surface of the ray beam, generate new ray beams using the principle of mirror reflection, and repeat steps 2-5 until there are no polygons in the scene that intersect with the polygons on the bottom surface of the ray beam or all ray beams reach the preset upper limit of reflection times. Calculate the channel information in the dense urban scene by covering the information of the ray beams at the receiving point.
2. The intersection determination method for ray tracing technology applicable to dense urban scenes according to claim 1, characterized in that, The specific process of step 2 is as follows: Step 2.1: Calculate the normal vectors pointing outward from each side of the polygon at the bottom of the ray beam, and transform the normal vectors into polar coordinates, recording the angle values of each normal vector transformed into polar coordinates; Step 2.2: Record the angle values and the corresponding edges of the ray beam base polygons in a list in ascending order of angle values. This list is the support function of the ray beam base polygons.
3. The intersection determination method for ray tracing technology applicable to dense urban scenes according to claim 2, characterized in that, The specific process of step 3 is as follows: Step 3.1: If this is the first time constructing the support direction, then assign the support direction the value of vector [1,0]. Step 3.2: If a support direction has already been constructed once, the support direction is assigned as a unit vector pointing from the vertex to the origin; the vertex is the vertex generated in step 4 based on the constructed support direction. Step 3.3: If at least two support directions have already been constructed, then the support direction is assigned the following value: in, The vector representing the support direction is s1 and s2, which are the vertices generated in step 4 based on the constructed support direction, respectively. o is the origin, and × is the cross product of the vectors. Let s1 be the vector pointing to s2. s1 is the unit vector pointing to the origin; Step 3.4: Based on the support direction constructed in Steps 3.1, 3.2 or 3.3, convert the opposite direction of the support direction to the polar coordinate system and record the angle value converted to the polar coordinate system. This angle value is the support angle.
4. The intersection determination method for ray tracing technology applicable to dense urban scenes according to claim 3, characterized in that, The specific process of step 4 is as follows: Step 4.1: Calculate the support points of the polygons in the scene based on the support direction; Step 4.1.1: Construct a vector whose origin points to each vertex of the polygon within the scene. It is the vector from the origin to the k-th vertex of the polygon within the scene; Step 4.1.2, convert each vector Multiply the distance d by the support direction constructed in steps 3.1, 3.2, or 3.
3. k ; Step 4.1.3: The vertex of the polygon within the scene corresponding to the maximum distance value is the support point s of the polygon within the scene. sce ; Step 4.2: Calculate the support points of the polygonal base of the ray beam based on the support angle; Step 4.2.1: Query within the support function of the ray beam base polygon to determine the range of angle values for the support angle in the support function list [a]. i ,a i+1 ), a i ,a i+1 For two adjacent increasing angle values in the support function list; Step 4.2.2, based on the angle value range [a i ,a i+1 Find the angle value a. i ,a i+1 The intersection of the two corresponding sides of the polygon at the base of the ray beam is the support point s of the polygon at the base of the ray beam. ra ; Step 4.3, utilize the support points s of the polygons within the scene. sce Support point s of the polygonal base of the ray beam ra The vertex s is calculated as follows: Let be the vector pointing from the origin to s. For s sce Pointing to s ra The vector.
5. The intersection determination method for ray tracing technology applicable to dense urban scenes according to claim 4, characterized in that, The specific process of step 5 is as follows: Step 5.1: If the current is the first time to construct the support direction, then take the vertex s obtained in step 4 as the first vertex s1 of the intersection judgment triangle and return to step 3. Step 5.2: If a support direction has already been constructed once, then the vertex s obtained in Step 4 is used as the second vertex s2 of the intersection determination triangle. Based on the positional relationship between s1, s2 and the origin, it is determined whether the ray beam base polygon intersects with the polygon within the scene; specifically as follows: Step 5.2.1: Calculate the vector product of vertices s1 and s2 of the two constructed intersection judgment triangles with the origin o. Step 5.2.2, if The polygon on the bottom of the ray beam does not intersect with the polygons in the scene; Return to step 2, select the remaining unselected ray beams, and continue with steps 2-6; Step 5.2.3, if Then return to step 3; Step 5.3: If two support directions have already been constructed, then the vertex s obtained in Step 4 is used as the third vertex s3 of the intersection determination triangle. Based on the positional relationships of s1, s2, and s3 with the origin, it is determined whether the ray beam base polygon intersects with the polygons within the scene; specifically as follows: Step 5.3.1: If the intersection determination triangle formed by s1, s2 and s3 includes the origin, then the ray beam base polygon intersects with the polygon in the scene; if it does not include the origin, proceed to step 5.3.
2. Step 5.3.2, if satisfied Then replace s2 with s3 as the new s2, and return to step 3; if the condition is satisfied... Then replace s1 with s3 as the new s1, and return to step 3.
6. The intersection determination method for ray tracing technology applicable to dense urban scenes according to claim 5, characterized in that, The specific process of step 6 is as follows: Step 6.1: For the polygons in the scene that intersect with the polygons on the bottom of the ray beam, generate new ray beams using the principle of mirror reflection, and allow the new ray beams to continue to propagate within the scene. Step 6.2: Preset the number of mirror reflections. When no new ray beams are generated, determine whether all ray beams cover the receiving point. Calculate the channel information of the receiving point based on the ray beam information covering the receiving point.
7. A computer device comprising a memory, a processor, and a computer program stored in the memory and capable of running on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the intersection determination method for ray tracing technology applicable to dense urban scenes as described in any one of claims 1 to 6.
8. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the intersection determination method for ray tracing technology applicable to dense urban scenes as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Wireless channel multipath simulation precision optimization method based on forward ray tracing
CN114928420A
Rapid ray tracing method and device suitable for urban scene channel modeling
CN115499075A