Subject: CGAL users discussion list
List archive
- From: Mael Rouxel-Labbé <>
- To:
- Subject: Re: [cgal-discuss] Reliable way to offset a mesh?
- Date: Wed, 23 May 2018 15:51:30 +0200
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=None ; spf=None
- Ironport-phdr: 9a23:YxkYqxPKURHQrB2I3acl6mtUPXoX/o7sNwtQ0KIMzox0I/r/rarrMEGX3/hxlliBBdydt6ofzbKO+4nbGkU4qa6bt34DdJEeHzQksu4x2zIaPcieFEfgJ+TrZSFpVO5LVVti4m3peRMNQJW2aFLduGC94iAPERvjKwV1Ov71GonPhMiryuy+4ZLebxlGiTanfb9+MAi9oBnMuMURnYZsMLs6xAHTontPdeRWxGdoKkyWkh3h+Mq+/4Nt/jpJtf45+MFOTav1f6IjTbxFFzsmKHw65NfqtRbYUwSC4GYXX3gMnRpJBwjF6wz6Xov0vyDnuOdxxDWWMMvrRr0yRD+s7bpkSAXwhSkaKTA5/mHZhM9+gq1Vrx2upQBwzYHPbYGJN/dzZL/Rcc8USGdDWMtaSixPApm7b4sKF+cPOvxXoJf5p1QWsRW+AhSsBezxxT9Mn3P427c13P86HgbcwQctGNcOv27Ko9XxLqsSS+e1zLTHzDrda/NawzP955LTfR86v/6BRr1wftTWyUkqCQzFkk+QqIzrPzyPyusNr2+b7/BgVO61l2EnrARxryGpy8wxhIfJgYcVxUrF9SV/2Is1JNu4SFR6YdG+CpdQuTuaO5N5QsMjX2FouDs6xaYctZGneygKzYwryALQa/Odd4iE+BXjVPyeITp+mXlre6q/ig6v/UWiyeDwTMe53VhQoiZYj9XAq2oB2wLc58WFUvdw+lut1SyM2g3S8O1JJV04mbDFJ5I/3LI9kIcYv17ZES/sgkr2ibebdkU69eis7OTqerrrqoWZN49zigzyKKEulda+AeQ8KwQOWHWb+fim2L3k4035QK9GjvsonanFqJzaJMIbqbClAwJNz4ou6RWyAy2o3dkWh3ULMU9JdA+dg4T3NFzDIuj0DfKljFStlDdryerGPrrkApjVK3jMiqnufbJn505Gzwoz0N9e6IxQCr0bJPL8QFT+u8fGARIiPAy73eHnCNBj2YMCQ2KOAqGZP7nOvl+U4eIvOemNaJUJtzb6Lvgp/+TugmMhmV8BYamp2oMaZ2y3Hvt8J0WVeGfjgtYaEWgWowo+V/fqhUaZUT9TYnayR7gz6is6CIKgF4fDR5qijKaP3CehTdVrYHtbAAWMDWvwbNfDHOwdbTqbZM5niD0NE7a7DJQw0Amn8w78xb0gJeXd/mgUtInoycNutNHUwBo9/DgxA8WG2HyWVEl1mHkJTnk4xvNRu0t4n3KK3KxPuftFBdFXotdAWA27fcrZxuF+Tcr1RxLMepGNQVysT/2pDDY0Q84r0tEHaFp6AcTkhRfGiXn5S4QJnqCGUcRnupnX2GL8cp4kmiT2kZI5hlxjefNhcGivh6px7Q/WXdebnEiekqu2b7US1SXR832Si2GJuRMACVIiYeD+RXkaI3Dug5Hh/EqYFu2hBLMiPxdb2MCLIbdNcMyvhlJDFq+6ZYbuJlmpkmL1Pi6mg7OBaI2wJzdBmiDaVQ4BmgEXuHGbKU45GCfnpW/CXmRj
Which version of CGAL are you using? The parameter "manifold()" was
added with CGAL 4.12.
On 23/05/2018 15:41, Zesen Qian wrote:
> Thanks Mael, while this solves the last problem, a new one pumps up:
>
> /home/riaqn/codes/cxx/offset.cxx:65:102: error: ‘manifold’ was not
> declared in this scope
> base<T>::Meshing::C3t3 c3t3 = CGAL::make_mesh_3<typename
> base<T>::Meshing::C3t3>(domain, criteria, params::manifold());
>
> I'm sure I included <CGAL/refine_mesh_3.h>, and params is CGAL::parameters.
>
> Best,
> Zesen
>
> On Wed, May 23, 2018 at 9:36 AM, Mael Rouxel-Labbé
> <>
> wrote:
>> Tags are used differently:
>>
>> C3T3 c3t3 = CGAL::make_mesh_3<C3T3>(domain, criteria, manifold());
>>
>>
>> On 23/05/2018 15:28, Zesen Qian wrote:
>>> OK so I just rewrote the program to use Mesh_3. One problem I
>>> encountered is that I want to restrict the output mesh to be manifold,
>>> but the named parameters doesn't seem to work. It told me:
>>>
>>> /home/riaqn/codes/cxx/offset.cxx:65:102: error: ‘manifold’ was not
>>> declared in this scope
>>> base<T>::Meshing::C3t3 c3t3 = CGAL::make_mesh_3<typename
>>> base<T>::Meshing::C3t3>(domain, criteria,
>>> manifold=params::manifold());
>>>
>>> it seems that there isn't such a named parameter in make_mesh_3's
>>> signature?
>>>
>>> Best,
>>> Zesen
>>>
>>>
>>> On Wed, May 23, 2018 at 2:57 AM, Sebastien Loriot (GeometryFactory)
>>> <>
>>> wrote:
>>>> On 05/22/2018 08:33 PM, Zesen Qian wrote:
>>>>> Hi Sebastien,
>>>>>
>>>>> Thanks for this. I wrote the program myself and I'm using surface_mesh
>>>>> instead of mesh_3. Question: Why will Mesh_3 be faster? From what I
>>>>> understand this will not only generate facets but also cells inside
>>>>> the shape? How will that accelerate the process?
>>>> Mesh_3 code has been updated to take advantage of threads so it will be
>>>> faster. Moreover, the code of Surface_mesh has not been updated for some
>>>> time now because we are planning to replace it with the implementation of
>>>> Mesh_3. If you put no constraints on the tetrahedra, only the
>>>> constraints on
>>>> surface facets will make the mesh work more.
>>>>
>>>> Sebastien.
>>>>
>>>>
>>>>> And in particular, if I'm not interested in the cells, how should I
>>>>> set the parameters concerning it? i.e., cell_radius_edge_ratio and
>>>>> cell_size.
>>>>>
>>>>> Best,
>>>>> Zesen
>>>>>
>>>>> On Tue, May 22, 2018 at 2:25 PM, Sebastien Loriot (GeometryFactory)
>>>>> <>
>>>>> wrote:
>>>>>> Note that this PR : https://github.com/CGAL/cgal/pull/3043
>>>>>> will bring some noticeable speed up as well as parallel mesh algorithm.
>>>>>>
>>>>>> Best,
>>>>>>
>>>>>> Sebastien.
>>>>>>
>>>>>>
>>>>>> On 05/22/2018 07:18 PM, Zesen Qian wrote:
>>>>>>> Hi Sebastien,
>>>>>>>
>>>>>>> Sorry for keep spamming your inbox - but I found how to sample areas
>>>>>>> differently based on variety. For future reference, the parameter
>>>>>>> distance_bound constrols the max distance from every generated facet
>>>>>>> to the surface. So when the same value applies to different areas, the
>>>>>>> areas with more details will get sampled more.
>>>>>>>
>>>>>>> Thank you so much for the help!
>>>>>>>
>>>>>>> Best,
>>>>>>> Zesen
>>>>>>>
>>>>>>> On Tue, May 22, 2018 at 11:11 AM, Zesen Qian
>>>>>>> <>
>>>>>>> wrote:
>>>>>>>> Hi Sebastien,
>>>>>>>>
>>>>>>>> I think I was mistaken - I tried it again and it seems that I don't
>>>>>>>> have to do too much about the angle_bound - adjusting other
>>>>>>>> parameters
>>>>>>>> would suffice to give a decent result.
>>>>>>>>
>>>>>>>> However, it is indeed slow. One feature of my mesh is that it donsn't
>>>>>>>> have to be evenly sampled - some areas require more details than
>>>>>>>> others. Can I do some trick so that those area receive extra
>>>>>>>> sampling, while other more monotone area get less, so I can save some
>>>>>>>> processing time?
>>>>>>>>
>>>>>>>> Best,
>>>>>>>> Zesen
>>>>>>>>
>>>>>>>> On Tue, May 22, 2018 at 10:26 AM, Zesen Qian
>>>>>>>> <>
>>>>>>>> wrote:
>>>>>>>>> Hi Sebastien,
>>>>>>>>>
>>>>>>>>> Thanks for this. I don't know if that's a similiar thing, but I
>>>>>>>>> tried
>>>>>>>>> https://doc.cgal.org/latest/Surface_mesher/
>>>>>>>>> by a distance function(with AABB_tree and side_of_triangle). Seen
>>>>>>>>> from
>>>>>>>>> the source code of the plugin, it's very similar.
>>>>>>>>>
>>>>>>>>> To get a decent result it's quite slow. If I set the angular bound
>>>>>>>>> to
>>>>>>>>> 90 degree(more than 30), the algorithm is not garanteed to
>>>>>>>>> terminate(and indeed in my case). My mesh has some very thin layers
>>>>>>>>> that's easy to be ignored by meshing, so I don't expect this method
>>>>>>>>> to work.
>>>>>>>>>
>>>>>>>>> What I'm now trying is simply using the "solidify" modifier in
>>>>>>>>> Blender, and fix the potential self-intersections using refining and
>>>>>>>>> outer-hull operation, and then use boolean operation with the
>>>>>>>>> original
>>>>>>>>> mesh to get a offseted mesh. I'm using libigl to do these tasks.
>>>>>>>>>
>>>>>>>>> Best,
>>>>>>>>> Zesen
>>>>>>>>>
>>>>>>>>> On Tue, May 22, 2018 at 9:59 AM, Sebastien Loriot (GeometryFactory)
>>>>>>>>> <>
>>>>>>>>> wrote:
>>>>>>>>>> There is indeed nothing official in CGAL. However, in the
>>>>>>>>>> Polyhedron
>>>>>>>>>> demo we wrote a small plugin that is meshing the distance function
>>>>>>>>>> to
>>>>>>>>>> a
>>>>>>>>>> mesh
>>>>>>>>>> and the output is by construction guaranteed to be free from
>>>>>>>>>> self-intersections. However sharp features are not correctly meshed
>>>>>>>>>> if
>>>>>>>>>> not protected.
>>>>>>>>>>
>>>>>>>>>> Go into 3D Surface Mesh Generation -> Offset meshing once having
>>>>>>>>>> loaded
>>>>>>>>>> a polyhedron.
>>>>>>>>>>
>>>>>>>>>> Source code is here:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> https://github.com/CGAL/cgal/blob/releases/CGAL-4.12-branch/Polyhedron/demo/Polyhedron/Plugins/Surface_mesh/Offset_meshing_plugin.cpp
>>>>>>>>>>
>>>>>>>>>> HTH,
>>>>>>>>>>
>>>>>>>>>> Sebastien.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 05/17/2018 07:44 PM, Zesen Qian wrote:
>>>>>>>>>>>
>>>>>>>>>>> Hi list,
>>>>>>>>>>>
>>>>>>>>>>> I have a triangulated, closed mesh which is free of any
>>>>>>>>>>> degeneracies.
>>>>>>>>>>> Is there any reliable way to offset this mesh? By reliable I mean
>>>>>>>>>>> the
>>>>>>>>>>> result mesh should be free of any degeneracies.
>>>>>>>>>>>
>>>>>>>>>>> I searched on Internet and there is simply not an library/program
>>>>>>>>>>> available that can do this. I guess CGAL isn't capable of this
>>>>>>>>>>> either,
>>>>>>>>>>> but I believe people on this list should be familiar with this
>>>>>>>>>>> topic
>>>>>>>>>>> and maybe offer some comments.
>>>>>>>>>>>
>>>>>>>>>>> Thank you.
>>>>>>>>>>>
>>>>>>>>>>> Best,
>>>>>>>>>>> Zesen
>>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> 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
>>>>
>>>>
>>
>> --
>> You are currently subscribed to cgal-discuss.
>> To unsubscribe or access the archives, go to
>> https://sympa.inria.fr/sympa/info/cgal-discuss
>>
>>
- Re: [cgal-discuss] Reliable way to offset a mesh?, (continued)
- Re: [cgal-discuss] Reliable way to offset a mesh?, Sebastien Loriot (GeometryFactory), 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Sebastien Loriot (GeometryFactory), 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Sebastien Loriot (GeometryFactory), 05/23/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/23/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Mael Rouxel-Labbé, 05/23/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/23/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Mael Rouxel-Labbé, 05/23/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/23/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Mael Rouxel-Labbé, 05/24/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Sebastien Loriot (GeometryFactory), 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Zesen Qian, 05/22/2018
- Re: [cgal-discuss] Reliable way to offset a mesh?, Sebastien Loriot (GeometryFactory), 05/22/2018
Archive powered by MHonArc 2.6.18.