Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Point Property map

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Point Property map


Chronological Thread 
  • From: "Sebastien Loriot (GeometryFactory)" <>
  • To:
  • Subject: Re: [cgal-discuss] Point Property map
  • Date: Mon, 9 Jul 2018 10:00:14 +0200
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-phdr: 9a23:gp4kNBxAMq8IrWHXCy+O+j09IxM/srCxBDY+r6Qd2uoVIJqq85mqBkHD//Il1AaPAd2Fraocw8Pt8InYEVQa5piAtH1QOLdtbDQizfssogo7HcSeAlf6JvO5JwYzHcBFSUM3tyrjaRsdF8nxfUDdrWOv5jAOBBr/KRB1JuPoEYLOksi7ze+/94HSbglSmDaxfa55IQmrownWqsQYm5ZpJLwryhvOrHtIeuBWyn1tKFmOgRvy5dq+8YB6/ShItP0v68BPUaPhf6QlVrNYFygpM3o05MLwqxbOSxaE62YGXWUXlhpIBBXF7A3/U5zsvCb2qvZx1S+HNsDwULs6Wymt771zRRH1likHOT43/mLZhMN+g61Uog6uqRNkzo7IYoyYLuZycr/TcN4YQ2dKQ8ZfVzZGAoO5d4YDAfcPMvhDoIbnvFsOsRq+CheqBOjyzDFIgWX23aw90+Q9DArK2A0uEMwJsHTRstr1KL0SUOC1wqbS0TrDc/RW2S396YTNfBwqvPaBXal0ccrW00kvFgTFjkmKpYzgOzOYzesNs22B4OphUeKjkXIoqwZ0ojW2wMonl4fHhoUQyl/e9CV5xp44JduiR0FgetGkFIVfuzuGOItxR8MuW25ouCcmyr0GpJ60ZzIGx4ggxx7ac/CIaI+I4hX4VOaNOzt4g2hleL2nixmu/kiv0On8WtOz0FZQoSpIlMTHuHMV1xHL6MWKReFx8lq/1TuPzQze6f9ILVo7mKfUM5IswL09moANvUnMHyL6glj6gauYe0k++OWl6+Lqaaj8qJCGLY97kAT+P7wumsOhBeQ4NRADX22B9uS90L3v5EP4QLBWgvEvnKnUv5/XKd4Upq6+BA9V3YIj5AilAzi619QYmGELLFNDeB2Zk4jkI1PDLf/iAfuinVihkC1nyvPYMrH7DZjAIWDPkLL7crZ8705cxhAzzdda559MEbEBJPXzWlXwtNzfEh81KQm0w+L8BdVy04MRQ2OPAquDPKzOtl+I4/ojI/OQa48NpDb9N/8l6ubygn82g1AdebCl0oYWaHCjAvtmPl6ZYWH3j9caEWYKuxI+Q/bwhF2DVz5TfXeyULgm6jE1EoL1RbvEE4uiibjE0CagFYBNfUhHDEqNGDHmbdaqQfAJPWipL8VoiSAFWL7pb4g71Bay/E/Vxr1iI/bO6wMRvo7kzsk0raWHjhU17z1zE4KY10mCSmh1miUDQDpgj/M3mlB01lrWifswuPdfD9EGv6oYADd/DobVyqlBM/63XwvAetmTT1P/G4epBDgwSpQ6xNpcOh8hSeXntQjK2m+RO5FQj6aCXcVm/afV3ny3LMF4mS6fifsRymI+S84KDlWIw65y8w+JWtzMmkSd0rmvLeESgHKL+2CEwm6D+kpfVVwoXA==

A point property map is usually a map associating a point to a vertex.
All the default models of FaceGraph provided by CGAL do have a default
one and you don't need to provide one to the functions you call.
In case you want to have a custom point map you need to comply with
boost concepts:

https://www.boost.org/doc/libs/1_67_0/libs/property_map/doc/property_map.html

For the purpose of the exercise, let's say you want to write a
map for a Surface_mesh that is translating its points by a constant
vector. You would write something like that:


template <class Point, class Vector>
struct Translate_point_map
{
typedef Point value_type;
typedef Point reference;
typedef boost::readable_property_map_tag category;
typedef CGAL::Surface_mesh<Point>::Vertex_index key_type;

Translate_point_map(const CGAL::Surface_mesh<Point>& sm,
const Vector& v)
: sm(sm)
, v(v)
{}

friend value_type get(const Translate_point_map& m, key_type k)
{
return m.sm.point(k)+v;
}

const Surface_mesh<Point> sm;
Vector v;
};

A complete example is here:
https://gist.github.com/sloriot/7093e7e4a77a494f0df8b3389f09e8f7

You might also want to read about properties that you can attach
to a surface mesh object:

https://doc.cgal.org/latest/Surface_mesh/#title6



Sebastien.

On 07/06/2018 08:21 PM, Annie-Pier L. wrote:
Hi, I would like to create a pointPropertyMap for the
CGAL::segmentation_via_sdf_values function. How can I do it?

Cheer,
Annie-Pier





--
Sent from: http://cgal-discuss.949826.n4.nabble.com/




Archive powered by MHonArc 2.6.18.

Top of Page