WEBVTT

00:00.000 --> 00:10.000
All right, good afternoon.

00:10.000 --> 00:15.000
Welcome back to the Fossum 2026 Open Hardware and CAD CAM Devroom.

00:15.000 --> 00:18.000
Up to this point, we've seen a bunch of projects that

00:18.000 --> 00:20.000
depended on Open Cascade.

00:20.000 --> 00:24.000
So finally, at long last, we have Dmitry from Open Cascade

00:24.000 --> 00:28.000
ready to give a presentation about the upcoming 8.0 release

00:28.000 --> 00:31.000
of UCCT and Open Cascade.

00:31.000 --> 00:33.000
Yes.

00:33.000 --> 00:35.000
Hello.

00:35.000 --> 00:37.000
Let me just try.

00:37.000 --> 00:38.000
Do you hear me?

00:38.000 --> 00:39.000
Okay.

00:39.000 --> 00:43.000
So, unfortunately today, I will not have a few more.

00:43.000 --> 00:45.000
And not so much pictures as previous speakers,

00:45.000 --> 00:49.000
because, unfortunately, Open Cascade is not a application.

00:49.000 --> 00:52.000
It sounds like more complicated.

00:52.000 --> 00:53.000
It is SDK.

00:53.000 --> 00:55.000
This is how specific you go.

00:55.000 --> 00:56.000
I prepared for to be used.

00:56.000 --> 00:59.000
So, I will try to be as simple as possible,

00:59.000 --> 01:02.000
but I will be no pictures.

01:02.000 --> 01:03.000
My pleasure.

01:03.000 --> 01:06.000
So, let's start from the beginning.

01:06.000 --> 01:10.000
So, as someone mentioned before, Open Cascade

01:10.000 --> 01:15.000
is mostly one of the available open source CAD

01:15.000 --> 01:20.000
Qernels, which work in the CAD Mesh and a few more options.

01:20.000 --> 01:25.000
And it's just as used behind, not very visible,

01:25.000 --> 01:29.000
because a lot of projects, hundreds, maybe thousands of small projects,

01:29.000 --> 01:30.000
big projects.

01:30.000 --> 01:34.000
They can be done on the, as you see on the desktop application,

01:34.000 --> 01:35.000
can be on web.

01:35.000 --> 01:38.000
It can be even on small devices.

01:38.000 --> 01:39.000
Why?

01:39.000 --> 01:41.000
So, it's very powerful.

01:41.000 --> 01:44.000
And give you a lot of availability to be used

01:44.000 --> 01:46.000
on different projects, different areas.

01:46.000 --> 01:50.000
By default, let me just show you something.

01:50.000 --> 01:53.000
OCCT itself has a very long history.

01:53.000 --> 01:56.000
It's starting in the first year.

01:56.000 --> 01:59.000
It's starting from the University from French,

01:59.000 --> 02:02.000
but it's a clear, which specific date.

02:02.000 --> 02:06.000
So, but in the first year, it was released as a first,

02:06.000 --> 02:08.000
it was out of the grid.

02:08.000 --> 02:10.000
So, and it was used.

02:10.000 --> 02:14.000
Currently, we have about 3 millions of lines of code.

02:14.000 --> 02:21.000
And starting from 1999, Open Cascade was available

02:22.000 --> 02:23.000
as open source.

02:23.000 --> 02:27.000
And now, privately hosted grid,

02:27.000 --> 02:28.000
because it was not used.

02:28.000 --> 02:31.000
It was start to us, as we read.

02:31.000 --> 02:33.000
But, yet, 27 years ago, there are no, we don't know,

02:33.000 --> 02:34.000
we don't know, we don't know.

02:34.000 --> 02:36.000
Fortunately, unfortunately, but here,

02:36.000 --> 02:38.000
we go early, isn't it?

02:38.000 --> 02:42.000
And the interesting fact, for example, a few years after

02:42.000 --> 02:45.000
we saw a grid, the application was used

02:45.000 --> 02:48.000
for the physical simulation, physical researches,

02:49.000 --> 02:52.000
and in the company name, as a current,

02:52.000 --> 02:54.000
it's French company, governed based,

02:54.000 --> 02:57.000
which developed and detects,

02:57.000 --> 03:01.000
as a hand-bison,

03:01.000 --> 03:03.000
hand-bison.

03:03.000 --> 03:08.000
So, it was used for preparing all the instruments,

03:08.000 --> 03:10.000
all the tools, visual CT.

03:10.000 --> 03:12.000
It's not a CT, it was company name,

03:12.000 --> 03:15.000
it's Matta Davision, which have a long history,

03:15.000 --> 03:17.000
but it's not a major layer later.

03:17.000 --> 03:18.000
It's just something,

03:18.000 --> 03:20.000
what is cut-cure-nosef,

03:20.000 --> 03:22.000
cut-cure-nosef application,

03:22.000 --> 03:23.000
as a cut-cure-nosef,

03:23.000 --> 03:25.000
it's used very complicated,

03:25.000 --> 03:27.000
but it's behind everything.

03:27.000 --> 03:29.000
So, we have foundation classes,

03:29.000 --> 03:31.000
it's something we're providing

03:31.000 --> 03:33.000
to be on the same page,

03:33.000 --> 03:35.000
with all the modern projects,

03:35.000 --> 03:36.000
containers, memory,

03:36.000 --> 03:38.000
modeling classes,

03:38.000 --> 03:40.000
modeling memory math,

03:40.000 --> 03:42.000
and all the work in this application system,

03:42.000 --> 03:43.000
it's system dependent.

03:43.000 --> 03:45.000
So, very sensitive stuff,

03:45.000 --> 03:47.000
we have modeling data,

03:47.000 --> 03:48.000
we have modeling algorithms,

03:48.000 --> 03:49.000
visualization,

03:49.000 --> 03:52.000
and it's probably the deepest,

03:52.000 --> 03:54.000
later it's that exchange,

03:54.000 --> 03:57.000
application framework, and test the harness.

03:57.000 --> 03:59.000
It's not so deep and used,

03:59.000 --> 04:00.000
not so commonly,

04:00.000 --> 04:04.000
but step is used very often, mostly.

04:04.000 --> 04:06.000
From the projects that we're hearing,

04:06.000 --> 04:09.000
they are using step very often.

04:09.000 --> 04:11.000
So, currently,

04:11.000 --> 04:13.000
probably sometimes you hear open cascade,

04:13.000 --> 04:15.000
and it's this 3D.

04:15.000 --> 04:16.000
The difference is,

04:16.000 --> 04:17.000
both of them,

04:17.000 --> 04:18.000
but of consumerized,

04:18.000 --> 04:20.000
starting from the 2000s,

04:20.000 --> 04:21.000
and then 14,

04:21.000 --> 04:23.000
and nowadays,

04:23.000 --> 04:25.000
starting for about two,

04:25.000 --> 04:26.000
three years ago,

04:26.000 --> 04:28.000
the branch was split it.

04:28.000 --> 04:30.000
Now we have open cascade,

04:30.000 --> 04:36.000
it's possible for the enterprise project optimization,

04:36.000 --> 04:38.000
as a model,

04:38.000 --> 04:41.000
and it's currently not open source,

04:41.000 --> 04:42.000
it's enterprise-based,

04:42.000 --> 04:44.000
it's for the very,

04:44.000 --> 04:46.000
and totally-based,

04:46.000 --> 04:47.000
it's much modeling,

04:47.000 --> 04:48.000
and other interesting stuff,

04:48.000 --> 04:49.000
which is very powerful,

04:49.000 --> 04:51.000
but it's not open source.

04:51.000 --> 04:52.000
And we have, for this 3D,

04:52.000 --> 04:54.000
is a branch,

