Open CASCADE Technology: status update
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 287 | |
Author | ||
Contributors | ||
License | CC Attribution 2.0 Belgium: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/56990 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
00:00
Open set
00:26
Open setProcess modelingVisualization (computer graphics)FreewareData typeVisual systemFile formatBEEPBoolean algebraExtreme programmingRead-only memoryoutputParallel portOperations researchAlgorithmThread (computing)Server (computing)Moment (mathematics)MathematicsData conversionMusical ensembleShape (magazine)Distribution (mathematics)Point (geometry)Bridging (networking)Medical imagingModel theorySocial classOperator (mathematics)Object (grammar)Revision controlGame theoryNumbering schemeInformationSemiconductor memorySoftware frameworkProjective planeExtension (kinesiology)Computer configurationSeries (mathematics)System callCASE <Informatik>Form (programming)MultilaterationFamilyTheory of relativityMassArithmetic progressionNatural languageVisualization (computer graphics)ImplementationHuman migrationGoodness of fitResultantEvoluteSoftwareProcess (computing)RoutingCartesian coordinate systemDistanceStudent's t-testDemosceneVideoconferencingFigurate numberDependent and independent variablesConnectivity (graph theory)Personal digital assistantStokes' theoremSign (mathematics)Compilation albumConsistencyGeometryFormal grammarFile formatMoving averageTrianglePolygon meshStability theoryAlgorithmMaxima and minimaBoolean algebraReal numberKernel (computing)Curve1 (number)Configuration spaceOpen setBuildingCycle (graph theory)Computer fileCausalityType theoryPrice indexComputing platformScaling (geometry)FreewareRootPolygonComputer animation
04:22
Computing platformVisualization (computer graphics)Independence (probability theory)Medical imagingFigurate numberRevision controlAlgorithmImplementationWeightMusical ensembleOrder (biology)Acoustic shadowComputer animation
04:50
Acoustic shadowSource codeCone penetration testSphereVisualization (computer graphics)DreiecksnetzObject (grammar)Cylinder (geometry)ImplementationData structureComputer configurationOpen setInternetworkingStructural loadProjective planeData exchangeFile systemVisualization (computer graphics)Web 2.0Computer fileComputing platformModule (mathematics)AdditionReading (process)Extension (kinesiology)Social classOperator (mathematics)Core dumpData compressionAlgorithmKinematicsDevice driverAutomationSoftware testingStreaming mediaEndliche ModelltheorieDigital photographyOpen setGeometryUltimatum gamePhysical systemModel theoryComputer animation
05:50
BlogFile formatDrop (liquid)Internet forumCompilerProcess modelingStability theoryInteractive televisionExtension (kinesiology)Interface (computing)Thread (computing)GeometryFunction (mathematics)FreewareSample (statistics)CodeThresholding (image processing)Asynchronous Transfer ModeOpen setModel theoryAverageMobile WebSingle-precision floating-point formatSign (mathematics)Data structureSheaf (mathematics)WebsiteProduct (business)Self-organizationDigital signalAdditionComputer configurationProcess (computing)Software developerSoftware testingLink (knot theory)Coma BerenicesExplosionThread (computing)Translation (relic)Compilation albumAdditionWebsiteOperator (mathematics)BlogCodePartial derivativePay televisionGeometryData structureSheaf (mathematics)Projective planeReading (process)Multiplication signMachine visionThresholding (image processing)FreewareData managementOverhead (computing)WordProduct (business)Single-precision floating-point formatAttribute grammarOnline helpCartesian coordinate systemInformationSoftware testingRevision controlOpen setPoint (geometry)Endliche ModelltheorieDifferent (Kate Ryan album)AreaKernel (computing)CollaborationismComputer configurationInternet forumProcess (computing)Software developerGeneric programmingLevel (video gaming)Electronic program guideBitOpen sourceSingle sign-onSocial classSelf-organizationMereologyPatch (Unix)Universe (mathematics)Analytic continuationShared memoryAuthorization1 (number)Service (economics)Wave packetSampling (statistics)Form (programming)BuildingShape (magazine)Physical systemPresentation of a groupNetwork topologyResultantExtension (kinesiology)Model theoryE-learningDrop (liquid)Assembly languagePhysical lawBoss CorporationVideoconferencingRight angleComputer clusterTransformation (genetics)Computer animation
13:36
Data managementMathematics2 (number)Open setBitComputer animationMeeting/Interview
14:34
BlogOpen setProduct (business)Projective planeDigitizingAuthorizationConnected spaceTunisMeeting/Interview
15:50
James Waddell Alexander IIOpen setMathematicsVisualization (computer graphics)Model theoryMereologyMobile appMeeting/Interview
17:05
AdditionFront and back endsPlanningWeb 2.0Meeting/Interview
17:21
Open setDifferent (Kate Ryan album)Process (computing)MultiplicationVapor barrierSign (mathematics)Form (programming)AuthorizationMeeting/Interview
18:02
Meeting/Interview
18:17
James Waddell Alexander IITranslation (relic)Meeting/Interview
18:41
Software bugTelecommunicationMeeting/InterviewComputer animation
19:33
Computer animation
Transcript: English(auto-generated)
00:06
Hello, everyone. This is my third talk at Fazdam, a small tradition, I guess. If you are not familiar with Open Cascade technology, or CT for short, you can watch my previous talks about it. This year I will tell you about the technical side of things. My colleague Vera will bring community-related aspects.
00:25
In this talk, we cannot highlight each fix and improvement contributed to the kernel, but 7.6 introduced numerous fixes, including advances in step translator, face maximization tool, boolean operations, extrema, offset, aise, etc.
00:45
But here we indicate some essential updates. Since 2013, 6.7 release. Open Cascade has established a yearly release cycle of the framework in response to community compliance about rare releases in the past.
01:03
As timely scheduled releases, minor version bumps are not expected to emphasize specific improvements. Still, they represent just a new revision of Open Cascade technology, accumulating ready -to-use changes at the moment of the release, with some minor stabilization effort.
01:22
This practice is close to a rolling distribution model adopted by many other projects, though some of them are also switched to year-to-month versioning scheme to indicate this. Actually, we do not plan to change our versioning scheme. 7.6 release adds more options to configure building process.
01:44
Now it's possible to build it without xlib, for Linux of course, without free type and TK. Users can take advantage of this improvement to better adapt OCCT for their needs. We work hard to maintain as many platforms and compilers as possible, but supporting
02:01
of two old pre-C++11 compilers restricts project evolution and makes no more sense today. So, support of Visual Studio 2008 has been finally discontinued. Scaling in top of this shape was the root cause of various defects in our modeling algorithms.
02:20
Tolerances associated with geometry careers, I mean vertices, edges, and faces refer to non-scaled originals. Geometry scaling may lead to inconsistencies between formal tolerances and real ones. As a result, kernel now forbids assigning scaling to top-of-this-shape objects.
02:42
If one really wants to embed scaling, it can be done through B-RAP builder API transform class. P-RAP and X-CAF, the native formats for storing OCCT geometry without conversion, now preserve vertex normal information. 7.6 can read both old and new versions of the format.
03:03
Here we use the good-old backward compatibility principle when a newer version of software might deal with older versions of files. Xtremo package and its topological equivalent calculate extremums between geometric entities like the minimal distance between curves or projection of a point on a surface.
03:25
In 7.6, we introduced memory footprint and added parallel execution. These two are relevant to B-RAP Xtremo package. Support of trimmed curves is added for the curve-curve case of Xtremo package.
03:40
Like in 7.5, we keep working on the progress indicator. We added it to Boolean operations, set algorithm and B-RAP Xtremo. OCCT had two implementations of the Boolean operations. We informally call them old and new. The old implementation has fundamental defects that cannot be resolved.
04:03
That is why we stopped supporting it and now getting rid of them. This release removes the API of the old balloons, preventing their accidental usage. Poly package. Receive new methods to intersect mesh with an axis and triangle with an axis.
04:22
A new algorithm for accurate order-independent transparency is added. We added these figures to make this talk not so boring. The left image shows null order-independent transparency. The middle image shows weighted order-independent transparency available in previous OCCT versions.
04:44
And the right image shows depth-pinning implementation. Visualization now provides a simple but fast method for drawing shadows from directional light sources. We keep working on improving compatibility with embedded and web platforms.
05:02
And now visualization core is covered by automated tests of OpenGL ES driver in addition to desktop OpenGL driver. We are looking forward to see more community projects using OCCT as a WebAssembly module for modeling, data exchange and visualization.
05:21
This release brings a reading support of Draka compressed glTF files. It is a glossy algorithm given an outstanding compression ratio for glTF files. Also, entities representing stepped kinematics are added. A writer for OptiFormat is added.
05:40
Minor improvements include OSD file system class for unified and extendable C++ file stream operations. Code models are much more complex than they might look. Assemblies instancing, transformations, nesting, references and other particularities complicate assembly-level operations.
06:03
One typical problem when you deal with assemblies is sub-assembly extraction. Now this operation is harnessed in OpenCascade technology. Partial loading of ACAP document reduces the reading time by loading only attributes of interest.
06:21
In total, overhead is nearly 15% when the whole document is read. Additional details on the topic can be found in our blog post. We retrospectively versioned all previous ACAP documents and added writing support when possible. This enhancement extends data interoperability between applications using different versions of ACAP documents.
06:49
What we are going to do? First of all, we plan to drop support of Prea C++11 compilers. As mentioned earlier, by the way, you can participate in a poll created by my colleague Kirill related to this question.
07:03
Modeling doesn't need any special mentioning because it's the very heart of the kernel. We definitely will keep working on it. In visualization, we are looking forward to simplifying its usage. At the same time, new features might be implemented. In data exchange, we really want to add thread reentrancy in step translator.
07:24
Reading of tessellated geometry from step is highly demanded, but I'm not sure that it will be finished in 7.7. We know that our documentation is a weak point that could be dramatically improved, and we spend noticeable efforts to make it better in each release.
07:45
In 7.5, we reworked the overall structure. In 7.6, we restructured samples, added a new critique-based sample, and added an advice guide. This work is far from completion, so that is why you can see it here.
08:02
My previous talks were a bit generic. This time, I'd like to make it a bit more personal. Well, I'm planning to take part in dropping support of C++11 compilers, maybe on some modeling activities. Also, I was reviewing most patches related to documentation, so there is no reason to stop this practice in the future.
08:27
And you know who is blame. I'm currently busy with general activities related to getting rid of unused headers, forward declarations, and friend classes in my spare time.
08:41
It is small, but I hope that my Raspberry Pi 3 would build open cascade technology in less than 3 hours. Right now, I want to turn the floor over to Vera. She has something to say. Thank you, Alexander. My name is Vera Zdabnov. I'm open cascade technology community manager.
09:00
I'm going to share with you new opportunities for OCCT users. The first ones are related to ease and access to technology. OCCT is known to be quite a complex framework, so the entry threshold is quite high. Last year, we've put some efforts to ease it. First of all, having received numerous requests from the open source community, we decided to publish free trainings to ease the access to OCCT.
09:22
Free presentations cover preliminaries, geometry, and topology topics. You can find them in training and e-learning section of OCCT development website. Secondly, we introduced a novice guide as a part of our documentation to attract new users and help them with OCCT onboarding process.
09:41
As a part of continuous documentation improvements, this year's sample section was fully restructured and organized in a more logical manner. On top of that, highlighting for code snippets was finally added throughout the documentation to make it more user-friendly and easier to work with. Last year on FOSDEM, the subject of testing dataset was also raised.
10:04
We've received requests from the users interested in launching OCCT automated testing system with more shapes in addition to basic testing options. As a result of extensive analysis, a dataset consisting of more than 2,500 shapes was published, simplifying testing process for the users and contributors.
10:22
With these public shapes, OCCT test coverage raised almost twice, up to around 60%. One of the major OCCT community improvements last year was new developer website launch. It brings a couple of nice features like single sign-on and forums merging.
10:40
Earlier, our users could be confused choosing the right forum to ask questions. Forum structure has been revised to improve navigation and subscription to interesting sections instead of a single section for all topics. New website also features an updated get involved section, expanding the ways to contribute to OCCT development. In addition to the code contribution, we encourage users to share their ideas and vision on OCCT development,
11:06
help to educate others by writing articles, blog posts, and creating samples, contribute documentation and tutorials, and just spread the word about OCCT. We've also introduced two big website sections.
11:21
The first is recently launched open cascade technology project and products marketplace. This new section allows sharing information about OCCT-based products. Being a single access point to already more than 30 projects, it eases the entry into technology and provides one with a wider look at OCCT capabilities and application areas.
11:40
We invite you to explore the marketplace. If you work on OCCT-based project or product, we encourage you to share your experience with the community by requesting to list your project. In the future, we plan to provide the projects with official open cascade technology partner status, including wide opportunities for marketing and promotion.
12:01
One more new section is research and science publications listing. Open cascade technology is actively used at academic and research levels around the world. To provide the insight into it, we launch a new section devoted to OCCT-based research projects and articles. It already gathers more than 600 of research and scientific works
12:20
from prominent universities and organizations in more than 40 countries. If you also use OCCT in your research or scientific project, you can request us to list it in the collection to increase its visibility and share it with the community. To get an idea of OCCT spread and research in science, you can also explore our recently published infographics report,
12:42
which introduces various aspects of OCCT application by universities and even commercial companies around the world. Of course, we plan more exciting OCCT activities this year. We plan to implement fully digital workflow based on DocuSign e-signature service to make contribution process easier and faster.
13:02
We are working on open cascade technology rebranding as the project is evolving. We plan to launch a regular technical blog and welcome the external project authors. Some of you already know about it and agreed to participate. So if you are interested in preparing an article for open cascade website to share the experience of using OCCT in your project, please contact us via the contact form.
13:25
As always, we will be very glad to hear from the community. Contact us to share your thoughts, ideas for collaboration or tell about the project you work on. Looking forward to hearing from you.
13:49
The mainstream and we'll start in just a couple of seconds here. I'll introduce you. So welcome. I'm here talking with two members of the open cascade team about the new releases
14:04
and some of the features that they were discussing in their talk. And I'm really enthusiastic to hear about all of the new community changes that the open cascade team is working on.
14:20
And Vera, can you say a little bit about the reception that you're getting so far and what you'd like to see develop with that going forward? Thank you, Seth. So I'm community manager at open cascade. And I think one of the major improvements or opportunities for community in 2021
14:44
was launching the marketplace for projects. So currently it's free and everyone who is working on a project based on OCCT can join, can request to be listed there to promote his or her project. So for us, it's actually very important to have this connection with communities
15:02
and with people who actively working on implementing OCCT in their projects or products. And for the next year, we also plan to launch technical blog, which I'm really excited about. And currently we have nine authors who agreed to participate in the blog. So authors from external projects.
15:23
So if there is anyone who wants to join or to prepare an article for open cascade website, please contact me. I would be pretty glad to feature your article there. And we also will have a rebranding of OCCT. It will not be huge, but still very interesting.
15:40
And some more nice features, CLA digital process, as we mentioned earlier, and so on. So stay tuned. Excellent. And I saw that this, you are making some very big strides in the visualization side of open cascade.
16:02
Alexander, can you say a few more words about about where you're pushing that part of the technology? Well, well, well, well, I'm not a visualization guy, but let me try to answer.
16:24
Visualization, it's, I think, one of the most important things, because in the brief work, what you see is not what you have, because when you have a three dimensional model and it is it is some kind of mathematical concept
16:41
and without visualization, it's quite difficult to move forward. And our efforts to visualization are aimed at revealing of of technical things of your app modeling, I guess.
17:03
OK, no, that makes that makes sense. On the on the back end side, you've introduced Web GL as a as a rendering engine. Or do you have any plans for additional back end engines? Conscious, as far as I know, no.
17:25
The when people want to to contribute more to the open cascade project, I saw that your barriers to entry are being are being lowered. Are there do you still have the the the multi step facts, the authorization form to to open cascade,
17:52
or are you have you updated that to different different models?
18:01
So, yeah, we still have this multi multi steps, still a signing process. But hopefully this year, very soon, we will replace it with a fully digital one. So it will be much easier and faster to contribute to it. Excellent. And real quick, is is there one feature that you're most excited about for seven point seven?
18:27
Alexander, actually, I'm I will be happy to see improvements in step translator related to Fred. Excellent. And Vera.
18:44
Good question. It's for community like more activities, more contribution, more bugs reported and not only technical bugs, but maybe improvements in the communication. Everyone can help.