Skip to content

Commit f0ecafb

Browse files
Fix with OpenCascade 7.8.0. (#1306)
1 parent 680aff9 commit f0ecafb

File tree

2 files changed

+19
-2
lines changed

2 files changed

+19
-2
lines changed

plugins/occt/CMakeLists.txt

+14-2
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,13 @@ if("${OpenCASCADE_VERSION}" VERSION_LESS "7.5.0")
1717
message(FATAL_ERROR "Plugin: OpenCASCADE: ${OpenCASCADE_VERSION} is not supported by F3D, please update your OpenCASCADE installation.")
1818
endif()
1919

20-
if((NOT TARGET "TKSTEP") AND (NOT TARGET "TKIGES") AND (NOT TARGET "TKMesh"))
20+
if("${OpenCASCADE_VERSION}" VERSION_LESS "7.8.0")
21+
if((NOT TARGET "TKSTEP") AND (NOT TARGET "TKIGES") AND (NOT TARGET "TKMesh"))
22+
message(FATAL_ERROR "Plugin: OpenCASCADE does not contain required modules")
23+
endif()
24+
endif()
25+
26+
if((NOT TARGET "TKDESTEP") AND (NOT TARGET "TKDEIGES") AND (NOT TARGET "TKMesh"))
2127
message(FATAL_ERROR "Plugin: OpenCASCADE does not contain required modules")
2228
endif()
2329

@@ -27,8 +33,14 @@ option(F3D_PLUGIN_OCCT_COLORING_SUPPORT "Enable coloring support in occt plugin"
2733
mark_as_advanced(F3D_PLUGIN_OCCT_COLORING_SUPPORT)
2834

2935
if(F3D_PLUGIN_OCCT_COLORING_SUPPORT)
30-
if (NOT (TARGET "TKXDESTEP") OR NOT (TARGET "TKXDEIGES"))
36+
if("${OpenCASCADE_VERSION}" VERSION_LESS "7.8.0")
37+
if (NOT (TARGET "TKXDESTEP") OR NOT (TARGET "TKXDEIGES"))
3138
message(FATAL_ERROR "occt plugin: TKXDESTEP and TKXDEIGES OCCT modules are not found. Turn off F3D_PLUGIN_OCCT_COLORING_SUPPORT or enable them in your OpenCascade build.")
39+
endif()
40+
else()
41+
if (NOT (TARGET "TKXSDRAWSTEP") OR NOT (TARGET "TKXSDRAWIGES"))
42+
message(FATAL_ERROR "occt plugin: TKXSDRAWSTEP and TKXSDRAWIGES OCCT modules are not found. Turn off F3D_PLUGIN_OCCT_COLORING_SUPPORT or enable them in your OpenCascade build.")
43+
endif()
3244
endif()
3345
endif()
3446

plugins/occt/module/vtkF3DOCCTReader.cxx

+5
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
#if F3D_PLUGIN_OCCT_XCAF
3232
#include <IGESCAFControl_Reader.hxx>
3333
#include <STEPCAFControl_Reader.hxx>
34+
#include <Standard_Version.hxx>
3435
#include <TDF_ChildIterator.hxx>
3536
#include <TDataStd_Name.hxx>
3637
#include <TDocStd_Document.hxx>
@@ -487,7 +488,11 @@ class vtkF3DOCCTReader::vtkInternals
487488
int GetHash(const TDF_Label& label)
488489
{
489490
TopoDS_Shape aShape;
491+
#if OCC_VERSION_HEX < 0x070800
490492
return this->ShapeTool->GetShape(label, aShape) ? aShape.HashCode(INT_MAX) : 0;
493+
#else
494+
return this->ShapeTool->GetShape(label, aShape) ? std::hash<TopoDS_Shape>{}(aShape) : 0;
495+
#endif
491496
}
492497

493498
//----------------------------------------------------------------------------

0 commit comments

Comments
 (0)