04:54.000 --> 04:56.000
who is responsible for maintaining the category,

04:56.000 --> 04:58.000
and also is the project.

04:58.000 --> 04:59.000
It can be open source,

04:59.000 --> 05:01.000
it can be private source,

05:01.000 --> 05:03.000
it can be different forms of the source.

05:03.000 --> 05:05.000
It can be also some free application,

05:05.000 --> 05:07.000
which can sometimes be used,

05:07.000 --> 05:08.000
quite a system, probably,

05:08.000 --> 05:11.000
often used by the community.

05:11.000 --> 05:12.000
So, history,

05:12.000 --> 05:13.000
as I say,

05:13.000 --> 05:16.000
open cascade was started about 45 years ago,

05:16.000 --> 05:18.000
then it was,

05:18.000 --> 05:20.000
become cascade,

05:20.000 --> 05:22.000
when it's just a little half,

05:22.000 --> 05:23.000
some matrix with,

05:23.000 --> 05:24.000
on the desk,

05:24.000 --> 05:25.000
it was another company,

05:25.000 --> 05:26.000
a full-gold name.

05:26.000 --> 05:28.000
So, yes,

05:28.000 --> 05:29.000
so it's,

05:29.000 --> 05:31.000
what's the little written on the 193,

05:31.000 --> 05:32.000
then it's updated data,

05:32.000 --> 05:34.000
it's open source,

05:34.000 --> 05:35.000
on 99,

05:35.000 --> 05:38.000
before 20,

05:38.000 --> 05:39.000
2013,

05:39.000 --> 05:41.000
it was terrible code,

05:41.000 --> 05:43.000
because on these times,

05:43.000 --> 05:46.000
open cascade was having the,

05:46.000 --> 05:47.000
which is,

05:47.000 --> 05:48.000
which is it,

05:48.000 --> 05:50.000
it's very complicated,

05:50.000 --> 05:52.000
not available to be used,

05:52.000 --> 05:54.000
and most project,

05:54.000 --> 05:55.000
also,

05:55.000 --> 05:59.000
the intensity was based on the work build system.

05:59.000 --> 06:00.000
It's very,

06:00.000 --> 06:02.000
it's started from the 96,

06:02.000 --> 06:04.000
so it's very complicated,

06:04.000 --> 06:06.000
the solutions to build,

06:06.000 --> 06:07.000
the,

06:07.000 --> 06:08.000
the currently,

06:08.000 --> 06:09.000
it was moved to CMA,

06:09.000 --> 06:10.000
but was,

06:10.000 --> 06:11.000
before it wasn't work,

06:11.000 --> 06:13.000
all developed platform.

06:13.000 --> 06:15.000
And for the header files,

06:15.000 --> 06:16.000
we have ID,

06:16.000 --> 06:17.000
H,

06:17.000 --> 06:18.000
it's headers,

06:18.000 --> 06:19.000
but not C++,

06:19.000 --> 06:21.000
it's more complicated one,

06:21.000 --> 06:22.000
it's intermediate formats.

06:22.000 --> 06:23.000
So, on,

06:23.000 --> 06:24.000
well,

06:24.000 --> 06:25.000
literally,

06:25.000 --> 06:26.000
it's algebra,

06:26.000 --> 06:27.000
everything was really,

06:27.000 --> 06:28.000
10 multiple times,

06:28.000 --> 06:29.000
and on 2016,

06:29.000 --> 06:30.000
open cascade 7.

06:30.000 --> 06:31.000
Something was released.

06:31.000 --> 06:33.000
So, during this 10 years,

06:33.000 --> 06:35.000
we are having a lot of fixes.

06:35.000 --> 06:36.000
For sure,

06:36.000 --> 06:37.000
I don't see all of them,

06:37.000 --> 06:38.000
we can just,

06:39.000 --> 06:40.000
close this,

06:40.000 --> 06:41.000
so,

06:41.000 --> 06:44.000
it was a lot of work done by the decade,

06:44.000 --> 06:45.000
and it's now,

06:45.000 --> 06:46.000
it's next decade,

06:46.000 --> 06:47.000
so,

06:47.000 --> 06:48.000
you see,

06:48.000 --> 06:49.000
it's already 10 years ago,

06:49.000 --> 06:51.000
and it was a lot of changes,

06:51.000 --> 06:52.000
was done,

06:52.000 --> 06:53.000
I cannot read of them,

06:53.000 --> 06:55.000
because I tried to be fast them,

06:55.000 --> 06:56.000
and it's not so interesting,

06:56.000 --> 06:57.000
because I've already done,

06:57.000 --> 06:58.000
it's available for you.

06:58.000 --> 06:59.000
So,

06:59.000 --> 07:02.000
yes,

07:02.000 --> 07:03.000
we have every year,

07:03.000 --> 07:04.000
one,

07:04.000 --> 07:05.000
one maintains,

07:05.000 --> 07:06.000
one,

07:06.000 --> 07:07.000
minor release,

07:07.000 --> 07:08.000
and,

07:08.000 --> 07:09.000
for the decade,

07:09.000 --> 07:11.000
we have one major release.

07:11.000 --> 07:12.000
So, let me just,

07:12.000 --> 07:13.000
maybe,

07:13.000 --> 07:14.000
would like to have something interesting,

07:14.000 --> 07:16.000
at least starting from 7.8.

07:16.000 --> 07:17.000
No,

07:17.000 --> 07:18.000
it's just 7.

07:18.000 --> 07:19.000
So, yes,

07:19.000 --> 07:20.000
so,

07:20.000 --> 07:21.000
starting from the 7,

07:21.000 --> 07:23.000
we write a lot of code of 6 also,

07:23.000 --> 07:24.000
yeah,

07:24.000 --> 07:25.000
maybe 7.6 is more interesting,

07:25.000 --> 07:27.000
because starting from the 7.6,

07:27.000 --> 07:28.000
open cascade,

07:28.000 --> 07:31.000
was able to run on the area,

07:31.000 --> 07:33.000
and also on the web assembly.

07:33.000 --> 07:34.000
So,

07:34.000 --> 07:35.000
starting from this year,

07:35.000 --> 07:37.000
you are able to work with the city,

07:37.000 --> 07:38.000
on the web,

07:38.000 --> 07:40.000
as the vast assembly.

07:40.000 --> 07:41.000
Currently,

07:41.000 --> 07:42.000
starting from the previous year,

07:42.000 --> 07:45.000
the performance on the web-based application,

07:45.000 --> 07:48.000
it's close to 95% of the desktop one.

07:48.000 --> 07:49.000
So,

07:49.000 --> 07:51.000
performance across memory is not limited,

07:51.000 --> 07:52.000
no longer,

07:52.000 --> 07:54.000
because 64 meg,

07:54.000 --> 07:55.000
by it's 64.

07:55.000 --> 07:58.000
So, web assembly is also big step,

07:58.000 --> 08:00.000
then we have 7.7,

08:00.000 --> 08:02.000
where we update all the code base,

08:02.000 --> 08:03.000
to be back like a party,

08:03.000 --> 08:05.000
but with all the modern C++,

08:05.000 --> 08:09.000
then we add the general interface,

08:09.000 --> 08:11.000
to read with all the data formats,

08:11.000 --> 08:12.000
and we have just a compression,

08:12.000 --> 08:13.000
sorry,

08:13.000 --> 08:14.000
but that's interesting.

08:14.000 --> 08:15.000
On 7.8,

08:15.000 --> 08:16.000
we add memory management,

08:16.000 --> 08:17.000
we rewrite all the code,

08:17.000 --> 08:19.000
to be in the same memory space,

08:19.000 --> 08:21.000
we add a little more to the steps,

