OCCT 7.0.0 beta testing



We are happy to announce that beta version of OCCT 7.0 is available for testing, and invite you to test it in your projects.

OCCT 7.0 includes a number of essential changes aimed to eliminate legacy limitations of OCCT. These changes improve configuration and building, execution in multithreaded environments and on mobile platforms, reliability of modeling algorithms. By their nature, they affect base classes and API, thus certain effort will likely be necessary to upgrade existing applications for use with OCCT 7.0.

We took a lot of care trying to preserve source compatibility with previous versions as much as possible, and provide detailed description of the changes, along with guidelines for the upgrade. The Upgrade Guide is now a part of OCCT documentation; its current version can be found online.

Please share your opinion and experience, both positive and negative. We will try to address your complaints and improve upgrade guide and procedures before the final release, to make adoption of the new version easier for all users.

If you have reported some issues in the bug tracker, please check those with Verified status and Target Version set to 7.0.0 -- we assume they are fixed, and will appreciate to see your comments in the notes of the issue. If you detect a regression, please report it as soon as possible.

Use the commit tagged "V7_0_0_beta" in the Git repository for this testing. Alternatively, you can use either complete source archive or Windows installer including ready-to-use binaries built with VS 2010 or VS 2013.

For details on the content of the 7.0.0 release, see draft Release Notes.

Tentatively the final release of 7.0.0 is scheduled for the end of January 2016. During the remaining time, we are going to finalize updates of documentation and configuration, and address issues reported on beta version. Follow the changes in the Git master branch to trace the progress.

We are looking forward to get your feedback.

Martin Siggel's picture

Thank you for this amazing release. OCCT is getting better with every release.

I upgraded our source code using the upgrade tool on Windows. There, it does not preserve the line endings type. This causes problems with git and other VCS as the whole file is marked as changed.
It would be great, if you would write the line endings type, that is used before modification.

In our code, CR LF was replaced by CR CR LF. This might be a Windows only Problem, but I am not sure.

Andrey BETENEV's picture

Hello Martin,

Thank you for reporting the problem!
I have registered issue #27054 for this; you can try corrected version of the tool from Git branch CR27054.
Or just replace file adm/upgrade.tcl by this to get it working.

Happy New Year!


Martin Siggel's picture

Hello Andrey,

thanks for the prompt response. I checked out the new upgrade tool.

I can confirm, that this fixes the problem with the line endings.

Happy New Year too!


Martin Siggel's picture

I noticed a change in the visualization of vertices.

In the older versions of occt, vertices (TopoDS_Vertex) are displayed (by default) as yellow crosses. With OCCT 7, vertices are a tiny dots (just one pixel size), which is hardly visible.

Is this intentional or a bug?

Kirill Gavrilov's picture

Hello Martin,

the presentation aspects for free vertices have not been changed in OCCT 7.0.0.
I can not reproduce described problem within simple tests.

Please try providing more complete description of the problem with test case (better as Draw Harness commands) and register the bug in Mantis.

Martin Siggel's picture

Dear kgv,

I digged more into this issue. Two things I observed:

- This issue happens since 6.9.0 (probably due to use of shaders)
- Happens only, if the AIS_Shape gets a custom color, i.e. if AIS_Shape::SetColor is called

Unfortunately, I could not reproduce it with a DRAW command. Using some of the examples, e.q. QT this is still possible:

To reproduce:

- Use the qt example
- return a TopoDS_Vertex in MakeBottle (instead of the bottle)
- Insert AISBottle->SetColor(Quantity_NOC_ALICEBLUE); in DocumentTut.cxx (onMakeBottle)

The same can be reproduced in the MFC ImportExport example:
- In ColoredShapes.cxx, replace line
anAIScontext->SetColor(ais, (Quantity_NameOfColor)m_colorMap.Find(iter.Value()));

- Then import a brep file containing a vertex

The corresponding mantis issue is the following:

Martin Siggel's picture

I found a bug in this 7.0 beta release concerning the geom projection/extrema algorithms.

I already filed the bug in mantis:

This case worked in the 6.9.1 release, so this might be a regression.

Andrey BETENEV's picture

Hello Martin,

The issues #27059 and #27060 should be fixed in master, please check


QbProg's picture

Have you considered to take the occasion of the breaking changes and convert Standard_Bool to bool ?

Andrey BETENEV's picture


Actually we do not want to put too many changes in OCCT 7.0. Basically the idea of OCCT 7.0 is to accomplish transfer to pure C++ from legacy WOK/CDL technologies, which already implies quite essential changes. Naturally, we also include fixes and improvements made on functionality and performance (mostly required for projects depending on OCCT). Other improvements such as redefinition of Standard_Boolean can be considered for the next version; making them for OCCT 7.0 could cause additional troubles for porting while not bringing important benefits.