Acceleration Techniques for Ray-Path Searching in Urban and Suburban Environments to Implement Efficient Radio Propagation Simulators

Size: px
Start display at page:

Download "Acceleration Techniques for Ray-Path Searching in Urban and Suburban Environments to Implement Efficient Radio Propagation Simulators"

Transcription

1 Acceleration Techniques for Ray-Path Searching in Urban and Suburban Environments to Implement Efficient Radio Propagation Simulators Arno Formella HTW des Saarlandes Goebenstraße 4 D Saarbrücken, Germany formella@mobile-connect.de Fernando Aguado Agelet E.T.S.I. Telecomunicaciones Universidad de Vigo E 332 Vigo, Spain faguado@tsc.uvigo.es José M. Hernando Rábanos E.T.S.I. de Telecomunicación Universidad Politécnica de Madrid E 284 Madrid, Spain hernando@grc.ssr.upm.es September 1999 D R A F T for Final Report COST255-CP61b2

2 A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 1 Contents 1 Introduction 2 2 Review of Previous Work 2 3 Environment and Propagation Model /2D Environment Propagation Model Ray-Paths Calculating Interactions Simple Interactions Multiple Interactions Reflections on the Ground and on the Ceiling Mixed Interactions Directional Paths D Ray-Path Search Algorithm D Visible Areas D Polar Sweep Algorithm D Visibility Graph Speeding-up the 2D Polar Sweep Algorithm Ray-Tracing Algorithm D Ray-Path Search Algorithm Visible Areas D Polar Sweep Algorithm Visibility Graph Speeding-up the 3D Polar Sweep Algorithm Summary of the Ray-Path Search Algorithm 2 9 Extension of the Environment and further Interactions Complex Building Blocks Scattering and Attenuating Objects Additional Interactions Specific Optimization RadioTracer Conclusions 24 Bibliography 25

3 A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 2 1 Introduction Ray-tracing and UTD (Uniform Theory of Diffraction) techniques are already widely applied to sitespecific radio propagation modeling for wireless applications. Software tools using such techniques may take considerable computation time for the analysis of the propagation conditions in a given environment even for a short mobile terminal route. Efficient acceleration techniques are required to make such analysis tools practical for the design of modern radio communication systems. To reduce computation time, ray-tracing should be applied only in those areas where ray-paths are likely to exist. This is achieved by using visibility search algorithms prior to performing any actual ray-tracing. In this chapter an efficient ray-path search algorithm is presented. The rest of the text is organized as follows. Section 2 reviews previous work dealing with the deterministic approach of wave propagation and compares the methods qualitatively with our algorithm. Section 3 describes how urban and suburban areas can be modeled. The section introduces briefly the propagation model used for deterministic predictions and defines the notion of ray-paths. Section 4 shows how the intermediate points of a raypath where the interactions take place are calculated. Section 5 describes the 2D version of the ray-path search algorithm which is sufficient whenever ray-paths passing over the objects in the environment should not be considered. Section 6 introduces ray-tracing which is used in Section 7 where the 2D version is extended to a 3D ray-path search algorithm. Section 8 summarizes the main algorithm in pseudo-code. Section 9 shows how many of the restrictions on the environment imposed in Section 3 can be solved. Section 1 summarizes some optimizations strategies that can be employed under certain simulation runs to further improve the running time of the algorithm. Section 11 briefly describes the software tool RadioTracer which implements most of the algorithms described in this chapter. Conclusions are presented in Section Review of Previous Work The simulation methods for wave propagation based on geometric optics and the uniform theory of diffraction can be classified into two categories: the earlier ones using the ray-launching approach and the more recent ones using ray-path search. Ray-Launching The ray-launching approach (sometimes called shooting and bouncing rays method or pin cushion method ) uses a forward ray-tracing algorithm which simulates the propagation of the waves from the source into the space [3, 34, 33, 35, 36]. For each region or location of interest the information carried by the rays crossing the region or passing nearby the location is superposed to obtain the overall effect. Due to the sampling nature of such an algorithm the prediction for areas farther away from the source becomes more and more imprecise. Phase information cannot be calculated accurately. For more complex environments or satellite scenarios a ray-launching approach becomes impractical, both due to its computational complexity tracing a sufficiently large number of rays and its difficulties to find the ray-paths which pass sufficiently close to diffractive edges and receiving locations. An advantage of the ray-launching approach is the fact that there are no restrictions imposed on the environment, any shape of object may be present. Improvements of the basic idea, rather than tracing rays but ray-tubes or ray-cones, would lead to similar techniques we presented in this chapter, because the intersection test between a ray-cone and a set of objects is nothing else but calculating visible areas (see Sections 5.1 and 7.1). Ray-Path Search Using imaging techniques for reflections and rotations for diffractions (see Section 4), ray-paths fulfilling Fermat s principle are easy to calculate for an ordered list of objects such as faces and edges. A brute force ray-path search algorithm [6, 25, 37] to find all ray-paths between a transmitting point and a receiving point in an polygonal environment would generate successively an ordered

4 A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 3 list of up to objects out of the edges and faces of the environment, calculate the ray-paths containing up to interactions, and finally verify whether the paths are obstructed by any face in the environment. A naive implementation of the ray-path testing can be implemented by a linear search. The running time would be proportional to, or in other words, prohibitively large for many practical cases. Hence, acceleration methods have to be employed to reduce the number of lists of objects possibly involved in the ray path search and to speed-up the ray-path testing. Besides our approach [1, 2, 3, 4] and some heuristical algorithms, e.g., [13, 14, 12], two general methods have been published. An efficient method which is restricted to find 2D ray-paths (see Section 3.3 for a definition) is introduced in [18]. They use a delaunay-triangulation of the ground plane containing the projections of the building blocks to compute approximations of the visible area (see Section 5.1). which reduces significantly the search space for the ray-paths. The triangulation serves as well as a efficient guide-line for the ray-tracing part. An extension to 3D has not been reported, yet. It is an open question whether a three-dimensional delaunay-triangulation is competitive to the polar sweep approach enhanced with an adaptive space sub-division, as described in this chapter. Another method introducing a so-called angular - buffer (AZB) is described in [9, 11, 1]. They use a regular angular sub-division (so-called anxels) to reduce the search space for interactions and simultaneously accelerate the ray-tracing kernel. Previously calculated buffer contents (so-called AZB matrices) are stored for future use. They use a quadratic time, exhaustive search preprocessing step to calculate all images of all edges, which restricts the algorithm for practical reasons to find up to two interactions on a ray-path (not counting possible ground reflection). Because of angular dispersion, the method runs into the same difficulties as the ray-launching approach when the environment is large compared to the size of the, possibly numerous, building blocks. If high-order diffraction paths are of interest, the search space is reduced only by a constant factor determined by the regular grid. An additional adaptive sub-division has been suggested to overcome some of the limitations. The operations needed to be performed in an anxel resemble the calculation of a visible area or at least an approximation of the area. In that sense, the polar sweep algorithm can be seen as an improvement of the angular -buffer avoiding the regular angular grid, but using an adaptive space sub-division. 3 Environment and Propagation Model This section describes how the environment is modeled geometrically in such a way that both an adequate representation of urban areas is achieved and fast algorithms can be employed. Also, the underlying propagation model for electromagnetic waves which is used to predict the parameters of the mobile channel is introduced /2D Environment Looking more closely at the environments usually found in urban areas, one finds that certain restrictions on the orientation of faces and edges result in a valid approximation of the real morphography. Most of the walls of the buildings are perpendicular to and they usually start on the ground. For urban environments, the ground can be modeled sufficiently close by a simple plane surface. An example of such a 2-1/2D environment is given in Figure 1. Hence, the objects of the urban environments can be represented by building blocks with an arbitrarily shaped polygonal base and side faces perpendicular to a common ground plane. The top of a building block is flat and parallel to the ground. The objects can be described with their base polygons lying in one plane and the heights of the walls. In Section 9.1, some extensions will be described to overcome some of the restrictions on the environment as given here. For instance, how to introduce other types of roofs or additional obstructing objects. According to the location of the antennas a further classification of the environment is usually made:

