Bug introduced in V10.4 and persists through 10.4.1
Given that I have the following data set
mat =
{{{0.,-5.,0.},{-5.22027,0.,1.79454}},
{{-0.858274,-4.93844,0.0924},{-5.41893,0.782172,1.77784}},
{{-1.82027,-4.75528,-0.109357},{-5.60223,1.54509,1.95084}},
{{-2.94275,-4.45503,-0.550252},{-5.77547,2.26995,2.3602}},
{{-4.31974,-4.04509,-1.18618},{-5.94562,2.93893,3.03783}},
{{-6.12372,-3.53553,-2.00001},{-6.12372,3.53553,3.99999}}};
domain =
{{{5.0165, 2 Pi}, {0, 0.756304}}, {{3.4076, 2 Pi}, {0, 2.31521}},
{{3.7396, 2 Pi}, {0, 1.93244}}, {{3.85122, 2 Pi}, {0, 1.86739}},
{{3.91005, 2 Pi}, {0, 1.87528}}, {{3.94139, 2 Pi}, {0, 1.91028}}};
ellipsePoints[mat_, {x_, y_}] :=
mat.{Sin[#], Cos[#], 1} & /@ Range[x, y, 0.02 Pi]
ellipsePoints[mat_, {{a_, b_}, {c_, d_}}] :=
mat.{Sin[#], Cos[#], 1} & /@
Join[Range[a, b, 0.02 Pi], Range[c, d, 0.02 Pi]]
pts = Flatten[MapThread[ellipsePoints, {mat, domain}], 1];
With help of RunnyKine's alphaShapes2DC[]
function, I can find the approximate boundary
Show[Graphics[Point[pts]], RegionBoundary@alphaShapes2DC[pts, 5.5]]
However, when I get the coordinates of the boundary via MeshCoordinates[]
, which gives me a wrong order of point-set.
ListLinePlot@MeshCoordinates@RegionBoundary@alphaShapes2DC[pts, 5.5]
So my question is:(I using the Mathematica V$10.4$ on Windows $32$ bit system)
- How to do to achieve the right order of point-set?
alphapoints
function, it applies to anyBoundaryMeshRegion
. $\endgroup$