08:21.000 --> 08:22.000
secure,

08:22.000 --> 08:23.000
set,

08:23.000 --> 08:24.000
set safety,

08:24.000 --> 08:25.000
but it's not still good.

08:25.000 --> 08:26.000
We still working on it,

08:26.000 --> 08:28.000
we add the plugins,

08:28.000 --> 08:30.000
we rewrite all the repositories,

08:30.000 --> 08:31.000
structure,

08:31.000 --> 08:32.000
not structure,

08:32.000 --> 08:33.000
the little kids names,

08:33.000 --> 08:35.000
and 7.9,

08:35.000 --> 08:37.000
we decide that we need to

08:37.000 --> 08:40.000
little go with our old code.

08:40.000 --> 08:41.000
We need to a little modernize,

08:41.000 --> 08:42.000
a little improve,

08:42.000 --> 08:43.000
we perform as a good,

08:43.000 --> 08:45.000
the big formatting,

08:45.000 --> 08:46.000
over-sync,

08:46.000 --> 08:49.000
we perform a lot of type,

08:49.000 --> 08:50.000
an example,

08:50.000 --> 08:51.000
a kind of format,

08:51.000 --> 08:52.000
we integrate,

08:52.000 --> 08:54.000
and not currently maintains

08:54.000 --> 08:56.000
our fork for the VCP package,

08:56.000 --> 08:58.000
which a lot of community use.

08:58.000 --> 08:59.000
And nowadays,

08:59.000 --> 09:00.000
the most important stuff,

09:00.000 --> 09:01.000
open cascade,

09:01.000 --> 09:03.000
was me great fully to get happy.

09:03.000 --> 09:05.000
It means you're able to provide

09:05.000 --> 09:07.000
the public rest,

09:07.000 --> 09:08.000
you provide the feature request,

09:08.000 --> 09:09.000
back report,

09:09.000 --> 09:11.000
everything can set get happy.

09:11.000 --> 09:13.000
And in most cases,

09:13.000 --> 09:14.000
you can just take me,

09:14.000 --> 09:16.000
or I'll allow developers,

09:16.000 --> 09:17.000
and they will respond to you,

09:17.000 --> 09:18.000
whatever,

09:18.000 --> 09:19.000
in the site,

09:19.000 --> 09:20.000
our visitors,

09:20.000 --> 09:21.000
and set your visitors.

09:21.000 --> 09:23.000
I hope you will have this,

09:23.000 --> 09:24.000
you will use this package,

09:24.000 --> 09:25.000
because currently,

09:25.000 --> 09:27.000
we have not so much back report,

09:27.000 --> 09:28.000
so we don't have bugs,

09:28.000 --> 09:29.000
perfectly.

09:29.000 --> 09:32.000
So I hope you will have more bug for us.

09:32.000 --> 09:33.000
And yeah,

09:33.000 --> 09:37.000
starting for the coming version of 80,

09:37.000 --> 09:40.000
we would like to have a little more updates,

09:40.000 --> 09:41.000
because currently,

09:41.000 --> 09:43.000
we have too much old code,

09:43.000 --> 09:45.000
which was,

09:45.000 --> 09:46.000
very old.

09:46.000 --> 09:47.000
So it's starting for the beginning,

09:47.000 --> 09:49.000
we still have very old code,

09:49.000 --> 09:51.000
which I sometimes just,

09:51.000 --> 09:52.000
see,

09:52.000 --> 09:53.000
I don't want to see that anymore,

09:53.000 --> 09:55.000
but I still have a few changes.

09:55.000 --> 09:56.000
We're using free base,

09:56.000 --> 09:57.000
so we cherry pick,

09:57.000 --> 09:58.000
and one changes,

09:58.000 --> 09:59.000
it's one changes.

09:59.000 --> 10:00.000
So,

10:00.000 --> 10:01.000
some repository,

10:01.000 --> 10:02.000
use multiple comments,

10:02.000 --> 10:03.000
but we use one feature,

10:03.000 --> 10:04.000
one comment.

10:04.000 --> 10:05.000
That is wise,

10:05.000 --> 10:06.000
and amount is not so big,

10:06.000 --> 10:07.000
because we consider it,

10:07.000 --> 10:09.000
and combine everything in one comment,

10:09.000 --> 10:10.000
to be very clean,

10:10.000 --> 10:11.000
and very readable,

10:11.000 --> 10:12.000
the git structure.

10:12.000 --> 10:14.000
So, currently,

10:14.000 --> 10:16.000
if some of you are developers,

10:16.000 --> 10:18.000
you probably know that,

10:18.000 --> 10:19.000
if you want one set,

10:19.000 --> 10:20.000
type of city,

10:20.000 --> 10:22.000
you know that we have everything inside,

10:22.000 --> 10:23.000
so we have how much modules,

10:23.000 --> 10:25.000
we have how on standard types,

10:25.000 --> 10:27.000
every single stable,

10:27.000 --> 10:28.000
for the new developers.

10:28.000 --> 10:29.000
Now,

10:29.000 --> 10:32.000
currently, we go out from all the old stuff,

10:32.000 --> 10:34.000
which use for walk,

10:34.000 --> 10:35.000
and for adh,

10:35.000 --> 10:36.000
it's old stuff,

10:36.000 --> 10:38.000
which would no longer support,

10:38.000 --> 10:39.000
but it's still was here.

10:39.000 --> 10:40.000
So, now in days,

10:40.000 --> 10:42.000
you can use just plus plus 17,

10:42.000 --> 10:44.000
and you will be happy,

10:44.000 --> 10:45.000
at least I hope so.

10:45.000 --> 10:46.000
So,

10:46.000 --> 10:48.000
also, if you're using our data maps,

10:48.000 --> 10:50.000
it will be more comfortable to work with them,

10:50.000 --> 10:51.000
with buildings,

10:51.000 --> 10:52.000
with,

10:52.000 --> 10:53.000
from 17,

10:53.000 --> 10:56.000
as a feature,

10:56.000 --> 10:58.000
a lot of developers say me,

10:58.000 --> 11:00.000
why we don't use just plus plus container,

11:00.000 --> 11:01.000
from the STL,

11:01.000 --> 11:02.000
that's terrible.

11:02.000 --> 11:05.000
The performance are bad,

11:05.000 --> 11:07.000
the control are bad,

11:07.000 --> 11:09.000
especially with all the stuff,

11:09.000 --> 11:12.000
related to the memory allocation,

11:12.000 --> 11:15.000
destruction and construction is terrible,

11:15.000 --> 11:17.000
and,

11:18.000 --> 11:20.000
I just don't want to go deeper.

11:20.000 --> 11:21.000
So,

11:21.000 --> 11:23.000
this container is not so friendly,

11:23.000 --> 11:24.000
but they were better.

11:24.000 --> 11:25.000
The benefits of it,

11:25.000 --> 11:26.000
on 7,

11:26.000 --> 11:27.000
on 8,

11:27.000 --> 11:29.000
we will have a pass-out.

11:29.000 --> 11:30.000
Pass-out,

11:30.000 --> 11:32.000
it's just pure STL,

11:32.000 --> 11:34.000
unlike STL containers,

11:34.000 --> 11:36.000
which behind have all containers.

11:36.000 --> 11:37.000
It needs interfaces,

11:37.000 --> 11:38.000
the same,

11:38.000 --> 11:40.000
but behind it's all containers,

11:40.000 --> 11:42.000
because I don't want to see them,

11:42.000 --> 11:44.000
the STL any longer in the STL,

11:44.000 --> 11:46.000
I remove everything from.

11:46.000 --> 11:47.000
It doesn't prove,

11:47.000 --> 11:48.000
so,

11:48.000 --> 11:50.000
I really data a lot of stuff,

