Computer Science > Computational Geometry
[Submitted on 29 Aug 2022 (v1), revised 24 Jan 2023 (this version, v4), latest version 27 Feb 2023 (v5)]
Title:Trajectory Range Visibility
View PDFAbstract:Consider two entities with not necessarily equal constant velocities, moving on two given piece-wise linear trajectories inside a simple polygon. The Trajectory Range Visibility problem deals with determining the sub-trajectories on which two entities become visible to each other. A more straightforward version of this problem is a decision version, specifying whether the entities can see one another, considering given constant velocities and assuming the trajectories are line segments. This version was studied by P. Eades et al. in 2020. However, the approach presented in this paper supports queries with constant velocities for non-constant complexity trajectories. In particular, given a constant query velocity for 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 obtain $\mathcal{O}(n \log n)$ time to specify all pairs of sub-trajectories visible to one another s.t. $n$ is the number of vertices of the polygon. Moreover, our results for a restricted case on non-constant complexity trajectories yield $\mathcal{O}(n + m(\log m + \log n))$ time, in which $m$ is the overall number of vertices of both trajectories. Regarding the unrestricted case, we provide $\mathcal{O}(n \log n + m(\log m + \log n))$ running time. We offer $\mathcal{O}(\log n)$ query time for line segment trajectories and $\mathcal{O}(\log m + k)$ for the non-constant complexity ones s.t. $k$ is the number of velocity ranges reported in the answer. Interestingly, our results require only $\mathcal{O}(n + m)$ space for non-constant complexity trajectories.
Submission history
From: Arash Vaezi [view email][v1] Mon, 29 Aug 2022 19:33:55 UTC (428 KB)
[v2] Tue, 27 Sep 2022 17:45:27 UTC (525 KB)
[v3] Sun, 20 Nov 2022 21:45:18 UTC (525 KB)
[v4] Tue, 24 Jan 2023 19:16:25 UTC (669 KB)
[v5] Mon, 27 Feb 2023 11:35:36 UTC (1,843 KB)
References & Citations
Bibliographic and Citation Tools
Bibliographic Explorer (What is the Explorer?)
Litmaps (What is Litmaps?)
scite Smart Citations (What are Smart Citations?)
Code, Data and Media Associated with this Article
CatalyzeX Code Finder for Papers (What is CatalyzeX?)
DagsHub (What is DagsHub?)
Gotit.pub (What is GotitPub?)
Papers with Code (What is Papers with Code?)
ScienceCast (What is ScienceCast?)
Demos
Recommenders and Search Tools
Influence Flower (What are Influence Flowers?)
Connected Papers (What is Connected Papers?)
CORE Recommender (What is CORE?)
arXivLabs: experimental projects with community collaborators
arXivLabs is a framework that allows collaborators to develop and share new arXiv features directly on our website.
Both individuals and organizations that work with arXivLabs have embraced and accepted our values of openness, community, excellence, and user data privacy. arXiv is committed to these values and only works with partners that adhere to them.
Have an idea for a project that will add value for arXiv's community? Learn more about arXivLabs.