Subject: CGAL users discussion list
List archive
Re: [cgal-discuss] Using Bezier-Bezier intersections as vertices in an CGAL::Arrangment
Chronological Thread
- From: Kevin Morgan <>
- To:
- Subject: Re: [cgal-discuss] Using Bezier-Bezier intersections as vertices in an CGAL::Arrangment
- Date: Tue, 30 Nov 2021 20:08:50 -0800
- Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=Pass ; spf=None
- Ironport-data: A9a23:QYuFoa1Ri9+qCOiQSvbD5b9wkn2cJEfYwER7XOPLsXnJ3W900DcOy2FNWGDXO/fbamGnL4oiao2x/R8F7JOAn9ASHQtv/xmBbVoa8JufXYzxwmTYZn7JcJWbFCqL1yivAzX5BJhcokT0+1H9bdANkVEmjfvRH+OnULafUsxMbVYMpBkJ2UoLd9ER2dYAbeiRW2thiPuqyyHtEAfNNw1cbgr435m+RCZH55wejt+3UmsWPpintHeG/5Uc4Ql2yauZdxMUSaEMdgK2qnqq8V23wo/Z109F5tKNl7/6dggVWOeXM1TQzHVRXKemj15JoSlaPqQTbqJNLxcKzW/TxpYtlr2htrToIestFq/SnesAQl8CS3glFaJD8b7DZ3O4tKR/ymWZLyO0kq02ZK0xFdRAprwf7Xt13fcXITRIYhGYjP+t25qgW+x0j4IiKtPqNcURoBldIZvxGa5zG9acV/yfvZkAyG1l3oYUTKeHc5FMMXwyeEuVSgNrEVIzJJIave6OumPbTTx9vAvN8Pdzs3y7IBdZ1bHsNJ/KYIXPS5kL2EmfoW3C8iLyBRRyCTBW8hLdmlrEuwMFtX6TtEMu+LyEGjpChVSSwikMEkRTWwfl5/a+jUG6VpRULEl8Fu8GxUQt3BTDczU/d0TQTL24Uto0VN9ZEul84waIokYRyxjMHXAKF1atd/R/3PLbhlUWOpuhkNbgBDgpu7qQIZ5Y3t94shvqURUowaQ+iePogOfLDxQPYG3+s/4XcuteLQ==
- Ironport-hdrordr: A9a23:2opQgq7CH7wG4eXl1APXwXiBI+orL9Y04lQ7vn2ZFiY7TiXIrayTdaoguCMc0AxhJU3Jmbi7Scy9qADnhOJICOgqTPuftWzd1ldAQ7sSlLcKrweQeBEWs9Qtr5uIEJIOR+EYb2IK9foSiTPQe71Lobm6GeKT9JzjJh9WPFhXgspbnmNE43OgYytLrX59dP0E/fSnl6h6jgvlXU5SQtWwB3EDUeSGjcbMjojabRkPAANiwBWSjBuzgYSKXSSw71M7aXdi0L0i+W/Kn0jS/aO4qcy2zRfayiv684lWot380dFObfb8y/T9aw+cyjpAVr4RGYFqjwpF5d1HL2xa1OUkli1QfPibLUmhOV1d7yGdnTUImwxelEMKgWXo/0cL5/aJHA7SQvAx9L5xY1/X7VEts8p7178O12WFt4BPBReFhyjl4cPUPisa3XZcjEBS2NL7tUYvGbf2qYUh2LA37QdQCtMNDSj64IcoHK1nC9zd/u9fdRefY2rCtmdizdSwVjBrdy32D3Qqq4iQyXxbjXp5x0wXyIgWmWoB7os0T91B6/7fOqplmblSRosdbL57Bu0GXcyrY1a9Cy7kISaXOxDqBasHM3XCp9r+56g0/vijfNgSwJ47iP36ISVlXK4JCjXT4OG1re52GyH2MRGAtG7Wu7FjDrBCy8/BeIY=
- Ironport-phdr: A9a23:V8qGLB1OAHMplfzOsmDOkAMyDhhOgF0UFjAc5pdvsb9SaKPrp82kYBaGo6s3xwGXFazgqNt8w9LMtK7hXWFSqb2gi1slNKJ2ahkelM8NlBYhCsPWQWfyLfrtcjBoVJ8aDAwt8H60K1VaF9jjbFPOvHKy8SQSGhLiPgZpO+j5AIHfg9qq2+yo+pDffQpEiTu8bLhvMBi4sALdu9UMj4B/MKgx0BzJonVJe+RS22xlIE+Ykgj/6Mmt4pNt6jxctP09+cFOV6X6ZLk4QqdDDDs6KWA15dbkugfFQACS+3YTSGQWkh5PAwjY8BH3W4r6vyXmuuZh3iSRIMv7Rq02Vzu/9admUBDniCkFODA5/m/ZidF+grxHrx+6vRNz35TZbZuJOPZifK7Qe84RS2pbXsZWUixMGoayYJURD+oAO+ZTso7zp1wUrRuxHwasAv7kxzhKhn/o2K063PkhEAHc0AA+A94CrXrZoc76NKcXS++1za3IwS/fYPNR3Dfw8Y7FeQ0urv+QR7x/a9bRyVUxGAPfiFWdsZLoMT2W2+kQsmWW8eVtWf+zhmMoqw98oiSjyMkjhITIhI8Yy1TJ+yt4zYsoIdC1SE51bNGqHZZUqyyWK5Z7T8IkTmp1tig6zbgGtoS6fCgM0Jkn3ALfZOabfIiL5RLjSvieIS12hHJhf7K+iQy+/lSnyu35TsW00VBKrjBEktbWrHwN2QbT586aQfV+5keswSiD2xzX5+1eIk05lbDXJ4A/zrItjJYevkXOEynrk0vslqCWbF8r+u2w5uTnfLrmopicOpdxig7kM6QuntWzAOoiMgQTRmSb9+ux2bz58U32R7VKifI2kq3Hv5zAOcsboau5DxdU0oYl9Rm/Ey+r3MoEkXQDNl5IexKKg5L3N13QPfz0F/iyjlW0nDdu3f/GP7nhApvXLnjElbfsZbR961BZyAo80NBe54hYBq8dLP7uVEL8r9PYDhojPAy1x+brEsly1oQbWW6XGK+WLLvSsUOU5uIoO+SDeIAVtyz5K/Q8+vHujGQ5lkMAfamyxpsac2u4H/RjI0WBe3XgmNYBEWEQvgo/VuPmklOCUSQAL0u0RL82szEnFJq9X8CEXZGomLXH3SGhH5QQaHoBEUGJCX6vdoOKXLAHZyuWZ8NgiTcZTqPydok6yBuOqAr+nrp7MvLPqGpfroPmzNEz5uvJlBh0+yYzFNWYy2jKTmd6mSQDSDYymax+ukdg0UzQ7K5jnvZkGMxPsvNVTh8hZ9mb1P1/E9m0WwTbf97PRkzhWcSjGTh2T9Q/xJgFbE95XtmjlRvexDH5P7hAnLOCANk487nXwmPqD8d70XfPkqc73Hc8Rc4aFmC4h6g30g/JCIfP2xGbiaOlaLVahnaUr0+MyGOPuAdTVwsmAvaNZmwWekaD9Yex3UjFVbL7UdzP1yNOzMeDLu1Bbdi71T2uq9/sPd3fZyS6nGLiXH5gJ5uJZYvuPnoHhWDTVBZCnAcU8nKLcwM5A3X5y18=
Ok, I've looked further at Arr_algebraic_segment_traits_2, and cannot find a way to make that work.
Well, what I really want is Bezier curves, but the requirement that the control points be rational is a problem for me.
Algebraic segment traits class seems to require an implicit bivariate polynomial, and what I have is a parametric curve with
two output variables.
I know conic sections and such can be approximated by Beziers, but I don't think a Bezier can generally be represented as an implicit bivariate polynomial. (Am I mistaken about that?)
Is there some other traits class that might provide that sort of functionality? Or is there some way to coerce the intersections into a Rational? I just want to be able to carve up the Beziers.
Kevin
On Mon, Nov 29, 2021 at 6:37 PM Kevin Morgan <> wrote:
Hi Efi,Yes. I understand. It's more of a special purpose environment than I originally thought.For my purposes, I think Arr_algebraic_segment_traits_2 will likely work ok.Again, thanks for your help.KevinOn Mon, Nov 29, 2021 at 4:19 PM Efi Fogel <> wrote:Hi Kevin,The geometry traits are designed to give you the maximum performance.The Bezier traits has other limitations; for example, you cannot obtain an exact representation of the intersection points.The Bezier traits is more efficient though than the algebrain traits.There are cases where the Bezier traits is sufficient.It's a compromise.Efi____ _ ____ _
/_____/_) o /__________ __ //
(____ ( ( ( (_/ (_/-(-'_(/
_/On Tue, 30 Nov 2021 at 01:36, Kevin Morgan <> wrote:Hi Ahmed, Efi,Thanks for your reply.I'll take a look at Arr_algebraic_segment_traits_2. I can't tell yet, but it might be what I need.I'm aware that the intersection of two beziers is not necessarily rational. It seems like an odd design choice to me that the bezier_traits_adapter would only take rational control points, yet would add algebraic vertices to the arrangement that cannot be connected via an edge to any other vertex. Especially since the intersection itself is a vertex that connects via monotone edges to other vertices.I have looked at the code, and I do understand the underlying exact representation, and the issues around it, but wonder if there might not be some way to support algebraic vertices in such an arrangement, or at least to connect those vertices to each other or to other rational vertices.Anyway, thanks for your help.KevinOn Mon, Nov 29, 2021 at 8:56 AM Efi Fogel <> wrote:I, of course, second Ahmed's explanation.Let me add and say that the Arr_algebraic_segment_traits_2 geometry traits does support algebraic coordinates and so you may want to consider it as an alternative.____ _ ____ _
/_____/_) o /__________ __ //
(____ ( ( ( (_/ (_/-(-'_(/
_/On Mon, 29 Nov 2021 at 15:02, Ahmed Essam <> wrote:Hi,As stated in the error message, the intersection point of the Bezier curves does not have rational coordinates (but rather algebraic). Bezier curves in the Arrangement package require that their control points be rational, and hence you can't use these points as control points.This is to be expected since the intersection point is the solution of two non linear equations representing the curves.Best,Ahmed.On Mon, Nov 29, 2021, 8:17 AM Kevin Morgan <> wrote:Hi,I'm using a CGAL::Arrangment and am trying to connect edges to the intersection of Beziers.In the application, I'm getting a precondition violation, complaining that the intersection is not rational.I tried to construct a synthetic example to reproduce the problem, which I've posted on stackoverflow, and it gets a segfault.But, assuming the segfault is just a bug, my question is really about the intended API for Beziers. Is it possible to connect an edge to a vertex which is the intersection of two Bezier curves? If so, what's the mechanism I'm supposed to use to avoid the precondition violation?Thanks in advance for your help.Kevin
--
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
--
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
- Re: [cgal-discuss] Using Bezier-Bezier intersections as vertices in an CGAL::Arrangment, Kevin Morgan, 12/01/2021
Archive powered by MHonArc 2.6.19+.