11:50.000 --> 11:51.000
but here,

11:51.000 --> 11:52.000
a big careful,

11:52.000 --> 11:53.000
if you have STL,

11:53.000 --> 11:55.000
sometimes it's not a good choice,

11:55.000 --> 11:57.000
for the high performance applications,

11:57.000 --> 11:58.000
a big careful,

11:58.000 --> 12:00.000
just try to use profiler bay night

12:00.000 --> 12:02.000
and you will see what's happened.

12:02.000 --> 12:04.000
You will hate that also.

12:04.000 --> 12:06.000
So,

12:06.000 --> 12:07.000
source organization,

12:07.000 --> 12:09.000
before on the main folder,

12:09.000 --> 12:10.000
SRC,

12:10.000 --> 12:14.000
we have about more than 500 folders.

12:14.000 --> 12:15.000
When you open the folder,

12:15.000 --> 12:18.000
and see 500 folders inside,

12:18.000 --> 12:20.000
maybe you think something can confuse you,

12:20.000 --> 12:21.000
but fortunately,

12:21.000 --> 12:22.000
no,

12:22.000 --> 12:23.000
it was something wrong with us,

12:23.000 --> 12:26.000
but it's something legacy from the work.

12:26.000 --> 12:27.000
Nowadays,

12:27.000 --> 12:28.000
there are just five subfolder,

12:28.000 --> 12:29.000
it's a folder,

12:29.000 --> 12:30.000
it's a folder,

12:30.000 --> 12:31.000
it's a folder,

12:31.000 --> 12:33.000
and the logic is simple.

12:33.000 --> 12:34.000
Now we have model,

12:34.000 --> 12:35.000
SRC,

12:35.000 --> 12:36.000
model,

12:36.000 --> 12:37.000
toolkit,

12:37.000 --> 12:38.000
package,

12:38.000 --> 12:39.000
files,

12:39.000 --> 12:40.000
just final files,

12:40.000 --> 12:41.000
everything headers,

12:41.000 --> 12:42.000
source files,

12:42.000 --> 12:43.000
everything's clean,

12:43.000 --> 12:45.000
and a lot of the features of that,

12:45.000 --> 12:46.000
if you're using,

12:46.000 --> 12:47.000
like,

12:47.000 --> 12:48.000
like,

12:48.000 --> 12:49.000
kapile,

12:49.000 --> 12:50.000
or cloud,

12:50.000 --> 12:53.000
it's very powerful with this layout.

12:53.000 --> 12:54.000
It's nowhere,

12:54.000 --> 12:55.000
it is,

12:55.000 --> 12:57.000
and he know how to grab and parse it.

12:57.000 --> 12:58.000
Much better for,

12:58.000 --> 12:59.000
at least,

12:59.000 --> 13:00.000
looking for informations.

13:00.000 --> 13:01.000
Much clear,

13:01.000 --> 13:02.000
and also,

13:02.000 --> 13:03.000
somewhere,

13:03.000 --> 13:04.000
a lot of readme,

13:04.000 --> 13:05.000
md,

13:05.000 --> 13:06.000
for the folders toolkit,

13:06.000 --> 13:07.000
and so on,

13:07.000 --> 13:08.000
sometimes you will see them,

13:08.000 --> 13:10.000
and I plan for the next few years,

13:10.000 --> 13:12.000
we'll add for all the toolkit's readme,

13:12.000 --> 13:14.000
because probably developers would like to see

13:14.000 --> 13:16.000
a little more information.

13:16.000 --> 13:17.000
So,

13:17.000 --> 13:18.000
hopefully,

13:18.000 --> 13:20.000
open cascade was tested all the time,

13:20.000 --> 13:21.000
so fortunately,

13:21.000 --> 13:24.000
we have the testing for all these decades,

13:24.000 --> 13:25.000
and yeah,

13:25.000 --> 13:26.000
it's good.

13:26.000 --> 13:27.000
So testing is important,

13:27.000 --> 13:30.000
and I hope all the application

13:30.000 --> 13:33.000
have their own unity or integration tests.

13:33.000 --> 13:34.000
Integration,

13:34.000 --> 13:35.000
not hence,

13:35.000 --> 13:36.000
and basically integration,

13:36.000 --> 13:38.000
but just script applications,

13:38.000 --> 13:40.000
script based testing.

13:40.000 --> 13:41.000
So,

13:41.000 --> 13:42.000
apparently,

13:42.000 --> 13:43.000
we have all the Google tests,

13:43.000 --> 13:44.000
so,

13:44.000 --> 13:45.000
from the 7.9,

13:45.000 --> 13:46.000
the support in Google test.

13:46.000 --> 13:47.000
So, it means,

13:47.000 --> 13:49.000
it's some developers would like to integrate some patches,

13:49.000 --> 13:50.000
they can use POS,

13:50.000 --> 13:51.000
but what's called,

13:51.000 --> 13:53.000
they don't need to go deeper with TCL.

13:53.000 --> 13:54.000
TCL,

13:54.000 --> 13:56.000
it's our own script based,

13:56.000 --> 13:57.000
TCL is not ours,

13:57.000 --> 14:01.000
but we have our own script based application,

14:01.000 --> 14:03.000
which based on TCL language,

14:03.000 --> 14:04.000
by GitHub CICD,

14:04.000 --> 14:06.000
for the all-platform,

14:06.000 --> 14:07.000
fortunately,

14:07.000 --> 14:08.000
or unfortunately,

14:08.000 --> 14:10.000
it's only about 40% of all the tests.

14:11.000 --> 14:12.000
All the other tests,

14:12.000 --> 14:15.000
we're going to commercial private stuff,

14:15.000 --> 14:18.000
but it's enough for the community to be just seeing

14:18.000 --> 14:20.000
what's wrong with the patches.

14:20.000 --> 14:21.000
You see the reports,

14:21.000 --> 14:22.000
you see the differences,

14:22.000 --> 14:23.000
picture differences,

14:23.000 --> 14:24.000
simple memory differences,

14:24.000 --> 14:25.000
you see everything,

14:25.000 --> 14:27.000
everything available for you to see,

14:27.000 --> 14:29.000
and it's also CICD checks,

14:29.000 --> 14:30.000
the code quality,

14:30.000 --> 14:32.000
and all the stuff by the public list.

14:32.000 --> 14:33.000
It's perfectly work.

14:33.000 --> 14:34.000
For the data exchange,

14:34.000 --> 14:35.000
I will have,

14:35.000 --> 14:38.000
I hope it'll long topic about the forms.

14:39.000 --> 14:40.000
Yeah, I have the time.

14:40.000 --> 14:42.000
So that exchange,

14:42.000 --> 14:44.000
open cascade by default of CICD,

14:44.000 --> 14:45.000
sorry about that,

14:45.000 --> 14:46.000
CICD,

14:46.000 --> 14:48.000
it's company which I currently,

14:48.000 --> 14:50.000
it's part of the,

14:50.000 --> 14:51.000
I'll keep jamingy,

14:51.000 --> 14:52.000
which currently is brand.

14:52.000 --> 14:53.000
Yeah, thank you,

14:53.000 --> 14:54.000
check.

14:54.000 --> 14:55.000
Which part of the brand?

14:55.000 --> 14:56.000
And yeah, CICD.

14:56.000 --> 14:58.000
So we have open source formats,

14:58.000 --> 15:01.000
and we have commercially commercial formats,

15:01.000 --> 15:04.000
each available by commercial news.

15:04.000 --> 15:05.000
But yeah,

15:05.000 --> 15:06.000
open source are available to,

15:06.000 --> 15:08.000
buy all the community,

15:08.000 --> 15:09.000
and they can use it.

