Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] 3D Mesh creates extremely small elements

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] 3D Mesh creates extremely small elements


Chronological Thread 
  • From: Michael Bieri <>
  • To:
  • Subject: Re: [cgal-discuss] 3D Mesh creates extremely small elements
  • Date: Wed, 4 Oct 2017 15:00:44 +0200
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-phdr: 9a23:GfnC5RIAj582is+ReNmcpTZWNBhigK39O0sv0rFitYgXL/TxwZ3uMQTl6Ol3ixeRBMOAtKIC1rKempujcFJDyK7JiGoFfp1IWk1NouQttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBWB6kG1uDUdExG6OQtuLfnuAabTid623qa84c79eQJN0R+8arN7IRH+hwTcrMhe1Y5jIKc80BrhrX5BeuAQzmRtcwHA1y3g79u9qcYwux9bvOgsopZN

Thanks Laurent.

That seems very plausible.

I'm still not quite sure whether I fully understand 1D feature protection. So far my understanding is as follows: The code below will - kind of - create/protect all lines that form a grid that corresponds to the surface of my 3D image, with the grid with the same resolution as the image. Furthermore, it will create a 1D feature wherever 2 materials and the surface intersect. 

So finally it would be possible that the features from the grid vs. the features from the 2-material+surface intersection are extremely close, thus forcing extremely small elements?

Would it make sense to extract all the 1D features and plot them in 3D? (I'm just thinking how to achieve this...)


// For the 1D-features
bool add_1D_features(const CGAL::Image_3& image,Mesh_domain& domain)
{
  typedef K::Point_3 Point_3;
  typedef Mesh_domain::Image_word_type Word_type; // that is `unsigned char`
  std::vector<std::vector<Point_3> > features_inside;
  std::vector<std::vector<Point_3> > polylines_on_bbox;
  CGAL::polylines_to_protect<Point_3, Word_type>(image, polylines_on_bbox,features_inside.begin(), features_inside.end());
  domain.add_features(polylines_on_bbox.begin(), polylines_on_bbox.end());
  return true;
}




On Wed, Oct 4, 2017 at 2:46 PM, Laurent Rineau (CGAL/GeometryFactory) <> wrote:

Le Tuesday, October 3, 2017 12:19:48 PM CEST Michael Bieri a écrit :

> Hi all

>

> Attached you find a screenshot of a mesh. The mesh is created from

> segmented image with a size field. The medium to rather large elements in

> the mesh are what I expect, but I wonder where that large number of

> extremely small elements come from, there where you see just a white

> mess...

>

> The mesh currently are: Mesh_criteria criteria(facet_angle=30,

> edge_size=cell_size_fct, cell_size=cell_size_fct);

>

> Best regards,

> Michael

>

>

> PS: Seems that there were some issues uploading the file. Sorry if you got

> this questions more than once.

 

That's hard to tell without seing the code. It seems your mesh domain defines 1D curves, and that they have very small features, or small proximities between non-adjcent curves.

 

--

Laurent Rineau, PhD

R&D Engineer at GeometryFactory http://www.geometryfactory.com/

Release Manager of the CGAL Project http://www.cgal.org/

 





Archive powered by MHonArc 2.6.18.

Top of Page