Thank you! )
One of the users asked me a question in a personal message about using CGAL in Revit. I tried to send him a reply, but first I got a strange error about invalid tag (to be honest, I get it when I try to send every response, for example in this forum branch), but here, when I click the "Post" button again, the error disappears and the message is successfully sent.

But when I try to click the "Post" button again to send a private message, a second error occurs, about exceeding the message limit at this point in time, although this was the first message I tried to send today.

In any case, now I do not have the opportunity to reply to the user with a personal message, and given that this information, I think, will be useful to everyone who has read this topic up to this point, I will post the answer here.
To tell the truth, CGAL is distributed under the GPLv3 license, which is incompatible with REvit, which means we do not have the right to directly call, for example, through [DllImport] cpp-dll from RevitAPI. Of course, GeometryFactory has a commercial CGAL license that allows it to be done, but when I wrote them an appeal asking about the license price, I received the following response:
Hi Andrey,
I didn't reply earlier as I am on a business trip.
We in general do not reply to people asking for prices when it is a gmail,
yahoo, or yandex email address. We want to know who we deal with.
With the war in Ukraine we are even more interested who we license
and what will be done with it. I hope on your understanding, and
please don't take it personal.
We sell the different CGAL components for a one-time license fee,
typically for several 10K Euro. Their functionality must not directly be
re-exposed. What I mean we do not allow Unity-Boolean-operations
just being a wrapper around CGAL-Boolean-operations.
Best,
Andreas
Андрей Колесов
2 июля в 15:39
Good afternoon!
How much does a commercial license for your CGAL product cost?
--
Andreas Fabri, PhD
Chief Officer, GeometryFactory
Editor, The CGAL Project
phone: +33.492.954.912 skype: andreas.fabri
At that moment, I was interested in interacting with CGAL through Unity (a game engine, but in a legal and technical context it would be similar to using it in Revit). And even if you comply with their terms of use, ten thousand euros per year is probably not the amount you would like to spend on a commercial CGAL license.
Therefore, in this case, it remains only to use CGAL as a separate application running in a separate process, without transmitting and receiving any arguments and call results from it.
In this case, all communication should take place in standard ways through the computer's file system.
I.e. created .off the file, we launched the cpp-exe program in a separate process, waited for its execution during which it should independently record the output.off the file, and after closing the process, if the output file has been created, read it and recreate the geometry based on it again. If the file was not created, return false or something like that from the method.
I hope, it was able to help someone