15:09.000 --> 15:10.000
So dry,

15:10.000 --> 15:11.000
map,

15:11.000 --> 15:12.000
you can,

15:12.000 --> 15:13.000
not map,

15:13.000 --> 15:14.000
a lot of names,

15:14.000 --> 15:15.000
but yeah,

15:15.000 --> 15:16.000
the most important step,

15:16.000 --> 15:17.000
and probably,

15:17.000 --> 15:18.000
nothing more.

15:18.000 --> 15:19.000
Yeah,

15:19.000 --> 15:20.000
so,

15:20.000 --> 15:21.000
as I say,

15:21.000 --> 15:22.000
or CICD,

15:22.000 --> 15:23.000
it's very complicated,

15:23.000 --> 15:25.000
have three million lines of code,

15:25.000 --> 15:26.000
no one wants to read them,

15:26.000 --> 15:28.000
no one would like to use them,

15:28.000 --> 15:30.000
if it's not necessary for them.

15:30.000 --> 15:31.000
That's why,

15:31.000 --> 15:34.000
we decided to go forward with something simple,

15:34.000 --> 15:35.000
simple.

15:35.000 --> 15:38.000
So we decided to go with very light,

15:38.000 --> 15:42.000
this is a C++ new repository,

15:42.000 --> 15:44.000
which will wrap everything,

15:44.000 --> 15:47.000
but just provide a very tiny API,

15:47.000 --> 15:50.000
and it's very high,

15:50.000 --> 15:52.000
the commented.

15:52.000 --> 15:53.000
So that is why,

15:53.000 --> 15:56.000
I hope it will be much more for the newcomers,

15:56.000 --> 15:58.000
and at the same time,

15:58.000 --> 16:01.000
it will provide a much language for rappers.

16:02.000 --> 16:03.000
And yeah, so all the CI,

16:03.000 --> 16:05.000
API for all the rapid languages,

16:05.000 --> 16:06.000
will be the same.

16:06.000 --> 16:09.000
We will use our own personal rappers,

16:09.000 --> 16:10.000
not just something,

16:10.000 --> 16:11.000
but yeah,

16:11.000 --> 16:12.000
so it will be used,

16:12.000 --> 16:13.000
and then,

16:13.000 --> 16:16.000
hope it will give best benefits for the community.

16:16.000 --> 16:17.000
So the roadmap,

16:17.000 --> 16:20.000
for the long-term and medium-term and near-term.

16:20.000 --> 16:22.000
One of the benefits,

16:22.000 --> 16:24.000
I remember that,

16:24.000 --> 16:25.000
yes,

16:25.000 --> 16:26.000
on the chat,

16:26.000 --> 16:27.000
on this conference,

16:27.000 --> 16:28.000
so as a chat,

16:28.000 --> 16:29.000
if you don't know,

16:29.000 --> 16:31.000
there are a lot of questions about

16:31.000 --> 16:32.000
why land for the kick-out,

16:32.000 --> 16:34.000
and yes,

16:34.000 --> 16:36.000
why land will be added for the open cascade,

16:36.000 --> 16:38.000
starting from a few weeks,

16:38.000 --> 16:39.000
oh,

16:39.000 --> 16:40.000
for the list,

16:40.000 --> 16:41.000
so for the list,

16:41.000 --> 16:42.000
a it's zero,

16:42.000 --> 16:44.000
why land will be supported to be used.

16:44.000 --> 16:45.000
So,

16:45.000 --> 16:46.000
it probably is,

16:46.000 --> 16:47.000
as you know,

16:47.000 --> 16:49.000
the free image is no longer supported,

16:49.000 --> 16:50.000
we need to go out,

16:50.000 --> 16:51.000
because it's insecure,

16:51.000 --> 16:53.000
it has a lot of gaps inside,

16:53.000 --> 16:55.000
if you are using free image,

16:55.000 --> 16:56.000
be careful,

16:56.000 --> 16:57.000
it's dangerous for your application.

16:58.000 --> 17:00.000
It has a lot of holes.

17:00.000 --> 17:01.000
So,

17:01.000 --> 17:02.000
we would like to,

17:02.000 --> 17:03.000
so it's probably new.

17:03.000 --> 17:04.000
In the medium-term,

17:04.000 --> 17:06.000
we would like to inform you that open cascade,

17:06.000 --> 17:09.000
currently preparing the new formats,

17:09.000 --> 17:10.000
with public schemas,

17:10.000 --> 17:12.000
for the two formats,

17:12.000 --> 17:14.000
just base for the shapes,

17:14.000 --> 17:15.000
for the formats,

17:15.000 --> 17:18.000
which will be 50 times faster,

17:18.000 --> 17:20.000
and smaller,

17:20.000 --> 17:23.000
till we have the binary and JSON presentations.

17:23.000 --> 17:25.000
It means that you have public schemas,

17:25.000 --> 17:27.000
it will be very fast,

17:27.000 --> 17:29.000
and it will be available for all of them,

17:29.000 --> 17:30.000
all of you.

17:30.000 --> 17:31.000
It will be documented,

17:31.000 --> 17:32.000
it will be used,

17:32.000 --> 17:34.000
instead of the current break.

17:34.000 --> 17:35.000
Break also will be used,

17:35.000 --> 17:37.000
but that will be supported for the shapes.

17:37.000 --> 17:38.000
Also,

17:38.000 --> 17:40.000
we will have Samsung PDM related to the formats,

17:40.000 --> 17:41.000
which module,

17:41.000 --> 17:42.000
which module structure,

17:42.000 --> 17:44.000
to be added as a plugin,

17:44.000 --> 17:45.000
all the necessary stuff,

17:45.000 --> 17:47.000
which you're going to create on your side.

17:47.000 --> 17:49.000
It will be something

17:49.000 --> 17:50.000
from the medium-term,

17:50.000 --> 17:52.000
so it's very interesting for the most of the community,

17:52.000 --> 17:53.000
because the formats,

17:53.000 --> 17:56.000
is currently something complicated for the community.

17:56.000 --> 17:57.000
Oh, the interesting stuff.

17:57.000 --> 17:59.000
I forgot to mention that

17:59.000 --> 18:01.000
starting the previous year,

18:01.000 --> 18:04.000
OpenCascade was become a member

18:04.000 --> 18:06.000
of the lot of organizations.

18:06.000 --> 18:07.000
I was trying my best,

18:07.000 --> 18:09.000
and one of the organizations

18:09.000 --> 18:12.000
is kind of a limitation for them.

18:12.000 --> 18:14.000
So it means OpenCascade,

18:14.000 --> 18:16.000
currently on weekly basis,

18:16.000 --> 18:19.000
participate in the improving step.

18:19.000 --> 18:21.000
So with the guys with all the,

18:22.000 --> 18:24.000
I don't know how to say this,

18:25.000 --> 18:27.000
flag amounts of the industrious,

18:27.000 --> 18:29.000
we just come back together,

18:29.000 --> 18:32.000
discuss and talk in what we can do with this step itself.

18:32.000 --> 18:33.000
So a long tour,

18:33.000 --> 18:35.000
we would like to implement WebGPU,

18:35.000 --> 18:36.000
we'll come,

18:36.000 --> 18:37.000
a common organization,

18:37.000 --> 18:38.000
a multi-streaming spreading,

18:38.000 --> 18:39.000
so currently,

18:39.000 --> 18:40.000
we're going to be very complicated,

18:40.000 --> 18:41.000
and see,

18:41.000 --> 18:44.000
I would like to minimize the exception dependencies.

18:44.000 --> 18:45.000
So,

18:45.000 --> 18:46.000
I'm trying my best,

18:46.000 --> 18:47.000
because I'd like to talk about your QA,