5 A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 4 Figure 1: Example for a 2-1/2D environment. Indoor pico-cells: Both the transmitter and the receiver are located within the same building. The floor and the ceiling are modeled by means of parallel planes. All walls go from the floor to the ceiling and thus have the same height. Street micro-cells: In this case, the transmitter and the receiver are located below the minimum height of the buildings encountered in the environment. However, the buildings have different heights and no ceiling is present. Outdoor macro-cells: Here, the transmitter antenna height exceeds the height of some of the nearby buildings. It may be located at the roof top of a tall building or at a tower sufficiently high. The receiver is located well below the height of most of the buildings. Land mobile satellite scenarios: The transmitter is located on a satellite. The distance to the satellite is much larger than the size of the entire environment under study. The receiver is located within the streets below the roof tops of most of the surrounding buildings. 3.2 Propagation Model The possible interactions of a wave with the objects can be approximated closely enough considering only quasi-optical rays and their interactions with the environment by specular reflections on the surfaces of the objects, diffraction on convex edges where two surfaces meet, scattering from small objects, attenuation in transmissive media. The grounds for the electromagnetic calculations are geometric optics for the direct field and the specularly reflected field and the geometric theory of diffraction (GTD) in its uniform theory of diffraction (UTD) version [8, 27, 24, 26] for the diffracted field at an edge. Additional diffraction at corners may be added to guarantee continuity of the calculated field along mobile routes. However, this type of interaction will not be included in the discussion. Scattering of waves from small objects is approximated by the bistatic radar cross section (RCS). Attenuation in transmissive media is computed as a function of the accumulated distance through the media. All of these approximations are only applicable whenever the wave length is sufficiently short compared to the smallest object in the environment. 3.3 Ray-Paths Several interactions can take place before a wave emitted by a transmitter eventually reaches a receiving point. Because the propagation is modeled through optical rays, the overall propagation is described by a set of polylines that consist of the transmitting point, possibly some intermediate points where reflection or diffraction occurs, and the receiving point. These points are connected via straight line segments. At the intermediate points the laws of reflection and diffraction are fulfilled. In the sequel, such a polyline is called a ray-path. A ray-path reflects Fermat s principle which states that most of the energy is transported on the shortest path from the transmitting point to the receiving point possibly interacting with intermediate objects. See Figure 2 for an illustration of different ray-paths in a micro-cell environment. In order to use a simple notation for the ray-paths,

6 ! " # ' ' A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 5 Clearly, beside the line-of-sight (LOS), an arbitrary large number of ray-paths may exist between the transmitting point and the receiving point. So their number must be limited to the electromagnetically speaking interesting cases. Possible end criteria for the search of raypaths include: the maximum number of interaction points along the ray-path, the maximum length of the ray-path, and the contributing electromagnetic field of the ray-path. Figure 2: Ray-paths in a micro-cell environment. the following naming scheme for the intermediate points is used: reflection point on a vertical wall diffraction point on a vertical edge diffraction point on a horizontal edge reflection point on the ground reflection point on the ceiling transmission point (see Section 9.2) scattering point (see Section 9.2) Additionally, the intermediate points along a raypath are numbered from 1 to $ starting at the receiving point. The efficient ray-path search algorithm described in this chapter considers interactions that can take place only on the vertical faces of the building blocks and all adjacent convex edges, i.e., both on the vertical and horizontal convex edges of a face. Additionally, reflections on the ground plane will be considered. Reflections on plane roof tops of building blocks are not considered. However, Section 9.3 shows how this type of interaction can be included in the ray-path search without huge effort. Note that the restriction to the 2-1/2D case allows the application of many optimization techniques and the use of very efficient geometric visibility algorithms. An important fact, for instance, is the reduction of three dimensional calculations to two dimensional ones within a projection plane. Numerical stability is an appreciated side effect of this projection method. 4 Calculating Interactions Reflection and diffraction are symmetric relations, hence, transmitting and receiving properties can be interchanged while the points along the ray-path remain the same. Geometrically, the shortest path between two points is the connecting straight line segment. As long as we consider isotropic media, this straight line segment defines the shortest path according to Fermat s principle. 4.1 Simple Interactions As simple interactions we consider simple specular reflection and simple diffraction. The following paragraphs describe how Fermat s principle can be used to prove the correctness of the method how the intermediate points are calculated. Simple Reflection Given a reflective, plane surface #, and two points and, the intermediate point where the reflection occurs can be calculated as follows (see &% Figure 3). is the image of with respect to the surface #. Obviously, any point ' on the surface # has exactly the same distance (% from than from. Hence, every polyline *) )+ would have the same length as the &% ) )+ polyline. The straight line segment % from crossing # towards is the shortest (% possible path from to. Let be the intersection point of the line segment with the surface #.

7 ' ' ' ' A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 6 S S R R S R 3D-view top-view side-view Figure 3: Simple reflection.,) )+ Now it is clear that the path has minimum length among all paths. If such a *) )+ point does not exist, no reflection can take place. Note that the same point is obtained if the roles of and are interchanged. With the help of simple geometric arguments, the law of reflection is obtained which states that the incident ray and the reflected ray at a plane surface have the same angle respective to the normal of the surface and that the ray-path together with the virtual image point is contained in a plane. To find the intermediate point due to a reflection given the surface # and the two points and %, first the virtual image point (or % ) is determined and then the intersection point of the line segment from the virtual image point to (or ) with the surface # is obtained. If no such an intersection point exist, no reflection can take place. In a 2-1/2D environment the procedure can be divided in two steps (so-called 2D-3D hybrid method [6]). The intersection point between the projection % )+ of the segment and the projection of the surface # on the ground plane is calculated. And, if such a point exists, the -coordinate is calculated and compared to the height of the surface to check whether the intersection point lies on the surface. Simple Diffraction Similar as in the case of reflection, Fermat s principle can be used to compute the intermediate point due to diffraction on a convex edge - (see Figure 4). Again, the two points and and an % edge - are given. Let be the point obtained by rotating around the edge - in such a way that the point lies in the plane defined by - and. Obviously, any point ' on the edge - has exactly &% the same distance from than from. Hence, *) )+ every polyline would have the same % ) )+ length as the polyline. The straight &% line segment from crossing - towards is % the shortest possible path from to. Let be the intersection point of the line segment with the edge -. If no such an intersection point exist, no diffraction can take place. Now it is clear that,) )+ the path has minimum length among,) )+ all paths. The same point is obtained if the roles of and are interchanged. Using simple geometric arguments the law of diffraction known as Keller s cone [23] is obtained which states that the angle between the incident ray and the edge is equal to the angle towards a possible receiving point (see Figure 5). The segment/edge intersection check should be performed in a 2D plane, for instance in the dominant projection plane of the coordinate system. The 3D point is obtained by back projection onto the edge. The previous method can be applied to an arbitrary edge, but a simplification procedure can be considered for a diffraction on a vertical edge. Since all the points of the edge have the same - and. - coordinates, it is only necessary to compute the - coordinate that fulfill the Keller law. 4.2 Multiple Interactions As multiple interactions we consider ray-paths that contain more than one intermediate point. With

8 / / / A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 7 E D D E E D 3D-view top-view Figure 4: Simple diffraction. side-view β β D E Figure 5: Keller s cone. Keller s cone # /. Clearly, the ray-path does only exist if the intersection tests give points located on the surfaces. Note that if all surfaces are perpendicular to a third plane, as it is the case for the vertical surfaces in a 2-1/2D environment, all virtual images have the same distance to that ground plane along the entire ray-path. Most of the operations can be performed in the two dimensional projection onto the ground plane. The intermediate points along the polyline in the case of several interactions taking place along a ray-path are calculated with the 2D- 3D hybrid method as described for the simple case in the previous section. similar arguments as given in the previous section it can be shown that the calculation of the intermediate points is correct, i.e., the obtained ray-paths are the shortest paths among all paths interacting with the same set of objects. We distinguish paths with multiple reflections, multiple diffractions on a certain set of edges, reflections on both ground and ceiling, and combinations of reflections and diffractions along the paths. Multiple Reflections A ray-path with multiple reflections is determined applying iteratively the method described for simple reflection with the help of the virtual image (% points. See Figure 6. is the image of on surface #*/ % % % and is the image of on surface #1. The reflection point is obtained by intersecting the straight line with the surface *) % % #1 ; and the reflection point is obtained by intersecting the straight line with the ) % surface Multiple Diffractions Multiple diffractions are somewhat more complex to calculate in the general case. However, due to changes in polarization at diffracting edges, the relevant interactions can be restricted to two important cases: i) the edges where the multiple diffractions occur are parallel to each other, or ii) they lie within the same plane. Hence, in a 2-1/2D environment, where all edges are either perpendicular or parallel to the ground only the special cases must be considered. i) The approach using rotations to find the diffraction point (as described in the previous section) can also be employed to find higher-order diffraction paths. Figure 7 shows an example for the case of a double-diffracted ray-path through two parallel edges. First, the plane 2 is constructed which is uniquely determined by the four end points of the edges - and -. Next, the receiving point

9 2 2 / / / / A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 8 S 2 R 2 S 1 S 2 R 2 S 1 R 1 3D-view top-view Figure 6: Multiple reflections on surfaces. D 2 E 2 W 2 E 2 D 2 W2 E 1 E 1 D 1 D 1 W 1 3D-view W 1 top-view Figure 7: Multiple diffractions on parallel edges. is rotated around the edge - until it lies in plane %. This point is called. Then, the transmitting point &%, the edge -, and are processed in the same way as outlined for single diffraction: a plane 2 is determined by and the edge - and % is rotated around edge - until it lies in plane % %. This point is called. Obviously,, the (% % edge -, and lie in a planar geometry. The diffraction point on the edge - is the intersection of the line from % % to with the edge. The diffraction point / is the intersection of the line from / (% to with the edge -. Of course, it is necessary to verify that / lies on the edge -, and on the edge -. Finally, the double diffraction,) / ) )+ path is, provided the two intermediate points exist. The same result would have been obtained by rotating both points and around the appropriate edge until they lie in plane

