Subject: CGAL users discussion list
List archive
- From: Jane Tournois <>
- To:
- Subject: Re: [cgal-discuss] the strange result of odt-optimization in mesh_3_example
- Date: Fri, 13 Feb 2015 09:54:08 +0100
Hi Shang, you are right. Once exudation has been performed, there are weights on inside vertices that cannot be handled by ODT. ODT should be called before exudation. You can also use Odt_options as a parameter for make_mesh_3, as listed here http://doc.cgal.org/latest/Mesh_3/group__PkgMesh__3Functions.html#ga9159a9a2d11e027577fd8212956896f7 Best, Jane. Le 24/01/2015 09:05, Shang Feifei a
écrit :
Hi,
all,
Maybe I find the reason why the surface becomes rough and uneven. The arguments of make_mesh_3(), perturb, exude should be turned off. That is, C3t3 c3t3 =
CGAL::make_mesh_3<C3t3>(domain,
criteria,no_perturb(),no_exude());
Then perform the odt_optimization_mesh_3(). The
result is fine.
Shang
On Sat, Jan 24, 2015 at 12:41 AM, Shang
Feifei <>
wrote:
I use project
"mesh_polyhedral_domain_with_features" in
mesh_3_example.sln. The inputting file as polyhedral
domain is attached. I changed the .cpp file is as
follows.
Hi all,
int main()
{
// Create domain
Mesh_domain domain("D:/Program
Files
(x86)/CGAL-3.8/examples/Mesh_3/data/boxsub2cyl.off");
// Get sharp features
domain.detect_features();
// Mesh criteria
Mesh_criteria criteria(edge_size =
2.5,
facet_angle
= 25, facet_size = 2.5, facet_distance = 0.5,
cell_radius_edge_ratio = 3, cell_size = 2.5);
// Mesh generation
std::cout<<"Mesh generation
...";
C3t3 c3t3 =
CGAL::make_mesh_3<C3t3>(domain, criteria);
std::ofstream
medit_file("boxsub2cyl_features.mesh");
c3t3.output_to_medit(medit_file);
medit_file.close();
//ODT optimization
CGAL::odt_optimize_mesh_3(c3t3,
domain, time_limit=30);
std::ofstream
medit_file_odt("boxsub2cyl_features_odt.mesh");
c3t3.output_to_medit(medit_file_odt);
medit_file_odt.close();
//Exude
std::cout<<"Exude
optimization ...";
CGAL::exude_mesh_3(c3t3,
sliver_bound=10, time_limit=10);
std::cout<<"
done"<<std::endl;
std::ofstream
medit_file_exu("boxsub2cyl_features_exu.mesh");
c3t3.output_to_medit(medit_file_exu);
medit_file_exu.close();
}
It runs successfully. Then I
transform the result files into .vtk file to view
results. The result after make_mesh_3() is fine. But
boxsub2cyl_features_odt is strange. It misses some
tets and becomes rough and
uneven in surface. It seems that the surface doesn't
respect the domain. The domain
odt_optimization_mesh_3() used is also
features-caught. It should keep the features like
make_mesh_3(). It is confusing.
Any reply is
appreciated.
Shang Fei-Fei
-- Jane Tournois, PhD R&D Engineer at GeometryFactory http://www.geometryfactory.com/ |
- Re: [cgal-discuss] the strange result of odt-optimization in mesh_3_example, Jane Tournois, 02/13/2015
- Re: [cgal-discuss] the strange result of odt-optimization in mesh_3_example, Shang Feifei, 02/17/2015
Archive powered by MHonArc 2.6.18.