Graphics3D plot Polygon (Joined Table) gets different results with and without decimal point

1. Without decimal point

 Graphics3D[{Arrowheads[0.03], Black, Specularity[White, 50],
Polygon[Join[
Table[{0, 0, 0} + {Cos[a], Sin[a], 0}, {a, 0, π, π/6}],
Table[{-.5 , 0, 0} + .5 {Cos[a], Sin[a], 0}, {a,
0, π, π/6}],
Table[{.5, 0, 0} + .5 {Cos[a], Sin[a], 0}, {a, π,
2 π, π/6}],
Table[{0.5, 0, 0} + 0.25 {Cos[a], Sin[a], 0}, {a, 0,
2 π, π/6}]]]}]


2. With decimal point

Graphics3D[{Arrowheads[0.03], Black, Specularity[White, 50],
Polygon[Join[
Table[{0, 0, 0} + {Cos[a], Sin[a], 0}, {a, 0, π, π/6}],
Table[{-.5 , 0, 0} + .5 {Cos[a], Sin[a], 0}, {a,
0., π, π/6}],
Table[{.5, 0, 0} + .5 {Cos[a], Sin[a], 0}, {a, π,
2 π, π/6}],
Table[{0.5, 0, 0} + 0.25 {Cos[a], Sin[a], 0}, {a, 0.,
2 π, π/6}]]]}]


• This is because 0. is a floating point, and 0 an integer. It is best where possible to use integer, or at least rational numbers. – Feyre Sep 1 '16 at 8:00
• But I am still not clear about how this difference happens. – user42305 Sep 1 '16 at 9:03
• sometimes 0. Will be 0.00~1 or so thus leave out one point in Table, but even this cannot explain this phenomenon. I'm currently without my computer, I will check this out. :) it seems like a mathematica's misbehaviour – Wjx Sep 5 '16 at 6:54