10 2 / / A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 9 and calculating both diffraction points in that plane. Interchanging the roles of - and - in the discussion, we obtain the second possible diffraction path, which for simplification has not been included in the figure. The previous method can be applied to arbitrary oriented parallel edges. However, the simplification procedure performing most of the calculations on the ground plane as presented in the previous paragraph can be applied literally to the multiple vertical diffraction case. If ray-paths with more than two parallel edges are to be calculated, all edges, and the source points, respectively, are transformed by successive rotations into a single plane such that the distances and the order of the edges and the points along the ray-path are the same. Note that there may exist up to $3 different ray-paths interacting with $ parallel edges. ii) Although it might seem at first sight that the geometry of none-parallel edge is different, the calculation method remains exactly the same. If the edges - and - are lying in the same plane 2 (see Figure 8), the diffraction points / and are calculated by rotating and, respectively, around the edges until they lie in the plane 2 as well. The resulting intersection points of the edges with the line segment from to determine the diffraction points on the edges, if these points exist at all. A special case occurs on edges belonging to the same polygonal surface. Clearly, these edges lie within the same plane and the diffraction points can be obtained as stated above. Because a different propagation model should be applied to creeping waves, those diffraction points should be marked differently. This type of diffraction will be called adjacent diffraction in the sequel. To find all pairs of such adjacent diffractions on a roof top of a building each pair of edges of the limiting polygon must be considered. 4.3 Reflections on the Ground and on the Ceiling Reflections on the ground as well as on the ceiling for an indoor environment can be introduced with simple mirroring techniques [6], provided that all the walls and edges are either perpendicular or parallel to the ground. In that case, a ray-path including reflection on the ground has the same projection onto the ground plane as the ray-path without ground reflection. Hence, all necessary computations are restricted to the -coordinate. Figure 9 illustrates several ray-paths with this type of interactions. If there is no ceiling present, at most one intermediate point on the ground may exist. However, in the indoor case, an arbitrary number of ray-paths may exist and the maximum number to be searched for must be provided beforehand. Note that in a 2-1/2D environment a ray-path with reflection on the ground does only exist if the ray-path without reflection on the ground exists as well. 4.4 Mixed Interactions Mixtures of reflections and diffractions on vertical edges are easy to compute by introducing, consecutively, image points stemming either from the receiving point or the transmitting point. The processing is straightforward and will not be explained in detail here. However, note that in the special case of a 2-1/2D environment, many sections of ray-paths have identical projections onto the ground plane. This fact will be explored later to improve the running time of the algorithm which searches the ray-paths (see Section 5.3). It is not difficult to combine diffractions on horizontal edges with reflections on vertical surfaces or the ground, as long as only first order diffraction is considered. Section 9.3 comes back to this topic. 4.5 Directional Paths In land mobile satellite (LMS) applications, rather than locating the transmitting satellite by its position it can be represented by its direction from the area under study. If the distance to the satellite is large, the error due to this simplification is negligible. The calculation of the intermediate points is straightforward, by applying similar arguments as given above, but replacing the location of by a directional vector. Although the propagation is still symmetric, we are almost obliged to start from the

11 A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 1 E 2 E1 E 2 E1 D 2 D1 D 2 D1 3D-view top-view Figure 8: Multiple diffractions on edges contained in one plane. C C C ceiling C C C ceiling G G G ground G G G ground 3D-view side-view Figure 9: Reflection on the ground and the ceiling. receiving point to search for the ray-paths, because the other way round the search space would be unnecessarily large. 5 2D Ray-Path Search Algorithm The purpose of a ray-path search algorithm is to find all possible ray-paths, from all transmitting locations to all receiving locations, that contain a certain number and type of interactions as outlined in Section 3.2. The transmitting locations can either be given by three dimensional points or as directions in case of satellites. The receiving points may be located on a mobile route described by a polyline or they may be given on a two dimensional grid. For simplicity, we assume that the mobile route or the grid are parallel to the ground. It is easy to extend the algorithm to handle other cases as well. In the case that a ray-path may not pass over the objects in the environment and that the environment is modeled only 2-1/2 dimensional, it is sufficient to search for the ray-paths in the two dimensional projection of the environment on the ground plane. Indoor pico-cells and urban micro-cells fulfill this assumption. Once a 2D ray-path has been found in a pico- or micro-cell, the corresponding 3D raypath is easily calculated using the 2D-3D hybrid method. The rest of this section deals with the 2D case. Extensions how to handle more general 3D cases will be presented in Section 7. The main task of the 2D ray-path search algorithm is to find the two dimensional ray-paths, given the two dimensional description of a 2-1/2D environment, i.e., its projection onto the ground plane. The algorithm uses successively a polar sweep method to calculate the visible areas of points. To reduce the complexity of the polar sweep algorithm, backfaces are eliminated in a first step. A space subdivision is employed to exploit the locality property inherent to the task. Multiple interactions are searched for using an iteration over the visible ob-

12 A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 11 jects and a recursion over the length of the path. Special data structures, such as a visibility graph, are constructed to accelerate the algorithm. The rest of this section describes the details, a summary of the search algorithm in pseudo-code in given in Section D Visible Areas From the discussion so far, it is clear that an important notion for an efficient ray-path search algorithm is the visibility of points or edges in the environment, i.e., the question What does a certain point or edge see?, because this visible regions are the primary candidates to the radiowave interactions. More formally, a point ' is visible from another point, e.g.,, if the straight line segment from to ' is not obstructed by any other object in the environment. The set of all visible points ' from is called the visible area (or radiation area) of. Figure 1 shows on the left side a 2D visible area for a point. The line-of-sight between two points exists if one of the points lies within the visible area of the other. The vertexes of the polygons lying at the border of the visible area determine all possible locations where diffraction on vertical edges can occur. The segments enclosing the visible area of a point determine all possible walls where reflection can take place. The visible area of is a star-convex two dimensional point set with center. If the border of the set is stored as a sorted list of its bounding segments, a test whether a point ' lies within the visible area can be performed efficiently by a binary search algorithm. In a similar way, the visible area of an image point can be defined, see right side of Figure 1. (% is the image point of respective to the mirroring segment #. The visible area of &% is the set of all points ' such that the straight line segment from % to ' intersects # in a point, and no other object in the environment intersects the line segment from to '. Again, the check whether a point ' lies within the visible area of an image point can be performed by a binary search algorithm. One efficient method to determine the visible area of a point is described in the following subsection D Polar Sweep Algorithm. The point of interest, for instance, for which we want to calculate its visible area is located at the center of the coordinate system. All polygons describing the environment are given as lists of two dimensional points in counter clockwise order. The order is marked by arrows on the left hand side of Figure 11. It is obvious that only those segments that do not belong to the back-faces of the building blocks contribute to the border of the visible area. Hence, in a first step all segments belonging to back-faces are eliminated. In a second step, the end points of all segments, i.e., the corners of the polygons, are sorted in decreasing order according to their angle with the -axis. Ties are broken by comparing their distances to the center. To avoid difficulties, segments crossing the negative -axis are divided into two parts which are handled individually. Actually, the two steps, namely back-face culling and sorting, can be performed efficiently in a single run: a segment is a back-face if the order of its end points respective to the angle differs from the order of the points in the definition of the polygon. Figure 11 shows on the right hand side the remaining segments with their points numbered according to the sorting order. The third step implements the polar sweep. Consider a ray starting at the center with direction of the negative -axis and sweeping around the center in clockwise direction (see Figure 12). The ray is called sweep line. Certain positions (A and B) of the sweep line are added in the figure by dotted lines. The border of the visible area is composed of segments or parts of segments being close to the center. While rotating the sweep line, a segment changes from being visible to becoming invisible only when the sweep line crosses an end point of a segment. The same is true for reverse case. The sweep algorithm iterates over the sorted list of end points and maintains a data structure that contains the list of segments being currently intersected by the sweep line. Each time a left end point of a segment is found the corresponding segment is inserted into the data structure. If the segment is closer than any other segment currently held, this

13 A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 12 S visible area of visible area of image point Figure 1: Visible area of a 2D point. oriented polygons -x sorted endpoints after back-face culling Figure 11: Back-face culling and point sorting. sweep direction 1 -x 11 A Figure 12: Polar sweep algorithm. segment determines the visible border. Otherwise the segment being recently visible remains visible. Each time a right end point of a segment is found the corresponding segment is deleted from the data structure. The segment being closest to the center becomes visible at the current angle. For instance, just before the sweep line reaches position A in Figure 12 the segment with right end point 13 is visible. At the halting position A (point 12) the segment with end points 12 and 15 becomes visible B and the previously visible segment becomes invisible. The next halting point is 13. There, the segment in the back is eliminated from the data structure, because its right end point has been reached. The visibility does not change. The next halting point is 14. Being a left end point of a segment, this segment is inserted into the data structure, but the visibility does not change, because the segment lies in the background. The next halting point is 15 reaching position B in the figure. Now, the right end point of segment (12,15) has been reached and the segment is deleted from the data structure. Clearly, the segment in the background becomes visible, i.e., the data structure must deliver the segment closest to the center currently cut by the sweep line. The point where the visibility starts is marked in the figure. Hence, the data structure requires the efficient implementation of the operations insert, delete and find-minimum on a linearly orderable set. A possible choice is a priority queue where insertion and deletion take a time proportional to where 8

14 / / / A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 13 sweep region for diffraction sweep region for reflection Figure 13: Polar sweep regions within an angle. is the current size of the queue. Finding the closest segment can be done in constant time. The running time of the complete polar sweep algorithm is proportional to $:4;57 $* where $ is the number of points describing the polygons. The memory requirements vary linearly with the number of points. The polar sweep algorithm need not to be performed necessarily in a full circle around the point of interest [2]. For instance, if the visible area of a diffractive edge has to be calculated, the polar sweep in confined by the two adjacent walls of the edge. Similarly, the visible region of an image point is calculated by sweeping within an angle defined through the extension of the mirroring segment. See Figure 13 for examples D Visibility Graph The visible areas contain very valuable information which can be used to speed up the search for raypaths. The calculation of a visible area needs some computation time, consequently, it is convenient to store already computed visible areas for a possible usage in a later stage of the ray-path search. For instance, in Figure 14, there are line-of-sights from / both receiving points and to the diffractive edge -, i.e., they lie within the visible region of -. The transmitting point lies within the visible region of the edge as well. The two dimensional projections onto the ground of the raypaths and have the / ) / )+ ) / )+ part from the edge - to in common, given that both diffraction points / and / are located on -. Hence, if the visible area of - has been calculated previously, e.g., while computing the raypath, and stored in an appropriate / ) / )+ data structure, the information can be re-used for a ) / )+ faster calculation of the ray-path. 2 1 E Figure 14: Multiple usage of visible areas. It has been pointed out that visibility is a symmetrical relation: one points sees the other and vice versa. An appropriate data structure to represent such a property among a set of points is an undirected graph (e.g., [15]). The transmitting points, the receiving points, and the convex corners of the building blocks represent the nodes of the graph. Each node has an attribute containing the visible area of the corresponding node, i.e., a list of parts of segments directly visible. An edge of the graph connects two nodes whenever one of the points lies within the visible area of the other point. Figure 15 shows an example for a visibility graph of all diffractive edges of an environment. Edges in the graph that would correspond to adjacent walls are omitted. Note that isolated nodes

