Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Wrapping MeshCriteria into a struct

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Wrapping MeshCriteria into a struct


Chronological Thread 
  • From: Sebastien Loriot <>
  • To:
  • Subject: Re: [cgal-discuss] Wrapping MeshCriteria into a struct
  • Date: Tue, 5 Jul 2022 11:13:29 +0200
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-data: A9a23:hE7cY6BAUeb+5xVW/xrlw5YqxClBgxIJ4kV8jS/XYbTApDgjhGRRz jQaXWvVPPrYa2f8fot2bN++pBwOsJfRzYJlOVdlrnsFo1Bi+ZOUX4zBRqvTF3rPdZObFBoPA +E2MISowBUcFyeEzvuVGuG96yE6j8lkf5KkYAL+EnkZqTRMFWFw03qPp8Zj2tQy2YfhXlvU0 T/Pi5S31GGNi2Yc3l08sPrrRCNH5JwebxtF1rCWTakjUG72zxH5PrpHTU2CByeQrr1vIwKPb 72rIIdVUY/u10xF5tuNyt4Xe6CRK1LYFVDmZnF+A8BOjvXez8A/+v5TCRYSVatYoza0ovEh4 fNJicy1aCkjMYnKydkjUzANRkmSPYUekFPGCX22sMjW0FefNnWwnbNhC0Y5OYBe8eFyaY1M3 aZAeXZdM1bZ3bvwnOzTpupE3qzPKOHwOIQFu3Z8izTdJfkjSJHHBa7N4Le02R9p1p0QQ6mAO aL1bxIxYy3pMh5CNm1MJ7EcjN6y21b/NBBx/Qf9Sa0fujCPlmSdyoPFO9XcfpmGRN5eg12Dj nnX+nzwRBAcLt2WjzSfmk9AncfKlCL/HZ0ITfi2qqAsj1qUyWgeThYRUDNXvMVVlGa9Zu9+e 2Uy/hZ+qIkc/kOPSIjAYR2R9SvsUgEnZ/JcFOgz6Qeow6XS4hqECmVsctKnQIx23CPRbWx6v mJlj+8FFhQ07+LIESP1GqO86GLtaXJMfAfucAddFVNdi+QPtr3fmf4mczqOOKu8j9mwBiuph j7W8m4xgLIcicNN3KK+lbwmv95OjsiYJuLWzl+PNo5A0u+fTND+D2BPwQaAhcus1K7DEjG8U IEswqByFtwmA5CXjzCqS+4QBryv7PvtGGSC3AA+Qsh9rG/2pC/LkWVsDNdWdBcB3iEsKW+BX aMvkV45CGJ7Zyb1MfcsP+pd9exzlPG8T7wJqcw4nvIXOsQrHON21C5pYkGU0gjQfLsEwMkC1 WOgWZ/0Vx4yUPw5pBLvHrt1+eJ1m0gWmDyLLbimnkzP+efPPxa9FOZVWHPQNLxRxP3f+239r Y0PX/ZmPj0FD4USlAGModBNRb3LRFBnba3LRzt/LLHZfFU+Rj9+YxITqJt4E7FYc21uvr+g1 hmAtoVwkTITXFXLdleHbG5NcrTqUcotpH43J31+MlOh2nxlaoGqtf9Ne5wydLgh1epi0f8kF 6lfK5vcWqxCGmbd5jAQTZjht4g9JhmmgAS5OSD6MjUyephXQRPEp43/dQz1+ShSVSe67JNso 7Cp2g7Bb4AEQgBuUJTfZP61ngG+uHEcnKR5WE6Reotff0Dl8Y5LLS3tj69vc5tcd0mbnjbDj lSYGxYVo+XJsrQZytiRiPDWtZqtHst/AlFeQDvW4LOwAi/QoTiuzIpGZ+CXJGyPWW7x/pKiU uVb1fTLNvMKwQRRuI1mHrc3lK8z6oe9p7JeyQg4TnzHY07xUeFlK3iCmNZV7+hDmuEftgyxV UaCvNJdPOzRas/iFVcQIisjb/iCha5IwGiMtaxtLRWo/jJz8ZqGTV5WY0uGhhtbIeYnK4gi2 +og5JMb5lDtkBYsKdra3ClY+37WdS4FWqQj844AWcrl1lRtxVZFbpjRTCTx5cjXOdlLN0ArJ B6ShbbD1+sAnBucKyJrGCifx/dZiLQPpAtOkA0IKWOPl4eXnfQwxhBQrWk6Qwk9Is+rCA6v1 rWH9nGZJJliOx9tjclHGn+2QkRPWEPf9Uv2xF8E0mbeSiFEk4ALwHIVYY6wEIIxqgqwvQS3O JmXzW/kVXDhe8SZMu4aRxt+s/K6JTBu3lSqpS1kdvhp27E1ZDPkhumlYm9gR94Lxy8urBWvm NSGN9qcpUE22eD8bkH750SnOWwsdS25
  • Ironport-hdrordr: A9a23:AvkJQqjY10eo4H1SIOxv2Ay1enBQXvkji2hC6mlwRA09TyXqrb HJoB19726JtN9xYgBcpTnkAsO9qBznhPxICOUqTMyftUzdyRGVxeJZnO7fKl/bak7DH4dmvM 8KE5SWSueAdWSS5fya3ODSKadG/DDoytHQuQ6T9QYIceioUc1dBsVCZzpz3ncYeOCOP/QEKK Y=
  • Ironport-phdr: A9a23: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 vEehQ53YOBr/zDpsQ5fGw==
  • Ironport-sdr: S1abL0ioxofq1201O1Nai1gs+lCfzOA6phZJyW9P9s4rj8VGA7iQvD5GziA1xH2k4kvomy67Li Cfwjfj/49cxnHgzXhg3RLYi6o3pPUrFBQefPXdsN2KZtoWxgw127MyLO1KiPZt1+YQDDdjgCA1 fRrb4Y258eFfdQUKhQ09s0inOTp0lBFr9XAEfL6V6cyUCVg4DcmChg8OLFeJDSGUJcunhhZSrh 9GGq//1vjbOU3c4vPwRO4Pis41vfkiQncfkRpTwA1NsH7p36c/wdOtDBFuQYdGgdmzoXMSxM/+ KyDEY18b02I5bW5Lro2S3foN

