Subject: CGAL users discussion list
List archive
[cgal-discuss] make_mesh_3 missing disjoint components from polyhedral surface.
Chronological Thread
- From: rdzhao <>
- To:
- Subject: [cgal-discuss] make_mesh_3 missing disjoint components from polyhedral surface.
- Date: Fri, 27 Sep 2019 12:41:40 -0500 (CDT)
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Fail ; spf=Pass
- Ironport-phdr: 9a23:9f3GhRKDK+4xt5xSgdmcpTZWNBhigK39O0sv0rFitYgQI/3xwZ3uMQTl6Ol3ixeRBMOHsqkC0LSd6vm6EUU7or+5+EgYd5JNUxJXwe43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRpOOv1BpTSj8Oq3Oyu5pHfeQpFiCezbL9oIhi7rArdutQLjYd8N6081gbHrnxUdupM2GhmP0iTnxHy5sex+J5s7SFdsO8/+sBDTKv3Yb02QaRXAzo6PW814tbrtQTYQguU+nQcSGQWnQFWDAXD8Rr3Q43+sir+tup6xSmaIcj7Rq06VDi+86tmTgLjhSEaPDA77W7XkNR9gqxbrhy/pBJx3oHbb52aOvdlYqPQf88WSXZdUspNSSBMBJ63YYsVD+oGOOZVt5P9qEYPrBu+HwasA/7kxzhJh3/2x6I61P4hERzA3AM9BN8OtW/UrMjvOKgMTO+10bDFwDPeZP1Y3jf97ZLHchEnofyUW7J/a9HexlIrFwzblFmftYvlPzaT2+8QsGab9/JtWf+rhmMjsQ18rDuiyt0vh4TInI4Yy1HJ+CNky4gvP9K4UlR0Ydu8HZtQqS6aM4x2T9skQ2xnoio6zKcJtoWgcygO1psr3QLQa/uCc4SQ4xLjUvieIStgiX54fL+ygwy+/Eajx+HmVcS50UxGoytEn9XUs3ACzR3T6syJSvtn+Ueh3C6C1gHT6u5eJkA0j7fbK5g8zbMrk5oTqlnDEjXol0rrka+abl8k9fSw6+T7frXmoYeROJN7ig7kNqQig9GwAeUjMgcSQmib4v+82ab4/Uz5RbVKluc5nrPYsJDcP8Qbp7S2DxVb0oY5uF6DCGKt390c2HUGN1lYYwmvjo7zOliILuqrI+24hgG2nCVrzveOaq/hC5LXM37PuLL6YPBw51MKm1l79sxW+58BUuJJG/n0QEKk7IWEXC98CBS9xqPcMPs4zpkXCDCKGbLfPa/P4wfRt7AfZtKUbYpQgw7Tbv0s5vrgl3g8yA0YZrTv0JcKOizhQ6ZWZn6BaH+pue8vVGcHug1nEb7s1BuEWDRZY3v0VKU5tGg2
Hi everyone,
I working working on generating tetrahedral mesh from input polyhedral
surface mesh. The model is a benzene with 6 C atoms and 6 H atoms. Those
atoms are disconnected balls in the input polyhedral surface mesh
(benzene.off).
However, by directly calling make_mesh_3, there will be missing components
in the final generated tet mesh.
So I resort to another post:
http://cgal-discuss.949826.n4.nabble.com/make-mesh-3-with-features-initial-points-for-C3T3-td4661118.html
This post tells that we need to set initial points as features to guide the
meshing process. So I modified the code with:
C3t3 c3t3 = CGAL::make_mesh_3<C3t3>(domain, criteria, features(domain),
no_lloyd(), no_odt(), no_perturb(), no_exude());
typedef C3t3::Triangulation::Point Weighted_point;
for(int i=0; i<atoms.size(); i+=3){
Weighted_point p(Weighted_point::Point(atoms[i], atoms[i+1],
atoms[i+2]));
Tr::Vertex_handle vh = c3t3.triangulation().insert(p);
c3t3.set_dimension(vh, 3);
}
CGAL::refine_mesh_3(c3t3, domain, criteria);
The idea is adding atom positions as initial points. But the code still
misses one component (a certain H atom).
A minimal code is attached here with model file (benzene.off) and atoms file
(benzene.xyz). It should be easy to directly compile and execute.
Suppose that the executable file is called "Meshing". The command
to run the code is:
./Mesh benzene.xyz benzene.off 0.2
.xyz file provides the atom locations.
.off file provides the model containing 12 balls (6 C atoms and 6 H atoms).
0.2 is a parameter to roughly control the element size.
The output contains a .off file for the surface of the tet meshing, where we
can find that there is missing components compared with the input .off file.
Is there anyone that can help dig out the problem?
Thank you so much!
Rundong
<nabble_a href="Archive.zip">Archive.zip
--
Sent from: http://cgal-discuss.949826.n4.nabble.com/
- [cgal-discuss] make_mesh_3 missing disjoint components from polyhedral surface., rdzhao, 09/27/2019
Archive powered by MHonArc 2.6.18.