]> OCCT Git - occt.git/commitdiff
0026542: Visualization - Finalize support of D3D
authorapn <apn@opencascade.com>
Thu, 13 Aug 2015 12:21:57 +0000 (15:21 +0300)
committerbugmaster <bugmaster@opencascade.com>
Wed, 21 Oct 2015 14:49:02 +0000 (17:49 +0300)
D3DHost_View - fix compilation issues on old msvc compilers.
CMake - add TKD3DHost.

Cosmetic correction

CMakeLists.txt
adm/MODULES
adm/cmake/vardescr.cmake
adm/templates/env.bat
src/D3DHost/D3DHost_View.cxx
src/TKD3DHost/CMakeLists.txt [new file with mode: 0644]

index 7509a5b33913f4a6b47f7ae1a561d769576722c6..a897d3b3b5b658138c0b4c01fc8af11ea210d9aa 100644 (file)
@@ -68,6 +68,9 @@ endif()
 if (APPLE)
   set (USE_GLX OFF CACHE BOOL "${USE_GLX_DESCR}")
 endif()
+if (WIN32)
+  set (USE_D3D OFF CACHE BOOL "${USE_D3D_DESCR}")
+endif()
 
 set (USE_VTK OFF CACHE BOOL "${USE_VTK_DESCR}")
 
@@ -91,6 +94,10 @@ if (NOT USE_VTK)
   list (REMOVE_ITEM Draw_TOOLKITS TKIVtkDraw)
 endif()
 
+if (NOT USE_D3D)
+  list (REMOVE_ITEM Visualization_TOOLKITS TKD3DHost)
+endif()
+
 # accumulate used toolkits (first level) in BUILD_TOOLKITS variable
 list (APPEND BUILD_TOOLKITS ${BUILD_ADDITIONAL_TOOLKITS})
 
@@ -182,6 +189,14 @@ else()
   OCCT_CHECK_AND_UNSET ("INSTALL_VTK")
 endif()
 
+# D3D
+if (USE_D3D)
+  add_definitions (-DHAVE_D3D)
+  #if(MSVC_VERSION LESS 1700)
+  #OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/d3d")
+  #endif()
+endif()
+
 # GLX
 if (USE_GLX)
   add_definitions (-DMACOSX_USE_GLX)
index 10b1b2c6b8bd48db36fa19011f8c5adc53cfe239..67bd30b551b43a1b183e39a70b6108da7698b12b 100644 (file)
@@ -1,7 +1,7 @@
 FoundationClasses TKernel TKMath
 ModelingData TKG2d TKG3d TKGeomBase TKBRep
 ModelingAlgorithms TKGeomAlgo TKTopAlgo TKPrim TKBO TKBool TKHLR TKFillet TKOffset TKFeat TKMesh TKXMesh TKShHealing
-Visualization TKService TKV3d TKOpenGl TKMeshVS TKIVtk
+Visualization TKService TKV3d TKOpenGl TKMeshVS TKIVtk TKD3DHost
 ApplicationFramework TKCDF TKLCAF TKCAF TKBinL TKXmlL TKBin TKXml FWOSPlugin TKTObj TKBinTObj TKXmlTObj
 DataExchange TKXSBase TKSTEPBase TKSTEPAttr TKSTEP209 TKSTEP TKIGES TKXCAF TKXDEIGES TKXDESTEP TKSTL TKVRML TKXmlXCAF TKBinXCAF
 Draw TKDraw TKTopTest TKViewerTest TKXSDRAW TKDCAF TKXDEDRAW TKTObjDRAW TKQADraw TKIVtkDraw DRAWEXE
\ No newline at end of file
index fb344edd774100ff1da6e2c18a15491db6459797..6ee1dc3fc76143e0444a864f9587e965e0c46cdd 100644 (file)
@@ -106,6 +106,8 @@ VTK by means of its dedicated VIS component (VTK Integration Services).")
 
 set (USE_GLX_DESCR "Indicates whether X11 OpenGl on OSX is used or not")
 
+set (USE_D3D_DESCR "Indicates whether optional Direct3D wrapper in OCCT visualization module should be build or not")
+
 macro (BUILD_MODULE MODULE_NAME)
   set (BUILD_MODULE_${MODULE_NAME} ON CACHE BOOL "${BUILD_MODULE_${MODULE_NAME}_DESCR}")
 endmacro()
index 0501038659c1d9f3514e2fd7ed883f2bc6725569..02cca18721908dd917433ba2eef33dd701875a82 100644 (file)
@@ -24,6 +24,7 @@ set "HAVE_FREEIMAGE=false"
 set "HAVE_GL2PS=false"
 set "HAVE_OPENCL=false"
 set "HAVE_VTK=false"
+set "HAVE_D3D=false"
 set "CSF_OPT_INC="
 set "CSF_OPT_LIB32="
 set "CSF_OPT_LIB64="
@@ -67,11 +68,13 @@ if ["%HAVE_OPENCL%"]    == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DH
 if ["%HAVE_GL2PS%"]     == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_GL2PS"
 if ["%HAVE_FREEIMAGE%"] == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_FREEIMAGE"
 if ["%HAVE_VTK%"]       == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_VTK"
+if ["%HAVE_D3D%"]       == ["true"] set "PRODUCTS_DEFINES=%PRODUCTS_DEFINES% -DHAVE_D3D"
 if ["%HAVE_TBB%"]       == ["true"] set "CSF_DEFINES=HAVE_TBB;%CSF_DEFINES%"
 if ["%HAVE_OPENCL%"]    == ["true"] set "CSF_DEFINES=HAVE_OPENCL;%CSF_DEFINES%"
 if ["%HAVE_GL2PS%"]     == ["true"] set "CSF_DEFINES=HAVE_GL2PS;%CSF_DEFINES%"
 if ["%HAVE_FREEIMAGE%"] == ["true"] set "CSF_DEFINES=HAVE_FREEIMAGE;%CSF_DEFINES%"
 if ["%HAVE_VTK%"]       == ["true"] set "CSF_DEFINES=HAVE_VTK;%CSF_DEFINES%"
+if ["%HAVE_D3D%"]       == ["true"] set "CSF_DEFINES=HAVE_D3D;%CSF_DEFINES%"
 
 rem Eliminate VS warning
 if ["%CSF_DEFINES%"]  == [""] set "CSF_DEFINES=;"
index 02a096d960f8f3bfc872dd79d7863c988f91f85d..c03ed4c443bbfe584ede37d7a51c754620a95c45 100644 (file)
@@ -51,8 +51,9 @@ D3DHost_View::D3DHost_View (const Handle(Graphic3d_StructureManager)& theMgr,
   myRefreshRate (D3DPRESENT_RATE_DEFAULT),
   myIsD3dEx     (false)
 {
-  myD3dParams = {};
-  myCurrMode  = {};
+  memset(&myD3dParams, 0, sizeof(myD3dParams));
+  memset(&myCurrMode,  0, sizeof(myCurrMode));
+
   myD3dParams.Windowed         = TRUE;
   myD3dParams.SwapEffect       = D3DSWAPEFFECT_DISCARD;
   myD3dParams.BackBufferFormat = D3DFMT_X8R8G8B8;
diff --git a/src/TKD3DHost/CMakeLists.txt b/src/TKD3DHost/CMakeLists.txt
new file mode 100644 (file)
index 0000000..366a7b1
--- /dev/null
@@ -0,0 +1,7 @@
+project(TKD3DHost)
+
+set (TOOLKIT_MODULES
+  D3DHost
+)
+
+include(${OCCT_SOURCE_DIR}/adm/cmake/occt_toolkit.cmake)