On your side, you could define an API where data returns the different critera thanks to member functions. That way when you call Mesh_3,
the named parameter will automatically pick the output of the function,
be it a double or a functor/lambda.

HTH,

Sebastien.

On 6/3/22 14:51, Marco Feder ( via cgal-discuss Mailing List) wrote:
Dear all,

For an application, I need to wrap facet_angle,facet_size,cell_size, etc… into a struct , call it Data, where the user can just do:

Data my_data;
my_data.cell_size = 0.1
my_data_radius_edge_ratio = 2.

and so on. In the trivial case where all the parameters are double, as one can simply do:

struct Data{
double cell_size, cell_radius_edge_ratio;
};

However, I’m not able to find a solution in case the user may want to use (for instance) a variable cell_size, like in this example (https://doc.cgal.org/latest/Mesh_3/Mesh_3_2mesh_implicit_sphere_variable_size_8cpp-example.html#_a6 <https://doc.cgal.org/latest/Mesh_3/Mesh_3_2mesh_implicit_sphere_variable_size_8cpp-example.html#_a6>).

In that case, what will be the type of cell_size in my own struct Data ? I only know it’s a boost named parameter, but I can’t see an elegant way to make both options (double and named parameter) available without hardcoding them.

Best regards,
Marco

--
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] Wrapping MeshCriteria into a struct, Sebastien Loriot, 07/05/2022

Archive powered by MHonArc 2.6.19+.

Top of Page