18:47.000 --> 18:48.000
and so,

18:48.000 --> 18:49.000
as I say,

18:49.000 --> 18:51.000
if you have any problems,

18:51.000 --> 18:53.000
if you have any ideas,

18:53.000 --> 18:54.000
go to GitHub,

18:54.000 --> 18:55.000
create feature,

18:55.000 --> 18:56.000
discussions,

18:56.000 --> 18:58.000
create the pull request,

18:58.000 --> 19:00.000
I hope you will do that.

19:00.000 --> 19:02.000
And just,

19:02.000 --> 19:03.000
yeah,

19:03.000 --> 19:04.000
unfortunately,

19:04.000 --> 19:05.000
for the pull request,

19:05.000 --> 19:07.000
we need to sign the CLA,

19:07.000 --> 19:09.000
it's will not obligate you nothing,

19:09.000 --> 19:10.000
but we need to do that.

19:10.000 --> 19:11.000
So,

19:11.000 --> 19:13.000
all the activities like feature requests,

19:13.000 --> 19:14.000
back request,

19:14.000 --> 19:15.000
discussions,

19:15.000 --> 19:16.000
you'll free to go,

19:16.000 --> 19:18.000
but for the pull request,

19:18.000 --> 19:20.000
if a little more your time for the doses,

19:20.000 --> 19:22.000
all the activities like integration

19:22.000 --> 19:23.000
will be on us,

19:23.000 --> 19:24.000
we just provide code,

19:24.000 --> 19:26.000
and we do everything for you.

19:26.000 --> 19:28.000
And, yeah,

19:28.000 --> 19:29.000
is this all?

19:29.000 --> 19:31.000
I'm welcoming any questions,

19:31.000 --> 19:33.000
and I hope you will have some.

19:33.000 --> 19:34.000
Thank you.

19:34.000 --> 19:39.000
You did a very good job,

19:39.000 --> 19:40.000
leaving time for questions.

19:40.000 --> 19:42.000
We have lots of time for questions,

19:42.000 --> 19:43.000
so,

19:43.000 --> 19:44.000
Clement.

19:44.000 --> 19:45.000
So,

19:45.000 --> 19:49.000
about this light API that you're proposing,

19:49.000 --> 19:54.000
is this intended to kind of grow and have more functionality,

19:54.000 --> 19:57.000
and eventually replace the API for everything,

19:57.000 --> 19:59.000
or is it meant to stay small?

19:59.000 --> 20:01.000
It is modular.

20:01.000 --> 20:03.000
Whatever I do is modular.

20:03.000 --> 20:05.000
Oh, I forgot about some features.

20:05.000 --> 20:06.000
Yes, it will be modular.

20:06.000 --> 20:09.000
It means you can add a lot of modules inside,

20:09.000 --> 20:11.000
including the extra features,

20:11.000 --> 20:13.000
which we have a lot of community around,

20:14.000 --> 20:16.000
and we try to integrate them in the same layout.

20:16.000 --> 20:17.000
So, it will be modular.

20:17.000 --> 20:20.000
It will have more functionalities than original C++.

20:20.000 --> 20:21.000
It will be modular.

20:21.000 --> 20:23.000
So, I'll see++ for the,

20:23.000 --> 20:24.000
for the Samsung,

20:24.000 --> 20:25.000
which are found to mental,

20:25.000 --> 20:27.000
and everything plugin system is on.

20:27.000 --> 20:28.000
It will be on the,

20:28.000 --> 20:30.000
this flight of city.

20:38.000 --> 20:40.000
I have seen the example you have shown

20:40.000 --> 20:43.000
about the Python code from the light API,

20:43.000 --> 20:46.000
and I'm also using Cuffvery,

20:46.000 --> 20:48.000
which uses a similar API.

20:48.000 --> 20:50.000
But as far as I know,

20:50.000 --> 20:54.000
Cuffvery uses some kind of repair for open cascade.

20:54.000 --> 20:56.000
So, do you think that we're probably probably

20:56.000 --> 20:57.000
be,

20:57.000 --> 20:59.000
we don't need it anymore in the future?

20:59.000 --> 21:01.000
So, Cuffvery hates me.

21:01.000 --> 21:02.000
Ah,

21:02.000 --> 21:04.000
Yes, we just can't talk about this community.

21:04.000 --> 21:05.000
So,

21:05.000 --> 21:06.000
as the problem is,

21:06.000 --> 21:07.000
I have a work out of a city,

21:07.000 --> 21:09.000
and they have troubles with migrations.

21:09.000 --> 21:10.000
I love them.

21:10.000 --> 21:11.000
So, sorry.

21:11.000 --> 21:14.000
So, Cuffvery is all unwrapped,

21:14.000 --> 21:16.000
and the structure they have wrapped,

21:16.000 --> 21:17.000
I don't like.

21:17.000 --> 21:20.000
So, the interfaces for the city light,

21:20.000 --> 21:22.000
will be totally different from all the rappers,

21:22.000 --> 21:23.000
you know.

21:23.000 --> 21:24.000
It will be totally different

21:24.000 --> 21:27.000
because we need to something different,

21:27.000 --> 21:29.000
which more future proof,

21:29.000 --> 21:31.000
and much more simple to use.

21:31.000 --> 21:34.000
All the git rappers are not that good.

21:34.000 --> 21:35.000
They work in,

21:35.000 --> 21:36.000
it's fine.

21:36.000 --> 21:38.000
But they need to be better.

21:39.000 --> 21:40.000
Yeah.

21:40.000 --> 21:41.000
Ah, yes.

21:41.000 --> 21:43.000
I tried to help this team to migrate.

21:43.000 --> 21:44.000
So, yes.

21:44.000 --> 21:45.000
Cut query.

21:45.000 --> 21:46.000
We're in touch.

21:46.000 --> 21:47.000
Ah,

21:47.000 --> 21:49.000
So, my question is about

21:49.000 --> 21:50.000
GPX variation.

21:50.000 --> 21:51.000
What are you

21:51.000 --> 21:55.000
intending to use GPX variation for?

21:55.000 --> 21:56.000
Yeah.

21:56.000 --> 21:58.000
Ah, it is mostly for the shaders.

21:58.000 --> 22:00.000
So, we have just,

22:00.000 --> 22:02.000
at the moment, open cascade is

22:02.000 --> 22:03.000
breath based.

22:03.000 --> 22:05.000
So, there are no much possibilities to do.

22:05.000 --> 22:07.000
Most of it will be done in our commercial sites,

22:07.000 --> 22:08.000
about the intersection,

22:08.000 --> 22:10.000
and the collection,

22:10.000 --> 22:11.000
and some of the stuff,

22:11.000 --> 22:12.000
but it's for the mesh based.

22:12.000 --> 22:14.000
For the brief based,

22:14.000 --> 22:15.000
we only for the,

22:15.000 --> 22:16.000
not brief itself,

22:16.000 --> 22:17.000
for the visualization.

22:17.000 --> 22:18.000
For the grid rendering,

22:18.000 --> 22:19.000
and so on.

22:19.000 --> 22:20.000
Because sometimes we grid create

22:20.000 --> 22:21.000
by the currently,

22:21.000 --> 22:22.000
by the shapes.

22:22.000 --> 22:24.000
It's bad.

22:24.000 --> 22:26.000
And just,

22:26.000 --> 22:27.000
more jippo by shaders.

22:27.000 --> 22:29.000
And just ten years ago,

22:29.000 --> 22:31.000
we removed to the,

22:31.000 --> 22:33.000
and as a type of pipelines.

22:33.000 --> 22:34.000
But yeah.

22:34.000 --> 22:35.000
We did it.

22:35.000 --> 22:38.000
So, it just was a very, very, very interesting mostly.

