Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Create a 3D Triangulation out of a Surface mesh

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Create a 3D Triangulation out of a Surface mesh


Chronological Thread 
  • From: Bob Bill <>
  • To: "Bob Bill\" ( via cgal-discuss Mailing List)" <>
  • Subject: Re: [cgal-discuss] Create a 3D Triangulation out of a Surface mesh
  • Date: Fri, 6 May 2022 22:05:22 +0000 (UTC)
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-data: A9a23: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 e8bW5Lr8g==
  • Ironport-hdrordr: A9a23:6VV6JaGZCHHxZ5u7pLqEIceALOsnbusQ8zAX/mp2TgFYddHdss yokukbvCWE8Ar5OUtQ/+xoXZPqfZqyz/BICOUqXItKGTOW2ldAT7sSircKoQeQeBEWn9Q1vc hdmupFebjN5DNB/KLHCWeDc+rIuOP3iZyAtKPl6VBMZ0VGSYFFqz1YJCHzKCdLbTgDP5w/FJ DZwuUvnVadkSB+VKmGOkU=
  • Ironport-phdr: A9a23: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
  • Ironport-sdr: GQR44fLU3l0ZsmaULek4yp2z1yzwKLwiV1f66MFebCHtynluOivKQSu4MIqjXTJ9s9/aoUL9ln FS89a9sPTjsFMe/h/1kAjo/JKzCgh+MvfRNzDq0fF/nV9rWDegH4wP5phdWGx3HrKYbHdQytW+ EeZhn+K5k7e/9LOg7MNnSYmokTNIy8kbcsdcS+qVhZA5JU3hdr/bTnA10SHGA2Z4zKbEH6H9Fh /hl2iyhiaHaLjyiXsc+Px+TaXhGQKbVk7IcjylcRiRXUSS/wyMYdp6suaZpipfr+irASD3OHOX +H81cI5i+WO1DLIDLMl5CizF

Sebastien,

I did just these two small changes to the file linked in GitHub and it worked as expected:

// Domain
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef CGAL::Surface_mesh<K::Point_3> Mesh;

// Triangulation
typedef CGAL::Polyhedral_mesh_domain_3<Mesh,K> Mesh_domain;
typedef CGAL::Mesh_triangulation_3<Mesh_domain,CGAL::Default,Concurrency_tag>::type Tr;
typedef CGAL::Mesh_complex_3_in_triangulation_3< Tr> C3t3;

In the main.cc I just wrote:

Mesh_domain domain(my_surface_mesh);
 Mesh_criteria criteria(facet_angle=25, facet_size=0.15, facet_distance=0.008,
cell_radius_edge_ratio=3);

// Mesh generation
C3t3 c3t3 = CGAL::make_mesh_3<C3t3>(domain, criteria, no_perturb(), no_exude());


and the result is correct. I don't see why it works now, honestly.

Best

Il venerdì 6 maggio 2022, 20:36:31 CEST, Bob Bill" ( via cgal-discuss Mailing List) <> ha scritto:


Sebastien, 
I executed your example from GitHub with several .off files and visualized the result using `output_to_medit` , but the interior is still empty, not filled with tetrahedra like in this picture (https://doc.cgal.org/latest/Mesh_3/index.html#fig__figureimplicit_domain). 
Is this a visualisation bug, or is it expected? It should have tetrahedra inside.

Thanks a lot for your time
Il venerdì 6 maggio 2022, 16:51:54 CEST, Sebastien Loriot" ( via cgal-discuss Mailing List) <> ha scritto:


c3t3 is a 3D mesh. You can use
https://doc.cgal.org/latest/Mesh_3/group__PkgMesh3IOFunctions.html#ga1ca4f403781718f2f4d5c227c89ed496

or any other IO function.

Best,

Sebastien.

On 5/6/22 16:49, Bob Bill ( via cgal-discuss Mailing
List) wrote:
> Thanks for your answers.
> Sebastien, in the example you linked it seems to me that only the
> surface is meshed, right? I also need to fill the interior of the my
> surface_mesh. Is there a way to do that?
>
> Thanks for your time.
> Il venerdì 6 maggio 2022, 15:32:43 CEST, Sebastien Loriot"
> ( via cgal-discuss Mailing List)
> <> ha scritto:
>
>
> You can check this example:
>
> https://github.com/CGAL/cgal/blob/master/Mesh_3/examples/Mesh_3/remesh_polyhedral_surface_sm.cpp
> <https://github.com/CGAL/cgal/blob/master/Mesh_3/examples/Mesh_3/remesh_polyhedral_surface_sm.cpp>
>
> Best,
>
> Sebastien.
>
> On 5/6/22 15:14, Bob Bill (
> <mailto:> via cgal-discuss Mailing
> List) wrote:
>  > I'm still trying to solve this, sorry again. I've seen the make_mesh_3
>  > function
>  >
> (https://doc.cgal.org/latest/Mesh_3/group__PkgMesh3Functions.html#ga1ee73dc372985c6aeef85f2415fac0ba
> <https://doc.cgal.org/latest/Mesh_3/group__PkgMesh3Functions.html#ga1ee73dc372985c6aeef85f2415fac0ba>)
>
>  > but my initial domain is a triangle Surface_mesh, not a Polyhedron as in
>  > the example, so I am still stuck and I need a help or a hint.
>  >
>  > Just to make things clearer, my goal is to create a 3D triangulation
>  > from the Surface_mesh `mesh2` of this basic example program in the
>  > documentation :
>  >
> https://doc.cgal.org/latest/Polygon_mesh_processing/Polygon_mesh_processing_2corefinement_consecutive_bool_op_8cpp-example.html#a5
> <https://doc.cgal.org/latest/Polygon_mesh_processing/Polygon_mesh_processing_2corefinement_consecutive_bool_op_8cpp-example.html#a5>
>  >
>  > Best
>  >
>  > Il venerdì 6 maggio 2022, 01:15:25 CEST, Bob Bill <
> <mailto:>>
>  > ha scritto:
>  >
>  >
>  > Dear all,
>  >
>  > I have a triangulated Surface_mesh (which is the output of a boolean
>  > operation), and now I need to get a 3D triangulation from it, i.e. to
>  > fill it with tetrahedra. I don't see a direct way to do this, so I'd
>  > like to hear from you what your approach would be.
>  >
>  > My first guess was to do just:
>  > // CGAL::Surface_mesh<K> sm
>  > Triangulation tr(s.points().begin(),sm.points().end());
>  >
>  > but I don't know honestly if that's the preferred way. Any hint or
>  > comment is highly appreciated!
>  >
>  > Best regards,
>  > Bob
>  >
>  > --
>  > You are currently subscribed to cgal-discuss.
>  > To unsubscribe or access the archives, go to
>  > https://sympa.inria.fr/sympa/info/cgal-discuss
> <https://sympa.inria.fr/sympa/info/cgal-discuss>

>
>  >
>
> --
> You are currently subscribed to cgal-discuss.
> To unsubscribe or access the archives, go to
> https://sympa.inria.fr/sympa/info/cgal-discuss
> <https://sympa.inria.fr/sympa/info/cgal-discuss>
>
>
>
> --
> You are currently subscribed to cgal-discuss.
> To unsubscribe or access the archives, go to
> https://sympa.inria.fr/sympa/info/cgal-discuss
>

--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss



--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss




Archive powered by MHonArc 2.6.19+.

Top of Page