Trajectory Range Visibility
Consider two entities with constant but not necessarily equal velocities, moving on two given piece-wise linear trajectories inside a simple polygon P. The Trajectory Range Visibility problem deals with determining the sub-trajectories on which two entities become visible to each other. A more straightforward decision version of this problem is called Trajectory Visibility, where the trajectories are line segments. The decision version specifies whether the entities can see one another. This version was studied by P. Eades et al. in 2020, where they supposed given constant velocities for the entities. However, the approach presented in this paper supports non-constant complexity trajectories. Furthermore, we report every pair of constant velocities with which the entities can see each other. In particular, for every constant velocity of a moving entity, we specify: (1) All visible parts of the other entity's trajectory. (2) All possible constant velocities of the other entity to become visible. Regarding line-segment trajectories, we present 𝒪(n log n) running time algorithm which obtains all pairs of sub-trajectories on which the moving entities become visible to one another, where n is the complexity of P. Regarding the general case, we provide an algorithm with 𝒪(n log n + m(log m + log n)) running time, where m indicates the complexity of both trajectories. We offer 𝒪(log n) query time for line segment trajectories and 𝒪(log m + k) for the non-constant complexity ones s.t. k is the number of velocity ranges reported in the output. Interestingly, our results require only 𝒪(n + m) space for non-constant complexity trajectories.
READ FULL TEXT