mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-01 17:36:21 +03:00
0032315: Configuration, CMake - fix building Draw Harness plugins as static libraries
DPLUGIN() macros no more defines exported function PLUGINFACTORY when building static libraries. DRAWEXE executable now pre-loads a set of plugins when building static libraries. dversion - added WebAssembly info.
This commit is contained in:
parent
d0d9e9375f
commit
a34bddcfd6
4
.gitattributes
vendored
4
.gitattributes
vendored
@ -1,6 +1,8 @@
|
|||||||
.gitattributes eol=lf
|
.gitattributes eol=lf
|
||||||
.gitignore eol=lf
|
.gitignore eol=lf
|
||||||
*.txt eol=lf
|
*.txt eol=lf
|
||||||
|
*.htm eol=lf
|
||||||
|
*.html eol=lf
|
||||||
*.h eol=lf
|
*.h eol=lf
|
||||||
*.c eol=lf
|
*.c eol=lf
|
||||||
*.inl eol=lf
|
*.inl eol=lf
|
||||||
@ -29,6 +31,7 @@
|
|||||||
*.xib eol=lf
|
*.xib eol=lf
|
||||||
*.plist eol=lf
|
*.plist eol=lf
|
||||||
*.java eol=lf
|
*.java eol=lf
|
||||||
|
*.js eol=lf
|
||||||
*.igs eol=lf
|
*.igs eol=lf
|
||||||
*.iges eol=lf
|
*.iges eol=lf
|
||||||
*.stp eol=lf
|
*.stp eol=lf
|
||||||
@ -44,6 +47,7 @@
|
|||||||
FILES eol=lf
|
FILES eol=lf
|
||||||
PACKAGES eol=lf
|
PACKAGES eol=lf
|
||||||
EXTERNLIB eol=lf
|
EXTERNLIB eol=lf
|
||||||
|
EXTERNLIB_STATIC eol=lf
|
||||||
UDLIST eol=lf
|
UDLIST eol=lf
|
||||||
tests/* eol=lf
|
tests/* eol=lf
|
||||||
tests/*/* eol=lf
|
tests/*/* eol=lf
|
||||||
|
@ -447,12 +447,6 @@ foreach (OCCT_MODULE ${OCCT_MODULES})
|
|||||||
endif()
|
endif()
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
# DRAWEXE excluded when library build is static
|
|
||||||
if (NOT BUILD_SHARED_LIBS)
|
|
||||||
list (REMOVE_ITEM BUILD_TOOLKITS DRAWEXE)
|
|
||||||
message (STATUS "Info: DRAWEXE is not included due to ${BUILD_LIBRARY_TYPE} build library type")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# accumulate all used toolkits
|
# accumulate all used toolkits
|
||||||
list (REMOVE_DUPLICATES BUILD_TOOLKITS)
|
list (REMOVE_DUPLICATES BUILD_TOOLKITS)
|
||||||
set (RAW_BUILD_TOOLKITS)
|
set (RAW_BUILD_TOOLKITS)
|
||||||
|
@ -118,6 +118,10 @@ else()
|
|||||||
OCCT_CHECK_AND_UNSET (OpenGlLibs_LIB)
|
OCCT_CHECK_AND_UNSET (OpenGlLibs_LIB)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
elseif (EMSCRIPTEN)
|
||||||
|
set (CSF_ThreadLibs "pthread rt stdc++")
|
||||||
|
set (CSF_OpenGlesLibs "EGL GLESv2")
|
||||||
|
set (CSF_dl "dl")
|
||||||
elseif (ANDROID)
|
elseif (ANDROID)
|
||||||
set (CSF_ThreadLibs "c")
|
set (CSF_ThreadLibs "c")
|
||||||
set (CSF_OpenGlesLibs "EGL GLESv2")
|
set (CSF_OpenGlesLibs "EGL GLESv2")
|
||||||
|
@ -22,7 +22,7 @@ if ("${OCCT_TOOLKITS_NAME_SUFFIX}" STREQUAL "")
|
|||||||
set (OCCT_TOOLKITS_NAME_SUFFIX "TOOLKITS")
|
set (OCCT_TOOLKITS_NAME_SUFFIX "TOOLKITS")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# parce PACKAGES file
|
# parse PACKAGES file
|
||||||
FILE_TO_LIST ("${RELATIVE_SOURCES_DIR}/${PROJECT_NAME}/PACKAGES" USED_PACKAGES)
|
FILE_TO_LIST ("${RELATIVE_SOURCES_DIR}/${PROJECT_NAME}/PACKAGES" USED_PACKAGES)
|
||||||
if ("${USED_PACKAGES}" STREQUAL "")
|
if ("${USED_PACKAGES}" STREQUAL "")
|
||||||
set (USED_PACKAGES ${PROJECT_NAME})
|
set (USED_PACKAGES ${PROJECT_NAME})
|
||||||
@ -39,7 +39,7 @@ set (PRECOMPILED_DEFS)
|
|||||||
|
|
||||||
if (NOT BUILD_SHARED_LIBS)
|
if (NOT BUILD_SHARED_LIBS)
|
||||||
list (APPEND PRECOMPILED_DEFS "-DOCCT_NO_PLUGINS")
|
list (APPEND PRECOMPILED_DEFS "-DOCCT_NO_PLUGINS")
|
||||||
if (WIN32)
|
if (WIN32 AND NOT EXECUTABLE_PROJECT)
|
||||||
list (APPEND PRECOMPILED_DEFS "-DOCCT_STATIC_BUILD")
|
list (APPEND PRECOMPILED_DEFS "-DOCCT_STATIC_BUILD")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
@ -228,6 +228,10 @@ if (EXECUTABLE_PROJECT)
|
|||||||
|
|
||||||
install (TARGETS ${PROJECT_NAME}
|
install (TARGETS ${PROJECT_NAME}
|
||||||
DESTINATION "${INSTALL_DIR_BIN}\${OCCT_INSTALL_BIN_LETTER}")
|
DESTINATION "${INSTALL_DIR_BIN}\${OCCT_INSTALL_BIN_LETTER}")
|
||||||
|
|
||||||
|
if (EMSCRIPTEN)
|
||||||
|
install(FILES ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/bin\${OCCT_INSTALL_BIN_LETTER}/${PROJECT_NAME}.wasm DESTINATION "${INSTALL_DIR_BIN}/${OCCT_INSTALL_BIN_LETTER}")
|
||||||
|
endif()
|
||||||
else()
|
else()
|
||||||
add_library (${PROJECT_NAME} ${USED_SRCFILES} ${USED_INCFILES} ${USED_RCFILE} ${RESOURCE_FILES} ${${PROJECT_NAME}_MOC_FILES})
|
add_library (${PROJECT_NAME} ${USED_SRCFILES} ${USED_INCFILES} ${USED_RCFILE} ${RESOURCE_FILES} ${${PROJECT_NAME}_MOC_FILES})
|
||||||
|
|
||||||
@ -283,8 +287,12 @@ endif()
|
|||||||
set (USED_TOOLKITS_BY_CURRENT_PROJECT)
|
set (USED_TOOLKITS_BY_CURRENT_PROJECT)
|
||||||
set (USED_EXTERNAL_LIBS_BY_CURRENT_PROJECT)
|
set (USED_EXTERNAL_LIBS_BY_CURRENT_PROJECT)
|
||||||
|
|
||||||
# parce EXTERNLIB file
|
# parse EXTERNLIB file
|
||||||
FILE_TO_LIST ("${RELATIVE_SOURCES_DIR}/${PROJECT_NAME}/EXTERNLIB" USED_EXTERNLIB_AND_TOOLKITS)
|
if (CUSTOM_EXTERNLIB)
|
||||||
|
set (USED_EXTERNLIB_AND_TOOLKITS ${CUSTOM_EXTERNLIB})
|
||||||
|
else()
|
||||||
|
FILE_TO_LIST ("${RELATIVE_SOURCES_DIR}/${PROJECT_NAME}/EXTERNLIB" USED_EXTERNLIB_AND_TOOLKITS)
|
||||||
|
endif()
|
||||||
foreach (USED_ITEM ${USED_EXTERNLIB_AND_TOOLKITS})
|
foreach (USED_ITEM ${USED_EXTERNLIB_AND_TOOLKITS})
|
||||||
string (REGEX MATCH "^ *#" COMMENT_FOUND ${USED_ITEM})
|
string (REGEX MATCH "^ *#" COMMENT_FOUND ${USED_ITEM})
|
||||||
if (NOT COMMENT_FOUND)
|
if (NOT COMMENT_FOUND)
|
||||||
@ -383,7 +391,7 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (BUILD_SHARED_LIBS)
|
if (BUILD_SHARED_LIBS OR EXECUTABLE_PROJECT)
|
||||||
if(IS_VTK_9XX)
|
if(IS_VTK_9XX)
|
||||||
string (REGEX REPLACE "vtk" "VTK::" USED_TOOLKITS_BY_CURRENT_PROJECT "${USED_TOOLKITS_BY_CURRENT_PROJECT}")
|
string (REGEX REPLACE "vtk" "VTK::" USED_TOOLKITS_BY_CURRENT_PROJECT "${USED_TOOLKITS_BY_CURRENT_PROJECT}")
|
||||||
endif()
|
endif()
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# tcl
|
# tcl
|
||||||
|
|
||||||
if (NOT DEFINED INSTALL_TCL AND BUILD_SHARED_LIBS)
|
if (NOT DEFINED INSTALL_TCL)
|
||||||
set (INSTALL_TCL OFF CACHE BOOL "${INSTALL_TCL_DESCR}")
|
set (INSTALL_TCL OFF CACHE BOOL "${INSTALL_TCL_DESCR}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@ -14,30 +14,30 @@ if (NOT DEFINED 3RDPARTY_TCL_INCLUDE_DIR)
|
|||||||
set (3RDPARTY_TCL_INCLUDE_DIR "" CACHE FILEPATH "The directory containing headers of tcl")
|
set (3RDPARTY_TCL_INCLUDE_DIR "" CACHE FILEPATH "The directory containing headers of tcl")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (BUILD_SHARED_LIBS)
|
|
||||||
# tcl library file (with absolute path)
|
|
||||||
if (NOT DEFINED 3RDPARTY_TCL_LIBRARY OR NOT 3RDPARTY_TCL_LIBRARY_DIR)
|
|
||||||
set (3RDPARTY_TCL_LIBRARY "" CACHE FILEPATH "tcl library" FORCE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# tcl library directory
|
# tcl library file (with absolute path)
|
||||||
if (NOT DEFINED 3RDPARTY_TCL_LIBRARY_DIR)
|
if (NOT DEFINED 3RDPARTY_TCL_LIBRARY OR NOT 3RDPARTY_TCL_LIBRARY_DIR)
|
||||||
set (3RDPARTY_TCL_LIBRARY_DIR "" CACHE FILEPATH "The directory containing tcl library")
|
set (3RDPARTY_TCL_LIBRARY "" CACHE FILEPATH "tcl library" FORCE)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# tcl shared library (with absolute path)
|
# tcl library directory
|
||||||
if (WIN32)
|
if (NOT DEFINED 3RDPARTY_TCL_LIBRARY_DIR)
|
||||||
if (NOT DEFINED 3RDPARTY_TCL_DLL OR NOT 3RDPARTY_TCL_DLL_DIR)
|
set (3RDPARTY_TCL_LIBRARY_DIR "" CACHE FILEPATH "The directory containing tcl library")
|
||||||
set (3RDPARTY_TCL_DLL "" CACHE FILEPATH "tcl shared library" FORCE)
|
endif()
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# tcl shared library directory
|
# tcl shared library (with absolute path)
|
||||||
if (WIN32 AND NOT DEFINED 3RDPARTY_TCL_DLL_DIR)
|
if (WIN32)
|
||||||
set (3RDPARTY_TCL_DLL_DIR "" CACHE FILEPATH "The directory containing tcl shared library")
|
if (NOT DEFINED 3RDPARTY_TCL_DLL OR NOT 3RDPARTY_TCL_DLL_DIR)
|
||||||
|
set (3RDPARTY_TCL_DLL "" CACHE FILEPATH "tcl shared library" FORCE)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# tcl shared library directory
|
||||||
|
if (WIN32 AND NOT DEFINED 3RDPARTY_TCL_DLL_DIR)
|
||||||
|
set (3RDPARTY_TCL_DLL_DIR "" CACHE FILEPATH "The directory containing tcl shared library")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
# search for tcl in user defined directory
|
# search for tcl in user defined directory
|
||||||
if (NOT 3RDPARTY_TCL_DIR AND 3RDPARTY_DIR)
|
if (NOT 3RDPARTY_TCL_DIR AND 3RDPARTY_DIR)
|
||||||
FIND_PRODUCT_DIR("${3RDPARTY_DIR}" tcl TCL_DIR_NAME)
|
FIND_PRODUCT_DIR("${3RDPARTY_DIR}" tcl TCL_DIR_NAME)
|
||||||
@ -64,204 +64,198 @@ if (NOT 3RDPARTY_TCL_INCLUDE_DIR)
|
|||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (BUILD_SHARED_LIBS)
|
# tcl dir and library
|
||||||
# tcl dir and library
|
if (NOT 3RDPARTY_TCL_LIBRARY)
|
||||||
if (NOT 3RDPARTY_TCL_LIBRARY)
|
if (TCL_LIBRARY AND EXISTS "${TCL_LIBRARY}")
|
||||||
if (TCL_LIBRARY AND EXISTS "${TCL_LIBRARY}")
|
set (3RDPARTY_TCL_LIBRARY "${TCL_LIBRARY}" CACHE FILEPATH "TCL library" FORCE)
|
||||||
set (3RDPARTY_TCL_LIBRARY "${TCL_LIBRARY}" CACHE FILEPATH "TCL library" FORCE)
|
|
||||||
|
|
||||||
if (NOT 3RDPARTY_TCL_LIBRARY_DIR)
|
if (NOT 3RDPARTY_TCL_LIBRARY_DIR)
|
||||||
get_filename_component (3RDPARTY_TCL_LIBRARY_DIR "${3RDPARTY_TCL_LIBRARY}" PATH)
|
get_filename_component (3RDPARTY_TCL_LIBRARY_DIR "${3RDPARTY_TCL_LIBRARY}" PATH)
|
||||||
set (3RDPARTY_TCL_LIBRARY_DIR "${3RDPARTY_TCL_LIBRARY_DIR}" CACHE FILEPATH "The directory containing TCL library" FORCE)
|
set (3RDPARTY_TCL_LIBRARY_DIR "${3RDPARTY_TCL_LIBRARY_DIR}" CACHE FILEPATH "The directory containing TCL library" FORCE)
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (WIN32)
|
||||||
|
if (NOT 3RDPARTY_TCL_DLL)
|
||||||
|
set (CMAKE_FIND_LIBRARY_SUFFIXES .lib .dll .a)
|
||||||
|
|
||||||
if (WIN32)
|
set (DLL_FOLDER_FOR_SEARCH "")
|
||||||
if (NOT 3RDPARTY_TCL_DLL)
|
if (3RDPARTY_TCL_DLL_DIR)
|
||||||
set (CMAKE_FIND_LIBRARY_SUFFIXES .lib .dll .a)
|
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_DLL_DIR}")
|
||||||
|
elseif (3RDPARTY_TCL_DIR)
|
||||||
set (DLL_FOLDER_FOR_SEARCH "")
|
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_DIR}/bin")
|
||||||
if (3RDPARTY_TCL_DLL_DIR)
|
elseif (3RDPARTY_TCL_LIBRARY_DIR)
|
||||||
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_DLL_DIR}")
|
get_filename_component (3RDPARTY_TCL_LIBRARY_DIR_PARENT "${3RDPARTY_TCL_LIBRARY_DIR}" PATH)
|
||||||
elseif (3RDPARTY_TCL_DIR)
|
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_LIBRARY_DIR_PARENT}/bin")
|
||||||
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_DIR}/bin")
|
|
||||||
elseif (3RDPARTY_TCL_LIBRARY_DIR)
|
|
||||||
get_filename_component (3RDPARTY_TCL_LIBRARY_DIR_PARENT "${3RDPARTY_TCL_LIBRARY_DIR}" PATH)
|
|
||||||
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_LIBRARY_DIR_PARENT}/bin")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set (3RDPARTY_TCL_DLL "3RDPARTY_TCL_DLL-NOTFOUND" CACHE FILEPATH "TCL shared library" FORCE)
|
|
||||||
find_library (3RDPARTY_TCL_DLL NAMES ${CSF_TclLibs}
|
|
||||||
PATHS "${DLL_FOLDER_FOR_SEARCH}"
|
|
||||||
NO_DEFAULT_PATH)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
set (3RDPARTY_TCL_DLL "3RDPARTY_TCL_DLL-NOTFOUND" CACHE FILEPATH "TCL shared library" FORCE)
|
||||||
|
find_library (3RDPARTY_TCL_DLL NAMES ${CSF_TclLibs}
|
||||||
|
PATHS "${DLL_FOLDER_FOR_SEARCH}"
|
||||||
|
NO_DEFAULT_PATH)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
COMPLIANCE_PRODUCT_CONSISTENCY(TCL)
|
COMPLIANCE_PRODUCT_CONSISTENCY(TCL)
|
||||||
|
|
||||||
if (BUILD_SHARED_LIBS)
|
# tcl dir and library
|
||||||
# tcl dir and library
|
if (NOT 3RDPARTY_TCL_LIBRARY)
|
||||||
if (NOT 3RDPARTY_TCL_LIBRARY)
|
set (3RDPARTY_TCL_LIBRARY "3RDPARTY_TCL_LIBRARY-NOTFOUND" CACHE FILEPATH "TCL library" FORCE)
|
||||||
set (3RDPARTY_TCL_LIBRARY "3RDPARTY_TCL_LIBRARY-NOTFOUND" CACHE FILEPATH "TCL library" FORCE)
|
find_library (3RDPARTY_TCL_LIBRARY NAMES ${CSF_TclLibs}
|
||||||
find_library (3RDPARTY_TCL_LIBRARY NAMES ${CSF_TclLibs}
|
PATHS "${3RDPARTY_TCL_LIBRARY_DIR}"
|
||||||
PATHS "${3RDPARTY_TCL_LIBRARY_DIR}"
|
|
||||||
NO_DEFAULT_PATH)
|
|
||||||
|
|
||||||
# search in another place if previous search doesn't find anything
|
|
||||||
find_library (3RDPARTY_TCL_LIBRARY NAMES ${CSF_TclLibs}
|
|
||||||
PATHS "${3RDPARTY_TCL_DIR}/lib"
|
|
||||||
NO_DEFAULT_PATH)
|
|
||||||
|
|
||||||
|
|
||||||
if (NOT 3RDPARTY_TCL_LIBRARY OR NOT EXISTS "${3RDPARTY_TCL_LIBRARY}")
|
|
||||||
set (3RDPARTY_TCL_LIBRARY "" CACHE FILEPATH "TCL library" FORCE)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (NOT 3RDPARTY_TCL_LIBRARY_DIR AND 3RDPARTY_TCL_LIBRARY)
|
|
||||||
get_filename_component (3RDPARTY_TCL_LIBRARY_DIR "${3RDPARTY_TCL_LIBRARY}" PATH)
|
|
||||||
set (3RDPARTY_TCL_LIBRARY_DIR "${3RDPARTY_TCL_LIBRARY_DIR}" CACHE FILEPATH "The directory containing TCL library" FORCE)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set (3RDPARTY_TCL_LIBRARY_VERSION "")
|
|
||||||
if (3RDPARTY_TCL_LIBRARY AND EXISTS "${3RDPARTY_TCL_LIBRARY}")
|
|
||||||
get_filename_component (TCL_LIBRARY_NAME "${3RDPARTY_TCL_LIBRARY}" NAME)
|
|
||||||
string(REGEX REPLACE "^.*tcl([0-9]\\.*[0-9]).*$" "\\1" TCL_LIBRARY_VERSION "${TCL_LIBRARY_NAME}")
|
|
||||||
|
|
||||||
if (NOT "${TCL_LIBRARY_VERSION}" STREQUAL "${TCL_LIBRARY_NAME}")
|
|
||||||
set (3RDPARTY_TCL_LIBRARY_VERSION "${TCL_LIBRARY_VERSION}")
|
|
||||||
else() # if the version isn't found - seek other library with 8.6 or 8.5 version in the same dir
|
|
||||||
message (STATUS "Info: TCL version isn't found")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set (3RDPARTY_TCL_LIBRARY_VERSION_WITH_DOT "")
|
|
||||||
if (3RDPARTY_TCL_LIBRARY_VERSION)
|
|
||||||
string (REGEX REPLACE "^.*([0-9])[^0-9]*[0-9].*$" "\\1" 3RDPARTY_TCL_MAJOR_VERSION "${3RDPARTY_TCL_LIBRARY_VERSION}")
|
|
||||||
string (REGEX REPLACE "^.*[0-9][^0-9]*([0-9]).*$" "\\1" 3RDPARTY_TCL_MINOR_VERSION "${3RDPARTY_TCL_LIBRARY_VERSION}")
|
|
||||||
set (3RDPARTY_TCL_LIBRARY_VERSION_WITH_DOT "${3RDPARTY_TCL_MAJOR_VERSION}.${3RDPARTY_TCL_MINOR_VERSION}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (WIN32)
|
|
||||||
if (NOT 3RDPARTY_TCL_DLL)
|
|
||||||
set (CMAKE_FIND_LIBRARY_SUFFIXES .lib .dll .a)
|
|
||||||
|
|
||||||
set (DLL_FOLDER_FOR_SEARCH "")
|
|
||||||
if (3RDPARTY_TCL_DLL_DIR)
|
|
||||||
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_DLL_DIR}")
|
|
||||||
elseif (3RDPARTY_TCL_DIR)
|
|
||||||
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_DIR}/bin")
|
|
||||||
else()
|
|
||||||
get_filename_component (3RDPARTY_TCL_LIBRARY_DIR_PARENT "${3RDPARTY_TCL_LIBRARY_DIR}" PATH)
|
|
||||||
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_LIBRARY_DIR_PARENT}/bin")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set (3RDPARTY_TCL_DLL "3RDPARTY_TCL_DLL-NOTFOUND" CACHE FILEPATH "TCL shared library" FORCE)
|
|
||||||
find_library (3RDPARTY_TCL_DLL NAMES tcl${3RDPARTY_TCL_LIBRARY_VERSION}
|
|
||||||
PATHS "${DLL_FOLDER_FOR_SEARCH}"
|
|
||||||
NO_DEFAULT_PATH)
|
NO_DEFAULT_PATH)
|
||||||
|
|
||||||
if (NOT 3RDPARTY_TCL_DLL OR NOT EXISTS "${3RDPARTY_TCL_DLL}")
|
# search in another place if previous search doesn't find anything
|
||||||
set (3RDPARTY_TCL_DLL "" CACHE FILEPATH "TCL shared library" FORCE)
|
find_library (3RDPARTY_TCL_LIBRARY NAMES ${CSF_TclLibs}
|
||||||
endif()
|
PATHS "${3RDPARTY_TCL_DIR}/lib"
|
||||||
endif()
|
NO_DEFAULT_PATH)
|
||||||
if (NOT 3RDPARTY_TCL_DLL_DIR AND 3RDPARTY_TCL_DLL)
|
|
||||||
get_filename_component (3RDPARTY_TCL_DLL_DIR "${3RDPARTY_TCL_DLL}" PATH)
|
if (NOT 3RDPARTY_TCL_LIBRARY OR NOT EXISTS "${3RDPARTY_TCL_LIBRARY}")
|
||||||
set (3RDPARTY_TCL_DLL_DIR "${3RDPARTY_TCL_DLL_DIR}" CACHE FILEPATH "The directory containing TCL shared library" FORCE)
|
set (3RDPARTY_TCL_LIBRARY "" CACHE FILEPATH "TCL library" FORCE)
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# include found paths to common variables
|
if (NOT 3RDPARTY_TCL_LIBRARY_DIR AND 3RDPARTY_TCL_LIBRARY)
|
||||||
if (3RDPARTY_TCL_INCLUDE_DIR AND EXISTS "${3RDPARTY_TCL_INCLUDE_DIR}")
|
get_filename_component (3RDPARTY_TCL_LIBRARY_DIR "${3RDPARTY_TCL_LIBRARY}" PATH)
|
||||||
list (APPEND 3RDPARTY_INCLUDE_DIRS "${3RDPARTY_TCL_INCLUDE_DIR}")
|
set (3RDPARTY_TCL_LIBRARY_DIR "${3RDPARTY_TCL_LIBRARY_DIR}" CACHE FILEPATH "The directory containing TCL library" FORCE)
|
||||||
else()
|
|
||||||
list (APPEND 3RDPARTY_NOT_INCLUDED 3RDPARTY_TCL_INCLUDE_DIR)
|
|
||||||
endif()
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
if (3RDPARTY_TCL_LIBRARY AND EXISTS "${3RDPARTY_TCL_LIBRARY}")
|
set (3RDPARTY_TCL_LIBRARY_VERSION "")
|
||||||
list (APPEND 3RDPARTY_LIBRARY_DIRS "${3RDPARTY_TCL_LIBRARY_DIR}")
|
if (3RDPARTY_TCL_LIBRARY AND EXISTS "${3RDPARTY_TCL_LIBRARY}")
|
||||||
else()
|
get_filename_component (TCL_LIBRARY_NAME "${3RDPARTY_TCL_LIBRARY}" NAME)
|
||||||
list (APPEND 3RDPARTY_NO_LIBS 3RDPARTY_TCL_LIBRARY_DIR)
|
string(REGEX REPLACE "^.*tcl([0-9]\\.*[0-9]).*$" "\\1" TCL_LIBRARY_VERSION "${TCL_LIBRARY_NAME}")
|
||||||
|
|
||||||
|
if (NOT "${TCL_LIBRARY_VERSION}" STREQUAL "${TCL_LIBRARY_NAME}")
|
||||||
|
set (3RDPARTY_TCL_LIBRARY_VERSION "${TCL_LIBRARY_VERSION}")
|
||||||
|
else() # if the version isn't found - seek other library with 8.6 or 8.5 version in the same dir
|
||||||
|
message (STATUS "Info: TCL version isn't found")
|
||||||
endif()
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set (3RDPARTY_TCL_LIBRARY_VERSION_WITH_DOT "")
|
||||||
|
if (3RDPARTY_TCL_LIBRARY_VERSION)
|
||||||
|
string (REGEX REPLACE "^.*([0-9])[^0-9]*[0-9].*$" "\\1" 3RDPARTY_TCL_MAJOR_VERSION "${3RDPARTY_TCL_LIBRARY_VERSION}")
|
||||||
|
string (REGEX REPLACE "^.*[0-9][^0-9]*([0-9]).*$" "\\1" 3RDPARTY_TCL_MINOR_VERSION "${3RDPARTY_TCL_LIBRARY_VERSION}")
|
||||||
|
set (3RDPARTY_TCL_LIBRARY_VERSION_WITH_DOT "${3RDPARTY_TCL_MAJOR_VERSION}.${3RDPARTY_TCL_MINOR_VERSION}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (WIN32)
|
||||||
|
if (NOT 3RDPARTY_TCL_DLL)
|
||||||
|
set (CMAKE_FIND_LIBRARY_SUFFIXES .lib .dll .a)
|
||||||
|
|
||||||
|
set (DLL_FOLDER_FOR_SEARCH "")
|
||||||
|
if (3RDPARTY_TCL_DLL_DIR)
|
||||||
|
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_DLL_DIR}")
|
||||||
|
elseif (3RDPARTY_TCL_DIR)
|
||||||
|
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_DIR}/bin")
|
||||||
|
else()
|
||||||
|
get_filename_component (3RDPARTY_TCL_LIBRARY_DIR_PARENT "${3RDPARTY_TCL_LIBRARY_DIR}" PATH)
|
||||||
|
set (DLL_FOLDER_FOR_SEARCH "${3RDPARTY_TCL_LIBRARY_DIR_PARENT}/bin")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set (3RDPARTY_TCL_DLL "3RDPARTY_TCL_DLL-NOTFOUND" CACHE FILEPATH "TCL shared library" FORCE)
|
||||||
|
find_library (3RDPARTY_TCL_DLL NAMES tcl${3RDPARTY_TCL_LIBRARY_VERSION}
|
||||||
|
PATHS "${DLL_FOLDER_FOR_SEARCH}"
|
||||||
|
NO_DEFAULT_PATH)
|
||||||
|
|
||||||
|
if (NOT 3RDPARTY_TCL_DLL OR NOT EXISTS "${3RDPARTY_TCL_DLL}")
|
||||||
|
set (3RDPARTY_TCL_DLL "" CACHE FILEPATH "TCL shared library" FORCE)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
if (NOT 3RDPARTY_TCL_DLL_DIR AND 3RDPARTY_TCL_DLL)
|
||||||
|
get_filename_component (3RDPARTY_TCL_DLL_DIR "${3RDPARTY_TCL_DLL}" PATH)
|
||||||
|
set (3RDPARTY_TCL_DLL_DIR "${3RDPARTY_TCL_DLL_DIR}" CACHE FILEPATH "The directory containing TCL shared library" FORCE)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# include found paths to common variables
|
||||||
|
if (3RDPARTY_TCL_INCLUDE_DIR AND EXISTS "${3RDPARTY_TCL_INCLUDE_DIR}")
|
||||||
|
list (APPEND 3RDPARTY_INCLUDE_DIRS "${3RDPARTY_TCL_INCLUDE_DIR}")
|
||||||
|
else()
|
||||||
|
list (APPEND 3RDPARTY_NOT_INCLUDED 3RDPARTY_TCL_INCLUDE_DIR)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (3RDPARTY_TCL_LIBRARY AND EXISTS "${3RDPARTY_TCL_LIBRARY}")
|
||||||
|
list (APPEND 3RDPARTY_LIBRARY_DIRS "${3RDPARTY_TCL_LIBRARY_DIR}")
|
||||||
|
else()
|
||||||
|
list (APPEND 3RDPARTY_NO_LIBS 3RDPARTY_TCL_LIBRARY_DIR)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (WIN32)
|
||||||
|
if (3RDPARTY_TCL_DLL OR EXISTS "${3RDPARTY_TCL_DLL}")
|
||||||
|
list (APPEND 3RDPARTY_DLL_DIRS "${3RDPARTY_TCL_DLL_DIR}")
|
||||||
|
else()
|
||||||
|
list (APPEND 3RDPARTY_NO_DLLS 3RDPARTY_TCL_DLL_DIR)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# install tcl
|
||||||
|
if (INSTALL_TCL)
|
||||||
|
# include occt macros. compiler_bitness, os_wiht_bit, compiler
|
||||||
|
OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/occt_macros")
|
||||||
|
|
||||||
|
OCCT_MAKE_OS_WITH_BITNESS()
|
||||||
|
OCCT_MAKE_COMPILER_SHORT_NAME()
|
||||||
|
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
if (3RDPARTY_TCL_DLL OR EXISTS "${3RDPARTY_TCL_DLL}")
|
# tcl 8.6 requires zlib. install all dlls from tcl bin folder that may contain zlib also
|
||||||
list (APPEND 3RDPARTY_DLL_DIRS "${3RDPARTY_TCL_DLL_DIR}")
|
|
||||||
|
# collect and install all dlls from tcl dll dirs
|
||||||
|
file (GLOB TCL_DLLS "${3RDPARTY_TCL_DLL_DIR}/*.dll")
|
||||||
|
|
||||||
|
if (SINGLE_GENERATOR)
|
||||||
|
install (FILES ${TCL_DLLS} DESTINATION "${INSTALL_DIR_BIN}")
|
||||||
else()
|
else()
|
||||||
list (APPEND 3RDPARTY_NO_DLLS 3RDPARTY_TCL_DLL_DIR)
|
install (FILES ${TCL_DLLS}
|
||||||
|
CONFIGURATIONS Release
|
||||||
|
DESTINATION "${INSTALL_DIR_BIN}")
|
||||||
|
install (FILES ${TCL_DLLS}
|
||||||
|
CONFIGURATIONS RelWithDebInfo
|
||||||
|
DESTINATION "${INSTALL_DIR_BIN}i")
|
||||||
|
install (FILES ${TCL_DLLS}
|
||||||
|
CONFIGURATIONS Debug
|
||||||
|
DESTINATION "${INSTALL_DIR_BIN}d")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
|
||||||
|
|
||||||
# install tcl
|
|
||||||
if (INSTALL_TCL)
|
|
||||||
# include occt macros. compiler_bitness, os_wiht_bit, compiler
|
|
||||||
OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/occt_macros")
|
|
||||||
|
|
||||||
OCCT_MAKE_OS_WITH_BITNESS()
|
|
||||||
OCCT_MAKE_COMPILER_SHORT_NAME()
|
|
||||||
|
|
||||||
if (WIN32)
|
|
||||||
# tcl 8.6 requires zlib. install all dlls from tcl bin folder that may contain zlib also
|
|
||||||
|
|
||||||
# collect and install all dlls from tcl dll dirs
|
|
||||||
file (GLOB TCL_DLLS "${3RDPARTY_TCL_DLL_DIR}/*.dll")
|
|
||||||
|
|
||||||
if (SINGLE_GENERATOR)
|
|
||||||
install (FILES ${TCL_DLLS} DESTINATION "${INSTALL_DIR_BIN}")
|
|
||||||
else()
|
|
||||||
install (FILES ${TCL_DLLS}
|
|
||||||
CONFIGURATIONS Release
|
|
||||||
DESTINATION "${INSTALL_DIR_BIN}")
|
|
||||||
install (FILES ${TCL_DLLS}
|
|
||||||
CONFIGURATIONS RelWithDebInfo
|
|
||||||
DESTINATION "${INSTALL_DIR_BIN}i")
|
|
||||||
install (FILES ${TCL_DLLS}
|
|
||||||
CONFIGURATIONS Debug
|
|
||||||
DESTINATION "${INSTALL_DIR_BIN}d")
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
get_filename_component(3RDPARTY_TCL_LIBRARY_REALPATH ${3RDPARTY_TCL_LIBRARY} REALPATH)
|
|
||||||
|
|
||||||
if (SINGLE_GENERATOR)
|
|
||||||
install (FILES ${3RDPARTY_TCL_LIBRARY_REALPATH} DESTINATION "${INSTALL_DIR_LIB}")
|
|
||||||
else()
|
|
||||||
install (FILES ${3RDPARTY_TCL_LIBRARY_REALPATH}
|
|
||||||
CONFIGURATIONS Release
|
|
||||||
DESTINATION "${INSTALL_DIR_LIB}")
|
|
||||||
install (FILES ${3RDPARTY_TCL_LIBRARY_REALPATH}
|
|
||||||
CONFIGURATIONS RelWithDebInfo
|
|
||||||
DESTINATION "${INSTALL_DIR_LIB}i")
|
|
||||||
install (FILES ${3RDPARTY_TCL_LIBRARY_REALPATH}
|
|
||||||
CONFIGURATIONS Debug
|
|
||||||
DESTINATION "${INSTALL_DIR_LIB}d")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (TCL_TCLSH_VERSION)
|
|
||||||
# tcl is required to install in lib folder (without)
|
|
||||||
install (DIRECTORY "${3RDPARTY_TCL_LIBRARY_DIR}/tcl8" DESTINATION "${INSTALL_DIR_LIB}")
|
|
||||||
install (DIRECTORY "${3RDPARTY_TCL_LIBRARY_DIR}/tcl${TCL_TCLSH_VERSION}" DESTINATION "${INSTALL_DIR_LIB}")
|
|
||||||
else()
|
|
||||||
message (STATUS "\nWarning: tclX.X subdir won't be copied during the installation process.")
|
|
||||||
message (STATUS "Try seeking tcl within another folder by changing 3RDPARTY_TCL_DIR variable.")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set (USED_3RDPARTY_TCL_DIR "")
|
|
||||||
else()
|
else()
|
||||||
# the library directory for using by the executable
|
get_filename_component(3RDPARTY_TCL_LIBRARY_REALPATH ${3RDPARTY_TCL_LIBRARY} REALPATH)
|
||||||
if (WIN32)
|
|
||||||
set (USED_3RDPARTY_TCL_DIR ${3RDPARTY_TCL_DLL_DIR})
|
if (SINGLE_GENERATOR)
|
||||||
|
install (FILES ${3RDPARTY_TCL_LIBRARY_REALPATH} DESTINATION "${INSTALL_DIR_LIB}")
|
||||||
else()
|
else()
|
||||||
set (USED_3RDPARTY_TCL_DIR ${3RDPARTY_TCL_LIBRARY_DIR})
|
install (FILES ${3RDPARTY_TCL_LIBRARY_REALPATH}
|
||||||
|
CONFIGURATIONS Release
|
||||||
|
DESTINATION "${INSTALL_DIR_LIB}")
|
||||||
|
install (FILES ${3RDPARTY_TCL_LIBRARY_REALPATH}
|
||||||
|
CONFIGURATIONS RelWithDebInfo
|
||||||
|
DESTINATION "${INSTALL_DIR_LIB}i")
|
||||||
|
install (FILES ${3RDPARTY_TCL_LIBRARY_REALPATH}
|
||||||
|
CONFIGURATIONS Debug
|
||||||
|
DESTINATION "${INSTALL_DIR_LIB}d")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
mark_as_advanced (3RDPARTY_TCL_LIBRARY 3RDPARTY_TCL_DLL)
|
if (TCL_TCLSH_VERSION)
|
||||||
|
# tcl is required to install in lib folder (without)
|
||||||
|
install (DIRECTORY "${3RDPARTY_TCL_LIBRARY_DIR}/tcl8" DESTINATION "${INSTALL_DIR_LIB}")
|
||||||
|
install (DIRECTORY "${3RDPARTY_TCL_LIBRARY_DIR}/tcl${TCL_TCLSH_VERSION}" DESTINATION "${INSTALL_DIR_LIB}")
|
||||||
|
else()
|
||||||
|
message (STATUS "\nWarning: tclX.X subdir won't be copied during the installation process.")
|
||||||
|
message (STATUS "Try seeking tcl within another folder by changing 3RDPARTY_TCL_DIR variable.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set (USED_3RDPARTY_TCL_DIR "")
|
||||||
|
else()
|
||||||
|
# the library directory for using by the executable
|
||||||
|
if (WIN32)
|
||||||
|
set (USED_3RDPARTY_TCL_DIR ${3RDPARTY_TCL_DLL_DIR})
|
||||||
|
else()
|
||||||
|
set (USED_3RDPARTY_TCL_DIR ${3RDPARTY_TCL_LIBRARY_DIR})
|
||||||
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
mark_as_advanced (3RDPARTY_TCL_LIBRARY 3RDPARTY_TCL_DLL)
|
||||||
|
|
||||||
if (TK_FOUND AND 3RDPARTY_TCL_DIR)
|
if (TK_FOUND AND 3RDPARTY_TCL_DIR)
|
||||||
|
|
||||||
get_filename_component (TK_WISH_ABSOLUTE "${TK_WISH}" ABSOLUTE)
|
get_filename_component (TK_WISH_ABSOLUTE "${TK_WISH}" ABSOLUTE)
|
||||||
@ -285,10 +279,3 @@ OCCT_CHECK_AND_UNSET (TK_LIBRARY)
|
|||||||
OCCT_CHECK_AND_UNSET (TK_INCLUDE_PATH)
|
OCCT_CHECK_AND_UNSET (TK_INCLUDE_PATH)
|
||||||
OCCT_CHECK_AND_UNSET (TK_WISH)
|
OCCT_CHECK_AND_UNSET (TK_WISH)
|
||||||
|
|
||||||
if (NOT BUILD_SHARED_LIBS)
|
|
||||||
OCCT_CHECK_AND_UNSET (3RDPARTY_TCL_LIBRARY)
|
|
||||||
OCCT_CHECK_AND_UNSET (3RDPARTY_TCL_LIBRARY_DIR)
|
|
||||||
OCCT_CHECK_AND_UNSET (3RDPARTY_TCL_DLL)
|
|
||||||
OCCT_CHECK_AND_UNSET (3RDPARTY_TCL_DLL_DIR)
|
|
||||||
OCCT_CHECK_AND_UNSET (INSTALL_TCL)
|
|
||||||
endif()
|
|
||||||
|
@ -12,6 +12,7 @@ set VS=14
|
|||||||
set VSDATA=2015
|
set VSDATA=2015
|
||||||
set VSPLATFORM=Win64
|
set VSPLATFORM=Win64
|
||||||
set "BUILD_DIR=build-vs%VS%-%VSPLATFORM%"
|
set "BUILD_DIR=build-vs%VS%-%VSPLATFORM%"
|
||||||
|
set "OCCT3RDPARTY="
|
||||||
set "INSTALL_DIR=%SrcRoot%\install"
|
set "INSTALL_DIR=%SrcRoot%\install"
|
||||||
|
|
||||||
set BUILD_ADDITIONAL_TOOLKITS=
|
set BUILD_ADDITIONAL_TOOLKITS=
|
||||||
|
@ -173,6 +173,7 @@ if ["%toCMake%"] == ["1"] (
|
|||||||
-D 3RDPARTY_TCL_INCLUDE_DIR:PATH="%aTcl%/include" ^
|
-D 3RDPARTY_TCL_INCLUDE_DIR:PATH="%aTcl%/include" ^
|
||||||
-D 3RDPARTY_TCL_LIBRARY_DIR:PATH="%aTcl%/lib" ^
|
-D 3RDPARTY_TCL_LIBRARY_DIR:PATH="%aTcl%/lib" ^
|
||||||
-D 3RDPARTY_TCL_LIBRARY:FILEPATH="%aTcl%/lib/libtcl.a" ^
|
-D 3RDPARTY_TCL_LIBRARY:FILEPATH="%aTcl%/lib/libtcl.a" ^
|
||||||
|
-D USE_TK:BOOL="OFF" ^
|
||||||
"%aCasSrc%"
|
"%aCasSrc%"
|
||||||
|
|
||||||
if errorlevel 1 (
|
if errorlevel 1 (
|
||||||
|
@ -1,87 +1,87 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang=en-us>
|
<html lang=en-us>
|
||||||
<head>
|
<head>
|
||||||
<meta charset=utf-8><meta content="text/html; charset=utf-8" http-equiv=Content-Type>
|
<meta charset=utf-8><meta content="text/html; charset=utf-8" http-equiv=Content-Type>
|
||||||
<link rel="shortcut icon" href="lamp.ico" type="image/x-icon" />
|
<link rel="shortcut icon" href="lamp.ico" type="image/x-icon" />
|
||||||
<title>OCCT WebGL Viewer Sample</title>
|
<title>OCCT WebGL Viewer Sample</title>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
|
||||||
<h2>OCCT WebGL Viewer Sample</h2>
|
<h2>OCCT WebGL Viewer Sample</h2>
|
||||||
<div>
|
<div>
|
||||||
<canvas id=occViewerCanvas oncontextmenu=event.preventDefault() tabindex=-1 style="border:0 none;background-color:#000" width="409" height="409"></canvas>
|
<canvas id=occViewerCanvas oncontextmenu=event.preventDefault() tabindex=-1 style="border:0 none;background-color:#000" width="409" height="409"></canvas>
|
||||||
<img id=occlogo src="OCC_logo.png" style="position: absolute; left: 20px; top: 0px; z-index: 2;" />
|
<img id=occlogo src="OCC_logo.png" style="position: absolute; left: 20px; top: 0px; z-index: 2;" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<label for="fileInput">Choose BREP file to upload: </label><input type="file" id="fileInput" accept=".brep">
|
<label for="fileInput">Choose BREP file to upload: </label><input type="file" id="fileInput" accept=".brep">
|
||||||
<input type="button" value="Clear All" onclick="OccViewerModule.removeAllObjects()">
|
<input type="button" value="Clear All" onclick="OccViewerModule.removeAllObjects()">
|
||||||
<input type="button" value="Fit All" onclick="OccViewerModule.fitAllObjects(true)">
|
<input type="button" value="Fit All" onclick="OccViewerModule.fitAllObjects(true)">
|
||||||
</div>
|
</div>
|
||||||
<h4>Console output:</h4>
|
<h4>Console output:</h4>
|
||||||
<p id="output"></p>
|
<p id="output"></p>
|
||||||
<script>
|
<script>
|
||||||
//! Resize canvas to fit into window.
|
//! Resize canvas to fit into window.
|
||||||
function updateCanvasSize()
|
function updateCanvasSize()
|
||||||
{
|
{
|
||||||
// size of canvas in logical (density-independent) units
|
// size of canvas in logical (density-independent) units
|
||||||
var aSizeX = Math.min (window.innerWidth, window.screen.availWidth);
|
var aSizeX = Math.min (window.innerWidth, window.screen.availWidth);
|
||||||
var aSizeY = Math.min (window.innerHeight, window.screen.availHeight);
|
var aSizeY = Math.min (window.innerHeight, window.screen.availHeight);
|
||||||
aSizeX = Math.max (300, aSizeX - 30);
|
aSizeX = Math.max (300, aSizeX - 30);
|
||||||
aSizeY = Math.max (300, aSizeY / 2);
|
aSizeY = Math.max (300, aSizeY / 2);
|
||||||
occViewerCanvas.style.width = aSizeX + "px";
|
occViewerCanvas.style.width = aSizeX + "px";
|
||||||
occViewerCanvas.style.height = aSizeY + "px";
|
occViewerCanvas.style.height = aSizeY + "px";
|
||||||
|
|
||||||
// drawing buffer size (aka backing store)
|
// drawing buffer size (aka backing store)
|
||||||
var aDevicePixelRatio = window.devicePixelRatio || 1;
|
var aDevicePixelRatio = window.devicePixelRatio || 1;
|
||||||
occViewerCanvas.width = aSizeX * aDevicePixelRatio;
|
occViewerCanvas.width = aSizeX * aDevicePixelRatio;
|
||||||
occViewerCanvas.height = aSizeY * aDevicePixelRatio;
|
occViewerCanvas.height = aSizeY * aDevicePixelRatio;
|
||||||
|
|
||||||
occlogo.style.top = (aSizeY - 30) + "px";
|
occlogo.style.top = (aSizeY - 30) + "px";
|
||||||
}
|
}
|
||||||
window.onresize = updateCanvasSize;
|
window.onresize = updateCanvasSize;
|
||||||
updateCanvasSize();
|
updateCanvasSize();
|
||||||
|
|
||||||
//! Check browser support.
|
//! Check browser support.
|
||||||
function isWasmSupported()
|
function isWasmSupported()
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
if (typeof WebAssembly === "object"
|
if (typeof WebAssembly === "object"
|
||||||
&& typeof WebAssembly.instantiate === "function") {
|
&& typeof WebAssembly.instantiate === "function") {
|
||||||
const aDummyModule = new WebAssembly.Module (Uint8Array.of (0x0, 0x61, 0x73, 0x6d, 0x01, 0x00, 0x00, 0x00));
|
const aDummyModule = new WebAssembly.Module (Uint8Array.of (0x0, 0x61, 0x73, 0x6d, 0x01, 0x00, 0x00, 0x00));
|
||||||
if (aDummyModule instanceof WebAssembly.Module)
|
if (aDummyModule instanceof WebAssembly.Module)
|
||||||
{
|
{
|
||||||
return new WebAssembly.Instance(aDummyModule) instanceof WebAssembly.Instance;
|
return new WebAssembly.Instance(aDummyModule) instanceof WebAssembly.Instance;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (e) {}
|
} catch (e) {}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (!isWasmSupported())
|
if (!isWasmSupported())
|
||||||
{
|
{
|
||||||
var anElement = document.getElementById('output');
|
var anElement = document.getElementById('output');
|
||||||
anElement.innerHTML += "Browser is too old - WebAssembly support is missing!<br>Please check updates or install a modern browser.<br>";
|
anElement.innerHTML += "Browser is too old - WebAssembly support is missing!<br>Please check updates or install a modern browser.<br>";
|
||||||
}
|
}
|
||||||
|
|
||||||
//! Handle file uploading.
|
//! Handle file uploading.
|
||||||
fileInput.onchange = function()
|
fileInput.onchange = function()
|
||||||
{
|
{
|
||||||
if (fileInput.files.length == 0) { return; }
|
if (fileInput.files.length == 0) { return; }
|
||||||
// Warning! Entire file is pre-loaded into memory.
|
// Warning! Entire file is pre-loaded into memory.
|
||||||
var aFile = fileInput.files[0];
|
var aFile = fileInput.files[0];
|
||||||
var aReader = new FileReader();
|
var aReader = new FileReader();
|
||||||
aReader.onload = function()
|
aReader.onload = function()
|
||||||
{
|
{
|
||||||
var aDataArray = new Uint8Array (aReader.result);
|
var aDataArray = new Uint8Array (aReader.result);
|
||||||
const aDataBuffer = OccViewerModule._malloc (aDataArray.length);
|
const aDataBuffer = OccViewerModule._malloc (aDataArray.length);
|
||||||
OccViewerModule.HEAPU8.set (aDataArray, aDataBuffer);
|
OccViewerModule.HEAPU8.set (aDataArray, aDataBuffer);
|
||||||
OccViewerModule.openFromMemory (aFile.name, aDataBuffer, aDataArray.length, true);
|
OccViewerModule.openFromMemory (aFile.name, aDataBuffer, aDataArray.length, true);
|
||||||
//OccViewerModule._free (aDataBuffer); will be freed by called method
|
//OccViewerModule._free (aDataBuffer); will be freed by called method
|
||||||
OccViewerModule.displayGround (true);
|
OccViewerModule.displayGround (true);
|
||||||
};
|
};
|
||||||
aReader.readAsArrayBuffer(aFile);
|
aReader.readAsArrayBuffer(aFile);
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
<script type="text/javascript" src="occt-webgl-sample.js" charset="utf-8"></script>
|
<script type="text/javascript" src="occt-webgl-sample.js" charset="utf-8"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@ -1,28 +1,28 @@
|
|||||||
var OccViewerModule =
|
var OccViewerModule =
|
||||||
{
|
{
|
||||||
print: (function() {
|
print: (function() {
|
||||||
var anElement = document.getElementById('output');
|
var anElement = document.getElementById('output');
|
||||||
return function(theText) { anElement.innerHTML += theText + "<br>"; };
|
return function(theText) { anElement.innerHTML += theText + "<br>"; };
|
||||||
})(),
|
})(),
|
||||||
printErr: function(theText) {
|
printErr: function(theText) {
|
||||||
//var anElement = document.getElementById('output');
|
//var anElement = document.getElementById('output');
|
||||||
//anElement.innerHTML += theText + "<br>";
|
//anElement.innerHTML += theText + "<br>";
|
||||||
console.warn(theText);
|
console.warn(theText);
|
||||||
},
|
},
|
||||||
canvas: (function() {
|
canvas: (function() {
|
||||||
var aCanvas = document.getElementById('occViewerCanvas');
|
var aCanvas = document.getElementById('occViewerCanvas');
|
||||||
var aGlCtx = aCanvas.getContext ('webgl2', { alpha: false, depth: true, antialias: false, preserveDrawingBuffer: true } );
|
var aGlCtx = aCanvas.getContext ('webgl2', { alpha: false, depth: true, antialias: false, preserveDrawingBuffer: true } );
|
||||||
if (aGlCtx == null) { aGlCtx = aCanvas.getContext ('webgl', { alpha: false, depth: true, antialias: false, preserveDrawingBuffer: true } ); }
|
if (aGlCtx == null) { aGlCtx = aCanvas.getContext ('webgl', { alpha: false, depth: true, antialias: false, preserveDrawingBuffer: true } ); }
|
||||||
return aCanvas;
|
return aCanvas;
|
||||||
})(),
|
})(),
|
||||||
|
|
||||||
onRuntimeInitialized: function() {
|
onRuntimeInitialized: function() {
|
||||||
//console.log(" @@ onRuntimeInitialized()" + Object.getOwnPropertyNames(OccViewerModule));
|
//console.log(" @@ onRuntimeInitialized()" + Object.getOwnPropertyNames(OccViewerModule));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const OccViewerModuleInitialized = createOccViewerModule(OccViewerModule);
|
const OccViewerModuleInitialized = createOccViewerModule(OccViewerModule);
|
||||||
OccViewerModuleInitialized.then(function(Module) {
|
OccViewerModuleInitialized.then(function(Module) {
|
||||||
//OccViewerModule.setCubemapBackground ("cubemap.jpg");
|
//OccViewerModule.setCubemapBackground ("cubemap.jpg");
|
||||||
OccViewerModule.openFromUrl ("ball", "samples/Ball.brep");
|
OccViewerModule.openFromUrl ("ball", "samples/Ball.brep");
|
||||||
});
|
});
|
||||||
|
@ -1,5 +1,41 @@
|
|||||||
project(DRAWEXE)
|
project(DRAWEXE)
|
||||||
|
|
||||||
|
unset (CUSTOM_EXTERNLIB)
|
||||||
|
if (NOT BUILD_SHARED_LIBS)
|
||||||
|
# link specific list of plugins explicitly
|
||||||
|
FILE_TO_LIST ("src/${PROJECT_NAME}/EXTERNLIB_STATIC" CUSTOM_EXTERNLIB)
|
||||||
|
if (USE_OPENGL)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB TKOpenGles)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB TKOpenGlesTest)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB CSF_OpenGlesLibs)
|
||||||
|
elseif(USE_GLES2)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB TKOpenGl)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB TKOpenGlTest)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB CSF_OpenGlLibs)
|
||||||
|
else()
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB TKOpenGles)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB TKOpenGlesTest)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB CSF_OpenGlesLibs)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB TKOpenGl)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB TKOpenGlTest)
|
||||||
|
list (REMOVE_ITEM CUSTOM_EXTERNLIB CSF_OpenGlLibs)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
set (EXECUTABLE_PROJECT ON)
|
set (EXECUTABLE_PROJECT ON)
|
||||||
OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit)
|
OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit)
|
||||||
unset (EXECUTABLE_PROJECT)
|
unset (EXECUTABLE_PROJECT)
|
||||||
|
unset (CUSTOM_EXTERNLIB)
|
||||||
|
|
||||||
|
if (EMSCRIPTEN)
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -s WASM=1")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -s MAX_WEBGL_VERSION=2")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -s ALLOW_MEMORY_GROWTH=1")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --bind")
|
||||||
|
|
||||||
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s MODULARIZE=1")
|
||||||
|
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -s EXPORT_NAME='createDRAWEXE'")
|
||||||
|
|
||||||
|
install(FILES ${PROJECT_NAME}.html DESTINATION "${INSTALL_DIR_BIN}/${OCCT_INSTALL_BIN_LETTER}")
|
||||||
|
install(FILES ../DrawResources/lamp.ico DESTINATION "${INSTALL_DIR_BIN}/${OCCT_INSTALL_BIN_LETTER}")
|
||||||
|
endif()
|
||||||
|
@ -16,6 +16,20 @@
|
|||||||
#include <Draw.hxx>
|
#include <Draw.hxx>
|
||||||
#include <DBRep.hxx>
|
#include <DBRep.hxx>
|
||||||
#include <DrawTrSurf.hxx>
|
#include <DrawTrSurf.hxx>
|
||||||
|
#include <Message.hxx>
|
||||||
|
#include <Message_PrinterSystemLog.hxx>
|
||||||
|
|
||||||
|
#ifdef OCCT_NO_PLUGINS
|
||||||
|
#include <BOPTest.hxx>
|
||||||
|
#include <DPrsStd.hxx>
|
||||||
|
#if defined(HAVE_OPENGL) || defined(HAVE_GLES2)
|
||||||
|
#include <OpenGlTest.hxx>
|
||||||
|
#endif
|
||||||
|
#include <TObjDRAW.hxx>
|
||||||
|
#include <ViewerTest.hxx>
|
||||||
|
#include <XSDRAWSTLVRML.hxx>
|
||||||
|
#include <XDEDRAW.hxx>
|
||||||
|
#endif
|
||||||
|
|
||||||
//=======================================================================
|
//=======================================================================
|
||||||
//function : Draw_InitAppli
|
//function : Draw_InitAppli
|
||||||
@ -24,9 +38,29 @@
|
|||||||
|
|
||||||
void Draw_InitAppli (Draw_Interpretor& di)
|
void Draw_InitAppli (Draw_Interpretor& di)
|
||||||
{
|
{
|
||||||
|
#if defined(__EMSCRIPTEN__)
|
||||||
|
// open JavaScript console within the Browser to see this output
|
||||||
|
Handle(Message_PrinterSystemLog) aJSConsolePrinter = new Message_PrinterSystemLog ("DRAWEXE");
|
||||||
|
Message::DefaultMessenger()->AddPrinter (aJSConsolePrinter);
|
||||||
|
#endif
|
||||||
|
|
||||||
Draw::Commands (di);
|
Draw::Commands (di);
|
||||||
DBRep::BasicCommands (di);
|
DBRep::BasicCommands (di);
|
||||||
DrawTrSurf::BasicCommands (di);
|
DrawTrSurf::BasicCommands (di);
|
||||||
|
|
||||||
|
#ifdef OCCT_NO_PLUGINS
|
||||||
|
// load a couple of plugins
|
||||||
|
BOPTest::Factory (di);
|
||||||
|
DPrsStd::Factory (di);
|
||||||
|
XSDRAWSTLVRML::Factory (di);
|
||||||
|
XDEDRAW::Factory (di);
|
||||||
|
#if defined(HAVE_OPENGL) || defined(HAVE_GLES2)
|
||||||
|
ViewerTest::Factory (di);
|
||||||
|
OpenGlTest::Factory (di);
|
||||||
|
#endif
|
||||||
|
//TObjDRAW::Factory (di);
|
||||||
|
//QADraw::Factory (di);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <Draw_Main.hxx>
|
#include <Draw_Main.hxx>
|
||||||
|
68
src/DRAWEXE/DRAWEXE.html
Normal file
68
src/DRAWEXE/DRAWEXE.html
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang=en-us>
|
||||||
|
<head>
|
||||||
|
<meta charset=utf-8><meta content="text/html; charset=utf-8" http-equiv=Content-Type>
|
||||||
|
<link rel="shortcut icon" href="lamp.ico" type="image/x-icon" />
|
||||||
|
<title>OCCT Draw Harness</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<h2>OCCT Draw Harness</h2>
|
||||||
|
<div>
|
||||||
|
<canvas id=occViewerCanvas oncontextmenu=event.preventDefault() tabindex=-1 style="border:0 none;background-color:#000" width="409" height="409"></canvas>
|
||||||
|
</div>
|
||||||
|
<h4>Output (open JavaScript console):</h4>
|
||||||
|
<p id="output"></p>
|
||||||
|
<script type="text/javascript" src="DRAWEXE.js" charset="utf-8"></script>
|
||||||
|
<script>
|
||||||
|
//! Check browser support.
|
||||||
|
function isWasmSupported()
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
if (typeof WebAssembly === "object"
|
||||||
|
&& typeof WebAssembly.instantiate === "function") {
|
||||||
|
const aDummyModule = new WebAssembly.Module (Uint8Array.of (0x0, 0x61, 0x73, 0x6d, 0x01, 0x00, 0x00, 0x00));
|
||||||
|
if (aDummyModule instanceof WebAssembly.Module)
|
||||||
|
{
|
||||||
|
return new WebAssembly.Instance(aDummyModule) instanceof WebAssembly.Instance;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (e) {}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!isWasmSupported())
|
||||||
|
{
|
||||||
|
var anElement = document.getElementById('output');
|
||||||
|
anElement.innerHTML += "Browser is too old - WebAssembly support is missing!<br>Please check updates or install a modern browser.<br>";
|
||||||
|
}
|
||||||
|
|
||||||
|
var DRAWEXE =
|
||||||
|
{
|
||||||
|
print: (function() {
|
||||||
|
var anElement = document.getElementById('output');
|
||||||
|
//return function(theText) { anElement.innerHTML += theText + "<br>"; };
|
||||||
|
return function(theText) { console.warn(theText); };
|
||||||
|
})(),
|
||||||
|
printErr: function(theText) {
|
||||||
|
//var anElement = document.getElementById('output');
|
||||||
|
//anElement.innerHTML += theText + "<br>";
|
||||||
|
console.warn(theText);
|
||||||
|
},
|
||||||
|
canvas: (function() {
|
||||||
|
var aCanvas = document.getElementById('occViewerCanvas');
|
||||||
|
return aCanvas;
|
||||||
|
})(),
|
||||||
|
|
||||||
|
onRuntimeInitialized: function() {
|
||||||
|
//
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
const DRAWEXEInitialized = createDRAWEXE(DRAWEXE);
|
||||||
|
DRAWEXEInitialized.then(function(Module) {
|
||||||
|
//DRAWEXE.eval("dversion");
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
75
src/DRAWEXE/EXTERNLIB_STATIC
Normal file
75
src/DRAWEXE/EXTERNLIB_STATIC
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
TKTopTest
|
||||||
|
TKDCAF
|
||||||
|
TKXSDRAW
|
||||||
|
TKXDEDRAW
|
||||||
|
TKOpenGlTest
|
||||||
|
TKOpenGlesTest
|
||||||
|
TKViewerTest
|
||||||
|
TKDraw
|
||||||
|
TKMeshVS
|
||||||
|
TKXDESTEP
|
||||||
|
TKSTEP
|
||||||
|
TKSTEPAttr
|
||||||
|
TKSTEP209
|
||||||
|
TKSTEPBase
|
||||||
|
TKXDEIGES
|
||||||
|
TKIGES
|
||||||
|
TKXSBase
|
||||||
|
TKVRML
|
||||||
|
TKSTL
|
||||||
|
TKRWMesh
|
||||||
|
TKBinXCAF
|
||||||
|
TKXmlXCAF
|
||||||
|
TKBin
|
||||||
|
TKXml
|
||||||
|
TKXmlL
|
||||||
|
TKBinL
|
||||||
|
TKOpenGl
|
||||||
|
TKOpenGles
|
||||||
|
TKXCAF
|
||||||
|
TKVCAF
|
||||||
|
TKStd
|
||||||
|
TKCAF
|
||||||
|
TKV3d
|
||||||
|
TKHLR
|
||||||
|
TKMesh
|
||||||
|
TKService
|
||||||
|
TKOffset
|
||||||
|
TKFillet
|
||||||
|
TKFeat
|
||||||
|
TKBool
|
||||||
|
TKBO
|
||||||
|
TKShHealing
|
||||||
|
TKPrim
|
||||||
|
TKTopAlgo
|
||||||
|
TKGeomAlgo
|
||||||
|
TKBRep
|
||||||
|
TKGeomBase
|
||||||
|
TKG3d
|
||||||
|
TKG2d
|
||||||
|
TKMath
|
||||||
|
TKStdL
|
||||||
|
TKLCAF
|
||||||
|
TKCDF
|
||||||
|
TKernel
|
||||||
|
CSF_TclLibs
|
||||||
|
CSF_OpenVR
|
||||||
|
CSF_OpenGlLibs
|
||||||
|
CSF_OpenGlesLibs
|
||||||
|
CSF_FFmpeg
|
||||||
|
CSF_FreeImagePlus
|
||||||
|
CSF_FREETYPE
|
||||||
|
CSF_user32
|
||||||
|
CSF_advapi32
|
||||||
|
CSF_XwLibs
|
||||||
|
CSF_dpsLibs
|
||||||
|
CSF_XmuLibs
|
||||||
|
CSF_fontconfig
|
||||||
|
CSF_objc
|
||||||
|
CSF_Appkit
|
||||||
|
CSF_IOKit
|
||||||
|
CSF_winmm
|
||||||
|
CSF_ThreadLibs
|
||||||
|
CSF_wsock32
|
||||||
|
CSF_psapi
|
||||||
|
CSF_androidlog
|
@ -452,6 +452,12 @@ static Standard_Integer dversion(Draw_Interpretor& di, Standard_Integer, const c
|
|||||||
#else
|
#else
|
||||||
di << "Architecture: ARM 32-bit\n";
|
di << "Architecture: ARM 32-bit\n";
|
||||||
#endif
|
#endif
|
||||||
|
#elif defined(__EMSCRIPTEN__)
|
||||||
|
#if defined(__LP64__)
|
||||||
|
di << "Architecture: WASM 64-bit\n";
|
||||||
|
#else
|
||||||
|
di << "Architecture: WASM 32-bit\n";
|
||||||
|
#endif
|
||||||
#else
|
#else
|
||||||
di << "Architecture: unrecognized\n";
|
di << "Architecture: unrecognized\n";
|
||||||
#endif
|
#endif
|
||||||
@ -475,6 +481,8 @@ static Standard_Integer dversion(Draw_Interpretor& di, Standard_Integer, const c
|
|||||||
#elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__)
|
#elif defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__)
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
di << "OS: BSD (BSD = " << BSD << ")\n";
|
di << "OS: BSD (BSD = " << BSD << ")\n";
|
||||||
|
#elif defined(__EMSCRIPTEN__)
|
||||||
|
di << "OS: WebAssembly (Emscripten SDK " << __EMSCRIPTEN_major__ << "." << __EMSCRIPTEN_minor__ << "." << __EMSCRIPTEN_tiny__ << ")\n";
|
||||||
#else
|
#else
|
||||||
di << "OS: unrecognized\n";
|
di << "OS: unrecognized\n";
|
||||||
#endif
|
#endif
|
||||||
|
@ -16,10 +16,13 @@
|
|||||||
#ifndef _Draw_PluginMacro_HeaderFile
|
#ifndef _Draw_PluginMacro_HeaderFile
|
||||||
#define _Draw_PluginMacro_HeaderFile
|
#define _Draw_PluginMacro_HeaderFile
|
||||||
|
|
||||||
|
#ifdef OCCT_NO_PLUGINS
|
||||||
|
#define DPLUGIN(name)
|
||||||
|
#else
|
||||||
#define DPLUGIN(name) \
|
#define DPLUGIN(name) \
|
||||||
extern "C" {Standard_EXPORT void PLUGINFACTORY(Draw_Interpretor&);} \
|
extern "C" Standard_EXPORT void PLUGINFACTORY(Draw_Interpretor& theDI) { \
|
||||||
void PLUGINFACTORY(Draw_Interpretor& theDI) { \
|
name::Factory(theDI); \
|
||||||
name::Factory(theDI);} \
|
}
|
||||||
\
|
#endif
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -11,9 +11,7 @@
|
|||||||
# Alternatively, this file may be used under the terms of Open CASCADE
|
# Alternatively, this file may be used under the terms of Open CASCADE
|
||||||
# commercial license or contractual agreement.
|
# commercial license or contractual agreement.
|
||||||
|
|
||||||
;#
|
;# Return list of toolkits
|
||||||
;# Liste des toolkits WOK sous forme de full path
|
|
||||||
;#
|
|
||||||
proc Draw:toolkits { } {
|
proc Draw:toolkits { } {
|
||||||
set aResult [list TKDraw TKTopTest TKViewerTest TKXSDRAW TKDCAF TKXDEDRAW TKTObjDRAW TKQADraw]
|
set aResult [list TKDraw TKTopTest TKViewerTest TKXSDRAW TKDCAF TKXDEDRAW TKTObjDRAW TKQADraw]
|
||||||
|
|
||||||
@ -35,41 +33,23 @@ proc Draw:toolkits { } {
|
|||||||
return $aResult
|
return $aResult
|
||||||
}
|
}
|
||||||
|
|
||||||
;#
|
|
||||||
;# Autres UDs a prendre. Listes de triplets
|
;# Autres UDs a prendre. Listes de triplets
|
||||||
;# { ar typ UD str } Tous les types de UD vont dans un sous directory nomme root/str
|
;# { ar typ UD str } Tous les types de UD vont dans un sous directory nomme root/str
|
||||||
;# Ils seront dans CAS3.0/str de l'archive de type ar (source/runtime)
|
;# Ils seront dans CAS3.0/str de l'archive de type ar (source/runtime)
|
||||||
;# { ar typ UD {} } Tous les types de UD vont dans root/UD/src => CAS3.0/src
|
;# { ar typ UD {} } Tous les types de UD vont dans root/UD/src => CAS3.0/src
|
||||||
;#
|
|
||||||
proc Draw:ressources { } {
|
proc Draw:ressources { } {
|
||||||
return [list \
|
return [list \
|
||||||
[list both r DrawResources {}] \
|
[list both r DrawResources {}] \
|
||||||
[list both x DRAWEXE {}] \
|
[list both x DRAWEXE {}] \
|
||||||
]
|
]
|
||||||
}
|
|
||||||
proc Draw:freefiles { } {
|
|
||||||
return {}
|
|
||||||
}
|
|
||||||
;#
|
|
||||||
;# Nom du module
|
|
||||||
;#
|
|
||||||
proc Draw:name { } {
|
|
||||||
return Draw
|
|
||||||
}
|
|
||||||
proc Draw:alias { } {
|
|
||||||
return DRAW
|
|
||||||
}
|
|
||||||
proc Draw:depends { } {
|
|
||||||
return [list DataExchange]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
proc Draw:acdepends { } {
|
proc Draw:freefiles { } { return {} }
|
||||||
return [list TCLTK]
|
|
||||||
}
|
proc Draw:name { } { return Draw }
|
||||||
|
proc Draw:alias { } { return DRAW }
|
||||||
|
proc Draw:depends { } { return [list DataExchange] }
|
||||||
|
proc Draw:acdepends { } { return [list TCLTK] }
|
||||||
|
|
||||||
;#
|
|
||||||
;# Returns a list of exported features.
|
;# Returns a list of exported features.
|
||||||
;#
|
proc Draw:Export { } { return [list source runtime wokadm api] }
|
||||||
proc Draw:Export { } {
|
|
||||||
return [list source runtime wokadm api]
|
|
||||||
}
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user