First input is T, a Triplet list of indices -whom each row actually contains the three indices of a triangle vertices-. size(T) = [nb_triangles, 3]. Second input is e = [e1, e2], a row vector, couple of indices. Output S is the triplet list of indices which Share the edge e. For instance, if
e = [2, 4]
and T a tetrahedron
T = [1, 2, 3;...
1, 3, 4;...
1, 2, 4;...
2, 3, 4]
then the output of the function is
S = [1, 2, 4;...
2, 3, 4]
since both triangles [1, 2, 4] and [2, 3, 4] contain the edge [2, 4].
Conditions :
- If the edge is not part of any triangle in the list, the function must of course return the empty set, [].
- Edges are symmetric : [e1, e2] is the same edge as [e2, e1]
- Order of rows / edges in the output doesn't matter.
- Triangle indices are assumed always to be sorted in ascending order, T = [t1, t2, t3] with t1 < t2 < t3.
- Every indices are positive, distinct integers.
See also
Solution Stats
Problem Comments
2 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers37
Suggested Problems
-
Return the largest number that is adjacent to a zero
5512 Solvers
-
Remove any row in which a NaN appears
8768 Solvers
-
Return a list sorted by number of occurrences
2888 Solvers
-
Convert hex color specification to MATLAB RGB
254 Solvers
-
Flag largest magnitude swings as they occur
689 Solvers
More from this Author42
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
Info : T is actually a triangulation -list of triangles-, in which each index corresponding to the row index of a vertex in another list -a vertices list-, it is a widely used technique used to store and write triangular meshes in mesh processing. Here below the example is a tetrahedron -4 facets-.
I actually realize this problem looks like a lot to my second problem, "Find a common edge" ( https://fr.mathworks.com/matlabcentral/cody/problems/45218-find-a-common-edge ) ...