Clarification on How to derive Voronoi diagram from Delaunay triangulation in linear time












1












$begingroup$


Definitions:



Assume that a set of points $P={p_1,dots,p_n}$ in $mathbb R^d $ is given. For each $p_i in P$, the Voronoi region of $p_i$ is defined as:
$Vor(p_i)={pinmathbb R^d:forall p_jin Pquad p_jneq p_iimplies ||p-p_i||leq||p-p_j||}$



And the Voronoi diagram of $P$ is defined as:



$V(P)=cup_{p_iin P} Vor(p_i)$



Delaunay triangulation of $P$ is a triangulation $DT(P)$ such that no point in $P$ is inside the circumcircle of any triangle in $DT(P)$.



We know that Delaunay triangulation is the dual of Voronoi diagram.



Connection between DT and VD





Question:




How can we derive Voronoi diagram from Delaunay triangulation in linear time?




So, as the input, we have some points in $mathbb R^d$ and we know that which points are connected. The output should be the Voronoi diagram of that points.





What I know:



One method was to consider a list in which each element has a point and the triangles having it as a vertex. But it seems that obtaining this list takes more than $O(n)$ time. There was another method which said we have to compute the intersection of perpendicular bisectors of Delaunay edges. The problem with this method is that the bisectors are infinite. I'm looking for a precise algorithm which can be implemented in a computer. So, I know the ideas but it's not enough.



Note: I know that this question has been asked many times. But it seems that the time complexity was not important. Another problem is that the answers were not precise enough.










share|cite|improve this question









$endgroup$

















    1












    $begingroup$


    Definitions:



    Assume that a set of points $P={p_1,dots,p_n}$ in $mathbb R^d $ is given. For each $p_i in P$, the Voronoi region of $p_i$ is defined as:
    $Vor(p_i)={pinmathbb R^d:forall p_jin Pquad p_jneq p_iimplies ||p-p_i||leq||p-p_j||}$



    And the Voronoi diagram of $P$ is defined as:



    $V(P)=cup_{p_iin P} Vor(p_i)$



    Delaunay triangulation of $P$ is a triangulation $DT(P)$ such that no point in $P$ is inside the circumcircle of any triangle in $DT(P)$.



    We know that Delaunay triangulation is the dual of Voronoi diagram.



    Connection between DT and VD





    Question:




    How can we derive Voronoi diagram from Delaunay triangulation in linear time?




    So, as the input, we have some points in $mathbb R^d$ and we know that which points are connected. The output should be the Voronoi diagram of that points.





    What I know:



    One method was to consider a list in which each element has a point and the triangles having it as a vertex. But it seems that obtaining this list takes more than $O(n)$ time. There was another method which said we have to compute the intersection of perpendicular bisectors of Delaunay edges. The problem with this method is that the bisectors are infinite. I'm looking for a precise algorithm which can be implemented in a computer. So, I know the ideas but it's not enough.



    Note: I know that this question has been asked many times. But it seems that the time complexity was not important. Another problem is that the answers were not precise enough.










    share|cite|improve this question









    $endgroup$















      1












      1








      1





      $begingroup$


      Definitions:



      Assume that a set of points $P={p_1,dots,p_n}$ in $mathbb R^d $ is given. For each $p_i in P$, the Voronoi region of $p_i$ is defined as:
      $Vor(p_i)={pinmathbb R^d:forall p_jin Pquad p_jneq p_iimplies ||p-p_i||leq||p-p_j||}$



      And the Voronoi diagram of $P$ is defined as:



      $V(P)=cup_{p_iin P} Vor(p_i)$



      Delaunay triangulation of $P$ is a triangulation $DT(P)$ such that no point in $P$ is inside the circumcircle of any triangle in $DT(P)$.



      We know that Delaunay triangulation is the dual of Voronoi diagram.



      Connection between DT and VD





      Question:




      How can we derive Voronoi diagram from Delaunay triangulation in linear time?




      So, as the input, we have some points in $mathbb R^d$ and we know that which points are connected. The output should be the Voronoi diagram of that points.





      What I know:



      One method was to consider a list in which each element has a point and the triangles having it as a vertex. But it seems that obtaining this list takes more than $O(n)$ time. There was another method which said we have to compute the intersection of perpendicular bisectors of Delaunay edges. The problem with this method is that the bisectors are infinite. I'm looking for a precise algorithm which can be implemented in a computer. So, I know the ideas but it's not enough.



      Note: I know that this question has been asked many times. But it seems that the time complexity was not important. Another problem is that the answers were not precise enough.










      share|cite|improve this question









      $endgroup$




      Definitions:



      Assume that a set of points $P={p_1,dots,p_n}$ in $mathbb R^d $ is given. For each $p_i in P$, the Voronoi region of $p_i$ is defined as:
      $Vor(p_i)={pinmathbb R^d:forall p_jin Pquad p_jneq p_iimplies ||p-p_i||leq||p-p_j||}$



      And the Voronoi diagram of $P$ is defined as:



      $V(P)=cup_{p_iin P} Vor(p_i)$



      Delaunay triangulation of $P$ is a triangulation $DT(P)$ such that no point in $P$ is inside the circumcircle of any triangle in $DT(P)$.



      We know that Delaunay triangulation is the dual of Voronoi diagram.



      Connection between DT and VD





      Question:




      How can we derive Voronoi diagram from Delaunay triangulation in linear time?




      So, as the input, we have some points in $mathbb R^d$ and we know that which points are connected. The output should be the Voronoi diagram of that points.





      What I know:



      One method was to consider a list in which each element has a point and the triangles having it as a vertex. But it seems that obtaining this list takes more than $O(n)$ time. There was another method which said we have to compute the intersection of perpendicular bisectors of Delaunay edges. The problem with this method is that the bisectors are infinite. I'm looking for a precise algorithm which can be implemented in a computer. So, I know the ideas but it's not enough.



      Note: I know that this question has been asked many times. But it seems that the time complexity was not important. Another problem is that the answers were not precise enough.







      computational-geometry triangulation voronoi-diagram






      share|cite|improve this question













      share|cite|improve this question











      share|cite|improve this question




      share|cite|improve this question










      asked Dec 13 '18 at 9:08









      Arman MalekzadehArman Malekzadeh

      1,8221031




      1,8221031






















          0






          active

          oldest

          votes












          Your Answer





          StackExchange.ifUsing("editor", function () {
          return StackExchange.using("mathjaxEditing", function () {
          StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
          StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
          });
          });
          }, "mathjax-editing");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "69"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          noCode: true, onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3037786%2fclarification-on-how-to-derive-voronoi-diagram-from-delaunay-triangulation-in-li%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes
















          draft saved

          draft discarded




















































          Thanks for contributing an answer to Mathematics Stack Exchange!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          Use MathJax to format equations. MathJax reference.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmath.stackexchange.com%2fquestions%2f3037786%2fclarification-on-how-to-derive-voronoi-diagram-from-delaunay-triangulation-in-li%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Biblatex bibliography style without URLs when DOI exists (in Overleaf with Zotero bibliography)

          ComboBox Display Member on multiple fields

          Is it possible to collect Nectar points via Trainline?