Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Calculate polygons of projection

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Calculate polygons of projection


Chronological Thread 
  • From: Johnny Bigert <>
  • To:
  • Subject: Re: [cgal-discuss] Calculate polygons of projection
  • Date: Fri, 1 Jul 2022 08:45:36 +0200
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-data: A9a23:mHTpNqjKw/moup4uNMh6Z4xOX161XhYKZh0ujC45NGQN5FlHY01je htvWj3UPPmKZ2ChLth1PN+2/EtXv8DSnN8ySgFkrSAyQipjpJueD7x1DG+gZnLIdpWroGFPt phFNIGYdKjYaleG+39B55C49SEUOZmgH+a6UKieUsxIbVcMpB0J0HqPoMZkxN8y6TSFK1nV4 4mq/JWGYAbNNwNcawr41YrT8HuDg9yp4Fv0jnRmDRyclAK2e9E9VfrzFInpR5fKatE88t2SG 44v+IqEElbxpH/BPD8KfoHTKSXmSpaKVeSHZ+E/t6KK2nCurQRquko32WZ1hUp/0120c95NJ Nplrr6fGBwtLojwnvU6TiJ7EQxMbbJM5+qSSZS/mZT7I0zudnLtx7B2DhhzM9BCvOlwBm5K+ LoTLzVlghKr3brnhuLmDLM12IJ+dqEHP6tH0p1k5TPeDfAgULjORa7X79IezCYi7ixLNa+OP ZRDM2A3BPjGSxBIOEs7KKwbpuuXu3TSKAZbtlXE/aVitgA/yyQoiOS3WDbPQfSBSsxR20qZv Wnb5H/RGQAfLNXZyDyf83vqiPWnoM/gcIcbFbn97vwzxVPOnCocDxoZUVb9qv684qKjZz5BA 1c21Xs1qbgXyEq6acTGfB+Vki6btAFJDrK8DNYGwA2Kz6PV5SOQCW4FUiNNZbQaWCkeFWxCO rihz4OBONB/jFGGYSnCqerM/FteLQBQfDBSP3ZVJecQy4C7+Nlbs/7Zcjp0/EeIYjDdHDjxx 3WSrnF7iehJy8EM0Kq/8BbMhDfESnn1ouwdtl6/soGNtFsRiGuZi2qAtwSzARFoct3xc7V5l CJY8/VyFchXZX13qASDQf8WAJai7OufPTvXjDZHRsd8qWr0oC74J98BvlmSwXuF1O5UKVcFh 2eD6WtsCGN7YRNGkIcsPt3tU592pUQePY21DqGIBjaxXnSBXFbfoHsGib+40Gfqn0wh+ZzTy r/KGftA+U0yUPw9pBLvH7l1+eZymkgWmD2OLbimkEzP+efPPBa9FOZeWHPTP7BRxP3e/G39r Y0EX+PUkEU3bQELSnOImWLlBQtacyZT6FGfg5A/S9Nv1SI2QD56VqGAntvMueVNxsxoqwsBx VnlMmcw9bY1rSSvxdyiZi8xZbXxc4x4qH5nbyUgMUzxgyouZ42y5qpZZ4olJOF1+OtmxP9yb v8EZ8TZX6UUFG+cqmtCYMmvtpFmeTSqmRmKY3ivbg8gcsMyXAfO4NLlIFfirXFcEiqtuMIii LS8zQeHE4EbTgFvAZ+OOvKixl+8p1YHn+d2UxeaK9VfYhy0ooVsIDH7g7knMtNVcUfPwT6T1 gC3BxYEpLCQ8tRrq4KY2v+J9t77HfF/E0xWG3jgwYy3bSSKrHC+xYJgUfqTeWyPXm3D56j/N /5eyOvxMaNbkQ8S4ZZ8Cbti0Yk3+8Dr++1B1g1hEXjGMwarB7dnLiXU1MVDrPcWlLpQuA/zQ kDWv9cHY/OGP8TqFFNXLw0gN7zR2fYRkzjUzPI0PESqu3MtreTfCR1fb0uWlShQDLppK4d5k +0vj8gbtl6kgR0wP9fa0y1ZqzaWInobX/l1v50WGtWw2A8iy1UHeZ6FTyGruteAbNJDNkRsK TiR3fKQi7NZz0vEUnwyCXmdgrYH1MpW4EhHnA0YOlCEutvZnftrjhdfxjI6E1ZOxRJd3uMvZ 2VmOiWZ/0lVE+uEUCSCY4ytJ+2FLBiQ+0i001lQ0WOEFQ+nUWvCKGB7MuGIlKzcH6SwYRADl Ix0Ck68OdopQC019iY0UlNvprrzXM4ZGsjqhpW8B8rcd3UlSWONv0JtDFbkbzPqB8gsjkCBt fh4lAq1hWsXKgZIy5AG50KmOXj8hfxKyKGugR2swU/RIVzhRQ==
  • Ironport-hdrordr: A9a23:/VCK56trWlnOV5vUNrOF30/c7skDT9V00zEX/kB9WHVpm62j5r mTdZEgvyMc5wxhPU3I9erwWpVoBEmslqKdgrNxAV7BZniDhILAFugLhrcKgQeBJ8SUzJ876U 4PSdkZNDQyNzRHZATBjTVQ3+xO/DBPys6Vuds=
  • Ironport-phdr: A9a23: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
  • Ironport-sdr: siEoZ4nwOjqPjaKSUEZoi9tudOWJknaVo2M9VAJmt49Y/ZPGFAMSPxvXYefYjcMSEMfwAWJUlo +XfT59b0QgtOTpALyeb/WiXiyZ1v58UQ1aruPZuUtbXG5hI6fzOHFhjW7HckuoJtc8vsx/Q0o6 nxQt1agCY5dUYJ1aW44NPx62dPfzGOiUXVj9nyBF6rAaB9kHEZopS8FsbqkahXabTFMa3VWaGs c0yZ1c8Gvnq0fuqYWAFpkyAsUC/clqj7Ak1TeKhKK0jqQ0DvLAbtvUdTKAcPQ7lfuCUkf1dZhm LtbfMB49twq40LsWPfp6oDN5