22:38.000 --> 22:39.000
Thank you.

22:39.000 --> 22:40.000
Yep.

22:40.000 --> 22:41.000
Hi.

22:41.000 --> 22:43.000
Thanks for your talk.

22:43.000 --> 22:45.000
From your perspective,

22:45.000 --> 22:47.000
would you have any advice for

22:47.000 --> 22:48.000
freecat,

22:48.000 --> 22:50.000
but also other open source projects

22:50.000 --> 22:53.000
that are making use of open cascade,

22:53.000 --> 22:54.000
in general,

22:54.000 --> 22:56.000
given the roadmap.

22:56.000 --> 22:58.000
Yeah.

22:58.000 --> 23:00.000
So, the main point,

23:00.000 --> 23:02.000
I would probably prefer to have,

23:03.000 --> 23:05.000
for the all the community which has used us,

23:05.000 --> 23:08.000
is used in the future,

23:08.000 --> 23:10.000
develop a much easy interface

23:10.000 --> 23:12.000
to get the data from our step,

23:12.000 --> 23:13.000
for example.

23:13.000 --> 23:14.000
For now, a lot of community missed

23:14.000 --> 23:16.000
information about dimensions,

23:16.000 --> 23:17.000
layout, layers,

23:17.000 --> 23:18.000
and all the stuff from the step.

23:18.000 --> 23:19.000
We have it,

23:19.000 --> 23:20.000
but they can't extract.

23:20.000 --> 23:22.000
So, my recommendation just,

23:22.000 --> 23:23.000
at the moment,

23:23.000 --> 23:24.000
all the APIs complicated.

23:24.000 --> 23:26.000
We would like to improve it.

23:26.000 --> 23:28.000
And my recommendation,

23:28.000 --> 23:30.000
please provide your feedbacks.

23:31.000 --> 23:33.000
Yes.

23:33.000 --> 23:34.000
Your feedbacks,

23:34.000 --> 23:36.000
and we will discuss all the possibilities

23:36.000 --> 23:37.000
to improve us,

23:37.000 --> 23:39.000
and I hope we will help you

23:39.000 --> 23:40.000
as much as we can.

23:42.000 --> 23:43.000
Yeah.

23:43.000 --> 23:45.000
Thanks for the presentation for your work,

23:45.000 --> 23:46.000
especially.

23:46.000 --> 23:49.000
I'm not ready for a million

23:49.000 --> 23:51.000
with the internals, so I've got the kernel.

23:51.000 --> 23:52.000
Fortunately,

23:52.000 --> 23:53.000
but I was wondering,

23:53.000 --> 23:55.000
like, this is like a overview question,

23:55.000 --> 23:56.000
like,

23:56.000 --> 23:57.000
like,

23:57.000 --> 23:58.000
like,

23:58.000 --> 23:59.000
like,

23:59.000 --> 24:01.000
the main difference now

24:01.000 --> 24:02.000
between,

24:02.000 --> 24:03.000
or this is 3D,

24:03.000 --> 24:04.000
and something like,

24:04.000 --> 24:05.000
parasori,

24:05.000 --> 24:06.000
it is more like,

24:06.000 --> 24:07.000
performance,

24:07.000 --> 24:08.000
or feature,

24:08.000 --> 24:09.000
or something else.

24:09.000 --> 24:10.000
Ah,

24:10.000 --> 24:11.000
yeah.

24:11.000 --> 24:14.000
It's complicated to say,

24:14.000 --> 24:16.000
but everything.

24:16.000 --> 24:18.000
So, we have totally different models

24:18.000 --> 24:19.000
of to be used.

24:19.000 --> 24:21.000
Performance,

24:21.000 --> 24:22.000
it's complicated.

24:22.000 --> 24:24.000
Sometimes we have better performance

24:24.000 --> 24:26.000
because we have much less,

24:27.000 --> 24:28.000
or,

24:28.000 --> 24:29.000
all features,

24:29.000 --> 24:30.000
which we need to keep,

24:30.000 --> 24:31.000
because we have freedom.

24:31.000 --> 24:33.000
We have no limitation of contractual stuff.

24:33.000 --> 24:34.000
We can just,

24:34.000 --> 24:35.000
just,

24:35.000 --> 24:36.000
keeps,

24:36.000 --> 24:37.000
don't keep something.

24:37.000 --> 24:39.000
The difference is,

24:39.000 --> 24:42.000
amount of people working the project.

24:42.000 --> 24:43.000
So,

24:43.000 --> 24:45.000
copy and cascade have a kernel,

24:45.000 --> 24:46.000
but feature around,

24:46.000 --> 24:48.000
I'm not that smart as much.

24:48.000 --> 24:50.000
So, parasori is powerful,

24:50.000 --> 24:52.000
because they have a lot of,

24:52.000 --> 24:54.000
functionality at the top of the kernel.

24:55.000 --> 24:56.000
So, they have a lot of features.

24:56.000 --> 24:58.000
They have a thousand of people

24:58.000 --> 24:59.000
who are using QA,

24:59.000 --> 25:00.000
and so on.

25:00.000 --> 25:01.000
The difference is,

25:01.000 --> 25:02.000
mostly,

25:02.000 --> 25:04.000
about just community around

25:04.000 --> 25:05.000
and development team.

25:05.000 --> 25:07.000
They are similar,

25:07.000 --> 25:08.000
very similar,

25:08.000 --> 25:09.000
because they are working with both.

25:09.000 --> 25:10.000
I also touch,

25:10.000 --> 25:11.000
or not,

25:11.000 --> 25:12.000
sorry.

25:12.000 --> 25:15.000
Hi,

25:15.000 --> 25:17.000
I just wanted what the main barriers

25:17.000 --> 25:19.000
were to the GPU acceleration,

25:19.000 --> 25:21.000
point for the long term.

25:21.000 --> 25:22.000
Is that going to be like,

25:22.000 --> 25:23.000
short long term,

25:23.000 --> 25:24.000
or like,

25:24.000 --> 25:25.000
really long long term?

25:25.000 --> 25:26.000
Ah.

25:26.000 --> 25:28.000
It just depends on the community,

25:28.000 --> 25:29.000
as I say,

25:29.000 --> 25:31.000
we don't have sounds with people,

25:31.000 --> 25:33.000
and we need to prioritize.

25:33.000 --> 25:35.000
This is kind of a low priority fast,

25:35.000 --> 25:37.000
which I would like to have,

25:37.000 --> 25:39.000
because it's problematic for me

25:39.000 --> 25:40.000
when you have grid,

25:40.000 --> 25:42.000
and it's kill you performance.

25:42.000 --> 25:43.000
I very sensitive with performance,

25:43.000 --> 25:45.000
and for the last few years,

25:45.000 --> 25:46.000
I improved with CT,

25:46.000 --> 25:48.000
and in total we have about,

25:48.000 --> 25:49.000
for example,

25:49.000 --> 25:51.000
step files was improved by 95%

25:51.000 --> 25:52.000
and big files,

25:52.000 --> 25:53.000
reading step files.

25:53.000 --> 25:55.000
It's a lot of performance overall.

25:55.000 --> 25:56.000
We improved by CT,

25:56.000 --> 25:57.000
by tests.

25:57.000 --> 25:59.000
It was improved by 20%

25:59.000 --> 26:00.000
just with starting tests,

26:00.000 --> 26:02.000
and the 20% faster than two years ago.

26:02.000 --> 26:03.000
All the tests.

26:03.000 --> 26:05.000
So I very sensitive with performance,

26:05.000 --> 26:07.000
and that is why only one is.

26:07.000 --> 26:09.000
There are no more problems to do this,

26:09.000 --> 26:10.000
but slower priority.