15 A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 14 may exist. Algorithms to construct the visibility graph in the two-dimensional plane are available, e.g., in [29, 38]. Extensions to cope with the dynamic visibility while moving along a line are described in [21, 19, 2]. The part of the graph for the convex corners can either be generated prior to the ray-path search in a preprocessing step (and may be stored in a file) or the necessary parts can be generated dynamically during a simulation run. The decision depends on the size of the environment to be investigated and on the type and amount of interactions to be analyzed. The usage of a dynamic dictionary data structure to store the visibility graph is described in [1, 3]. In [32] a tree-like data structure is suggested, but no solution to the visibility problem is presented. Once the visibility graph of all convex corners of the environment has been calculated, the search for ray-paths with multiple diffractions on vertical edges reduces to calculating the visible areas of the transmitting and receiving points, inserting the appropriate nodes into the graph data structure, and then searching the visibility graph for possible paths up to the desired length. A good strategy for the graph search is to implement a breadth first search approach starting simultaneously from both the receiving and the transmitting ends. Besides the simple visibility graph which stores the first order visibility of diffractive edges, visibility graphs of higher order can be defined. For instance, a second order graph contains edges between two nodes with their corresponding points seeing each other with exactly one reflection. The edges of the graph are attached with a list of all possible ground projections of ray-paths that connect the two points of the nodes and contain one reflection. visible area of the point can be confined inside a rectangular area (see Figure 16), it would be sufficient to perform the polar sweep algorithm only with those points and segments lying within the rectangle. Figure 16: Confining the search space for the visible area. There are many possibilities for planar subdivisions which can be used to exploit the locality property of the algorithm, e.g., Figure 17 shows a sub-division with a regular grid. Other choices are the quad-tree sub-division or the BSP-tree subdivision (binary space partition tree) [31]. The aim of such sub-divisions is to introduce rectangles or other types of shapes which contain almost a constant number of segments per region. If the visible area of a point is not contained entirely in the region where the point is located in, neighboring regions are visited until the visible area is computed completely. 5.4 Speeding-up the 2D Polar Sweep Algorithm As stated above, the running time of the polar sweep algorithm is proportional to $:4657 $*, $ being the number of points in the 2D description of the environment. For practical cases, the introduction of a sub-division of the plane can significantly improve the performance of the algorithm. If the Figure 17: Combination of polar sweep and planar subdivision. Clearly, there is a trade-off between the computation time performing a polar sweep in a region of the sub-division and the number of regions that must be visited. In the case of a quad-tree sub-

16 A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft 15 visible corners visibility graph Figure 15: Example of a visibility graph. division, the running time decreases to a magnitude proportional to < =9> >?@4657 $*=, where > is the (constant) number of segments in a rectangle, and < is the number of rectangles that must be visited. The term 4657 $* is due to operations that must be performed in the data structure of a quad-tree. The memory requirements increase more than linearly with the number of segments, because a segment may intersect more than one rectangle. However, in most practical cases, segments are small and, usually, do not stretch over many rectangles of the quad-tree. Hence, the memory requirements generally is a quasi-linear function of the number of segments. 6 Ray-Tracing Algorithm The 2D version of a ray-path search algorithm which is based on calculating visible areas and locating points in star-convex point sets does not need traditional ray-tracing. However, going to 3D and introducing other types of objects in the environment, will need an efficient ray-tracing algorithm. Traditional ray-tracing algorithms perform the following task: Given a description of a three dimensional environment that contains certain types of basic objects (such as polygons, spheres, cylinders etc.), the ray-tracing algorithm finds the first intersection point of a ray starting at some point in space and pointing into some direction with any of the objects. If no such point exists, an appropriate value is returned. Usually, in the field of computer graphics, ray-tracing algorithms are not restricted to any special kind of environment, i.e., the basic objects can be arranged arbitrarily in space. The implementation of efficient ray-tracing kernels is not the purpose of this chapter, hence, it will not be discussed in more detail here. In the following, it will be assumed that a sufficiently fast subroutine is available that returns, for a given ray or ray segment, the closest intersection point with any obstructive object in the environment [16, 22]. Obviously, such an algorithm can be used to verify whether a given point is located within the visible area of another point by simply tracing the ray defined through the straight line segment between the two points. This might be slower than a simple binary search as suggested above. However, any raytracing kernel can be extended to find transparent objects and to report the distance travelled by the ray through the transmissive media. Such objects might have not been considered during the computation of the visible areas, because they do not contribute as obstructive or reflective objects. However, the transparent objects, possibly, add certain amount of attenuation to the electromagnetic field along the ray-paths. 7 3D Ray-Path Search Algorithm The main disadvantage of the 2D ray-path search algorithm presented in Section 5 is that it does not find any ray-paths which pass over the objects located in the environment. For indoor and microcell environments, the 2D algorithm with the 2D- 3D hybrid method finds all relevant ray-paths, because the ray-paths passing over objects do not exist. For macro-cell or satellite environments, however, the 2D polar sweep algorithm is severely limited in its usage for a sufficiently accurate prediction of the radio channel. To solve this shortcomings, the 2D algorithm is extended to a 3D polar sweep algorithm. Nevertheless, the environments where the algorithm is applied to stay being 2-1/2D models. The notion of visible areas and the data structure of a visibility graph are overtaken in a very similar manner. The details are presented in the following description, which is organized in a similar manner as the description of the 2D case.

