Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Inaccurate intersections between Tetrahedron_3 and Triangle_3?

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Inaccurate intersections between Tetrahedron_3 and Triangle_3?


Chronological Thread 
  • From: Marco Feder <>
  • To: "" <>
  • Subject: Re: [cgal-discuss] Inaccurate intersections between Tetrahedron_3 and Triangle_3?
  • Date: Thu, 28 Jul 2022 10:22:26 +0000
  • Accept-language: it-IT, en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=sissa.it; dmarc=pass action=none header.from=sissa.it; dkim=pass header.d=sissa.it; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=HOlAvOfHnWhSA2/xSQrEz3vkuU9C+B2RWeHihV102/A=; b=OvuDnG1nNRu/l9RBik/v882NmZxv2dQRGZQtlbKvFNadxT4JTI8LzC/CsF4Q2XvBHHnuaLfh/aEcZdQNZe+DohlREATmFEMMtBf/jzr2lM7D1J/ERgd/PH/hg35E+cPqTk+IJY+K1le8XoWLJAxF4zTePH72BmC4Z/urac3dOUxZhNo7UeSCJdAW2Wi5OywG9ue8ilsngwDqyPbYdM3qqAXhwtLvIZOMjC++DCk3PliFnfZILilCu0e1l7KQvWc14V7LnReosox1wYTCkxoy3jpuLwVsY1quqgwgrxDp9aMhl6WFEO58tFddwWk244wO3BpCdnQdoBEElr+34GMPrw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iUJ1qtExo+4c6ClGuP+RVkPwyIdxydyGhRbfM0OMy8bKMJQ0glV4QOguXnaIexlPzwXaYiCv8E1BhcA7+ZpeO0qTuDsOPurubVpe/aGb743hxh41nL7PLGiTCgxrRd5fIcshZiFFrd3chOPFjHK0olLSHwVFkBz7lXCG9+AA/7CdvlOMAl+83PDAxK4mafvJy9MMwZ9jV4Q77qicOgyvnM8ejiFyGsnVTKzHS3EA4Ro9fcWINy87pClHivtUSVd5/Un5WxGVf5xQhtkmBrJPwKNML1wZMYiZU8N54R31y2fWUavUi4VcdBrSIrJxCxJnv9+1t3VsiTVkXy3bY5dDZQ==
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=Pass ; spf=Pass
  • Ironport-data: A9a23:MOOj3q8TTAtfeBz4Ijk9DrUD2nuTJUtcMsCJ2f8bNWPcYEJGY0x3m 2VNDzvTPvfYYmWkeY8jO4+1/RgA6MXUxtdrHQRl+ShEQiMRo6IpJ/zJdxaqZ3v6wu7rFR88s Z1GMrEsCOhuExcwcz/0auCJQUFUjP3OHvymYAL9EngZqTVMEU/Nsjo+3b9i6mJUqYLhWVnV5 omi+5S31GKNglaYDEpEs8pvlzs05JweiBtA1rDpTa0jUPf2zhH5PbpHTU2DByOQrrp8QoZWc 93+IISRpQs1yfuC5uSNyd4XemVSKlLb0JPnZnB+A8BOiTAazsA+PzpS2Pc0MS9qZzu1c99Z5 NlNmd/vQwUSPrySmuEXWCNSTz0mIvgTkFPHCSDXXc274nD8KyKp/dg3SUY8MMsf5/p9BnxI+ boAMjcRYxufhuWwhrWmVu1rgcdlJ87uVG8dki04i2iBUrB/HdafH80m5vcAtNs0rsVAEPrTf eICaCF0ZVLBf3WjP39LV8hlx7/11xETdRUflFnP/rs44VLK0VNf76DBbNaPROejEJA9ckGw/ TudpDygWHn2Lue3wjWM9jegh/TEgDjgcJkDEaWxsP9smlyagGIJYCD6TnO+qPi9z0O5Q9hQM RVIonJy8e416VChScT7U1ugunmYsxUAWt1WVeon9AWKzamS6AGcboQZctJfQPAqtON1GjYo7 V+YwdHsDzdVuuGJEW3Io994sgiOESQSKGYDYwoNQg0E/8TvrekPYvTnHoYL/Emd3oKdJN3g/ 9yZhHRu3e1P3abnw43iowuZ3WvESo3hFFZd2+nBYo6yxipFDGJPT7Kp5F7d5J6sx67AFgDZ1 JTos/af4eYIBPmweMGlRewMGPSk4O6PPyeF3QY3Q8Vn8Cmx8Xm+e4wW+Ct5OEpiLscDf3nuf VPXvgRSopRUORNGjJObgaruVqzGLoC5SbwJs8w4iPITOvCdkyfapElTiba4hTyFraTVufhX1 W2nWcitF20GLq9s0SC7QewQuZdymH1ulD+NG8qmkEv5uVZ7WJJzYedUWLdpRrBphJ5oXC2Mo 76zyuPRlE8CAbegPkE7D6ZKcApQciNT6W/KRzx/LbfYeVI/QgnN+tfUwLg7fJdikbgdn/XV5 HzVZ6Or4AuXuJEzEi3TMioLQOq3A/5X9CtnVQRxYwrA8yV8Oe6HsfdOH7NqLOJP3LEynZZcE aNZE+3eWa8nYmqcpFwggWzV99AKmOKD3l/WY0JIoVEXI/ZdeuA+0oW7L1G0pHhfVHHfWAlXi +TI6z43iKErH2xKZPs6otr2p79olXRCyu90QWXSJdxfJBfl/IRwe37qj+QsKocNNUyblDed0 g+XBzYepPXM89VvoIaS2/jcotf7CfZ6E2pbA3LfseS8Ox7c8zfx2oRHSuuJIW3QWTqsqqWvb OlY1d/mN/gDkAoYuoZwCeY51qMl/NKppqMDllZoG3DCblKKDLJ8Iynch5kQ7fMVnrIA4Fm4Q EOC/NVeKI6lAsK9HQ5DPhchY8SCyeoQxmvY48MzLRio/yRw5reGDRhfMhTQ2ixQKLx5bNEsz es75JNExjGF0kNvDPvfyyde+iKLM2AKVLghutcCGoj3hwE3y1ZEJ5vBFivx55LJYNJJaxF4L jiRjavEprJd2kudLCVqRSKRhbJQ1cYUpRRH7F4ePFDWyNfIg/kA2hcOozk6SwJiyApKjrBoM W9xOkwpfqiDo2VyiM5YUzz+Eg1NHkHIqEn4yl9MmWrBRUayDzCVdDFhf+GQ4Eoe7mRQOCBB+ 62Vw3rkVjCse9zt2iw1WghurPm6FY598QjLmcaGGcWZHsZlPmO12PP2PWdY+QH6Bc4RhVHco bY48et1b5r9P3FCrqA+Db6cyrlNGguPI3ZPQK068a4EdY0GlOpeBdRTx4GNlsJxyzji3HKCU 5UrGO8WEhO02WCJsywRArMKL/lshvk16dEee7TtY2kbr7+YqTkvu5XVnsQ7rHF+WM1gyK7RN auIHw9u0ETJ7ZeXp4MJhNJFIXGxJ9gYDOE59P7g6/0HTvrvr8k1GXzfEdKIU7G9Kwp85BvSv R+ri2o6CQB94dwEorYA2Zmvy+l5xR0fmQhIHM2OXwxyUO7y
  • Ironport-hdrordr: A9a23:RiadX6wdvzdmfhq3T+NRKrPxv+skLtp133Aq2lEZdPULSKGlfp GV9sjziyWetN9IYgBZpTnyAtj6fZq8z+893WB1B9uftWbdyQ+Vxe1ZjLcKhgeQYhEWldQtnZ uIEZIOb+EYZGIS5amV3OD7KadH/DDtytHKuQ6q9QYJcegcUdAD0+4WMGamO3wzYDMDKYsyFZ Ka6MYCjSGnY24rYsOyAWRAd/TfpvXQ/aiWKyIuNloC0k2jnDmo4Ln1H1yzxREFSQ5Cxr8k7C zsjxH53KO+qPu2oyWsmlM7rq4m1OcJ+OEzSvBkufJlawkETTzYJLiJbofy8wzdZtvfq2rC3u O84SvIdP4DkU85NlvF3CcFnTOQmwrGokWStWOwkD/tp9f0Syk9DNcEjYVFcgHB405lp91k1r lXtljpw6a/ICmw7hgV3eK4Ii1Chw6xuz4vgOQTh3tQXc8Xb6JQt5UW+AdQHI0bFCz35Yg7GK 02Zfusksp+YBefdTTUr2NvyNujUjA6GQqHWFELvoiQ3yJNlH50wkMEzIgUn2sG9pg6V55Yjt 60RZhAhfVLVIsbfKh9DOAOTY++DXHMWwvFNCaILVHuBMg8SgHwQl7MkcUIDc2RCeI1JcEJ6e v8uXtjxB8PR34=
  • Ironport-phdr: A9a23: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
  • Ironport-sdr: Ijr9KedznD+LaBFY+D5y8ubRG9gXp+7IaZpFSVqWsvq00DFsJ01khZxAqp2fyP416qDs1tyHRL 1ZL2CUgt++Tl9jOMcCDDrNOTFG3cH4RowD2zvzfKc/CphsZXMRX4m/HAT/tj1ulMCzi/zU88zo YT1ODvSbIaezUSgH2mshDkgQoDN5kpqTjnC9m+C/9uVyqp6OE8iYCH//thtcsKvVFaQucDdWdr zdPwcyruPQ1Cp1Ahnt5D1LzrpE7VM2lL4nADycctoskXJWBNz1XQIGvQ5gGQfustN52xxT/pCh WH5Js0JEA74tC/iK5h/s44QB