Hi Sebastien,

Thank you for the link and the swift response, it was very helpful. I was trying to read up on CDTs, but the description is a bit abstract. Would you care to explain a few things about the linked example?
  1. In simple words, what does a CDT do? I guess it incrementally creates a triangulation as we repeatedly call cdt.insert_constraint(start, end)?
  2. I got the impression from Wikipedia (https://en.wikipedia.org/wiki/Constrained_Delaunay_triangulation) that a CDT tries to keep the constrained edges (they mention an example with "breaklines along rivers")? But in the linked example, we use insert_constraint on all the edges of the mesh, and keeping all edges makes no sense, so I must be missing something :)
  3. In the linked example, what does the cdt.is_constrained(e) call do exactly? It can't give us back the insert_constraint-inserted edges (although the name seems to suggest it). So I guess it gives us the outer borders?
  4. If cdt.is_constrained(e) gives us the outer borders, then why do we iterate over faces, look at neighbors etc, why not iterate over edges directly?
Thank you.

    Best regards, Johnny

On Thu, Jun 30, 2022 at 2:18 PM Sebastien Loriot <> wrote:
Hi,

this thread talks about this topic:

https://github.com/CGAL/cgal/discussions/6472

Sebastien.

On 6/30/22 12:51, Johnny Bigert ( via cgal-discuss
Mailing List) wrote:
> Hi,
>
> I would like to kindly ask for ideas regarding a problem I'm trying to
> solve.
>
> I have a triangulated shape as a Polyhedron_3 with exact constructions.
> The shape is closed and simple and may contain holes.
>
> What I would like to calculate is most easily described like this (and
> takes an input parameter z): if we cut away parts of the shape from Z =
> minus infinity to Z = z, what would the shadow (projection) of the shape
> look like if we shine a flashlight from above, from Z = plus infinity.
>
> The result will consist of multiple polygons since the shadow might have
> disjoint areas (e.g. candelabra) and holes (e.g. drinking glass).
>
> Do you have any ideas how to implement this efficiently? Sweep line
> algorithms? Ray casting? Thanks!
>
>       Best regards, Johnny
>
>
>
> --
> 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