17 ) A. Formella, F. Aguado, J.M. Hernando COST255 CP61b2 Draft Visible Areas The definition of the visible area of a point A in 3D is the same as in the 2D case: a point ' is visible from another point A, if the straight line segment from A to ' is not obstructed by any other object in the environment. However, in 3D, the visible area of A is confined by the parts of the walls which are seen directly by the point. In the following, such visible parts of a wall are called facets. The visible area of a point A is a star-convex three dimensional point set with center A. The set either extends to infinity e.g., towards the sky or it is enclosed by the facets seen from A and the ground plane. The checking if a point ' lies within the visible area of A is more complex to implement, because no simple binary search can be used. The border of the star-convex set can be projected into a plane and the checking reduces to a point location test combined with a distance test. However, the checking can be performed as well with the help of a ray-tracing routine checking the existence of an intersection point of the ray segment A 'B with the environment. If a ray-tracing kernel is used, the visible area in 3D is not used to speed-up the calculation of lineof-sight ray-paths. Rather, the visible area more precisely, the border of the visible area is used to determine all edges being candidates to vertical or horizontal diffraction and all walls (facets) where reflection occurs. The definition of the visible area of an image point is similar to the definition given for the 2D case. Note that a given wall may be divided in many facets. However, due to the restriction to 2-1/2D environments, never two of them belonging to the same wall are stacked on top of each other. An important property of visible areas of points in 2-1/2D environments having the same - and. - coordinates is the fact that the visible area of the point with larger -coordinate is a superset of the visible area of the point with smaller -coordinate. This statement reflects the common observation that climbing up a tower increases the visibility compared to the position close to the ground. The property is used later on during the generation of the 3D visibility graph D Polar Sweep Algorithm The 3D polar sweep algorithm computes the visible area of a 3D point in a 2-2/1D environment. The basic principle is much the same as that used in the 2D case. However, instead of sweeping a ray in clockwise polar direction in the ground plane, now, a half-plane perpendicular to the ground is swept around the point of interest. Figure 18 illustrates the situation. There are four main differences between the 2D and the 3D case: The usefulness of back-face culling depends on the height of the point of interest respective to the height of the surrounding objects. In is not sufficient to consider only the end points (i.e., the vertical edges) of the walls as halting points of the sweep plane. The data structure which has to be maintained dynamically is not as simple as in the 2D case. The existence of a ray-path without reflection on the ground does not guarantee the existence of a ray-path including a reflection point on the ground. The four points are explained thoroughly in the following. Back-face Culling During the polar sweep, only the vertical walls described by their projections onto the ground and their heights are considered. The roof tops do not enclose the visible area, as long as only mirroring walls and diffractive edges are searched for. A facet is found to be visible with the same argument as given above: if the direction of the corresponding wall differs from the direction in the definition of the base polygon of the building block, the entire wall and, hence, the facet is not invisible from the front. Because we do not consider the rooftops, an invisible wall cannot be eliminated without changing the visible area of a point if the point is located at a higher -coordinate than a front wall of a building block. The situation is shown in Figure 19. We run into the trade-off: is it better to keep all the walls while performing the polar sweep, and thus

Lecture 3: Art Gallery Problems and Polygon Triangulation