I’m sorry but I’m not quite sure I understood what you meant. Are you saying that the std::vector<Point_3> return type doesn’t cover the case when the intersection is a polygon?

Thanks,
Marco

On 28 Jul 2022, at 08:27, Sebastien Loriot <> wrote:

For sure but if you get let say a quad you need to add its area.

Do you seen what I mean?

Best,

Sebastien.

On 7/26/22 18:08, Marco Feder ( via cgal-discuss Mailing List) wrote:
Dear Sebastien,
That is precisely what I did in the GitHub gist I linked in my post, isn’t it ?
Best,
Marco
On 26 Jul 2022, at 17:08, Sebastien Loriot <> wrote:

The intersecton of a triangle with a tet is not always a triangle, it is
a polygon,

Doc says:
|Type1  | Type2 |Return Type: T...|
|Triangle_3 Tetrahedron_3 | Point_3, or Segment_3, or Triangle_3, or std::vector < Point_3 > |

https://doc.cgal.org/latest/Kernel_23/group__intersection__linear__grp.html


So it is most likely you miss some polygons.

Best,

Sebastien.

On 7/20/22 10:44, Marco Feder ( via cgal-discuss Mailing List) wrote:
Dear all,
I have two cubes (they’re coming from two cells of a 3D finite element mesh) and a square (a 2D object) between the two, intersecting both of them. I triangulated each cube with a Triangulation_3, and the square with a Delaunay_triangulation_2.
To compute the intersection of the square with the first cube, I do the following: I loop over all tets of the triangulated cube, and for each Tetrahedron I compute the intersection with a Triangle_3 coming from the triangulated 2D square. Oftentimes I have correct results, but in some scenarios I observe inaccurate results.
For instance: for each cube, I computed the area of the part of square inside it. The sum of these two areas should be precisely equal to the area of the square (it is exactly *0.136900*), but it’s not. In particular, the first area is *0.0237738*, and the second *0.0948123. *Then the sum is *not 0.136900.*
The following GitHub gist shows this: https://gist.github.com/fdrmrc/49f397a5f72a7a00b1dfb992ab7babe1 <https://gist.github.com/fdrmrc/49f397a5f72a7a00b1dfb992ab7babe1> . The output is the area of the intersection of the square with the second cube. To get the first area, change at line 52 /pts_second_hex /with /pts_first_hex./
I can’t spot what is going wrong here.
Best,
Marco
--
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