26:10.000 --> 26:12.000
Okay, thank you very much.

26:18.000 --> 26:20.000
So maybe for the community,

26:21.000 --> 26:25.000
so if OCT needs help with our input,

26:25.000 --> 26:29.000
so I'm being paid by the FreeCAD project association

26:29.000 --> 26:32.000
in the position as OCT layer is on,

26:32.000 --> 26:36.000
and so I try to interact with the FreeCAD community,

26:36.000 --> 26:39.000
but also with open cascade community.

26:39.000 --> 26:41.000
And yeah,

26:41.000 --> 26:44.000
if our feedback will help,

26:44.000 --> 26:47.000
then I can be perhaps also a middle person

26:47.000 --> 26:52.000
in between to help make this smooth or,

26:52.000 --> 26:53.000
yeah.

26:53.000 --> 26:55.000
So if you want to reach out,

26:55.000 --> 27:00.000
you can probably just find me the position as OCT layer on.

27:00.000 --> 27:01.000
Yes.

27:01.000 --> 27:06.000
So you can occupy the GitHub of FreeCAD and use it,

27:06.000 --> 27:09.000
and I will just grab visit using the help of FreeCAD.

27:09.000 --> 27:12.000
So you can occupy their space.

27:12.000 --> 27:15.000
But I will have more reports.

27:15.000 --> 27:18.000
Thank you.

27:18.000 --> 27:19.000
Yes.

27:19.000 --> 27:21.000
Also, while forgot a few topics,

27:21.000 --> 27:22.000
currently,

27:22.000 --> 27:24.000
main topics is modernized code base.

27:24.000 --> 27:25.000
So currently,

27:25.000 --> 27:28.000
we rewrite a lot of foundation classes like the solvers,

27:28.000 --> 27:29.000
or the matrix solvers,

27:29.000 --> 27:30.000
linear solvers and so on.

27:30.000 --> 27:32.000
It was totally rewritten,

27:32.000 --> 27:34.000
and soon we will rewrite much more

27:34.000 --> 27:37.000
because I like performance and code quality.

27:37.000 --> 27:38.000
I rewrite a lot of them,

27:38.000 --> 27:40.000
and they are faster, better,

27:40.000 --> 27:42.000
and looks better.

27:43.000 --> 27:47.000
I hope much people will be sure that not only me.

27:47.000 --> 27:49.000
Okay, some more questions?

27:49.000 --> 27:52.000
Well, two questions.

27:52.000 --> 27:55.000
My question would be about the API again,

27:55.000 --> 27:59.000
because my impression is that

27:59.000 --> 28:04.000
because you said that the JavaScript and Python API

28:04.000 --> 28:07.000
would be much wider in the end

28:07.000 --> 28:10.000
than the SQL-class API.

28:10.000 --> 28:15.000
The path for new code projects would be to write themselves

28:15.000 --> 28:20.000
in some of those languages, either Python or JavaScript.

28:20.000 --> 28:21.000
Probably you don't get my idea.

28:21.000 --> 28:22.000
So, say,

28:22.000 --> 28:25.000
Lighter City is C++ projects.

28:25.000 --> 28:27.000
It's the same C++,

28:27.000 --> 28:29.000
but simply project projects.

28:29.000 --> 28:31.000
Everything like wrappers will wrap

28:31.000 --> 28:33.000
this C++ projects.

28:33.000 --> 28:37.000
It means the interface for the languages will be the same as C++.

28:37.000 --> 28:38.000
It means C++,

28:38.000 --> 28:40.000
it has the entire interface,

28:40.000 --> 28:42.000
as Java, as Python, as JavaScript.

28:42.000 --> 28:44.000
It will be the same language,

28:44.000 --> 28:46.000
but the basic will be C++,

28:46.000 --> 28:50.000
just because it's better for this world, it's better.

28:50.000 --> 28:52.000
Okay, so,

28:52.000 --> 28:57.000
the base design API is written in C++,

28:57.000 --> 29:00.000
and then just adapters for the article.

29:00.000 --> 29:02.000
The documentation will be one,

29:02.000 --> 29:03.000
so the documentation one,

29:03.000 --> 29:05.000
the function will be the same.

29:05.000 --> 29:09.000
You will write by different compilers or interpreters.

29:09.000 --> 29:13.000
Last year,

29:13.000 --> 29:14.000
there was a talk here,

29:14.000 --> 29:18.000
if somebody using this web assembly

29:18.000 --> 29:21.000
was some version of OCCT

29:21.000 --> 29:24.000
to make a web-based cat.

29:24.000 --> 29:27.000
I looked into that,

29:27.000 --> 29:32.000
and one problem with it was it's like a gigantic download

29:32.000 --> 29:33.000
every time,

29:33.000 --> 29:35.000
and you were talking about modularity.

29:35.000 --> 29:38.000
So, is it possible to cut that down?

29:38.000 --> 29:39.000
And how would this work?

29:39.000 --> 29:41.000
So, it's already worked.

29:41.000 --> 29:42.000
So, the modularity,

29:42.000 --> 29:44.000
it means you have full flexibility,

29:44.000 --> 29:45.000
what you want.

29:45.000 --> 29:46.000
So, there are a lot of lags,

29:46.000 --> 29:47.000
and you can just disable it.

29:47.000 --> 29:49.000
I don't like cat docker,

29:49.000 --> 29:51.000
so it means it will be work on any platforms,

29:51.000 --> 29:53.000
you can just choose what you want,

29:53.000 --> 29:56.000
and it will choose and wrap on these features.

29:56.000 --> 29:57.000
It's very light,

29:57.000 --> 30:00.000
and a lot of people who give this for the temporary changes.

30:00.000 --> 30:02.000
You say it's much, much smaller,

30:02.000 --> 30:03.000
and much easier to build,

30:03.000 --> 30:06.000
because a node docker is like done for the OCCJS.

30:06.000 --> 30:08.000
OCCJS no longer supported,

30:08.000 --> 30:10.000
and the API is terrible.

30:10.000 --> 30:12.000
Sorry.

30:16.000 --> 30:17.000
Other questions?

30:17.000 --> 30:18.000
We have a couple minutes.

30:22.000 --> 30:23.000
No? All right?

30:23.000 --> 30:24.000
One more.

30:24.000 --> 30:26.000
All right. Why not?

30:27.000 --> 30:33.000
What would be like the use case for whale and support?

30:33.000 --> 30:39.000
What has to be done for whale and support in OCCJST?

30:39.000 --> 30:41.000
Because if it's a library,

30:41.000 --> 30:43.000
then shouldn't it be like,

30:43.000 --> 30:48.000
should it be not responsible for output to display?

30:48.000 --> 30:51.000
We work a lot of the...

30:56.000 --> 30:59.000
What is the use case for whale and support in OCCJST?

30:59.000 --> 31:02.000
What is the use case for whale and support in OCCJST?

31:02.000 --> 31:04.000
What is the use case for whale and support in OCCJST?

31:04.000 --> 31:06.000
What is the use case for whale and support in OCCJST?

31:06.000 --> 31:08.000
What is the use case for whale and support in OCCJST?

31:08.000 --> 31:10.000
What is the use case for whale and support in OCCJST?

31:10.000 --> 31:12.000
What is the use case for whale and support in OCCJST?

31:12.000 --> 31:14.000
What is the use case for whale and support in OCCJST?

31:14.000 --> 31:16.000
What is the use case for whale and support in OCCJST?

31:16.000 --> 31:18.000
What is the use case for whale and support in OCCJST?

31:18.000 --> 31:20.000
What is the use case for whale and support in OCCJST?

31:20.000 --> 31:22.000
What is the use case for whale and support in OCCJST?