Lecture 3: Art Gallery Problems and Polygon Triangulation EECS 396/496: Computational Geometry Fall 2017 Lecture 3: Art Gallery Problems and Polygon Triangulation Lecturer: Huck Bennett In this lecture, we study the problem of guarding an art gallery (specified

More information

Chapter 5. Projections and Rendering

Chapter 5. Projections and Rendering Chapter 5 Projections and Rendering Topics: Perspective Projections The rendering pipeline In order to view manipulate and view a graphics object we must find ways of storing it a computer-compatible way.

More information

Lecture Outlines Chapter 26

Lecture Outlines Chapter 26 Lecture Outlines Chapter 26 11/18/2013 2 Chapter 26 Geometrical Optics Objectives: After completing this module, you should be able to: Explain and discuss with diagrams, reflection and refraction of light

More information

Lecture 17: Recursive Ray Tracing. Where is the way where light dwelleth? Job 38:19

Lecture 17: Recursive Ray Tracing. Where is the way where light dwelleth? Job 38:19 Lecture 17: Recursive Ray Tracing Where is the way where light dwelleth? Job 38:19 1. Raster Graphics Typical graphics terminals today are raster displays. A raster display renders a picture scan line

More information

(Refer Slide Time: 00:02:00)

(Refer Slide Time: 00:02:00) Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 18 Polyfill - Scan Conversion of a Polygon Today we will discuss the concepts

More information

3 Identify shapes as two-dimensional (lying in a plane, flat ) or three-dimensional ( solid ).

3 Identify shapes as two-dimensional (lying in a plane, flat ) or three-dimensional ( solid ). Geometry Kindergarten Identify and describe shapes (squares, circles, triangles, rectangles, hexagons, cubes, cones, cylinders, and spheres). 1 Describe objects in the environment using names of shapes,

More information

Physics for Scientists & Engineers 2

Physics for Scientists & Engineers 2 Geometric Optics Physics for Scientists & Engineers 2 Spring Semester 2005 Lecture 36! The study of light divides itself into three fields geometric optics wave optics quantum optics! In the previous chapter,

More information

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming

L1 - Introduction. Contents. Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming L1 - Introduction Contents Introduction of CAD/CAM system Components of CAD/CAM systems Basic concepts of graphics programming 1 Definitions Computer-Aided Design (CAD) The technology concerned with the

More information

Jun-ichi TAKADA and Houtao ZHU. Tokyo Institute of Technology. Microwave Simulator Workshop, Mar. 17, 2003 p.1/28

Jun-ichi TAKADA and Houtao ZHU. Tokyo Institute of Technology. Microwave Simulator Workshop, Mar. 17, 2003 p.1/28 Multipath Propagation Simulation in Mobile and Wireless Communications Application of Ray-Tracing for the Propagation Prediction in Microcellar Environments Jun-ichi TAKADA and Houtao ZHU Tokyo Institute

More information

Lofting 3D Shapes. Abstract

Lofting 3D Shapes. Abstract Lofting 3D Shapes Robby Prescott Department of Computer Science University of Wisconsin Eau Claire Eau Claire, Wisconsin 54701 robprescott715@gmail.com Chris Johnson Department of Computer Science University

More information

Aspects of RF Simulation and Analysis Software Methods. David Carpenter. Remcom. B = t. D t. Remcom (Europe)

Aspects of RF Simulation and Analysis Software Methods. David Carpenter. Remcom. B = t. D t. Remcom (Europe) Remcom (Europe) Central Boulevard Blythe Valley Park Solihull West Midlands England, B90 8AG www.remcom.com +44 870 351 7640 +44 870 351 7641 (fax) Aspects of RF Simulation and Analysis Software Methods

More information

INTRODUCTION REFLECTION AND REFRACTION AT BOUNDARIES. Introduction. Reflection and refraction at boundaries. Reflection at a single surface

INTRODUCTION REFLECTION AND REFRACTION AT BOUNDARIES. Introduction. Reflection and refraction at boundaries. Reflection at a single surface Chapter 8 GEOMETRICAL OPTICS Introduction Reflection and refraction at boundaries. Reflection at a single surface Refraction at a single boundary Dispersion Summary INTRODUCTION It has been shown that

More information

CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013

CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013 CMSC 425: Lecture 9 Geometric Data Structures for Games: Geometric Graphs Thursday, Feb 21, 2013 Reading: Today s materials is presented in part in Computational Geometry: Algorithms and Applications (3rd

More information

Ray Tracing Acceleration Data Structures

Ray Tracing Acceleration Data Structures Ray Tracing Acceleration Data Structures Sumair Ahmed October 29, 2009 Ray Tracing is very time-consuming because of the ray-object intersection calculations. With the brute force method, each ray has

More information

Progress In Electromagnetics Research M, Vol. 20, 29 42, 2011

Progress In Electromagnetics Research M, Vol. 20, 29 42, 2011 Progress In Electromagnetics Research M, Vol. 20, 29 42, 2011 BEAM TRACING FOR FAST RCS PREDICTION OF ELECTRICALLY LARGE TARGETS H.-G. Park, H.-T. Kim, and K.-T. Kim * Department of Electrical Engineering,

More information

Geometry Sixth Grade

Geometry Sixth Grade Standard 6-4: The student will demonstrate through the mathematical processes an understanding of shape, location, and movement within a coordinate system; similarity, complementary, and supplementary

More information

The Geometry of Carpentry and Joinery

The Geometry of Carpentry and Joinery The Geometry of Carpentry and Joinery Pat Morin and Jason Morrison School of Computer Science, Carleton University, 115 Colonel By Drive Ottawa, Ontario, CANADA K1S 5B6 Abstract In this paper we propose

More information

Unit 1, Lesson 1: Moving in the Plane

Unit 1, Lesson 1: Moving in the Plane Unit 1, Lesson 1: Moving in the Plane Let s describe ways figures can move in the plane. 1.1: Which One Doesn t Belong: Diagrams Which one doesn t belong? 1.2: Triangle Square Dance m.openup.org/1/8-1-1-2

More information

Connected Components of Underlying Graphs of Halving Lines

Connected Components of Underlying Graphs of Halving Lines arxiv:1304.5658v1 [math.co] 20 Apr 2013 Connected Components of Underlying Graphs of Halving Lines Tanya Khovanova MIT November 5, 2018 Abstract Dai Yang MIT In this paper we discuss the connected components

More information

Planar Graphs. 1 Graphs and maps. 1.1 Planarity and duality

Planar Graphs. 1 Graphs and maps. 1.1 Planarity and duality Planar Graphs In the first half of this book, we consider mostly planar graphs and their geometric representations, mostly in the plane. We start with a survey of basic results on planar graphs. This chapter

More information

Selective Space Structures Manual

Selective Space Structures Manual Selective Space Structures Manual February 2017 CONTENTS 1 Contents 1 Overview and Concept 4 1.1 General Concept........................... 4 1.2 Modules................................ 6 2 The 3S Generator

More information

INTRODUCTION TO The Uniform Geometrical Theory of Diffraction

INTRODUCTION TO The Uniform Geometrical Theory of Diffraction INTRODUCTION TO The Uniform Geometrical Theory of Diffraction D.A. McNamara, C.W.I. Pistorius J.A.G. Malherbe University of Pretoria Artech House Boston London CONTENTS Preface xiii Chapter 1 The Nature

More information

Ray-tracing Method for Estimating Radio Propagation Using Genetic Algorithm

Ray-tracing Method for Estimating Radio Propagation Using Genetic Algorithm Ray-tracing Method for Estimating Radio Propagation Using Genetic Algorithm High-precision Propagation Estimation High-speed Computation Area Design Ray-tracing Method for Estimating Radio Propagation

More information

Flavor of Computational Geometry. Voronoi Diagrams. Shireen Y. Elhabian Aly A. Farag University of Louisville

Flavor of Computational Geometry. Voronoi Diagrams. Shireen Y. Elhabian Aly A. Farag University of Louisville Flavor of Computational Geometry Voronoi Diagrams Shireen Y. Elhabian Aly A. Farag University of Louisville March 2010 Pepperoni Sparse Pizzas Olive Sparse Pizzas Just Two Pepperonis A person gets the

More information

Preferred directions for resolving the non-uniqueness of Delaunay triangulations

Preferred directions for resolving the non-uniqueness of Delaunay triangulations Preferred directions for resolving the non-uniqueness of Delaunay triangulations Christopher Dyken and Michael S. Floater Abstract: This note proposes a simple rule to determine a unique triangulation

More information

Geometry Vocabulary. acute angle-an angle measuring less than 90 degrees

Geometry Vocabulary. acute angle-an angle measuring less than 90 degrees Geometry Vocabulary acute angle-an angle measuring less than 90 degrees angle-the turn or bend between two intersecting lines, line segments, rays, or planes angle bisector-an angle bisector is a ray that

More information

MATH DICTIONARY. Number Sense. Number Families. Operations. Counting (Natural) Numbers The numbers we say when we count. Example: {0, 1, 2, 3, 4 }

MATH DICTIONARY. Number Sense. Number Families. Operations. Counting (Natural) Numbers The numbers we say when we count. Example: {0, 1, 2, 3, 4 } Number Sense Number Families MATH DICTIONARY Counting (Natural) Numbers The numbers we say when we count Example: {1, 2, 3, 4 } Whole Numbers The counting numbers plus zero Example: {0, 1, 2, 3, 4 } Positive

More information

Page 1. Area-Subdivision Algorithms z-buffer Algorithm List Priority Algorithms BSP (Binary Space Partitioning Tree) Scan-line Algorithms

Page 1. Area-Subdivision Algorithms z-buffer Algorithm List Priority Algorithms BSP (Binary Space Partitioning Tree) Scan-line Algorithms Visible Surface Determination Visibility Culling Area-Subdivision Algorithms z-buffer Algorithm List Priority Algorithms BSP (Binary Space Partitioning Tree) Scan-line Algorithms Divide-and-conquer strategy:

More information

CS 410/584, Algorithm Design & Analysis, Lecture Notes 8!

CS 410/584, Algorithm Design & Analysis, Lecture Notes 8! CS 410/584, Algorithm Design & Analysis, Computational Geometry! Algorithms for manipulation of geometric objects We will concentrate on 2-D geometry Numerically robust try to avoid division Round-off

More information

Lecture 11: Ray tracing (cont.)

Lecture 11: Ray tracing (cont.) Interactive Computer Graphics Ray tracing - Summary Lecture 11: Ray tracing (cont.) Graphics Lecture 10: Slide 1 Some slides adopted from H. Pfister, Harvard Graphics Lecture 10: Slide 2 Ray tracing -

More information

Lecture 16: Voronoi Diagrams and Fortune s Algorithm

Lecture 16: Voronoi Diagrams and Fortune s Algorithm contains q changes as a result of the ith insertion. Let P i denote this probability (where the probability is taken over random insertion orders, irrespective of the choice of q). Since q could fall through

More information

9. Visible-Surface Detection Methods

9. Visible-Surface Detection Methods 9. Visible-Surface Detection Methods More information about Modelling and Perspective Viewing: Before going to visible surface detection, we first review and discuss the followings: 1. Modelling Transformation:

More information

GDL Toolbox 2 Reference Manual

GDL Toolbox 2 Reference Manual Reference Manual Archi-data Ltd. Copyright 2002. New Features Reference Manual New Save GDL command Selected GDL Toolbox elements can be exported into simple GDL scripts. During the export process, the

More information

Mathematics Curriculum

Mathematics Curriculum 6 G R A D E Mathematics Curriculum GRADE 6 5 Table of Contents 1... 1 Topic A: Area of Triangles, Quadrilaterals, and Polygons (6.G.A.1)... 11 Lesson 1: The Area of Parallelograms Through Rectangle Facts...

More information

CS 532: 3D Computer Vision 14 th Set of Notes

CS 532: 3D Computer Vision 14 th Set of Notes 1 CS 532: 3D Computer Vision 14 th Set of Notes Instructor: Philippos Mordohai Webpage: www.cs.stevens.edu/~mordohai E-mail: Philippos.Mordohai@stevens.edu Office: Lieb 215 Lecture Outline Triangulating

More information

Lecture Outline Chapter 26. Physics, 4 th Edition James S. Walker. Copyright 2010 Pearson Education, Inc.

Lecture Outline Chapter 26. Physics, 4 th Edition James S. Walker. Copyright 2010 Pearson Education, Inc. Lecture Outline Chapter 26 Physics, 4 th Edition James S. Walker Chapter 26 Geometrical Optics Units of Chapter 26 The Reflection of Light Forming Images with a Plane Mirror Spherical Mirrors Ray Tracing

More information

newfasant US User Guide

newfasant US User Guide newfasant US User Guide Software Version: 6.2.10 Date: April 15, 2018 Index 1. FILE MENU 2. EDIT MENU 3. VIEW MENU 4. GEOMETRY MENU 5. MATERIALS MENU 6. SIMULATION MENU 6.1. PARAMETERS 6.2. DOPPLER 7.

More information

COMPUTING CONSTRAINED DELAUNAY

COMPUTING CONSTRAINED DELAUNAY COMPUTING CONSTRAINED DELAUNAY TRIANGULATIONS IN THE PLANE By Samuel Peterson, University of Minnesota Undergraduate The Goal The Problem The Algorithms The Implementation Applications Acknowledgments

More information

specular diffuse reflection.

specular diffuse reflection. Lesson 8 Light and Optics The Nature of Light Properties of Light: Reflection Refraction Interference Diffraction Polarization Dispersion and Prisms Total Internal Reflection Huygens s Principle The Nature

More information

Light and the Properties of Reflection & Refraction

Light and the Properties of Reflection & Refraction Light and the Properties of Reflection & Refraction OBJECTIVE To study the imaging properties of a plane mirror. To prove the law of reflection from the previous imaging study. To study the refraction

More information

Determining Differences between Two Sets of Polygons

Determining Differences between Two Sets of Polygons Determining Differences between Two Sets of Polygons MATEJ GOMBOŠI, BORUT ŽALIK Institute for Computer Science Faculty of Electrical Engineering and Computer Science, University of Maribor Smetanova 7,

More information

Uniform edge-c-colorings of the Archimedean Tilings

Uniform edge-c-colorings of the Archimedean Tilings Discrete & Computational Geometry manuscript No. (will be inserted by the editor) Uniform edge-c-colorings of the Archimedean Tilings Laura Asaro John Hyde Melanie Jensen Casey Mann Tyler Schroeder Received:

More information

Rational Numbers and the Coordinate Plane

Rational Numbers and the Coordinate Plane Rational Numbers and the Coordinate Plane LAUNCH (8 MIN) Before How can you use the numbers placed on the grid to figure out the scale that is used? Can you tell what the signs of the x- and y-coordinates

More information

CS 410/584, Algorithm Design & Analysis, Lecture Notes 8

CS 410/584, Algorithm Design & Analysis, Lecture Notes 8 CS 410/584,, Computational Geometry Algorithms for manipulation of geometric objects We will concentrate on 2-D geometry Numerically robust try to avoid division Round-off error Divide-by-0 checks Techniques

More information

Notes in Computational Geometry Voronoi Diagrams

Notes in Computational Geometry Voronoi Diagrams Notes in Computational Geometry Voronoi Diagrams Prof. Sandeep Sen and Prof. Amit Kumar Indian Institute of Technology, Delhi Voronoi Diagrams In this lecture, we study Voronoi Diagrams, also known as

More information

Physics 11. Unit 8 Geometric Optics Part 1

Physics 11. Unit 8 Geometric Optics Part 1 Physics 11 Unit 8 Geometric Optics Part 1 1.Review of waves In the previous section, we have investigated the nature and behaviors of waves in general. We know that all waves possess the following characteristics:

More information

This work is about a new method for generating diffusion curve style images. Although this topic is dealing with non-photorealistic rendering, as you

This work is about a new method for generating diffusion curve style images. Although this topic is dealing with non-photorealistic rendering, as you This work is about a new method for generating diffusion curve style images. Although this topic is dealing with non-photorealistic rendering, as you will see our underlying solution is based on two-dimensional

More information

UNIT 1 GEOMETRY TEMPLATE CREATED BY REGION 1 ESA UNIT 1

UNIT 1 GEOMETRY TEMPLATE CREATED BY REGION 1 ESA UNIT 1 UNIT 1 GEOMETRY TEMPLATE CREATED BY REGION 1 ESA UNIT 1 Traditional Pathway: Geometry The fundamental purpose of the course in Geometry is to formalize and extend students geometric experiences from the

More information

PHYS:1200 LECTURE 32 LIGHT AND OPTICS (4)

PHYS:1200 LECTURE 32 LIGHT AND OPTICS (4) 1 PHYS:1200 LECTURE 32 LIGHT AND OPTICS (4) The first three lectures in this unit dealt with what is for called geometric optics. Geometric optics, treats light as a collection of rays that travel in straight

More information

G 6i try. On the Number of Minimal 1-Steiner Trees* Discrete Comput Geom 12:29-34 (1994)

G 6i try. On the Number of Minimal 1-Steiner Trees* Discrete Comput Geom 12:29-34 (1994) Discrete Comput Geom 12:29-34 (1994) G 6i try 9 1994 Springer-Verlag New York Inc. On the Number of Minimal 1-Steiner Trees* B. Aronov, 1 M. Bern, 2 and D. Eppstein 3 Computer Science Department, Polytechnic

More information

Pebble Sets in Convex Polygons

Pebble Sets in Convex Polygons 2 1 Pebble Sets in Convex Polygons Kevin Iga, Randall Maddox June 15, 2005 Abstract Lukács and András posed the problem of showing the existence of a set of n 2 points in the interior of a convex n-gon

More information

Section 2 Flat Mirrors. Distinguish between specular and diffuse reflection of light. Apply the law of reflection for flat mirrors.

Section 2 Flat Mirrors. Distinguish between specular and diffuse reflection of light. Apply the law of reflection for flat mirrors. Section 2 Flat Mirrors Objectives Distinguish between specular and diffuse reflection of light. Apply the law of reflection for flat mirrors. Describe the nature of images formed by flat mirrors. Section

More information

CSCI 4620/8626. Computer Graphics Clipping Algorithms (Chapter 8-5 )

CSCI 4620/8626. Computer Graphics Clipping Algorithms (Chapter 8-5 ) CSCI 4620/8626 Computer Graphics Clipping Algorithms (Chapter 8-5 ) Last update: 2016-03-15 Clipping Algorithms A clipping algorithm is any procedure that eliminates those portions of a picture outside

More information

Honors Geometry Pacing Guide Honors Geometry Pacing First Nine Weeks

Honors Geometry Pacing Guide Honors Geometry Pacing First Nine Weeks Unit Topic To recognize points, lines and planes. To be able to recognize and measure segments and angles. To classify angles and name the parts of a degree To recognize collinearity and betweenness of

More information

Reflection and Image Formation by Mirrors

Reflection and Image Formation by Mirrors Purpose Theory a. To study the reflection of light Reflection and Image Formation by Mirrors b. To study the formation and characteristics of images formed by different types of mirrors. When light (wave)

More information

26 The closest pair problem

26 The closest pair problem The closest pair problem 1 26 The closest pair problem Sweep algorithms solve many kinds of proximity problems efficiently. We present a simple sweep that solves the two-dimensional closest pair problem

More information

The Ray Model of Light

The Ray Model of Light The Ray Model of Light Light very often travels in straight lines. We represent light using rays, which are straight lines emanating from an object. This is an idealization, but is very useful for geometric

More information

Reflection and Refraction

Reflection and Refraction Reflection and Refraction Theory: Whenever a wave traveling in some medium encounters an interface or boundary with another medium either (or both) of the processes of (1) reflection and (2) refraction

More information

Prof. Gill Barequet. Center for Graphics and Geometric Computing, Technion. Dept. of Computer Science The Technion Haifa, Israel

Prof. Gill Barequet. Center for Graphics and Geometric Computing, Technion. Dept. of Computer Science The Technion Haifa, Israel Computational Geometry (CS 236719) http://www.cs.tufts.edu/~barequet/teaching/cg Chapter 1 Introduction 1 Copyright 2002-2009 2009 Prof. Gill Barequet Center for Graphics and Geometric Computing Dept.

More information

Substituting a 2 b 2 for c 2 and using a little algebra, we can then derive the standard equation for an ellipse centred at the origin,

Substituting a 2 b 2 for c 2 and using a little algebra, we can then derive the standard equation for an ellipse centred at the origin, Conics onic sections are the curves which result from the intersection of a plane with a cone. These curves were studied and revered by the ancient Greeks, and were written about extensively by both Euclid

More information

Lecture Notes (Reflection & Mirrors)

Lecture Notes (Reflection & Mirrors) Lecture Notes (Reflection & Mirrors) Intro: - plane mirrors are flat, smooth surfaces from which light is reflected by regular reflection - light rays are reflected with equal angles of incidence and reflection

More information

A Point in Non-Convex Polygon Location Problem Using the Polar Space Subdivision in E 2

A Point in Non-Convex Polygon Location Problem Using the Polar Space Subdivision in E 2 A Point in Non-Convex Polygon Location Problem Using the Polar Space Subdivision in E 2 Vaclav Skala 1, Michal Smolik 1 1 Faculty of Applied Sciences, University of West Bohemia, Univerzitni 8, CZ 30614

More information

Glossary of dictionary terms in the AP geometry units

Glossary of dictionary terms in the AP geometry units Glossary of dictionary terms in the AP geometry units affine linear equation: an equation in which both sides are sums of terms that are either a number times y or a number times x or just a number [SlL2-D5]

More information

Ray Tracer Due date: April 27, 2011

Ray Tracer Due date: April 27, 2011 Computer graphics Assignment 4 1 Overview Ray Tracer Due date: April 27, 2011 In this assignment you will implement the camera and several primitive objects for a ray tracer, and a basic ray tracing algorithm.

More information

Ray Optics. Physics 11. Sources of Light Rays: Self-Luminous Objects. The Ray Model of Light

Ray Optics. Physics 11. Sources of Light Rays: Self-Luminous Objects. The Ray Model of Light Physics 11 Ray Optics Ray Model of Light Reflection Plane Mirrors Spherical Mirrors Ray Tracing Images from a Concave Mirror Images from a Convex Mirror Slide 18-3 The Ray Model of Light Sources of Light

More information

Spatial Data Structures

Spatial Data Structures CSCI 420 Computer Graphics Lecture 17 Spatial Data Structures Jernej Barbic University of Southern California Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees [Angel Ch. 8] 1 Ray Tracing Acceleration

More information

Polygon decomposition. Motivation: Art gallery problem

Polygon decomposition. Motivation: Art gallery problem CG Lecture 3 Polygon decomposition 1. Polygon triangulation Triangulation theory Monotone polygon triangulation 2. Polygon decomposition into monotone pieces 3. Trapezoidal decomposition 4. Convex decomposition

More information

CS6100: Topics in Design and Analysis of Algorithms

CS6100: Topics in Design and Analysis of Algorithms CS6100: Topics in Design and Analysis of Algorithms Guarding and Triangulating Polygons John Augustine CS6100 (Even 2012): Guarding and Triangulating Polygons The Art Gallery Problem A simple polygon is

More information

On Merging Straight Skeletons

On Merging Straight Skeletons On Merging Straight Skeletons Franz Aurenhammer 1 and Michael Steinkogler 2 1 Institute for Theoretical Computer Science, University of Technology, Graz, Austria auren@igi.tugraz.at 2 Institute for Theoretical

More information

Voronoi diagram and Delaunay triangulation

Voronoi diagram and Delaunay triangulation Voronoi diagram and Delaunay triangulation Ioannis Emiris & Vissarion Fisikopoulos Dept. of Informatics & Telecommunications, University of Athens Computational Geometry, spring 2015 Outline 1 Voronoi

More information

PHY 171 Lecture 6 (January 18, 2012)

PHY 171 Lecture 6 (January 18, 2012) PHY 171 Lecture 6 (January 18, 2012) Light Throughout most of the next 2 weeks, we will be concerned with the wave properties of light, and phenomena based on them (interference & diffraction). Light also

More information

CHAPTER 4 VORONOI DIAGRAM BASED CLUSTERING ALGORITHMS

CHAPTER 4 VORONOI DIAGRAM BASED CLUSTERING ALGORITHMS CHAPTER 4 VORONOI DIAGRAM BASED CLUSTERING ALGORITHMS 4.1 Introduction Although MST-based clustering methods are effective for complex data, they require quadratic computational time which is high for

More information

Lecture 3 Sections 2.2, 4.4. Mon, Aug 31, 2009

Lecture 3 Sections 2.2, 4.4. Mon, Aug 31, 2009 Model s Lecture 3 Sections 2.2, 4.4 World s Eye s Clip s s s Window s Hampden-Sydney College Mon, Aug 31, 2009 Outline Model s World s Eye s Clip s s s Window s 1 2 3 Model s World s Eye s Clip s s s Window

More information

Geometry. Cluster: Experiment with transformations in the plane. G.CO.1 G.CO.2. Common Core Institute

Geometry. Cluster: Experiment with transformations in the plane. G.CO.1 G.CO.2. Common Core Institute Geometry Cluster: Experiment with transformations in the plane. G.CO.1: Know precise definitions of angle, circle, perpendicular line, parallel line, and line segment, based on the undefined notions of

More information

Data Partitioning. Figure 1-31: Communication Topologies. Regular Partitions

Data Partitioning. Figure 1-31: Communication Topologies. Regular Partitions Data In single-program multiple-data (SPMD) parallel programs, global data is partitioned, with a portion of the data assigned to each processing node. Issues relevant to choosing a partitioning strategy

More information

The Law of Reflection

The Law of Reflection If the surface off which the light is reflected is smooth, then the light undergoes specular reflection (parallel rays will all be reflected in the same directions). If, on the other hand, the surface

More information

Spatial Data Structures

Spatial Data Structures CSCI 480 Computer Graphics Lecture 7 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids BSP Trees [Ch. 0.] March 8, 0 Jernej Barbic University of Southern California http://www-bcf.usc.edu/~jbarbic/cs480-s/

More information

Spatial Data Structures and Speed-Up Techniques. Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology

Spatial Data Structures and Speed-Up Techniques. Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology Spatial Data Structures and Speed-Up Techniques Tomas Akenine-Möller Department of Computer Engineering Chalmers University of Technology Spatial data structures What is it? Data structure that organizes

More information

1/60. Geometric Algorithms. Lecture 1: Introduction. Convex Hulls

1/60. Geometric Algorithms. Lecture 1: Introduction. Convex Hulls 1/60 Geometric Algorithms Lecture 1: Introduction Convex Hulls Geometric algorithms scope 2/60 Geometry algorithms (practice): Study of geometric problems that arise in various applications and how algorithms

More information

A Reduction of Conway s Thrackle Conjecture

A Reduction of Conway s Thrackle Conjecture A Reduction of Conway s Thrackle Conjecture Wei Li, Karen Daniels, and Konstantin Rybnikov Department of Computer Science and Department of Mathematical Sciences University of Massachusetts, Lowell 01854

More information

4.5 VISIBLE SURFACE DETECTION METHODES

4.5 VISIBLE SURFACE DETECTION METHODES 4.5 VISIBLE SURFACE DETECTION METHODES A major consideration in the generation of realistic graphics displays is identifying those parts of a scene that are visible from a chosen viewing position. There

More information

Coverage and Search Algorithms. Chapter 10

Coverage and Search Algorithms. Chapter 10 Coverage and Search Algorithms Chapter 10 Objectives To investigate some simple algorithms for covering the area in an environment To understand how to break down an environment into simple convex pieces

More information

Geometric Entities for Pilot3D. Copyright 2001 by New Wave Systems, Inc. All Rights Reserved

Geometric Entities for Pilot3D. Copyright 2001 by New Wave Systems, Inc. All Rights Reserved Geometric Entities for Pilot3D Copyright 2001 by New Wave Systems, Inc. All Rights Reserved Introduction on Geometric Entities for Pilot3D The best way to develop a good understanding of any Computer-Aided

More information

Geometry Foundations Planning Document

Geometry Foundations Planning Document Geometry Foundations Planning Document Unit 1: Chromatic Numbers Unit Overview A variety of topics allows students to begin the year successfully, review basic fundamentals, develop cooperative learning

More information

Yandex.Maps API Background theory

Yandex.Maps API Background theory 8.02.2018 .. Version 1.0 Document build date: 8.02.2018. This volume is a part of Yandex technical documentation. Yandex helpdesk site: http://help.yandex.ru 2008 2018 Yandex LLC. All rights reserved.

More information

Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling

Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling Computer Graphics Prof. Sukhendu Das Dept. of Computer Science and Engineering Indian Institute of Technology, Madras Lecture - 24 Solid Modelling Welcome to the lectures on computer graphics. We have

More information

Sensor Modalities. Sensor modality: Different modalities:

Sensor Modalities. Sensor modality: Different modalities: Sensor Modalities Sensor modality: Sensors which measure same form of energy and process it in similar ways Modality refers to the raw input used by the sensors Different modalities: Sound Pressure Temperature

More information

Physics Experiment 13

Physics Experiment 13 Fig. 13-1 Equipment This side of the mirror is gray. Place this side on the baseline. You can see your reflection on this side of the mirror. Fig. 13-2 Mirror Placement: The "Plexi-Ray Kit" contains a

More information

Geometric Algorithms. Geometric search: overview. 1D Range Search. 1D Range Search Implementations

Geometric Algorithms. Geometric search: overview. 1D Range Search. 1D Range Search Implementations Geometric search: overview Geometric Algorithms Types of data:, lines, planes, polygons, circles,... This lecture: sets of N objects. Range searching Quadtrees, 2D trees, kd trees Intersections of geometric

More information

Ohio Tutorials are designed specifically for the Ohio Learning Standards to prepare students for the Ohio State Tests and end-ofcourse

Ohio Tutorials are designed specifically for the Ohio Learning Standards to prepare students for the Ohio State Tests and end-ofcourse Tutorial Outline Ohio Tutorials are designed specifically for the Ohio Learning Standards to prepare students for the Ohio State Tests and end-ofcourse exams. Math Tutorials offer targeted instruction,

More information

Spatial Data Structures

Spatial Data Structures 15-462 Computer Graphics I Lecture 17 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) April 1, 2003 [Angel 9.10] Frank Pfenning Carnegie

More information

PHYS 219 General Physics: Electricity, Light and Modern Physics

PHYS 219 General Physics: Electricity, Light and Modern Physics PHYS 219 General Physics: Electricity, Light and Modern Physics Exam 2 is scheduled on Tuesday, March 26 @ 8 10 PM In Physics 114 It will cover four Chapters 21, 22, 23, and 24. Start reviewing lecture

More information

Glossary Common Core Curriculum Maps Math/Grade 6 Grade 8

Glossary Common Core Curriculum Maps Math/Grade 6 Grade 8 Glossary Common Core Curriculum Maps Math/Grade 6 Grade 8 Grade 6 Grade 8 absolute value Distance of a number (x) from zero on a number line. Because absolute value represents distance, the absolute value

More information

Optics. a- Before the beginning of the nineteenth century, light was considered to be a stream of particles.

Optics. a- Before the beginning of the nineteenth century, light was considered to be a stream of particles. Optics 1- Light Nature: a- Before the beginning of the nineteenth century, light was considered to be a stream of particles. The particles were either emitted by the object being viewed or emanated from

More information

CEng 477 Introduction to Computer Graphics Fall 2007

CEng 477 Introduction to Computer Graphics Fall 2007 Visible Surface Detection CEng 477 Introduction to Computer Graphics Fall 2007 Visible Surface Detection Visible surface detection or hidden surface removal. Realistic scenes: closer objects occludes the

More information

Chapter 12 Notes: Optics

Chapter 12 Notes: Optics Chapter 12 Notes: Optics How can the paths traveled by light rays be rearranged in order to form images? In this chapter we will consider just one form of electromagnetic wave: visible light. We will be

More information

(a) rotating 45 0 about the origin and then translating in the direction of vector I by 4 units and (b) translating and then rotation.

(a) rotating 45 0 about the origin and then translating in the direction of vector I by 4 units and (b) translating and then rotation. Code No: R05221201 Set No. 1 1. (a) List and explain the applications of Computer Graphics. (b) With a neat cross- sectional view explain the functioning of CRT devices. 2. (a) Write the modified version

More information

Geometrical Optics INTRODUCTION. Wave Fronts and Rays

Geometrical Optics INTRODUCTION. Wave Fronts and Rays Geometrical Optics INTRODUCTION In this experiment, the optical characteristics of mirrors, lenses, and prisms will be studied based on using the following physics definitions and relationships plus simple

More information

CAD & Computational Geometry Course plan

CAD & Computational Geometry Course plan Course plan Introduction Segment-Segment intersections Polygon Triangulation Intro to Voronoï Diagrams & Geometric Search Sweeping algorithm for Voronoï Diagrams 1 Voronoi Diagrams Voronoi Diagrams or

More information

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight

coding of various parts showing different features, the possibility of rotation or of hiding covering parts of the object's surface to gain an insight Three-Dimensional Object Reconstruction from Layered Spatial Data Michael Dangl and Robert Sablatnig Vienna University of Technology, Institute of Computer Aided Automation, Pattern Recognition and Image

More information