Delaunay triangulation divide and conquer algorithm

  Рет қаралды 31,116

Dušan Cvejić

Dušan Cvejić

8 жыл бұрын

Short animation on how does Delaunay triangulation work using the divide and conquer algorithm.
www.scribd.com/document/34083...

Пікірлер: 26
@edwardoakheart4055
@edwardoakheart4055 2 жыл бұрын
Can you explain what data structure would you use for this? if it's a DECL, how do you iterate through neighbouring vertices when merging the two halves, what's the exact process, this step is very confusing.
@0919killer
@0919killer 7 жыл бұрын
@0:29 Isn´t there a mistake between points (s10,s11) , (s8,s7) and (s3,s6)? it shouldn't be a perpendicular line in the middle of those points?
@kiki23s_DKC
@kiki23s_DKC 7 жыл бұрын
It should be that way however it is not possible in this example to make it. Try drawing it on paper. It you find a solution, do share it.
@d_a_r_ii
@d_a_r_ii 8 күн бұрын
There are perpendicular segments, they just don’t intersect the original segments
@NM-jq3sv
@NM-jq3sv 7 жыл бұрын
Is there only one triangulated model that can be produced from a given 3d point cloud ?
@kiki23s_DKC
@kiki23s_DKC 7 жыл бұрын
I got only one.
@kerch00
@kerch00 2 ай бұрын
Depends on the algorithm
@BigGamer2525
@BigGamer2525 2 жыл бұрын
Can I get a copy of the paper in the description not in slovenian?
@JohnSmith-kr4zu
@JohnSmith-kr4zu 8 жыл бұрын
Hi, how were you calculating the counterclockwise and clockwise angle from the base edge to the potential candidate point?
@kiki23s_DKC
@kiki23s_DKC 8 жыл бұрын
+John Smith Hi. Let me explain for the left side, and for the right side you use the same principle. Well what i did was to make new lines that connect my base with the points. So first lets do a quick naming convention. For the base line S2S7 lets name it b1. Now watch the video to the point where the pink lines appear. The pink lines represent the lines that connects the point S2 and the potencial candidates. So as you can see, we have S2S4, S2S5 and S2S3. Lets name them p1, p2 and p3. I could have connected the point S2 with S1 too, but in this example i made all my lines so that the angle between the lines p and base b1 is around 90 degrees. The criteria says the points need to be less than 180 degrees, however in this example i made it so that the angle of around 90 degrees is a valid subcriteria. However when facing unknown sets of points, we always need to consider the 2 criteria for picking the candidate. 1. the angle between 2 lines (b1 and any p) needs to be less than 180 degrees. 2. when placing a circumcircle around the points, there can not be any points in the circle which represent potencial candidates. Now then, by comparing the angles between b1 and p1, b1 and p2 and b1 and p3, we get the result that the smallest angle is made by b1 and p1. Now we draw a circumcircle around the points to check if any other potencial candidates are inside the circumcircle. Since there are none, because of fulfilling both prior given criteria, we pick point S4 as the candidate and do the triangulation. Hope the explanation is undestandable and helpful.
@JohnSmith-kr4zu
@JohnSmith-kr4zu 8 жыл бұрын
+Dušan Cvejić Hi, thanks for the explanation. Were you using the formula cos(theta) = dotproduct(v,u) / (magnitude(v) * magnitude(u)) or some other formula for calculating the angle? I was always getting angles less than 180 degrees which resulted in edges intersecting with other edges
@JohnSmith-kr4zu
@JohnSmith-kr4zu 8 жыл бұрын
+John Smith Unecessary edges, I should say, intersecting with other edges
@kiki23s_DKC
@kiki23s_DKC 8 жыл бұрын
+John Smith The same formula is usable for this example and you should get almost always that all the angles are less than 180. After obtaining information on all angles, than you need to sort them. By doing so you get a list min to max or max to min, dependable on your sort, and by picking the smallest angle you check if the circumcircle around the base and the chosen candidate contains any other potencial candidates inside. If you are trying to implement in code, i think the simple if else function could work for this.
@JohnSmith-kr4zu
@JohnSmith-kr4zu 8 жыл бұрын
+Dušan Cvejić Do you ignore points that are already connected to both endpoints, or do you still compare them with other potentials
@ritheshbaliga40
@ritheshbaliga40 4 жыл бұрын
is there any alternate link to download
@kiki23s_DKC
@kiki23s_DKC 4 жыл бұрын
Only the one in the description. Does it not work?
@PikachuGamess
@PikachuGamess 3 жыл бұрын
Can you send me your code? I'm now working to propose a new algorithm for constructing a Delaunay Triangulation in 2D. Thank you very much for considering my request. I am looking forward to hearing from you.
@kiki23s_DKC
@kiki23s_DKC 3 жыл бұрын
I didnt do a code for this. Only an explanation of how it works. You can find the paper here: www.scribd.com/document/340837645/Delaunay-Triangulacija-u-Ravni-Rekurzivni-Algoritam
@Fen1kz
@Fen1kz 7 жыл бұрын
I like how at @0:24 you just show a circle that has points in it and then WHOOP, right edge -_-
@kiki23s_DKC
@kiki23s_DKC 7 жыл бұрын
It is a speed up proces. The same principle applies as for the left egde
@boualemaitmessaoudene6339
@boualemaitmessaoudene6339 7 жыл бұрын
can you give us the algoritm you used pleass ?
@kiki23s_DKC
@kiki23s_DKC 7 жыл бұрын
You can find my paper of detailed explanation on how this works on this link: www.scribd.com/document/340837645/Delaunay-Triangulacija-u-Ravni-Rekurzivni-Algoritam However you are going to need to translate it first, because it is written in Sebian.
@boualemaitmessaoudene6339
@boualemaitmessaoudene6339 7 жыл бұрын
Dušan Cvejić thank you very much 👍🏼
@brooks7845
@brooks7845 5 жыл бұрын
@@kiki23s_DKC Is the source code available. Please share if you have.
@kiki23s_DKC
@kiki23s_DKC 5 жыл бұрын
@@brooks7845 I don´t have the source code, however an explanation on how it works is given is in the paper given in the video description
Triangulation - Earcut Algorithm
6:00
Dave Carrigg
Рет қаралды 2,4 М.
Delaunay Triangulation
3:24
SCIco
Рет қаралды 97 М.
路飞被小孩吓到了#海贼王#路飞
00:41
路飞与唐舞桐
Рет қаралды 80 МЛН
Best KFC Homemade For My Son #cooking #shorts
00:58
BANKII
Рет қаралды 58 МЛН
ОСКАР vs БАДАБУМЧИК БОЙ!  УВЕЗЛИ на СКОРОЙ!
13:45
Бадабумчик
Рет қаралды 6 МЛН
KINDNESS ALWAYS COME BACK
00:59
dednahype
Рет қаралды 167 МЛН
Sweep line algorithm - Voronoi tessellation
0:52
Kevin Schaal
Рет қаралды 74 М.
All The Math References Frame by Frame From Animation vs. Math
15:15
Ron与数学
Рет қаралды 1,2 МЛН
Procedurally Generated 3D Dungeons
9:42
Vazgriz
Рет қаралды 281 М.
Polygon Triangulation [1] - Overview of Ear Clipping
14:10
Two-Bit Coding
Рет қаралды 21 М.
Deluanay Triangulation & Voronoi Diagram
5:24
3u54e4f5
Рет қаралды 85 М.
How Dijkstra's Algorithm Works
8:31
Spanning Tree
Рет қаралды 1,3 МЛН
Triangulation
2:47
shibbiness
Рет қаралды 60 М.
Voronoi Diagrams and Procedural Map Generation
15:36
MAN OF EERIE LETTERS
Рет қаралды 38 М.
Спит с ОТКРЫТЫМИ ГЛАЗАМИ! 😱😴
0:25
Взрывная История
Рет қаралды 5 МЛН
Smart thief😳 لص ذكي…
0:19
MARYA & AMINE
Рет қаралды 76 МЛН
Waka Waka 😁 #funnyshorts #rianashow
0:14
RianaShow
Рет қаралды 4,6 МЛН
Smart thief😳 لص ذكي…
0:19
MARYA & AMINE
Рет қаралды 76 МЛН
Толстый солдат всем отомстил #shorts
1:00