mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-29 14:00:49 +03:00
Compare commits
57 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
ffce0d66bb | ||
|
d055c128e7 | ||
|
c2e3775a0c | ||
|
b524286577 | ||
|
9c84112977 | ||
|
5e01cc417c | ||
|
979e95f188 | ||
|
de94621d80 | ||
|
aa9f1ba2de | ||
|
54270c2a8c | ||
|
3e1bddc4cd | ||
|
0c47974eb5 | ||
|
f0401b93a0 | ||
|
cbd3892496 | ||
|
054e18966b | ||
|
4f833b7d13 | ||
|
14b64f123d | ||
|
0ca21a9112 | ||
|
4607bd0747 | ||
|
9cd8e0b617 | ||
|
1d57bdc710 | ||
|
65824e943c | ||
|
65531f540c | ||
|
bffd568302 | ||
|
cbf6b87074 | ||
|
d462aae370 | ||
|
384d03c699 | ||
|
4d60da8c58 | ||
|
c22fee9a34 | ||
|
4ebd858084 | ||
|
f7a0b1fbc4 | ||
|
c5650474df | ||
|
4ec4f117ad | ||
|
e0b19449a6 | ||
|
c334f465ca | ||
|
674c5c809c | ||
|
546ac65cad | ||
|
f6dd26ddec | ||
|
49c4a2989c | ||
|
4e1af7df6c | ||
|
8c37cf59fa | ||
|
8466701f7e | ||
|
6241604814 | ||
|
a457daa116 | ||
|
3c8d9bbb7f | ||
|
c0bcd773c5 | ||
|
6c10d4b11a | ||
|
0913396cd3 | ||
|
a2e128b4df | ||
|
8c7a2aa65f | ||
|
1eb623f2ba | ||
|
8c49832926 | ||
|
6447aae244 | ||
|
d6b9f64152 | ||
|
27d82c622c | ||
|
d25a8fa9e9 | ||
|
eb2a1d9e3f |
@@ -35,14 +35,6 @@ macro (OCCT_INCLUDE_CMAKE_FILE BEING_INCLUDED_FILE)
|
||||
endif()
|
||||
endmacro()
|
||||
|
||||
# set using memory manager option for TKernel
|
||||
set (USE_MMGR_TYPE "NATIVE" CACHE STRING "Select using memory manager tool.")
|
||||
set_property(CACHE USE_MMGR_TYPE PROPERTY STRINGS "NATIVE" "FLEXIBLE" "TBB" "JEMALLOC")
|
||||
|
||||
# set profile for C++ compiler and linker
|
||||
set (BUILD_OPT_PROFILE "Default" CACHE STRING "Select profile for compiler and linker.")
|
||||
set_property(CACHE BUILD_OPT_PROFILE PROPERTY STRINGS "Default" "Production")
|
||||
|
||||
# include variable description
|
||||
OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/vardescr")
|
||||
|
||||
@@ -828,6 +820,12 @@ else()
|
||||
OCCT_CHECK_AND_UNSET ("3RDPARTY_DOT_EXECUTABLE")
|
||||
endif()
|
||||
|
||||
# ExpToCasExe
|
||||
if (EMSCRIPTEN)
|
||||
list (REMOVE_ITEM BUILD_TOOLKITS TKExpress)
|
||||
list (REMOVE_ITEM BUILD_TOOLKITS ExpToCasExe)
|
||||
endif()
|
||||
|
||||
# bison
|
||||
if (BUILD_YACCLEX)
|
||||
OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/bison")
|
||||
@@ -842,14 +840,6 @@ else()
|
||||
OCCT_CHECK_AND_UNSET ("3RDPARTY_FLEX_EXECUTABLE")
|
||||
endif()
|
||||
|
||||
# Jemalloc
|
||||
if ("${USE_MMGR_TYPE}" STREQUAL "JEMALLOC")
|
||||
OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/jemalloc")
|
||||
else()
|
||||
OCCT_CHECK_AND_UNSET_GROUP ("3RDPARTY_JEMALLOC")
|
||||
OCCT_CHECK_AND_UNSET ("INSTALL_JEMALLOC")
|
||||
endif()
|
||||
|
||||
# qt for inspector and samples
|
||||
if (BUILD_Inspector OR BUILD_SAMPLES_QT)
|
||||
# check qt 3rdparty path
|
||||
@@ -1012,10 +1002,10 @@ if (${DRAWEXE_INDEX} GREATER -1)
|
||||
# copy draw script to install script folder
|
||||
if (BUILD_PATCH AND EXISTS "${BUILD_PATCH}/adm/templates/draw.${SCRIPT_EXT}")
|
||||
install (FILES "${BUILD_PATCH}/adm/templates/draw.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
|
||||
else()
|
||||
install (FILES "${CMAKE_SOURCE_DIR}/adm/templates/draw.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
|
||||
endif()
|
||||
|
||||
# copy draw script to CMake binary folder
|
||||
@@ -1217,10 +1207,10 @@ if (BUILD_TOOL_TOOLKITS)
|
||||
# copy tinspector script to install script folder
|
||||
if (BUILD_PATCH AND EXISTS "${BUILD_PATCH}/adm/templates/inspector.${SCRIPT_EXT}")
|
||||
install (FILES "${BUILD_PATCH}/adm/templates/inspector.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
|
||||
else()
|
||||
install (FILES "${CMAKE_SOURCE_DIR}/adm/templates/inspector.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}"
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
|
||||
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_WRITE WORLD_EXECUTE)
|
||||
endif()
|
||||
|
||||
set (OpenCASCADE_BINARY_DIR "${INSTALL_DIR}/${INSTALL_DIR_BIN}")
|
||||
@@ -1255,7 +1245,7 @@ foreach (OCCT_TOOLKIT ${BUILD_TOOLKITS})
|
||||
endforeach()
|
||||
list (REMOVE_DUPLICATES OCCT_MODULES_ENABLED)
|
||||
list (REMOVE_DUPLICATES OCCT_COMPILE_DEFINITIONS)
|
||||
# these macros are defined for specific toolkits, not globalwise
|
||||
# these macros are defined for specific tookits, not globalwise
|
||||
list (REMOVE_ITEM OCCT_COMPILE_DEFINITIONS HAVE_OPENGL)
|
||||
list (REMOVE_ITEM OCCT_COMPILE_DEFINITIONS HAVE_GLES2)
|
||||
|
||||
|
@@ -3,6 +3,5 @@ ModelingData TKG2d TKG3d TKGeomBase TKBRep
|
||||
ModelingAlgorithms TKGeomAlgo TKTopAlgo TKPrim TKBO TKBool TKHLR TKFillet TKOffset TKFeat TKMesh TKXMesh TKShHealing
|
||||
Visualization TKService TKV3d TKOpenGl TKOpenGles TKMeshVS TKIVtk TKD3DHost
|
||||
ApplicationFramework TKCDF TKLCAF TKCAF TKBinL TKXmlL TKBin TKXml TKStdL TKStd TKTObj TKBinTObj TKXmlTObj TKVCAF
|
||||
DataExchange TKDE TKXSBase TKDESTEP TKDEIGES TKDESTL TKDEVRML TKDECascade TKDEOBJ TKDEGLTF TKDEPLY TKXCAF TKXmlXCAF TKBinXCAF TKRWMesh
|
||||
DETools TKExpress ExpToCasExe
|
||||
Draw TKDraw TKTopTest TKOpenGlTest TKOpenGlesTest TKD3DHostTest TKViewerTest TKXSDRAW TKDCAF TKXDEDRAW TKTObjDRAW TKQADraw TKIVtkDraw DRAWEXE TKXSDRAWDE TKXSDRAWGLTF TKXSDRAWIGES TKXSDRAWOBJ TKXSDRAWPLY TKXSDRAWSTEP TKXSDRAWSTL TKXSDRAWVRML
|
||||
DataExchange TKXDE TKXSBase TKSTEPBase TKSTEPAttr TKSTEP209 TKSTEP TKIGES TKXCAF TKXDEIGES TKXDESTEP TKSTL TKVRML TKXmlXCAF TKBinXCAF TKRWMesh TKXDECascade TKExpress ExpToCasExe
|
||||
Draw TKDraw TKTopTest TKOpenGlTest TKOpenGlesTest TKD3DHostTest TKViewerTest TKXSDRAW TKDCAF TKXDEDRAW TKTObjDRAW TKQADraw TKIVtkDraw DRAWEXE
|
||||
|
36
adm/UDLIST
36
adm/UDLIST
@@ -32,7 +32,6 @@ n UnitsAPI
|
||||
n gp
|
||||
n math
|
||||
r OS
|
||||
n FlexLexer
|
||||
t TKMath
|
||||
t TKernel
|
||||
n Adaptor2d
|
||||
@@ -377,13 +376,18 @@ r SHMessage
|
||||
r XSMessage
|
||||
r XSTEPResource
|
||||
t TKBinXCAF
|
||||
t TKDESTL
|
||||
t TKDEVRML
|
||||
t TKIGES
|
||||
t TKSTEP
|
||||
t TKSTEP209
|
||||
t TKSTEPAttr
|
||||
t TKSTEPBase
|
||||
t TKSTL
|
||||
t TKVRML
|
||||
t TKXCAF
|
||||
t TKDE
|
||||
t TKDECascade
|
||||
t TKDEIGES
|
||||
t TKDESTEP
|
||||
t TKXDE
|
||||
t TKXDECascade
|
||||
t TKXDEIGES
|
||||
t TKXDESTEP
|
||||
t TKXSBase
|
||||
t TKXmlXCAF
|
||||
n BOPTest
|
||||
@@ -415,12 +419,7 @@ n XDEDRAW
|
||||
n XSDRAW
|
||||
n XSDRAWIGES
|
||||
n XSDRAWSTEP
|
||||
n XSDRAWSTL
|
||||
n XSDRAWVRML
|
||||
n XSDRAWDE
|
||||
n XSDRAWGLTF
|
||||
n XSDRAWOBJ
|
||||
n XSDRAWPLY
|
||||
n XSDRAWSTLVRML
|
||||
r DrawResources
|
||||
t TKDCAF
|
||||
t TKDraw
|
||||
@@ -432,14 +431,6 @@ t TKD3DHostTest
|
||||
t TKViewerTest
|
||||
t TKXDEDRAW
|
||||
t TKXSDRAW
|
||||
t TKXSDRAWIGES
|
||||
t TKXSDRAWSTEP
|
||||
t TKXSDRAWSTL
|
||||
t TKXSDRAWVRML
|
||||
t TKXSDRAWDE
|
||||
t TKXSDRAWGLTF
|
||||
t TKXSDRAWOBJ
|
||||
t TKXSDRAWPLY
|
||||
x DRAWEXE
|
||||
n QADraw
|
||||
n QANCollection
|
||||
@@ -465,9 +456,6 @@ t TKVCAF
|
||||
n XCAFView
|
||||
n XCAFNoteObjects
|
||||
t TKRWMesh
|
||||
t TKDEGLTF
|
||||
t TKDEOBJ
|
||||
t TKDEPLY
|
||||
n RWGltf
|
||||
n RWMesh
|
||||
n RWObj
|
||||
|
@@ -1,143 +0,0 @@
|
||||
# JeMalloc
|
||||
|
||||
if (NOT DEFINED INSTALL_JEMALLOC)
|
||||
set (INSTALL_JEMALLOC OFF CACHE BOOL "${INSTALL_INSTALL_JEMALLOC_DESCR}")
|
||||
endif()
|
||||
|
||||
# include occt macros. compiler_bitness, os_with_bit, compiler
|
||||
OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/occt_macros")
|
||||
|
||||
# specify JEMALLOC folder in connection with 3RDPARTY_DIR
|
||||
if (3RDPARTY_DIR AND EXISTS "${3RDPARTY_DIR}")
|
||||
if (NOT 3RDPARTY_JEMALLOC_DIR OR NOT EXISTS "${3RDPARTY_JEMALLOC_DIR}")
|
||||
FIND_PRODUCT_DIR ("${3RDPARTY_DIR}" jemalloc JEMALLOC_DIR_NAME)
|
||||
if (JEMALLOC_DIR_NAME)
|
||||
set (3RDPARTY_JEMALLOC_DIR "${3RDPARTY_DIR}/${JEMALLOC_DIR_NAME}" CACHE PATH "The directory containing JEMALLOC" FORCE)
|
||||
set (3RDPARTY_JEMALLOC_DIR "${3RDPARTY_DIR}/${JEMALLOC_DIR_NAME}")
|
||||
message(STATUS "Info: JEMALLOC detected in ${3RDPARTY_JEMALLOC_DIR}")
|
||||
endif()
|
||||
endif()
|
||||
else()
|
||||
endif()
|
||||
|
||||
# define required JEMALLOC variables
|
||||
if (NOT DEFINED 3RDPARTY_JEMALLOC_INCLUDE_DIR)
|
||||
set (3RDPARTY_JEMALLOC_INCLUDE_DIR "" CACHE PATH "the path of headers directory")
|
||||
endif()
|
||||
|
||||
# check 3RDPARTY_${PRODUCT_NAME}_ paths for consistency with specified 3RDPARTY_${PRODUCT_NAME}_DIR
|
||||
if (3RDPARTY_JEMALLOC_DIR AND EXISTS "${3RDPARTY_JEMALLOC_DIR}")
|
||||
CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_JEMALLOC_DIR 3RDPARTY_JEMALLOC_INCLUDE_DIR PATH "the path to JEMALLOC")
|
||||
CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_JEMALLOC_DIR 3RDPARTY_JEMALLOC_LIBRARY_DIR FILEPATH "The directory containing JEMALLOC libraries")
|
||||
endif()
|
||||
|
||||
# header
|
||||
if (NOT 3RDPARTY_JEMALLOC_INCLUDE_DIR OR NOT EXISTS "${3RDPARTY_JEMALLOC_INCLUDE_DIR}")
|
||||
set (HEADER_NAMES jemalloc.h)
|
||||
|
||||
# set 3RDPARTY_JEMALLOC_INCLUDE_DIR as notfound, otherwise find_library can't assign a new value to 3RDPARTY_JEMALLOC_INCLUDE_DIR
|
||||
set (3RDPARTY_JEMALLOC_INCLUDE_DIR "3RDPARTY_JEMALLOC_INCLUDE_DIR-NOTFOUND" CACHE FILEPATH "the path to header directory" FORCE)
|
||||
|
||||
if (3RDPARTY_JEMALLOC_DIR AND EXISTS "${3RDPARTY_JEMALLOC_DIR}")
|
||||
find_path (3RDPARTY_JEMALLOC_INCLUDE_DIR NAMES ${HEADER_NAMES}
|
||||
PATHS ${3RDPARTY_JEMALLOC_DIR}
|
||||
PATH_SUFFIXES include/jemalloc
|
||||
CMAKE_FIND_ROOT_PATH_BOTH
|
||||
NO_DEFAULT_PATH)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (3RDPARTY_JEMALLOC_INCLUDE_DIR AND EXISTS "${3RDPARTY_JEMALLOC_INCLUDE_DIR}")
|
||||
list (APPEND 3RDPARTY_INCLUDE_DIRS "${3RDPARTY_JEMALLOC_INCLUDE_DIR}")
|
||||
else()
|
||||
list (APPEND 3RDPARTY_NOT_INCLUDED 3RDPARTY_JEMALLOC_INCLUDE_DIR)
|
||||
set (3RDPARTY_JEMALLOC_INCLUDE_DIR "" CACHE FILEPATH "the path to jemalloc.h" FORCE)
|
||||
endif()
|
||||
|
||||
# Installing destination path
|
||||
if (WIN32)
|
||||
set (JEMALLOC_INSTALL_DESTINATION "${INSTALL_DIR}/${INSTALL_DIR_BIN}")
|
||||
else()
|
||||
set (JEMALLOC_INSTALL_DESTINATION "${INSTALL_DIR}/${INSTALL_DIR_LIB}")
|
||||
endif()
|
||||
|
||||
macro (JEMALLOC_LIB_SEARCH MMGR_LIB PREFIX)
|
||||
if (NOT 3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB})
|
||||
set (JEMALLOC_PATH_SUFFIXES "lib" "bin")
|
||||
set (3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB} "3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB}-NOTFOUND")
|
||||
if (3RDPARTY_JEMALLOC_DIR AND EXISTS "${3RDPARTY_JEMALLOC_DIR}")
|
||||
find_library (3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB} NAMES ${MMGR_LIB}
|
||||
PATHS "${3RDPARTY_JEMALLOC_LIBRARY_DIR}" "${3RDPARTY_JEMALLOC_DIR}"
|
||||
PATH_SUFFIXES ${JEMALLOC_PATH_SUFFIXES}
|
||||
CMAKE_FIND_ROOT_PATH_BOTH
|
||||
NO_DEFAULT_PATH)
|
||||
else()
|
||||
find_library (3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB} NAMES ${MMGR_LIB}
|
||||
PATH_SUFFIXES ${JEMALLOC_PATH_SUFFIXES}
|
||||
CMAKE_FIND_ROOT_PATH_BOTH)
|
||||
endif()
|
||||
if (3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB})
|
||||
get_filename_component (3RDPARTY_JEMALLOC_LIBRARY_DIR_${MMGR_LIB} "${3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB}}" PATH)
|
||||
set (3RDPARTY_JEMALLOC_LIBRARY_DIR_${MMGR_LIB} "${3RDPARTY_JEMALLOC_LIBRARY_DIR_${MMGR_LIB}}")
|
||||
else()
|
||||
set (3RDPARTY_JEMALLOC_LIBRARY_DIR_${MMGR_LIB} "")
|
||||
endif()
|
||||
endif()
|
||||
if (3RDPARTY_JEMALLOC_LIBRARY_DIR_${MMGR_LIB})
|
||||
list (APPEND 3RDPARTY_LIBRARY_DIRS "${3RDPARTY_JEMALLOC_LIBRARY_DIR_${MMGR_LIB}}")
|
||||
set (3RDPARTY_JEMALLOC_LIBRARY_DIR "${3RDPARTY_JEMALLOC_LIBRARY_DIR_${MMGR_LIB}}" CACHE PATH "The directory containing JEMALLOC libraries" FORCE)
|
||||
else()
|
||||
message("Cannot find ${MMGR_LIB} library in jemalloc 3rdparty")
|
||||
list (APPEND 3RDPARTY_NO_LIBS 3RDPARTY_JEMALLOC_LIBRARY_DIR_${MMGR_LIB})
|
||||
set (3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB} "")
|
||||
endif()
|
||||
set (JEMALLOC_IS_STATIC_LIB FALSE)
|
||||
if (((${3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB}} MATCHES "\.lib$")) OR ((${3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB}} MATCHES "\.a$")))
|
||||
get_filename_component(STATIC_LIB_NAME ${3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB}} NAME)
|
||||
list(APPEND CSF_MMGR "${STATIC_LIB_NAME}")
|
||||
set (JEMALLOC_IS_STATIC_LIB TRUE)
|
||||
endif()
|
||||
# install instructions
|
||||
if (INSTALL_JEMALLOC AND NOT JEMALLOC_IS_STATIC_LIB)
|
||||
OCCT_MAKE_OS_WITH_BITNESS()
|
||||
OCCT_MAKE_COMPILER_SHORT_NAME()
|
||||
get_filename_component(3RDPARTY_JEMALLOC_LIBRARY ${3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB}} REALPATH)
|
||||
if (SINGLE_GENERATOR)
|
||||
install (FILES "${3RDPARTY_JEMALLOC_LIBRARY}"
|
||||
DESTINATION "${INSTALL_DIR}/${INSTALL_DIR_LIB}")
|
||||
else()
|
||||
install (FILES "${3RDPARTY_JEMALLOC_LIBRARY}"
|
||||
CONFIGURATIONS Debug
|
||||
DESTINATION "${JEMALLOC_INSTALL_DESTINATION}d")
|
||||
install (FILES "${3RDPARTY_JEMALLOC_LIBRARY}"
|
||||
CONFIGURATIONS Release
|
||||
DESTINATION "${JEMALLOC_INSTALL_DESTINATION}")
|
||||
install (FILES "${3RDPARTY_JEMALLOC_LIBRARY}"
|
||||
CONFIGURATIONS RelWithDebInfo
|
||||
DESTINATION "${JEMALLOC_INSTALL_DESTINATION}i")
|
||||
endif()
|
||||
set (USED_3RDPARTY_JEMALLOC_DIR "")
|
||||
elseif(NOT JEMALLOC_IS_STATIC_LIB)
|
||||
# the library directory for using by the executable
|
||||
set (USED_3RDPARTY_JEMALLOC_DIR ${3RDPARTY_JEMALLOC_LIBRARY_DIR_${MMGR_LIB}})
|
||||
endif()
|
||||
unset(3RDPARTY_JEMALLOC_LIBRARY_DIR_${MMGR_LIB} CACHE)
|
||||
unset(3RDPARTY_JEMALLOC_LIBRARY_${PREFIX}_${MMGR_LIB} CACHE)
|
||||
endmacro()
|
||||
|
||||
# Reset CSF variable
|
||||
set (CSF_MMGR "")
|
||||
|
||||
# find static jemalloc lib
|
||||
SET(CMAKE_FIND_LIBRARY_SUFFIXES ".lib" ".a")
|
||||
if (WIN32)
|
||||
JEMALLOC_LIB_SEARCH ("jemalloc" "STATIC")
|
||||
elseif(NOT WIN32)
|
||||
JEMALLOC_LIB_SEARCH ("jemalloc_pic" "STATIC")
|
||||
SET(CMAKE_FIND_LIBRARY_SUFFIXES "" "so")
|
||||
JEMALLOC_LIB_SEARCH ("jemalloc.so.2" "SHARED")
|
||||
endif()
|
||||
|
||||
# find shared jemalloc lib
|
||||
SET(CMAKE_FIND_LIBRARY_SUFFIXES ".dll" ".so")
|
||||
JEMALLOC_LIB_SEARCH ("jemalloc" "SHARED")
|
@@ -44,25 +44,9 @@ elseif (MSVC)
|
||||
endif()
|
||||
|
||||
if (MSVC)
|
||||
if ("${BUILD_OPT_PROFILE}" STREQUAL "Production")
|
||||
# string pooling (GF), function-level linking (Gy)
|
||||
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /GF /Gy")
|
||||
set (CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /GF /Gy")
|
||||
|
||||
# Favor fast code (Ot), Omit frame pointers (Oy)
|
||||
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Ot /Oy")
|
||||
set (CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /Ot /Oy")
|
||||
|
||||
# Whole Program Optimisation (GL), Enable intrinsic functions (Oi)
|
||||
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /GL /Oi")
|
||||
set (CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /GL /Oi")
|
||||
|
||||
# Link-Time Code Generation(LTCG) is requared for Whole Program Optimisation(GL)
|
||||
set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG")
|
||||
set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /LTCG")
|
||||
set(CMAKE_STATIC_LINKER_FLAGS_RELEASE "${CMAKE_STATIC_LINKER_FLAGS_RELEASE} /LTCG")
|
||||
set(CMAKE_MODULE_LINKER_FLAGS_RELEASE "${CMAKE_MODULE_LINKER_FLAGS_RELEASE} /LTCG")
|
||||
endif()
|
||||
# string pooling (GF), function-level linking (Gy)
|
||||
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /GF /Gy")
|
||||
set (CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /GF /Gy")
|
||||
if (BUILD_FORCE_RelWithDebInfo)
|
||||
# generate debug info (Zi), inline expansion level (Ob1)
|
||||
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi /Ob1")
|
||||
@@ -134,22 +118,6 @@ if (MSVC)
|
||||
endif()
|
||||
elseif (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX OR (CMAKE_CXX_COMPILER_ID MATCHES "[Cc][Ll][Aa][Nn][Gg]"))
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra")
|
||||
|
||||
if ("${BUILD_OPT_PROFILE}" STREQUAL "Production")
|
||||
# /Ot (favor speed over size) is similar to -O2 or -O3 in GCC/Clang.
|
||||
# /Oy (omit frame pointers) is similar to -fomit-frame-pointer in GCC/Clang.
|
||||
# /GL (whole program optimization) is similar to -flto (Link Time Optimization) in GCC/Clang.
|
||||
# /GF (eliminate duplicate strings) doesn't have a direct equivalent in GCC/Clang, but the compilers do string pooling automatically.
|
||||
# /Gy (enable function-level linking) is similar to -ffunction-sections in GCC/Clang.
|
||||
# /fp:precise (improve floating-point consistency) is similar to -ffloat-store in GCC, but there isn't a perfect equivalent in Clang.
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -fomit-frame-pointer -flto -ffunction-sections -ffloat-store")
|
||||
|
||||
# Link-Time Code Generation(LTCG) is requared for Whole Program Optimisation(GL)
|
||||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -flto")
|
||||
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -flto")
|
||||
set(CMAKE_STATIC_LINKER_FLAGS "${CMAKE_STATIC_LINKER_FLAGS} -flto")
|
||||
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -flto")
|
||||
endif()
|
||||
if (CMAKE_CXX_COMPILER_ID MATCHES "[Cc][Ll][Aa][Nn][Gg]")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wshorten-64-to-32")
|
||||
endif()
|
||||
|
@@ -70,16 +70,6 @@ foreach (OCCT_PACKAGE ${USED_PACKAGES})
|
||||
OCCT_ORIGIN_AND_PATCHED_FILES ("${RELATIVE_SOURCES_DIR}/${OCCT_PACKAGE}" "*[.]lex" SOURCE_FILES_FLEX)
|
||||
list (LENGTH SOURCE_FILES_FLEX SOURCE_FILES_FLEX_LEN)
|
||||
|
||||
# remove old general version of FlexLexer
|
||||
if (EXISTS ${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/FlexLexer/FlexLexer.h)
|
||||
message (STATUS "Info: remove old FLEX header file: ${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/FlexLexer/FlexLexer.h")
|
||||
file(REMOVE ${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/FlexLexer/FlexLexer.h)
|
||||
endif()
|
||||
# install copy of FlexLexer.h locally to allow further building without flex
|
||||
if (FLEX_INCLUDE_DIR AND EXISTS "${FLEX_INCLUDE_DIR}/FlexLexer.h")
|
||||
configure_file("${FLEX_INCLUDE_DIR}/FlexLexer.h" "${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/FlexLexer/FlexLexer.h" @ONLY NEWLINE_STYLE LF)
|
||||
endif()
|
||||
|
||||
# bison files
|
||||
OCCT_ORIGIN_AND_PATCHED_FILES ("${RELATIVE_SOURCES_DIR}/${OCCT_PACKAGE}" "*[.]yacc" SOURCE_FILES_BISON)
|
||||
list (LENGTH SOURCE_FILES_BISON SOURCE_FILES_BISON_LEN)
|
||||
@@ -117,11 +107,21 @@ foreach (OCCT_PACKAGE ${USED_PACKAGES})
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
if (EXISTS ${FLEX_BISON_TARGET_DIR}/FlexLexer.h)
|
||||
message (STATUS "Info: remove old FLEX header file: ${FLEX_BISON_TARGET_DIR}/FlexLexer.h")
|
||||
file(REMOVE ${FLEX_BISON_TARGET_DIR}/FlexLexer.h)
|
||||
endif()
|
||||
|
||||
file (STRINGS "${CURRENT_FLEX_FILE}" FILE_FLEX_CONTENT)
|
||||
foreach (FILE_FLEX_CONTENT_LINE ${FILE_FLEX_CONTENT})
|
||||
string (REGEX MATCH "%option c\\+\\+" CXX_FLEX_LANGUAGE_FOUND ${FILE_FLEX_CONTENT_LINE})
|
||||
if (CXX_FLEX_LANGUAGE_FOUND)
|
||||
set (FLEX_OUTPUT_FILE_EXT "cxx")
|
||||
|
||||
# install copy of FlexLexer.h locally to allow further building without flex
|
||||
if (FLEX_INCLUDE_DIR AND EXISTS "${FLEX_INCLUDE_DIR}/FlexLexer.h")
|
||||
configure_file("${FLEX_INCLUDE_DIR}/FlexLexer.h" "${FLEX_BISON_TARGET_DIR}/FlexLexer.h" @ONLY NEWLINE_STYLE LF)
|
||||
endif()
|
||||
endif()
|
||||
endforeach()
|
||||
set (BISON_OUTPUT_FILE ${CURRENT_BISON_FILE_NAME}.tab.${BISON_OUTPUT_FILE_EXT})
|
||||
@@ -284,15 +284,9 @@ else()
|
||||
else()
|
||||
set (aReleasePdbConf)
|
||||
endif()
|
||||
if (BUILD_SHARED_LIBS)
|
||||
install (FILES ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/bin\${OCCT_INSTALL_BIN_LETTER}/${PROJECT_NAME}.pdb
|
||||
install (FILES ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/bin\${OCCT_INSTALL_BIN_LETTER}/${PROJECT_NAME}.pdb
|
||||
CONFIGURATIONS Debug ${aReleasePdbConf} RelWithDebInfo
|
||||
DESTINATION "${INSTALL_DIR_BIN}\${OCCT_INSTALL_BIN_LETTER}")
|
||||
else()
|
||||
install (FILES ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/lib\${OCCT_INSTALL_BIN_LETTER}/${PROJECT_NAME}.pdb
|
||||
CONFIGURATIONS Debug ${aReleasePdbConf} RelWithDebInfo
|
||||
DESTINATION "${INSTALL_DIR_LIB}\${OCCT_INSTALL_BIN_LETTER}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (BUILD_SHARED_LIBS AND NOT "${BUILD_SHARED_LIBRARY_NAME_POSTFIX}" STREQUAL "")
|
||||
|
@@ -116,7 +116,6 @@ endmacro()
|
||||
|
||||
BUILD_MODULE_MESSAGE (BUILD_MODULE_ApplicationFramework "ApplicationFramework")
|
||||
BUILD_MODULE_MESSAGE (BUILD_MODULE_DataExchange "DataExchange")
|
||||
BUILD_MODULE_MESSAGE (BUILD_MODULE_DETools "DETools")
|
||||
BUILD_MODULE_MESSAGE (BUILD_MODULE_Draw "Draw")
|
||||
BUILD_MODULE_MESSAGE (BUILD_MODULE_FoundationClasses "FoundationClasses")
|
||||
BUILD_MODULE_MESSAGE (BUILD_MODULE_ModelingAlgorithms "ModelingAlgorithms")
|
||||
|
@@ -33,7 +33,6 @@ set "BUILD_ModelingAlgorithms=ON"
|
||||
set "BUILD_Visualization=ON"
|
||||
set "BUILD_ApplicationFramework=ON"
|
||||
set "BUILD_DataExchange=ON"
|
||||
set "BUILD_DETools=OFF"
|
||||
|
||||
rem Optional 3rd-party libraries to enable
|
||||
set "USE_FREETYPE=ON"
|
||||
@@ -167,7 +166,6 @@ if ["%toCMake%"] == ["1"] (
|
||||
-D BUILD_MODULE_Visualization:BOOL="%BUILD_Visualization%" ^
|
||||
-D BUILD_MODULE_ApplicationFramework:BOOL="%BUILD_ApplicationFramework%" ^
|
||||
-D BUILD_MODULE_DataExchange:BOOL="%BUILD_DataExchange%" ^
|
||||
-D BUILD_MODULE_DETools:BOOL="OFF" ^
|
||||
-D BUILD_MODULE_Draw:BOOL="OFF" ^
|
||||
-D BUILD_DOC_Overview:BOOL="OFF" ^
|
||||
-D USE_FREETYPE:BOOL="%USE_FREETYPE%" ^
|
||||
|
@@ -27,7 +27,6 @@ rem set "BUILD_ModelingAlgorithms=ON"
|
||||
rem set "BUILD_Visualization=ON"
|
||||
rem set "BUILD_ApplicationFramework=ON"
|
||||
rem set "BUILD_DataExchange=ON"
|
||||
rem set "BUILD_MODULE_DETools=OFF"
|
||||
|
||||
rem Optional 3rd-party libraries to enable
|
||||
rem set "USE_RAPIDJSON=ON"
|
||||
|
@@ -33,7 +33,6 @@ rem set BUILD_PATCH=
|
||||
|
||||
rem set BUILD_MODULE_ApplicationFramework=ON
|
||||
rem set BUILD_MODULE_DataExchange=ON
|
||||
rem set BUILD_MODULE_DETools=OFF
|
||||
rem set BUILD_MODULE_Draw=ON
|
||||
rem set BUILD_MODULE_ModelingAlgorithms=ON
|
||||
rem set BUILD_MODULE_ModelingData=ON
|
||||
|
@@ -26,7 +26,6 @@ FREETYPE_DIR="$OCCT3RDPARTY/freetype-2.7.1"
|
||||
|
||||
#BUILD_MODULE_ApplicationFramework=ON
|
||||
#BUILD_MODULE_DataExchange=ON
|
||||
#BUILD_MODULE_DETools=OFF
|
||||
#BUILD_MODULE_Draw=ON
|
||||
#BUILD_MODULE_ModelingAlgorithms=ON
|
||||
#BUILD_MODULE_ModelingData=ON
|
||||
|
@@ -28,7 +28,6 @@ set BUILD_FORCE_RelWithDebInfo=OFF
|
||||
|
||||
set BUILD_MODULE_ApplicationFramework=ON
|
||||
set BUILD_MODULE_DataExchange=ON
|
||||
set BUILD_MODULE_DETools=OFF
|
||||
set BUILD_MODULE_Draw=ON
|
||||
set BUILD_MODULE_ModelingAlgorithms=ON
|
||||
set BUILD_MODULE_ModelingData=ON
|
||||
@@ -63,7 +62,6 @@ cmake -G "%arch_compile%" ^
|
||||
-D BUILD_LIBRARY_TYPE:STRING=%BUILD_LIBRARY_TYPE% ^
|
||||
-D BUILD_MODULE_ApplicationFramework:BOOL=%BUILD_MODULE_ApplicationFramework% ^
|
||||
-D BUILD_MODULE_DataExchange:BOOL=%BUILD_MODULE_DataExchange% ^
|
||||
-D BUILD_MODULE_DETools:BOOL=%BUILD_MODULE_DETools% ^
|
||||
-D BUILD_MODULE_Draw:BOOL=%BUILD_MODULE_Draw% ^
|
||||
-D BUILD_MODULE_FoundationClasses:BOOL=ON ^
|
||||
-D BUILD_MODULE_ModelingAlgorithms:BOOL=%BUILD_MODULE_ModelingAlgorithms% ^
|
||||
|
@@ -31,7 +31,6 @@ BUILD_ENABLE_FPE_SIGNAL_HANDLER=ON
|
||||
|
||||
BUILD_MODULE_ApplicationFramework=ON
|
||||
BUILD_MODULE_DataExchange=ON
|
||||
BUILD_MODULE_DETools=OFF
|
||||
BUILD_MODULE_Draw=ON
|
||||
BUILD_MODULE_ModelingAlgorithms=ON
|
||||
BUILD_MODULE_ModelingData=ON
|
||||
@@ -64,7 +63,6 @@ cmake -G "Unix Makefiles" \
|
||||
-D BUILD_LIBRARY_TYPE:STRING=$BUILD_LIBRARY_TYPE \
|
||||
-D BUILD_MODULE_ApplicationFramework:BOOL=$BUILD_MODULE_ApplicationFramework \
|
||||
-D BUILD_MODULE_DataExchange:BOOL=$BUILD_MODULE_DataExchange \
|
||||
-D BUILD_MODULE_DETools:BOOL=$BUILD_MODULE_DETools \
|
||||
-D BUILD_MODULE_Draw:BOOL=$BUILD_MODULE_Draw \
|
||||
-D BUILD_MODULE_FoundationClasses:BOOL=ON \
|
||||
-D BUILD_MODULE_ModelingAlgorithms:BOOL=$BUILD_MODULE_ModelingAlgorithms \
|
||||
|
@@ -34,7 +34,6 @@ export BUILD_ModelingAlgorithms=ON
|
||||
export BUILD_Visualization=ON
|
||||
export BUILD_ApplicationFramework=ON
|
||||
export BUILD_DataExchange=ON
|
||||
export BUILD_DETools=OFF
|
||||
|
||||
export USE_FREETYPE=ON
|
||||
export USE_FREEIMAGE=OFF
|
||||
@@ -149,7 +148,6 @@ function buildArch {
|
||||
-D BUILD_MODULE_Visualization:BOOL="${BUILD_Visualization}" \
|
||||
-D BUILD_MODULE_ApplicationFramework:BOOL="${BUILD_ApplicationFramework}" \
|
||||
-D BUILD_MODULE_DataExchange:BOOL="${BUILD_DataExchange}" \
|
||||
-D BUILD_MODULE_DETools:BOOL="${BUILD_DETools}" \
|
||||
-D BUILD_MODULE_Draw:BOOL="OFF" \
|
||||
-D BUILD_DOC_Overview:BOOL="OFF" \
|
||||
"$aCasSrc" 2>&1 | tee -a "$aLogFile"
|
||||
|
@@ -20,7 +20,6 @@ export aDraco="$aSrcRoot/../3rdparty/draco-1.4.1-ios"
|
||||
#export BUILD_Visualization=ON
|
||||
#export BUILD_ApplicationFramework=ON
|
||||
#export BUILD_DataExchange=ON
|
||||
#export BUILD_DETools=OFF
|
||||
|
||||
#export USE_RAPIDJSON=ON
|
||||
#export USE_DRACO=ON
|
||||
|
@@ -34,7 +34,6 @@ export BUILD_ModelingAlgorithms=ON
|
||||
export BUILD_Visualization=ON
|
||||
export BUILD_ApplicationFramework=ON
|
||||
export BUILD_DataExchange=ON
|
||||
export BUILD_DETools=OFF
|
||||
export BUILD_Draw=ON
|
||||
|
||||
export USE_FREETYPE=ON
|
||||
@@ -146,7 +145,6 @@ function buildArch {
|
||||
-D BUILD_MODULE_Visualization:BOOL="${BUILD_Visualization}" \
|
||||
-D BUILD_MODULE_ApplicationFramework:BOOL="${BUILD_ApplicationFramework}" \
|
||||
-D BUILD_MODULE_DataExchange:BOOL="${BUILD_DataExchange}" \
|
||||
-D BUILD_MODULE_DETools:BOOL="${BUILD_DETools}" \
|
||||
-D BUILD_MODULE_Draw:BOOL="${BUILD_Draw}" \
|
||||
-D BUILD_DOC_Overview:BOOL="OFF" \
|
||||
"$aCasSrc" 2>&1 | tee -a "$aLogFile"
|
||||
|
@@ -19,7 +19,6 @@ export aDraco="$aSrcRoot/../3rdparty/draco-1.4.1-macos"
|
||||
#export BUILD_Visualization=ON
|
||||
#export BUILD_ApplicationFramework=ON
|
||||
#export BUILD_DataExchange=ON
|
||||
#export BUILD_DETools=OFF
|
||||
#export BUILD_Draw=ON
|
||||
|
||||
#export USE_RAPIDJSON=ON
|
||||
|
@@ -32,7 +32,6 @@ set "BUILD_ModelingAlgorithms=ON"
|
||||
set "BUILD_Visualization=ON"
|
||||
set "BUILD_ApplicationFramework=ON"
|
||||
set "BUILD_DataExchange=ON"
|
||||
set "BUILD_DETools=OFF"
|
||||
set "BUILD_Draw=ON"
|
||||
|
||||
rem Optional 3rd-party libraries to enable
|
||||
@@ -156,7 +155,6 @@ if ["%toCMake%"] == ["1"] (
|
||||
-D BUILD_MODULE_Visualization:BOOL="%BUILD_Visualization%" ^
|
||||
-D BUILD_MODULE_ApplicationFramework:BOOL="%BUILD_ApplicationFramework%" ^
|
||||
-D BUILD_MODULE_DataExchange:BOOL="%BUILD_DataExchange%" ^
|
||||
-D BUILD_MODULE_DETools:BOOL="%BUILD_DETools%" ^
|
||||
-D BUILD_MODULE_Draw:BOOL="%BUILD_Draw%" ^
|
||||
-D 3RDPARTY_TCL_DIR:PATH="%aTclTk%" ^
|
||||
-D 3RDPARTY_TCL_INCLUDE_DIR:FILEPATH="%aTclTk%/include" ^
|
||||
|
@@ -22,7 +22,6 @@ rem set "BUILD_ModelingAlgorithms=ON"
|
||||
rem set "BUILD_Visualization=ON"
|
||||
rem set "BUILD_ApplicationFramework=ON"
|
||||
rem set "BUILD_DataExchange=ON"
|
||||
rem set "BUILD_DETools=OFF"
|
||||
rem set "BUILD_Draw=ON"
|
||||
|
||||
rem set "USE_RAPIDJSON=ON"
|
||||
|
@@ -32,7 +32,6 @@ set "BUILD_ModelingAlgorithms=ON"
|
||||
set "BUILD_Visualization=ON"
|
||||
set "BUILD_ApplicationFramework=ON"
|
||||
set "BUILD_DataExchange=ON"
|
||||
set "BUILD_DETools=OFF"
|
||||
set "BUILD_Draw=OFF"
|
||||
|
||||
rem Optional 3rd-party libraries to enable
|
||||
@@ -176,7 +175,6 @@ if ["%toCMake%"] == ["1"] (
|
||||
-D BUILD_MODULE_Visualization:BOOL="%BUILD_Visualization%" ^
|
||||
-D BUILD_MODULE_ApplicationFramework:BOOL="%BUILD_ApplicationFramework%" ^
|
||||
-D BUILD_MODULE_DataExchange:BOOL="%BUILD_DataExchange%" ^
|
||||
-D BUILD_MODULE_DETools:BOOL="%BUILD_DETools%" ^
|
||||
-D BUILD_MODULE_Draw:BOOL="%BUILD_Draw%" ^
|
||||
-D BUILD_DOC_Overview:BOOL="OFF" ^
|
||||
-D USE_FREETYPE:BOOL="%USE_FREETYPE%" ^
|
||||
|
@@ -20,7 +20,6 @@ export BUILD_ModelingAlgorithms=ON
|
||||
export BUILD_Visualization=ON
|
||||
export BUILD_ApplicationFramework=ON
|
||||
export BUILD_DataExchange=ON
|
||||
export BUILD_DETools=OFF
|
||||
|
||||
if [ -f "${aScriptDir}/wasm_custom.sh" ] ; then
|
||||
. "${aScriptDir}/wasm_custom.sh"
|
||||
@@ -75,7 +74,6 @@ echo cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE:FILEPATH="${aToolchain}" \
|
||||
-DBUILD_MODULE_Visualization:BOOL="${BUILD_Visualization}" \
|
||||
-DBUILD_MODULE_ApplicationFramework:BOOL="${BUILD_ApplicationFramework}" \
|
||||
-DBUILD_MODULE_DataExchange:BOOL="${BUILD_DataExchange}" \
|
||||
-DBUILD_MODULE_DETools:BOOL="${BUILD_DETools}" \
|
||||
-DBUILD_MODULE_Draw:BOOL="OFF" \
|
||||
-DBUILD_DOC_Overview:BOOL="OFF" "${aSrcRoot}"
|
||||
|
||||
@@ -94,7 +92,6 @@ cmake -G "Unix Makefiles" -DCMAKE_TOOLCHAIN_FILE:FILEPATH="${aToolchain}" \
|
||||
-DBUILD_MODULE_Visualization:BOOL="${BUILD_Visualization}" \
|
||||
-DBUILD_MODULE_ApplicationFramework:BOOL="${BUILD_ApplicationFramework}" \
|
||||
-DBUILD_MODULE_DataExchange:BOOL="${BUILD_DataExchange}" \
|
||||
-DBUILD_MODULE_DETools:BOOL="${BUILD_DETools}" \
|
||||
-DBUILD_MODULE_Draw:BOOL="OFF" \
|
||||
-DBUILD_DOC_Overview:BOOL="OFF" "${aSrcRoot}"
|
||||
|
||||
|
@@ -23,7 +23,6 @@ rem set "BUILD_ModelingAlgorithms=ON"
|
||||
rem set "BUILD_Visualization=ON"
|
||||
rem set "BUILD_ApplicationFramework=ON"
|
||||
rem set "BUILD_DataExchange=ON"
|
||||
rem set "BUILD_DETools=OFF"
|
||||
|
||||
rem set "USE_RAPIDJSON=ON"
|
||||
rem set "USE_DRACO=ON"
|
||||
|
@@ -14,4 +14,3 @@ export EMSDK_ROOT="$aSrcRoot/../emsdk"
|
||||
#export BUILD_Visualization=ON
|
||||
#export BUILD_ApplicationFramework=ON
|
||||
#export BUILD_DataExchange=ON
|
||||
#export BUILD_DETools=OFF
|
||||
|
@@ -14,7 +14,6 @@ if /I "%VCVER%" == "@COMPILER@" (
|
||||
set "TBB_DIR=@3RDPARTY_TBB_DLL_DIR@"
|
||||
set "VTK_DIR=@3RDPARTY_VTK_DLL_DIR@"
|
||||
set "FFMPEG_DIR=@3RDPARTY_FFMPEG_DLL_DIR@"
|
||||
set "JEMALLOC_DIR=@3RDPARTY_JEMALLOC_LIBRARY_DIR@"
|
||||
set "OPENVR_DIR=@3RDPARTY_OPENVR_DLL_DIRS@"
|
||||
|
||||
if not "@3RDPARTY_QT_DIR@" == "" (
|
||||
|
@@ -12,7 +12,6 @@ if [ "$1" == "@BIN_LETTER@" ]; then
|
||||
export TBB_DIR="@3RDPARTY_TBB_LIBRARY_DIR@"
|
||||
export VTK_DIR="@3RDPARTY_VTK_LIBRARY_DIR@"
|
||||
export FFMPEG_DIR="@3RDPARTY_FFMPEG_LIBRARY_DIR@"
|
||||
export JEMALLOC_DIR="@3RDPARTY_JEMALLOC_LIBRARY_DIR@"
|
||||
|
||||
if [ "x@3RDPARTY_QT_DIR" != "x" ]; then
|
||||
export QTDIR="@3RDPARTY_QT_DIR@"
|
||||
|
@@ -16,7 +16,6 @@ if /I "%VCVER%" == "@COMPILER@" (
|
||||
set "TBB_DIR=@USED_3RDPARTY_TBB_DIR@"
|
||||
set "VTK_DIR=@USED_3RDPARTY_VTK_DIR@"
|
||||
set "FFMPEG_DIR=@USED_3RDPARTY_FFMPEG_DIR@"
|
||||
set "JEMALLOC_DIR=@USED_3RDPARTY_JEMALLOC_DIR@"
|
||||
set "OPENVR_DIR=@USED_3RDPARTY_OPENVR_DIR@"
|
||||
|
||||
if not "@USED_3RDPARTY_QT_DIR@" == "" (
|
||||
|
@@ -12,7 +12,6 @@ if [ "$1" == "@BIN_LETTER@" ]; then
|
||||
export TBB_DIR="@USED_3RDPARTY_TBB_DIR@"
|
||||
export VTK_DIR="@USED_3RDPARTY_VTK_DIR@"
|
||||
export FFMPEG_DIR="@USED_3RDPARTY_FFMPEG_DIR@"
|
||||
export JEMALLOC_DIR="@USED_3RDPARTY_JEMALLOC_DIR@"
|
||||
|
||||
if [ "x@USED_3RDPARTY_QT_DIR@" != "x" ]; then
|
||||
export QTDIR="@USED_3RDPARTY_QT_DIR@"
|
||||
|
@@ -21,7 +21,7 @@ rem ----- Decode VCVER variable and define related ones -----
|
||||
rem
|
||||
rem VCFMT - "vc" followed by full version number of Visual Studio toolset
|
||||
rem (same as VCVER without optional suffix "-uwp")
|
||||
rem VCLIB - name of folder containing binaries
|
||||
rem VCLIB - name of folder contining binaries
|
||||
rem (same as VCVER except without third version in number)
|
||||
rem VCPROP - name of required Visual Studion Workload (starting with VS 2017)
|
||||
rem
|
||||
@@ -154,7 +154,6 @@ if not ["%GLES2_DIR%"] == [""] set "PATH=%GLES2_DIR%;%PATH%"
|
||||
if not ["%TBB_DIR%"] == [""] set "PATH=%TBB_DIR%;%PATH%"
|
||||
if not ["%VTK_DIR%"] == [""] set "PATH=%VTK_DIR%;%PATH%"
|
||||
if not ["%FFMPEG_DIR%"] == [""] set "PATH=%FFMPEG_DIR%;%PATH%"
|
||||
if not ["%JEMALLOC_DIR%"] == [""] set "PATH=%JEMALLOC_DIR%;%PATH%"
|
||||
if not ["%OPENVR_DIR%"] == [""] set "PATH=%OPENVR_DIR%;%PATH%"
|
||||
|
||||
rem ----- Set path to 3rd party and OCCT libraries -----
|
||||
|
@@ -69,10 +69,6 @@ if [ "$FFMPEG_DIR" != "" ]; then
|
||||
THRDPARTY_PATH="${FFMPEG_DIR}:${THRDPARTY_PATH}"
|
||||
fi
|
||||
|
||||
if [ "$JEMALLOC_DIR" != "" ]; then
|
||||
THRDPARTY_PATH="${JEMALLOC_DIR}:${THRDPARTY_PATH}"
|
||||
fi
|
||||
|
||||
if [ "$QTDIR" != "" ]; then
|
||||
THRDPARTY_PATH="${QTDIR}/lib:${THRDPARTY_PATH}"
|
||||
fi
|
||||
|
@@ -71,10 +71,6 @@ if [ "$FFMPEG_DIR" != "" ]; then
|
||||
THRDPARTY_PATH="${FFMPEG_DIR}:${THRDPARTY_PATH}"
|
||||
fi
|
||||
|
||||
if [ "$JEMALLOC_DIR" != "" ]; then
|
||||
THRDPARTY_PATH="${JEMALLOC_DIR}:${THRDPARTY_PATH}"
|
||||
fi
|
||||
|
||||
if [ "$QTDIR" != "" ]; then
|
||||
THRDPARTY_PATH="${QTDIR}/lib:${THRDPARTY_PATH}"
|
||||
fi
|
||||
|
@@ -104,7 +104,7 @@ fi
|
||||
|
||||
export CSF_OPT_CMPL=""
|
||||
|
||||
# Optional 3rd-parties should be enabled by HAVE macros
|
||||
# Optiona 3rd-parties should be enabled by HAVE macros
|
||||
if [ "$HAVE_TBB" == "true" ]; then export CSF_OPT_CMPL="${CSF_OPT_CMPL} -DHAVE_TBB"; fi
|
||||
if [ "$HAVE_OPENCL" == "true" ]; then export CSF_OPT_CMPL="${CSF_OPT_CMPL} -DHAVE_OPENCL"; fi
|
||||
if [ "$HAVE_TK" == "true" ]; then export CSF_OPT_CMPL="${CSF_OPT_CMPL} -DHAVE_TK"; fi
|
||||
|
@@ -725,7 +725,7 @@ Another possible problem is the order of initialization of global variables defi
|
||||
|
||||
Avoid explicit usage of basic types (*int*, *float*, *double*, etc.), use Open CASCADE Technology types from package *Standard: Standard_Integer, Standard_Real, Standard_ShortReal, Standard_Boolean, Standard_CString* and others or a specific *typedef* instead.
|
||||
|
||||
### Use sizeof() to calculate sizes [MANDATORY]
|
||||
### Use *sizeof()* to calculate sizes [MANDATORY]
|
||||
|
||||
Do not assume sizes of types. Use *sizeof()* instead to calculate sizes.
|
||||
|
||||
@@ -738,7 +738,7 @@ It is recommended to follow this rule for any plain text files for consistency a
|
||||
|
||||
The rules listed in this chapter are important for stability of the programs that use Open CASCADE Technology libraries.
|
||||
|
||||
### Use OSD::SetSignal() to catch exceptions
|
||||
### Use *OSD::SetSignal()* to catch exceptions
|
||||
|
||||
When using Open CASCADE Technology in an application, call *OSD::SetSignal()* function when the application is initialized.
|
||||
|
||||
@@ -787,7 +787,7 @@ See the following example:
|
||||
|
||||
In C++ use *new* and *delete* operators instead of *malloc()* and *free()*. Try not to mix different memory allocation techniques.
|
||||
|
||||
### Match new and delete [MANDATORY]
|
||||
### Match *new* and *delete* [MANDATORY]
|
||||
|
||||
Use the same form of new and delete.
|
||||
|
||||
@@ -812,7 +812,7 @@ Standard_Integer aTmpVar2 = 0; // OK
|
||||
|
||||
Uninitialized variables might be kept only within performance-sensitive code blocks and only when their initialization is guaranteed by subsequent code.
|
||||
|
||||
### Do not hide global new
|
||||
### Do not hide global *new*
|
||||
|
||||
Avoid hiding the global *new* operator.
|
||||
|
||||
|
@@ -1089,10 +1089,10 @@ This group allows testing extended data exchange packages.
|
||||
| Draw | TKDraw, TKTopTest, TKViewerTest, TKXSDRAW, TKDCAF, TKXDEDRAW, TKTObjDRAW, TKQADraw, DRAWEXE, Problems of testing system | draw |
|
||||
| Shape Healing | TKShHealing | heal |
|
||||
| Mesh | TKMesh, TKXMesh | mesh |
|
||||
| Data Exchange | TKDEIGES | iges |
|
||||
| Data Exchange | TKDESTEP | step |
|
||||
| Data Exchange | TKDESTL, TKDEVRML | stlvrml |
|
||||
| Data Exchange | TKXSBase, TKXCAF, TKXCAFSchema, TKXmlXCAF, TKBinXCAF | xde |
|
||||
| Data Exchange | TKIGES | iges |
|
||||
| Data Exchange | TKSTEPBase, TKSTEPAttr, TKSTEP209, TKSTEP | step |
|
||||
| Data Exchange | TKSTL, TKVRML | stlvrml |
|
||||
| Data Exchange | TKXSBase, TKXCAF, TKXCAFSchema, TKXDEIGES, TKXDESTEP, TKXmlXCAF, TKBinXCAF | xde |
|
||||
| Foundation Classes | TKernel, TKMath | fclasses |
|
||||
| Modeling_algorithms | TKGeomAlgo, TKTopAlgo, TKPrim, TKBO, TKBool, TKHLR, TKFillet, TKOffset, TKFeat, TKXMesh | modalg |
|
||||
| Modeling Data | TKG2d, TKG3d, TKGeomBase, TKBRep | moddata |
|
||||
|
@@ -3306,7 +3306,7 @@ The following example illustrates how to use Common operation:
|
||||
Standard_Real aFuzzyValue;
|
||||
BRepAlgoAPI_Common aBuilder;
|
||||
|
||||
// prepare the arguments
|
||||
// perpare the arguments
|
||||
TopTools_ListOfShape& aLS=…;
|
||||
TopTools_ListOfShape& aLT=…;
|
||||
//
|
||||
@@ -3373,7 +3373,7 @@ The following example illustrates how to use Fuse operation:
|
||||
Standard_Real aFuzzyValue;
|
||||
BRepAlgoAPI_Fuse aBuilder;
|
||||
|
||||
// prepare the arguments
|
||||
// perpare the arguments
|
||||
TopTools_ListOfShape& aLS=…;
|
||||
TopTools_ListOfShape& aLT=…;
|
||||
//
|
||||
@@ -3440,7 +3440,7 @@ The following example illustrates how to use Cut operation:
|
||||
Standard_Real aFuzzyValue;
|
||||
BRepAlgoAPI_Cut aBuilder;
|
||||
|
||||
// prepare the arguments
|
||||
// perpare the arguments
|
||||
TopTools_ListOfShape& aLS=…;
|
||||
TopTools_ListOfShape& aLT=…;
|
||||
//
|
||||
@@ -3508,7 +3508,7 @@ The following example illustrates how to use Section operation:
|
||||
Standard_Real aFuzzyValue;
|
||||
BRepAlgoAPI_Section aBuilder;
|
||||
|
||||
// prepare the arguments
|
||||
// perpare the arguments
|
||||
TopTools_ListOfShape& aLS=…;
|
||||
TopTools_ListOfShape& aLT=…;
|
||||
//
|
||||
|
@@ -410,7 +410,7 @@ Current goal is to speed up Monte-Carlo integration of Cook-Torrance like integr
|
||||
|
||||
Where \f$g(v, l)\f$ is just arbitrary function representing Fresnel's factor itself or its components.
|
||||
In order to increase convergence the samples with larger contribution (or in other words with larger function's values) have to appear more frequently than others proportionally to its contribution.
|
||||
So that less significant summand with less influence to result will be considered rarely and in opposite way parts bringing noticeable changes to the sum will be taken often.
|
||||
So that less significant summand with less influence to result will be considered rarely and in opposite way parts brining noticeable changes to the sum will be taken often.
|
||||
That is the main idea of **importance sampling technique**.
|
||||
\f$p(l)\f$ has to represent significance of sample in terms of integrated function via probability somehow.
|
||||
And it will be like that if PDF is already part of original function because in that case probability density directly affects to contribution forming.
|
||||
|
@@ -7,7 +7,7 @@ Upgrade from older OCCT versions {#occt__upgrade}
|
||||
|
||||
This document provides technical details on changes made in particular versions of OCCT. It can help to upgrade user applications based on previous versions of OCCT to newer ones.
|
||||
|
||||
@ref upgrade_occt780 "SEEK TO THE LAST CHAPTER (UPGRADE TO 7.8.0)"
|
||||
@ref upgrade_occt770 "SEEK TO THE LAST CHAPTER (UPGRADE TO 7.7.0)"
|
||||
|
||||
@subsection upgrade_intro_precautions Precautions
|
||||
|
||||
@@ -2343,69 +2343,3 @@ Please use `BRepLib_ToolTriangulatedShape::ComputeNormals()` to fill in normal a
|
||||
|
||||
A new way of using the `BRepExtrema_ShapeProximity` class was provided for computing a proximity value between two shapes.
|
||||
If at initialization of the `BRepExtrema_ShapeProximity` class the *theTolerance* parameter is not defined (Precision::Infinite() by default), the proximity value will be computed.
|
||||
|
||||
@section upgrade_occt780 Upgrade to OCCT 7.8.0
|
||||
|
||||
@subsection upgrade_780_recommendations New Features and Recommendations
|
||||
|
||||
The NCollection containers have been modernized to work with move semantics through the new `Move operator` and `Move constructor`. It is recommended to leverage this functionality in the development process.<br />
|
||||
Backward compatibility with STL allocators has been implemented to use the OCCT memory manager with STL allocators (NCollection_Allocator, NCollection_OccAllocator).<br />
|
||||
Additionally, utilities have been introduced to work with `shared_ptr` and `unique_ptr` using the OCCT memory manager (`Standard_MemoryUtils.hxx`).
|
||||
|
||||
@subsection upgrade_780_ncollection_update Change in Default Clear Behavior for Containers
|
||||
|
||||
NCollection container's `Clear(const bool theReleaseMemory = true)` have been changed to `Clear(const bool theReleaseMemory = false)`.<br />
|
||||
Impacted classes include `IndexedMap`, `IndexedDataMap`, `Map`, `DataMap`, `DynamicArray(Vector)`, `IncAllocator`.<br />
|
||||
This means that allocated memory for the container will be reused. In this case, it's necessary to be careful with `IncAllocator::Reset()` to control owners of memory blocks.
|
||||
|
||||
@subsection upgrade_780_hash_utils Reworked Hash Mechanism for Hash Map (NCollection's map)
|
||||
|
||||
The `HashCode(value, upperBound)` static method has been removed and `IsEqual(value1, value2)` is no longer used in the map.<br />
|
||||
NCollection's map now operates on an STL-like hash mechanism: a struct with a public operator `size_t operator()(object&) const` and `bool operator(object&, object&) const`.<br />
|
||||
The difference between STL and OCCT is that the hash struct and comparator are combined into a single struct to reduce conflicts on OCCT's user side.<br />
|
||||
Hash utils have been implemented to hash objects, returning `uint32_t` and `uint64_t` depending on the template (`Standard_HashUtils.hxx`). Algorithms used are `MurmurHash` and `FNVHash`.<br />
|
||||
Benefits:
|
||||
* x64 using 8 bytes to store the hash instead of 4 bytes.
|
||||
* OCCT classes will now be usable as elements in STL `unordered_map` and `unordered_set`.
|
||||
|
||||
The migration problem will occur at compile time. Make sure that `int HashCode` has been changed anywhere to `size operator` and `bool IsEqual` to `bool operator`.
|
||||
|
||||
@subsection upgrade_780_removed_files Removed Hash Specialization Classes
|
||||
|
||||
The majority of include files containing only specialized hashes have been removed.
|
||||
Their functionality has been consolidated into the hashed object include file (in the "std" namespace).<br />
|
||||
It is guaranteed that each removed hash class has been transferred to the native hash mechanism of the hashed class.
|
||||
|
||||
The migration problem may arise at compile time. Ensure that you remove any files that have been deprecated.
|
||||
|
||||
@subsection upgrade_780_tk_rework Reorganized DE TK
|
||||
|
||||
DE TK components have been combined or separated based on specific CAD formats to support plug-in ability.
|
||||
* Components now have a "TKDE" prefix. The available list includes `TKDESTEP`, `TKDEOBJ`, `TKDEIGES`, `TKDEGLTF`, `TKDEVRML`, `TKDEPLY`, `TKDESTL`.
|
||||
* The DE DRAW TK has been updated in a similar way: DRAW components now have a "TKXSDRAW" prefix. The available list includes `TKXSDRAWSTEP`, `TKXSDRAWOBJ`, `TKXSDRAWIGES`, `TKXSDRAWGLTF`, `TKXSDRAWVRML`, `TKXSDRAWPLY`, `TKXSDRAWSTL`.
|
||||
|
||||
Migration problems may occur during configuration time or compile time. Ensure that you update your project configuration accordingly.
|
||||
|
||||
@subsection upgrade_780_step_thread_safety Implemented STEP Thread-safety Interface
|
||||
|
||||
The STEP interface now uses Static_Interface to extract exchange settings.<br />
|
||||
A new ability has been implemented to determine parameters in STEP, avoiding Static_Interface.
|
||||
* For reading, use an additional argument with STEP's parameters in `ReadFile` or `Perform`.
|
||||
* For writing, use an additional argument with STEP's parameters in `Transfer` or `Perform`.
|
||||
|
||||
@subsection upgrade_780_new_memory_manager New Memory Management Functionality
|
||||
|
||||
`Standard.hxx` has a new method `AllocateOptimal` for allocating without post-processing (cleaning).<br />
|
||||
New profiles to allocate memory (defined at configuration time):
|
||||
* `Native` - allocates with standard `malloc` and `calloc` functionality, performance depends on the OS.
|
||||
* `TBB` - allocates with TBB's `scalable` allocator functionality.
|
||||
* `JeMalloc` - allocates with `jemalloc` functions.
|
||||
* `Flexible` - old-way allocation which defines allocation method in real-time by environment variables.<br />
|
||||
|
||||
The most recommended manager is `JeMalloc`. To use it with a plugin system, like `DRAW`, please ensure that JeMalloc was built with the `--disable-initial-exec-tls` flag. For more details, visit [JeMalloc](http://jemalloc.net/).
|
||||
|
||||
@subsection upgrade_780_optimization_profiles New CMake Variable for Optimization Profiles
|
||||
|
||||
`BUILD_OPT_PROFILE` is a new variable to define optimization level. Available profiles:
|
||||
* `Default` - specializes only in quality-dependent parameters for the compiler.
|
||||
* `Production` - specializes in performance and quality-dependent parameters for the compiler and linker.
|
||||
|
@@ -212,7 +212,7 @@ pload XDE
|
||||
|
||||
@subsubsection occt_de_wrapper_3_3_3 Realtime initialization. Code sample
|
||||
|
||||
It is possible to change a parameter from code using a smart pointer.
|
||||
It is possible to change a paramater from code using a smart pointer.
|
||||
|
||||
~~~~{.cpp}
|
||||
// global variable
|
||||
@@ -239,7 +239,7 @@ THE_STEP_NODE->InternalParameters.ReadProps = false;
|
||||
|
||||
@subsection occt_de_wrapper_3_4 Priority of Vendors
|
||||
|
||||
DE session is able to work with several vendors with the same supported CAD format. To choose the preferred vendor for each format, use a special priority list.
|
||||
DE session is able to work with several vendors with the same supported CAD format. To choose the preffered vendor for each format, use a special priority list.
|
||||
|
||||
If the high priority vendor's provider is not supported, a transfer operation is needed (write/read), then the next vendor will be chosen.
|
||||
|
||||
@@ -251,7 +251,7 @@ If the high priority vendor's provider is not supported, a transfer operation is
|
||||
TColStd_ListOfAsciiString aVendors;
|
||||
aVendors.Appends("OCC"); // high priority
|
||||
aVendors.Appends("DTK");
|
||||
// Flag to disable not chosen vendors, in this case configuration is possible
|
||||
// Flag to disable not choosen vendors, in this case configuration is possible
|
||||
// otherwise, lower their priority and continue to check ability to transfer
|
||||
Standard_Boolean aToDisable = Standard_True;
|
||||
aSession->ChangePriority(aFormat, aVendors, aToDisable);
|
||||
@@ -352,7 +352,7 @@ It is possible to read and write CAD files directly from a special provider.
|
||||
~~~~{.cpp}
|
||||
// Creating or getting node
|
||||
Handle(STEPCAFControl_ConfigurationNode) aNode = new STEPCAFControl_ConfigurationNode();
|
||||
// Creating an one-time provider
|
||||
// Creationg an one-time provider
|
||||
Handle(DE_Provider) aProvider = aNode->BuildProvider();
|
||||
// Setting configuration with all parameters
|
||||
aProvider->SetNode(aNode);
|
||||
|
@@ -780,7 +780,7 @@ restore theBox
|
||||
|
||||
@subsubsection occt_draw_3_3_1 set
|
||||
|
||||
#### In DrawTrSurf package:
|
||||
#### In *DrawTrSurf* package:
|
||||
|
||||
~~~~{.php}
|
||||
void Set(Standard_CString& Name,const gp_Pnt& G) ;
|
||||
@@ -797,7 +797,7 @@ void Set(Standard_CString& Name,
|
||||
const Handle(Poly_Polygon2D)& P) ;
|
||||
~~~~
|
||||
|
||||
#### In DBRep package:
|
||||
#### In *DBRep* package:
|
||||
|
||||
~~~~{.php}
|
||||
void Set(const Standard_CString Name,
|
||||
@@ -822,13 +822,13 @@ DBRep::Set(char*,B);
|
||||
|
||||
@subsubsection occt_draw_3_3_2 get
|
||||
|
||||
#### In DrawTrSurf package:
|
||||
#### In *DrawTrSurf* package:
|
||||
|
||||
~~~~{.php}
|
||||
Handle_Geom_Geometry Get(Standard_CString& Name) ;
|
||||
~~~~
|
||||
|
||||
#### In DBRep package:
|
||||
#### In *DBRep* package:
|
||||
|
||||
~~~~{.php}
|
||||
TopoDS_Shape Get(Standard_CString& Name,
|
||||
@@ -4878,7 +4878,7 @@ For a curve at a given parameter, and depending on the number of arguments, **cv
|
||||
|
||||
**Example:**
|
||||
|
||||
Let on a bezier curve at parameter 0 the point is the first pole; the first derivative is the vector to the second pole multiplied by the degree; the second derivative is the difference first to the second pole, second to the third pole multiplied by *degree-1* :
|
||||
Let on a bezier curve at parameter 0 the point is the first pole; the first derivative is the vector to the second pole multiplied by the degree; the second derivative is the difference first to the second pole, second to the third pole multipied by *degree-1* :
|
||||
|
||||
~~~~{.php}
|
||||
2dbeziercurve c 4 0 0 1 1 2 1 3 0
|
||||
|
@@ -193,7 +193,7 @@ Modify this parameter with:
|
||||
if (!Interface_Static::SetIVal ("read.stdsameparameter.mode",1))
|
||||
.. error ..;
|
||||
~~~~
|
||||
Default value is 0 (Off).
|
||||
Deafault value is 0 (Off).
|
||||
|
||||
<h4>read.surfacecurve.mode</h4>
|
||||
preference for the computation of curves in case of 2D/3D inconsistency in an entity which has both 2D and 3D representations.
|
||||
|
@@ -2329,7 +2329,7 @@ else {
|
||||
|
||||
@subsubsection occt_modalg_7_4 Pipe Constructor
|
||||
|
||||
*BRepOffsetAPI_MakePipe* class allows creating a pipe from a Spine, which is a Wire and a Profile which is a Shape. This implementation is limited to spines with smooth transitions, sharp transitions are processed by *BRepOffsetAPI_MakePipeShell*. To be more precise the continuity must be G1, which means that the tangent must have the same direction, though not necessarily the same magnitude, at neighboring edges.
|
||||
*BRepOffsetAPI_MakePipe* class allows creating a pipe from a Spine, which is a Wire and a Profile which is a Shape. This implementation is limited to spines with smooth transitions, sharp transitions are precessed by *BRepOffsetAPI_MakePipeShell*. To be more precise the continuity must be G1, which means that the tangent must have the same direction, though not necessarily the same magnitude, at neighboring edges.
|
||||
|
||||
The angle between the spine and the profile is preserved throughout the pipe.
|
||||
|
||||
|
@@ -340,7 +340,7 @@ The <i>GeomConvert</i> package also provides the following:
|
||||
* global functions to construct BSpline surfaces created by this splitting algorithm, or by other types of BSpline surface segmentation,
|
||||
* an algorithm, which converts a BSpline surface into a series of adjacent Bezier surfaces,
|
||||
* an algorithm, which converts a grid of adjacent Bezier surfaces into a BSpline surface.
|
||||
* algorithms that converts NURBS, Bezier and other general parametrized curves and surface into analytical curves and surfaces.
|
||||
* algorithms that converts NURBS, Bezier and other general parametrized curves and surface into anaytical curves and surfaces.
|
||||
|
||||
@subsection occt_modat_1_4 Points on Curves
|
||||
|
||||
|
@@ -475,7 +475,7 @@ Modify this parameter with:
|
||||
if(!Interface_Static::SetIVal("read.step.tessellated",1))
|
||||
.. error ..
|
||||
~~~~
|
||||
Default value is 1 (On).
|
||||
Default value is 0 (On).
|
||||
|
||||
@subsubsection occt_step_2_3_4 Performing the STEP file translation
|
||||
|
||||
@@ -1498,7 +1498,7 @@ It is necessary to call command *newmodel* to perform a new translation of the n
|
||||
|
||||
@section occt_step_7 Reading from and writing to STEP
|
||||
|
||||
The *STEPCAFControl* package (TKDESTEP toolkit) provides tools to read and write STEP files (see XDE User's Guide).
|
||||
The *STEPCAFControl* package (TKXDESTEP toolkit) provides tools to read and write STEP files (see XDE User's Guide).
|
||||
|
||||
In addition to the translation of shapes implemented in basic translator, it provides the following:
|
||||
* STEP assemblies, read as OCCT compounds by basic translator, are translated to XDE assemblies;
|
||||
@@ -1653,13 +1653,6 @@ For each Saved View OCCT STEP Reader will retrieve the following attributes:
|
||||
- clipping planes (single plane of combination of planes);
|
||||
- front and back plane clipping.
|
||||
|
||||
### User defined attributes
|
||||
Attributes are implemented in accordance with <a href="https://www.mbx-if.org/documents/rec_prac_user_def_attributes_v18.pdf">Recommended practices for User Defined Attributes</a> section 4, 5, 6.1-6.3 and 7.
|
||||
Attributes can be read for shapes at levels:
|
||||
- Part/Product Level;
|
||||
- Component Instances in an Assembly;
|
||||
- Geometry Level.
|
||||
|
||||
@subsection occt_step_7_3 Writing to STEP
|
||||
|
||||
The translation from XDE to STEP can be initialized as follows:
|
||||
@@ -1737,8 +1730,5 @@ Interface_Static::SetIVal("write.step.schema", 5));
|
||||
### Saved views
|
||||
Saved Views are not exported by OCCT.
|
||||
|
||||
### User defined attributes
|
||||
Attributes can be imported from STEP.
|
||||
|
||||
|
||||
|
||||
|
@@ -43,10 +43,10 @@
|
||||
#pragma comment(lib, "TKService.lib")
|
||||
#pragma comment(lib, "TKV3d.lib")
|
||||
#pragma comment(lib, "TKOpenGl.lib")
|
||||
#pragma comment(lib, "TKDEIGES.lib")
|
||||
#pragma comment(lib, "TKDESTEP.lib")
|
||||
#pragma comment(lib, "TKDESTL.lib")
|
||||
#pragma comment(lib, "TKDEVRML.lib")
|
||||
#pragma comment(lib, "TKIGES.lib")
|
||||
#pragma comment(lib, "TKSTEP.lib")
|
||||
#pragma comment(lib, "TKStl.lib")
|
||||
#pragma comment(lib, "TKVrml.lib")
|
||||
#pragma comment(lib, "TKLCAF.lib")
|
||||
|
||||
//! Auxiliary tool for converting C# string into UTF-8 string.
|
||||
|
@@ -51,10 +51,10 @@
|
||||
#pragma comment(lib, "TKV3d.lib")
|
||||
#pragma comment(lib, "TKOpenGl.lib")
|
||||
#pragma comment(lib, "TKD3dHost.lib")
|
||||
#pragma comment(lib, "TKDEIGES.lib")
|
||||
#pragma comment(lib, "TKDESTEP.lib")
|
||||
#pragma comment(lib, "TKDESTL.lib")
|
||||
#pragma comment(lib, "TKDEVRML.lib")
|
||||
#pragma comment(lib, "TKIGES.lib")
|
||||
#pragma comment(lib, "TKSTEP.lib")
|
||||
#pragma comment(lib, "TKStl.lib")
|
||||
#pragma comment(lib, "TKVrml.lib")
|
||||
#pragma comment(lib, "TKLCAF.lib")
|
||||
|
||||
#pragma comment(lib, "D3D9.lib")
|
||||
|
@@ -27,7 +27,7 @@ find_package(OpenGL REQUIRED)
|
||||
# Open CASCADE Technology
|
||||
find_package (OpenCASCADE REQUIRED)
|
||||
if (NOT OpenCASCADE_FOUND)
|
||||
message (FATAL_ERROR "could not find OpenCASCADE, please set OpenCASCADE_DIR variable" )
|
||||
message (FATAL_ERROR "coult not find OpenCASCADE, please set OpenCASCADE_DIR variable" )
|
||||
else()
|
||||
message (STATUS "Using OpenCASCADE from \"${OpenCASCADE_INSTALL_PREFIX}\"" )
|
||||
message (STATUS "OpenCASCADE_INCLUDE_DIR=${OpenCASCADE_INCLUDE_DIR}")
|
||||
|
@@ -63,7 +63,7 @@ set (OpenCASCADE_TKLIST ${OpenCASCADE_TKLIST} TKG2d TKG3d TKGeomBase TKBRep) # M
|
||||
set (OpenCASCADE_TKLIST ${OpenCASCADE_TKLIST} TKGeomAlgo TKTopAlgo TKPrim TKBO TKBool TKHLR TKFillet TKOffset TKFeat TKMesh TKXMesh TKShHealing) # ModelingAlgorithms
|
||||
set (OpenCASCADE_TKLIST ${OpenCASCADE_TKLIST} TKService TKV3d TKOpenGl TKMeshVS TKIVtk TKD3DHost) # Visualization
|
||||
set (OpenCASCADE_TKLIST ${OpenCASCADE_TKLIST} TKCDF TKLCAF TKCAF TKBinL TKXmlL TKBin TKXml TKStdL TKStd TKTObj TKBinTObj TKXmlTObj TKVCAF) # ApplicationFramework
|
||||
set (OpenCASCADE_TKLIST ${OpenCASCADE_TKLIST} TKXSBase TKXCAF TKDEIGES TKDESTEP TKDESTL TKDEVRML TKXmlXCAF TKBinXCAF TKRWMesh TKDEGLTF TKDEOBJ TKDEPLY) # DataExchange
|
||||
set (OpenCASCADE_TKLIST ${OpenCASCADE_TKLIST} TKXSBase TKSTEPBase TKSTEPAttr TKSTEP209 TKSTEP TKIGES TKXCAF TKXDEIGES TKXDESTEP TKSTL TKVRML TKXmlXCAF TKBinXCAF TKRWMesh) # DataExchange
|
||||
set (OpenCASCADE_TKLIST ${OpenCASCADE_TKLIST} TKDraw TKViewerTest) # Draw
|
||||
|
||||
# validate location of OCCT libraries and headers
|
||||
|
@@ -26,10 +26,14 @@
|
||||
0A7DEDFC1E2D29FF00267B9B /* libTKV3d.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEDF71E2D29F800267B9B /* libTKV3d.a */; };
|
||||
0A7DEDFD1E2D29FF00267B9B /* libTKVCAF.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEDF81E2D29FB00267B9B /* libTKVCAF.a */; };
|
||||
0A7DEE2B1E2D2AE000267B9B /* libTKService.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE0B1E2D2A9D00267B9B /* libTKService.a */; };
|
||||
0A7DEE2E1E2D2AE000267B9B /* libTKDESTEP.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE0E1E2D2AA800267B9B /* libTKDESTEP.a */; };
|
||||
0A7DEE2E1E2D2AE000267B9B /* libTKSTEP.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE0E1E2D2AA800267B9B /* libTKSTEP.a */; };
|
||||
0A7DEE301E2D2AE000267B9B /* libTKSTEPAttr.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE101E2D2AAE00267B9B /* libTKSTEPAttr.a */; };
|
||||
0A7DEE311E2D2AE000267B9B /* libTKSTEPBase.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE111E2D2AB200267B9B /* libTKSTEPBase.a */; };
|
||||
0A7DEE351E2D2AE000267B9B /* libTKXCAF.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE151E2D2AC000267B9B /* libTKXCAF.a */; };
|
||||
0A7DEE371E2D2AE000267B9B /* libTKXDESTEP.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE171E2D2AC700267B9B /* libTKXDESTEP.a */; };
|
||||
0A7DEE3E1E2D2B8100267B9B /* libTKBO.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE021E2D2A7F00267B9B /* libTKBO.a */; };
|
||||
0A7DEE3F1E2D2BB000267B9B /* libTKOpenGles.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE091E2D2A9700267B9B /* libTKOpenGles.a */; };
|
||||
0A7DEE401E2D2BEA00267B9B /* libTKSTEP209.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE0F1E2D2AAB00267B9B /* libTKSTEP209.a */; };
|
||||
0A7DEE411E2D2C1500267B9B /* libTKXSBase.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A7DEE1D1E2D2ADC00267B9B /* libTKXSBase.a */; };
|
||||
0AAE0DE61EAF816E00C1F65B /* screw.step in Resources */ = {isa = PBXBuildFile; fileRef = 0AAE0DE51EAF816D00C1F65B /* screw.step */; };
|
||||
0AE286641EB0D29B00A9D719 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 0AE286631EB0D29A00A9D719 /* libz.tbd */; };
|
||||
@@ -75,7 +79,7 @@
|
||||
0A7DEE031E2D2A8200267B9B /* libTKBool.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKBool.a; path = ../occt/lib/libTKBool.a; sourceTree = "<group>"; };
|
||||
0A7DEE041E2D2A8500267B9B /* libTKFeat.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKFeat.a; path = ../occt/lib/libTKFeat.a; sourceTree = "<group>"; };
|
||||
0A7DEE051E2D2A8900267B9B /* libTKFillet.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKFillet.a; path = ../occt/lib/libTKFillet.a; sourceTree = "<group>"; };
|
||||
0A7DEE061E2D2A8C00267B9B /* libTKDEIGES.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKDEIGES.a; path = ../occt/lib/libTKDEIGES.a; sourceTree = "<group>"; };
|
||||
0A7DEE061E2D2A8C00267B9B /* libTKIGES.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKIGES.a; path = ../occt/lib/libTKIGES.a; sourceTree = "<group>"; };
|
||||
0A7DEE071E2D2A8F00267B9B /* libTKMeshVS.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKMeshVS.a; path = ../occt/lib/libTKMeshVS.a; sourceTree = "<group>"; };
|
||||
0A7DEE081E2D2A9300267B9B /* libTKOffset.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKOffset.a; path = ../occt/lib/libTKOffset.a; sourceTree = "<group>"; };
|
||||
0A7DEE091E2D2A9700267B9B /* libTKOpenGles.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKOpenGles.a; path = ../occt/lib/libTKOpenGles.a; sourceTree = "<group>"; };
|
||||
@@ -83,11 +87,16 @@
|
||||
0A7DEE0B1E2D2A9D00267B9B /* libTKService.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKService.a; path = ../occt/lib/libTKService.a; sourceTree = "<group>"; };
|
||||
0A7DEE0C1E2D2AA100267B9B /* libTKStd.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKStd.a; path = ../occt/lib/libTKStd.a; sourceTree = "<group>"; };
|
||||
0A7DEE0D1E2D2AA400267B9B /* libTKStdL.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKStdL.a; path = ../occt/lib/libTKStdL.a; sourceTree = "<group>"; };
|
||||
0A7DEE0E1E2D2AA800267B9B /* libTKDESTEP.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKDESTEP.a; path = ../occt/lib/libTKDESTEP.a; sourceTree = "<group>"; };
|
||||
0A7DEE121E2D2AB500267B9B /* libTKDESTL.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKDESTL.a; path = ../occt/lib/libTKDESTL.a; sourceTree = "<group>"; };
|
||||
0A7DEE0E1E2D2AA800267B9B /* libTKSTEP.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKSTEP.a; path = ../occt/lib/libTKSTEP.a; sourceTree = "<group>"; };
|
||||
0A7DEE0F1E2D2AAB00267B9B /* libTKSTEP209.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKSTEP209.a; path = ../occt/lib/libTKSTEP209.a; sourceTree = "<group>"; };
|
||||
0A7DEE101E2D2AAE00267B9B /* libTKSTEPAttr.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKSTEPAttr.a; path = ../occt/lib/libTKSTEPAttr.a; sourceTree = "<group>"; };
|
||||
0A7DEE111E2D2AB200267B9B /* libTKSTEPBase.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKSTEPBase.a; path = ../occt/lib/libTKSTEPBase.a; sourceTree = "<group>"; };
|
||||
0A7DEE121E2D2AB500267B9B /* libTKSTL.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKSTL.a; path = ../occt/lib/libTKSTL.a; sourceTree = "<group>"; };
|
||||
0A7DEE131E2D2AB900267B9B /* libTKTObj.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKTObj.a; path = ../occt/lib/libTKTObj.a; sourceTree = "<group>"; };
|
||||
0A7DEE141E2D2ABC00267B9B /* libTKDEVRML.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKDEVRML.a; path = ../occt/lib/libTKDEVRML.a; sourceTree = "<group>"; };
|
||||
0A7DEE141E2D2ABC00267B9B /* libTKVRML.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKVRML.a; path = ../occt/lib/libTKVRML.a; sourceTree = "<group>"; };
|
||||
0A7DEE151E2D2AC000267B9B /* libTKXCAF.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKXCAF.a; path = ../occt/lib/libTKXCAF.a; sourceTree = "<group>"; };
|
||||
0A7DEE161E2D2AC300267B9B /* libTKXDEIGES.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKXDEIGES.a; path = ../occt/lib/libTKXDEIGES.a; sourceTree = "<group>"; };
|
||||
0A7DEE171E2D2AC700267B9B /* libTKXDESTEP.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKXDESTEP.a; path = ../occt/lib/libTKXDESTEP.a; sourceTree = "<group>"; };
|
||||
0A7DEE181E2D2ACA00267B9B /* libTKXMesh.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKXMesh.a; path = ../occt/lib/libTKXMesh.a; sourceTree = "<group>"; };
|
||||
0A7DEE191E2D2ACE00267B9B /* libTKXml.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKXml.a; path = ../occt/lib/libTKXml.a; sourceTree = "<group>"; };
|
||||
0A7DEE1A1E2D2AD100267B9B /* libTKXmlL.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libTKXmlL.a; path = ../occt/lib/libTKXmlL.a; sourceTree = "<group>"; };
|
||||
@@ -125,10 +134,13 @@
|
||||
files = (
|
||||
0AE286641EB0D29B00A9D719 /* libz.tbd in Frameworks */,
|
||||
0A7DEE411E2D2C1500267B9B /* libTKXSBase.a in Frameworks */,
|
||||
0A7DEE401E2D2BEA00267B9B /* libTKSTEP209.a in Frameworks */,
|
||||
0A7DEE3F1E2D2BB000267B9B /* libTKOpenGles.a in Frameworks */,
|
||||
0A7DEE3E1E2D2B8100267B9B /* libTKBO.a in Frameworks */,
|
||||
0A7DEE2B1E2D2AE000267B9B /* libTKService.a in Frameworks */,
|
||||
0A7DEE2E1E2D2AE000267B9B /* libTKDESTEP.a in Frameworks */,
|
||||
0A7DEE2E1E2D2AE000267B9B /* libTKSTEP.a in Frameworks */,
|
||||
0A7DEE301E2D2AE000267B9B /* libTKSTEPAttr.a in Frameworks */,
|
||||
0A7DEE311E2D2AE000267B9B /* libTKSTEPBase.a in Frameworks */,
|
||||
0A7DEE351E2D2AE000267B9B /* libTKXCAF.a in Frameworks */,
|
||||
0A7DEE371E2D2AE000267B9B /* libTKXDESTEP.a in Frameworks */,
|
||||
0A7DEDE71E2D28E300267B9B /* libTKBRep.a in Frameworks */,
|
||||
@@ -219,7 +231,7 @@
|
||||
0A7DEE031E2D2A8200267B9B /* libTKBool.a */,
|
||||
0A7DEE041E2D2A8500267B9B /* libTKFeat.a */,
|
||||
0A7DEE051E2D2A8900267B9B /* libTKFillet.a */,
|
||||
0A7DEE061E2D2A8C00267B9B /* libTKDEIGES.a */,
|
||||
0A7DEE061E2D2A8C00267B9B /* libTKIGES.a */,
|
||||
0A7DEE071E2D2A8F00267B9B /* libTKMeshVS.a */,
|
||||
0A7DEE081E2D2A9300267B9B /* libTKOffset.a */,
|
||||
0A7DEE091E2D2A9700267B9B /* libTKOpenGles.a */,
|
||||
@@ -227,11 +239,16 @@
|
||||
0A7DEE0B1E2D2A9D00267B9B /* libTKService.a */,
|
||||
0A7DEE0C1E2D2AA100267B9B /* libTKStd.a */,
|
||||
0A7DEE0D1E2D2AA400267B9B /* libTKStdL.a */,
|
||||
0A7DEE0E1E2D2AA800267B9B /* libTKDESTEP.a */,
|
||||
0A7DEE121E2D2AB500267B9B /* libTKDESTL.a */,
|
||||
0A7DEE0E1E2D2AA800267B9B /* libTKSTEP.a */,
|
||||
0A7DEE0F1E2D2AAB00267B9B /* libTKSTEP209.a */,
|
||||
0A7DEE101E2D2AAE00267B9B /* libTKSTEPAttr.a */,
|
||||
0A7DEE111E2D2AB200267B9B /* libTKSTEPBase.a */,
|
||||
0A7DEE121E2D2AB500267B9B /* libTKSTL.a */,
|
||||
0A7DEE131E2D2AB900267B9B /* libTKTObj.a */,
|
||||
0A7DEE141E2D2ABC00267B9B /* libTKDEVRML.a */,
|
||||
0A7DEE141E2D2ABC00267B9B /* libTKVRML.a */,
|
||||
0A7DEE151E2D2AC000267B9B /* libTKXCAF.a */,
|
||||
0A7DEE161E2D2AC300267B9B /* libTKXDEIGES.a */,
|
||||
0A7DEE171E2D2AC700267B9B /* libTKXDESTEP.a */,
|
||||
0A7DEE181E2D2ACA00267B9B /* libTKXMesh.a */,
|
||||
0A7DEE191E2D2ACE00267B9B /* libTKXml.a */,
|
||||
0A7DEE1A1E2D2AD100267B9B /* libTKXmlL.a */,
|
||||
|
@@ -23,11 +23,12 @@
|
||||
#define CafShapePrs_h
|
||||
|
||||
#include <TDF_Label.hxx>
|
||||
#include <TDF_LabelMapHasher.hxx>
|
||||
#include <XCAFPrs_AISObject.hxx>
|
||||
#include <XCAFPrs_Style.hxx>
|
||||
|
||||
typedef NCollection_DataMap<TopoDS_Shape, Handle(AIS_ColoredDrawer), TopTools_ShapeMapHasher> CafDataMapOfShapeColor;
|
||||
typedef NCollection_DataMap<TDF_Label, Handle(AIS_InteractiveObject)> MapOfPrsForShapes;
|
||||
typedef NCollection_DataMap<TDF_Label, Handle(AIS_InteractiveObject), TDF_LabelMapHasher> MapOfPrsForShapes;
|
||||
|
||||
//! Interactive object for shape in DECAF document
|
||||
class CafShapePrs : public XCAFPrs_AISObject
|
||||
|
@@ -138,8 +138,11 @@ public class OcctJniActivity extends Activity implements OnClickListener
|
||||
|| !loadLibVerbose ("TKFillet", aLoaded, aFailed)
|
||||
|| !loadLibVerbose ("TKOffset", aLoaded, aFailed)
|
||||
|| !loadLibVerbose ("TKXSBase", aLoaded, aFailed)
|
||||
|| !loadLibVerbose ("TKDEIGES", aLoaded, aFailed)
|
||||
|| !loadLibVerbose ("TKDESTEP", aLoaded, aFailed)
|
||||
|| !loadLibVerbose ("TKIGES", aLoaded, aFailed)
|
||||
|| !loadLibVerbose ("TKSTEPBase", aLoaded, aFailed)
|
||||
|| !loadLibVerbose ("TKSTEPAttr", aLoaded, aFailed)
|
||||
|| !loadLibVerbose ("TKSTEP209", aLoaded, aFailed)
|
||||
|| !loadLibVerbose ("TKSTEP", aLoaded, aFailed)
|
||||
// OCCT Visualization
|
||||
|| !loadLibVerbose ("TKService", aLoaded, aFailed)
|
||||
|| !loadLibVerbose ("TKHLR", aLoaded, aFailed)
|
||||
|
@@ -8,8 +8,8 @@ set (anOcctLibs
|
||||
# exchange
|
||||
TKPrim TKBO TKBool TKFillet TKOffset
|
||||
TKXSBase
|
||||
TKDEIGES
|
||||
TKDESTEP
|
||||
TKIGES
|
||||
TKSTEPBase TKSTEPAttr TKSTEP209 TKSTEP
|
||||
# OCCT Visualization
|
||||
TKService TKHLR TKV3d TKOpenGles
|
||||
)
|
||||
|
@@ -116,7 +116,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKMesh.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKMesh.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win32\$(VCFMT)\bin/Geometry.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win32\$(VCFMT)\lib;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -159,7 +159,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKMesh.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKMesh.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win64\$(VCFMT)\bin/Geometry.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win64\$(VCFMT)\lib;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -202,7 +202,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKMesh.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKMesh.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win32\$(VCFMT)\bind/Geometry.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win32\$(VCFMT)\libd;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -246,7 +246,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKMesh.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKMesh.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../..\win64\$(VCFMT)\bind/Geometry.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win64\$(VCFMT)\libd;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
|
@@ -61,4 +61,4 @@ include_directories (${CMAKE_BINARY_DIR}/inc
|
||||
${Modeling_SRC_DIR}
|
||||
${MFC_STANDARD_SAMPLES_DIR}/Common)
|
||||
|
||||
target_link_libraries (Modeling mfcsample TKDESTEP TKBO)
|
||||
target_link_libraries (Modeling mfcsample TKSTEP209 TKSTEPAttr TKSTEPBase TKBO)
|
||||
|
@@ -115,7 +115,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBRep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKBO.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBRep.lib;TKIGES.lib;TKShHealing.lib;TKSTEP.lib;TKSTEP209.lib;TKSTEPAttr.lib;TKSTEPBase.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKBO.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win32\$(VCFMT)\bind/Modeling.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win32\$(VCFMT)\libd;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -157,7 +157,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBRep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKBO.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBRep.lib;TKIGES.lib;TKShHealing.lib;TKSTEP.lib;TKSTEP209.lib;TKSTEPAttr.lib;TKSTEPBase.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKBO.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win64\$(VCFMT)\bind/Modeling.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win64\$(VCFMT)\libd;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -200,7 +200,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBRep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKBO.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBRep.lib;TKIGES.lib;TKShHealing.lib;TKSTEP.lib;TKSTEP209.lib;TKSTEPAttr.lib;TKSTEPBase.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKBO.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win32\$(VCFMT)\bin/Modeling.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win32\$(VCFMT)\lib;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -242,7 +242,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBRep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKBO.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBRep.lib;TKIGES.lib;TKShHealing.lib;TKSTEP.lib;TKSTEP209.lib;TKSTEPAttr.lib;TKSTEPBase.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;mfcsample.lib;TKBO.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win64\$(VCFMT)\bin/Modeling.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win64\$(VCFMT)\lib;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
|
@@ -116,7 +116,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;mfcsample.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;mfcsample.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win32\$(VCFMT)\bin/ImportExport.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win32\$(VCFMT)\lib;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -158,7 +158,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;mfcsample.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;mfcsample.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win64\$(VCFMT)\bin/ImportExport.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win64\$(VCFMT)\lib;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -199,7 +199,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;mfcsample.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;mfcsample.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win32\$(VCFMT)\bind/ImportExport.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win32\$(VCFMT)\libd;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -241,7 +241,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;mfcsample.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;mfcsample.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win64\$(VCFMT)\bind/ImportExport.exe</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>..\..\..\..\win64\$(VCFMT)\libd;$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
|
@@ -158,12 +158,15 @@ include_directories( ${CMAKE_BINARY_DIR}/inc
|
||||
${COMMON_RESOURCE2D_DIR})
|
||||
|
||||
# OCCT libraries for using
|
||||
set (mfcsample_USED_LIBS TKDEVRML
|
||||
TKDESTL
|
||||
set (mfcsample_USED_LIBS TKVRML
|
||||
TKSTL
|
||||
TKBRep
|
||||
TKDEIGES
|
||||
TKIGES
|
||||
TKShHealing
|
||||
TKDESTEP
|
||||
TKSTEP
|
||||
TKSTEPBase
|
||||
TKSTEP209
|
||||
TKSTEPAttr
|
||||
TKXSBase
|
||||
TKBool
|
||||
TKBO
|
||||
|
@@ -115,7 +115,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKMesh.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKMesh.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win32\$(VCFMT)\bind/mfcsample.dll</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -158,7 +158,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKMesh.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKMesh.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win64\$(VCFMT)\bind/mfcsample.dll</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -202,7 +202,7 @@
|
||||
<Culture>0x0409</Culture>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKMesh.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKMesh.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win32\$(VCFMT)\bin/mfcsample.dll</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
@@ -246,7 +246,7 @@
|
||||
<ResourceOutputFileName>$(IntDir)%(Filename).res</ResourceOutputFileName>
|
||||
</ResourceCompile>
|
||||
<Link>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKDEVRML.lib;TKDESTL.lib;TKBrep.lib;TKDEIGES.lib;TKShHealing.lib;TKDESTEP.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKMesh.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<AdditionalDependencies>TKVCAF.lib;TKVrml.lib;TKStl.lib;TKBrep.lib;TKIGES.lib;TKShHealing.lib;TKStep.lib;TKXSBase.lib;TKBool.lib;TKCAF.lib;TKCDF.lib;TKernel.lib;TKFeat.lib;TKFillet.lib;TKG2d.lib;TKG3d.lib;TKGeomAlgo.lib;TKGeomBase.lib;TKHLR.lib;TKMath.lib;TKOffset.lib;TKPrim.lib;TKService.lib;TKTopAlgo.lib;TKMesh.lib;TKV3d.lib;TKOpenGl.lib;TKLCAF.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||
<OutputFile>../../../../win64\$(VCFMT)\bin/mfcsample.dll</OutputFile>
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
<AdditionalLibraryDirectories>$(CSF_OCCTLibPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||
|
@@ -346,7 +346,7 @@ static void Sample()
|
||||
|
||||
constraint->Set(TDataXtd_PARALLEL, NS1, NS2);
|
||||
|
||||
// Getting number of geometries which define a constraint
|
||||
// Getting number of geometries which define a constarint
|
||||
|
||||
Standard_Integer number = constraint->NbGeometries();
|
||||
|
||||
|
@@ -167,7 +167,7 @@ static void Sample()
|
||||
if( ShapeLabel.FindAttribute(TPrsStd_AISPresentation::GetID(), PRS) ) PRS->Erase();
|
||||
// The method Erase() marks presentation of attribute as erased in AIS_InteractiveContext;
|
||||
// in order to make changes visible in a viewer's window viewer has to be updated
|
||||
TPrsStd_AISViewer::Update(ShapeLabel); //Update viewer to erase presentation of the attribute in a viewer's window
|
||||
TPrsStd_AISViewer::Update(ShapeLabel); //Update viewer to erase presenation of the attribute in a viewer's window
|
||||
//Presentation of the attribute is erased from viewer but
|
||||
// stays in AIS_InteractiveContext
|
||||
|
||||
@@ -182,7 +182,7 @@ static void Sample()
|
||||
// Updating and displaying presentation of the attribute to be displayed
|
||||
|
||||
P->Display(Standard_True);
|
||||
TPrsStd_AISViewer::Update(ShapeLabel); //Update presentation of the attribute in a viewer's window
|
||||
TPrsStd_AISViewer::Update(ShapeLabel); //Update presenation of the attribute in a viewer's window
|
||||
|
||||
//Getting Standard_GUID of attribute with which TPrsStd_AISPresentation attribute is associated
|
||||
|
||||
|
@@ -41,7 +41,7 @@ Tools->Options->Android
|
||||
* In Android SDK location specify path to Android SDK
|
||||
* In Android NDK location specify path to Android NDK
|
||||
(During this location definition, warning is possible and OK:
|
||||
"Qt version for architecture mips is missing. To add the Qt version, select Options > Build & Run > Qt Versions.")
|
||||
"Qt version for architecture mips is missing. To add the Qt version, select Options > Build & Run > Qt Versins.")
|
||||
* In Ant executable specify path to ant.bat file located in Apache Ant bin directory
|
||||
|
||||
Make sure that "Android for armeabi-v7a" kit has been detected (present in the list).
|
||||
|
@@ -8,7 +8,7 @@ TKG3d
|
||||
TKGeomAlgo
|
||||
TKGeomBase
|
||||
TKHLR
|
||||
TKDEIGES
|
||||
TKIGES
|
||||
TKernel
|
||||
TKMath
|
||||
TKMesh
|
||||
@@ -17,10 +17,13 @@ TKOpenGl
|
||||
TKPrim
|
||||
TKShHealing
|
||||
TKService
|
||||
TKDESTEP
|
||||
TKDESTL
|
||||
TKSTEP
|
||||
TKSTEP209
|
||||
TKSTEPAttr
|
||||
TKSTEPBase
|
||||
TKSTL
|
||||
TKTopAlgo
|
||||
TKV3d
|
||||
TKDEVRML
|
||||
TKVRML
|
||||
TKXSBase
|
||||
|
||||
|
@@ -72,8 +72,8 @@ win32 {
|
||||
}
|
||||
|
||||
LIBS += -lTKernel -lTKMath -lTKService -lTKV3d -lTKOpenGl \
|
||||
-lTKBRep -lTKDEIGES -lTKDESTL -lTKDEVRML -lTKDESTEP \
|
||||
-lTKGeomBase -lTKGeomAlgo -lTKG3d -lTKG2d \
|
||||
-lTKBRep -lTKIGES -lTKSTL -lTKVRML -lTKSTEP -lTKSTEPAttr -lTKSTEP209 \
|
||||
-lTKSTEPBase -lTKGeomBase -lTKGeomAlgo -lTKG3d -lTKG2d \
|
||||
-lTKXSBase -lTKShHealing -lTKHLR -lTKTopAlgo -lTKMesh -lTKPrim \
|
||||
-lTKCDF -lTKBool -lTKBO -lTKFillet -lTKOffset -lTKLCAF \
|
||||
|
||||
|
@@ -10,7 +10,7 @@ TKGeomAlgo
|
||||
TKGeomBase
|
||||
TKernel
|
||||
TKHLR
|
||||
TKDEIGES
|
||||
TKIGES
|
||||
TKMath
|
||||
TKMesh
|
||||
TKOffset
|
||||
@@ -18,11 +18,14 @@ TKOpenGl
|
||||
TKPrim
|
||||
TKService
|
||||
TKShHealing
|
||||
TKDESTEP
|
||||
TKDESTL
|
||||
TKSTEP
|
||||
TKSTEP209
|
||||
TKSTEPAttr
|
||||
TKSTEPBase
|
||||
TKSTL
|
||||
TKTopAlgo
|
||||
TKV3d
|
||||
TKDEVRML
|
||||
TKVRML
|
||||
TKXSBase
|
||||
TKLCAF
|
||||
TKCAF
|
||||
|
@@ -75,8 +75,8 @@ win32 {
|
||||
}
|
||||
|
||||
LIBS += -lTKernel -lTKMath -lTKService -lTKV3d -lTKOpenGl \
|
||||
-lTKBRep -lTKDEIGES -lTKDESTL -lTKDEVRML -lTKDESTEP \
|
||||
-lTKGeomBase -lTKGeomAlgo -lTKG3d -lTKG2d \
|
||||
-lTKBRep -lTKIGES -lTKSTL -lTKVRML -lTKSTEP -lTKSTEPAttr -lTKSTEP209 \
|
||||
-lTKSTEPBase -lTKGeomBase -lTKGeomAlgo -lTKG3d -lTKG2d \
|
||||
-lTKXSBase -lTKShHealing -lTKHLR -lTKTopAlgo -lTKMesh -lTKPrim \
|
||||
-lTKCDF -lTKBool -lTKBO -lTKFillet -lTKOffset -lTKLCAF -lTKCAF -lTKVCAF \
|
||||
-lTKBin -lTKXml
|
||||
|
@@ -9,7 +9,7 @@ TKGeomAlgo
|
||||
TKGeomBase
|
||||
TKernel
|
||||
TKHLR
|
||||
TKDEIGES
|
||||
TKIGES
|
||||
TKMath
|
||||
TKMesh
|
||||
TKOffset
|
||||
@@ -17,10 +17,13 @@ TKOpenGl
|
||||
TKPrim
|
||||
TKService
|
||||
TKShHealing
|
||||
TKDESTEP
|
||||
TKDESTL
|
||||
TKSTEP
|
||||
TKSTEP209
|
||||
TKSTEPAttr
|
||||
TKSTEPBase
|
||||
TKSTL
|
||||
TKTopAlgo
|
||||
TKV3d
|
||||
TKDEVRML
|
||||
TKVRML
|
||||
TKXSBase
|
||||
|
||||
|
@@ -73,8 +73,8 @@ win32 {
|
||||
}
|
||||
|
||||
LIBS += -lTKernel -lTKMath -lTKService -lTKV3d -lTKOpenGl \
|
||||
-lTKBRep -lTKDEIGES -lTKDESTL -lTKDEVRML -lTKDESTEP \
|
||||
-lTKGeomBase -lTKGeomAlgo -lTKG3d -lTKG2d \
|
||||
-lTKBRep -lTKIGES -lTKSTL -lTKVRML -lTKSTEP -lTKSTEPAttr -lTKSTEP209 \
|
||||
-lTKSTEPBase -lTKGeomBase -lTKGeomAlgo -lTKG3d -lTKG2d \
|
||||
-lTKXSBase -lTKShHealing -lTKHLR -lTKTopAlgo -lTKMesh -lTKPrim \
|
||||
-lTKCDF -lTKBool -lTKBO -lTKFillet -lTKOffset -lTKLCAF \
|
||||
|
||||
|
@@ -59,7 +59,7 @@ else()
|
||||
set(OCCT_BIN_DIR)
|
||||
endif()
|
||||
|
||||
set(OpenCASCADE_LIBS TKRWMesh TKDEGLTF TKDEOBJ TKDEPLY TKBinXCAF TKBin TKBinL TKOpenGles TKXCAF TKVCAF TKCAF TKV3d TKHLR TKMesh TKService TKShHealing TKPrim TKTopAlgo TKGeomAlgo TKBRep TKGeomBase TKG3d TKG2d TKMath TKLCAF TKCDF TKernel)
|
||||
set(OpenCASCADE_LIBS TKRWMesh TKBinXCAF TKBin TKBinL TKOpenGles TKXCAF TKVCAF TKCAF TKV3d TKHLR TKMesh TKService TKShHealing TKPrim TKTopAlgo TKGeomAlgo TKBRep TKGeomBase TKG3d TKG2d TKMath TKLCAF TKCDF TKernel)
|
||||
|
||||
add_executable(${APP_TARGET} ${SOURCES})
|
||||
target_link_libraries(
|
||||
|
@@ -102,11 +102,11 @@ set (uwp_USED_LIBS TKernel
|
||||
TKHLR
|
||||
TKOffset
|
||||
TKXMesh
|
||||
TKDEIGES
|
||||
TKDESTEP
|
||||
TKIGES
|
||||
TKSTEP
|
||||
TKXSBase
|
||||
TKDESTL
|
||||
TKDEVRML
|
||||
TKSTL
|
||||
TKVRML
|
||||
)
|
||||
|
||||
target_link_libraries (uwp ${uwp_USED_LIBS})
|
||||
|
@@ -56,7 +56,7 @@ AIS_C0RegularityFilter::AIS_C0RegularityFilter(const TopoDS_Shape& aShape)
|
||||
}
|
||||
}
|
||||
if (Ok) {
|
||||
const TopoDS_Shape& curEdge = SubShapes.FindKey( i );
|
||||
TopoDS_Shape curEdge = SubShapes.FindKey( i );
|
||||
myMapOfEdges.Add(curEdge);
|
||||
}
|
||||
}
|
||||
|
@@ -21,6 +21,7 @@
|
||||
#include <NCollection_IndexedDataMap.hxx>
|
||||
#include <TopoDS_Compound.hxx>
|
||||
#include <TopTools_MapOfShape.hxx>
|
||||
#include <TColStd_MapTransientHasher.hxx>
|
||||
|
||||
class StdSelect_BRepOwner;
|
||||
|
||||
@@ -103,7 +104,7 @@ protected: //! @name override presentation computation
|
||||
|
||||
protected:
|
||||
|
||||
typedef NCollection_IndexedDataMap<Handle(AIS_ColoredDrawer), TopoDS_Compound> DataMapOfDrawerCompd;
|
||||
typedef NCollection_IndexedDataMap<Handle(AIS_ColoredDrawer), TopoDS_Compound, TColStd_MapTransientHasher> DataMapOfDrawerCompd;
|
||||
|
||||
protected:
|
||||
|
||||
|
@@ -30,6 +30,7 @@
|
||||
#include <StdSelect.hxx>
|
||||
#include <StdSelect_BRepOwner.hxx>
|
||||
#include <TopoDS_Shape.hxx>
|
||||
#include <TopTools_OrientedShapeMapHasher.hxx>
|
||||
|
||||
IMPLEMENT_STANDARD_RTTIEXT(AIS_ConnectedInteractive,AIS_InteractiveObject)
|
||||
|
||||
@@ -240,7 +241,7 @@ void AIS_ConnectedInteractive::computeSubShapeSelection (const Handle(SelectMgr_
|
||||
const Standard_Integer theMode)
|
||||
{
|
||||
typedef NCollection_List<Handle(Select3D_SensitiveEntity)> SensitiveList;
|
||||
typedef NCollection_DataMap<TopoDS_Shape, SensitiveList>
|
||||
typedef NCollection_DataMap<TopoDS_Shape, SensitiveList, TopTools_OrientedShapeMapHasher>
|
||||
Shapes2EntitiesMap;
|
||||
|
||||
if (!myReference->HasSelection (theMode))
|
||||
|
@@ -19,10 +19,11 @@
|
||||
|
||||
#include <AIS_InteractiveObject.hxx>
|
||||
#include <AIS_GlobalStatus.hxx>
|
||||
#include <TColStd_MapTransientHasher.hxx>
|
||||
#include <NCollection_DataMap.hxx>
|
||||
|
||||
typedef NCollection_DataMap<Handle(AIS_InteractiveObject),Handle(AIS_GlobalStatus)> AIS_DataMapOfIOStatus;
|
||||
typedef NCollection_DataMap<Handle(AIS_InteractiveObject),Handle(AIS_GlobalStatus)>::Iterator AIS_DataMapIteratorOfDataMapOfIOStatus;
|
||||
typedef NCollection_DataMap<Handle(AIS_InteractiveObject),Handle(AIS_GlobalStatus),TColStd_MapTransientHasher> AIS_DataMapOfIOStatus;
|
||||
typedef NCollection_DataMap<Handle(AIS_InteractiveObject),Handle(AIS_GlobalStatus),TColStd_MapTransientHasher>::Iterator AIS_DataMapIteratorOfDataMapOfIOStatus;
|
||||
|
||||
|
||||
#endif
|
||||
|
@@ -17,11 +17,10 @@
|
||||
//! Dragging action.
|
||||
enum AIS_DragAction
|
||||
{
|
||||
AIS_DragAction_Start, //!< (try) start dragging object
|
||||
AIS_DragAction_Confirmed, //!< dragging interaction is confirmed.
|
||||
AIS_DragAction_Update, //!< perform dragging (update position)
|
||||
AIS_DragAction_Stop, //!< stop dragging (save position)
|
||||
AIS_DragAction_Abort, //!< abort dragging (restore initial position)
|
||||
AIS_DragAction_Start, //!< (try) start dragging object
|
||||
AIS_DragAction_Update, //!< perform dragging (update position)
|
||||
AIS_DragAction_Stop, //!< stop dragging (save position)
|
||||
AIS_DragAction_Abort, //!< abort dragging (restore initial position)
|
||||
};
|
||||
|
||||
#endif // _AIS_DragAction_HeaderFile
|
||||
|
@@ -945,7 +945,7 @@ void AIS_InteractiveContext::Redisplay (const AIS_KindOfInteractive theKOI,
|
||||
Standard_Boolean isRedisplayed = Standard_False;
|
||||
for (AIS_DataMapIteratorOfDataMapOfIOStatus anObjIter (myObjects); anObjIter.More(); anObjIter.Next())
|
||||
{
|
||||
const Handle(AIS_InteractiveObject)& anObj = anObjIter.Key();
|
||||
Handle(AIS_InteractiveObject) anObj = anObjIter.Key();
|
||||
if (anObj->Type() != theKOI)
|
||||
{
|
||||
continue;
|
||||
@@ -1155,7 +1155,7 @@ void AIS_InteractiveContext::SetDisplayMode(const Standard_Integer theMode,
|
||||
continue;
|
||||
}
|
||||
|
||||
const Handle(AIS_GlobalStatus)& aStatus = anObjIter.Value();
|
||||
Handle(AIS_GlobalStatus) aStatus = anObjIter.Value();
|
||||
aStatus->SetDisplayMode (theMode);
|
||||
|
||||
if (anObj->DisplayStatus() == PrsMgr_DisplayStatus_Displayed)
|
||||
@@ -2251,7 +2251,7 @@ Bnd_Box AIS_InteractiveContext::BoundingBoxOfSelection (const Handle(V3d_View)&
|
||||
|
||||
for (AIS_MapIteratorOfMapOfObjectOwners anIter (anObjectOwnerMap); anIter.More(); anIter.Next())
|
||||
{
|
||||
const Handle(SelectMgr_SelectableObject)& anObject = anIter.Key();
|
||||
const Handle(SelectMgr_SelectableObject) anObject = anIter.Key();
|
||||
Bnd_Box aTmpBox = anObject->BndBoxOfSelected (anIter.ChangeValue());
|
||||
aBndSelected.Add (aTmpBox);
|
||||
}
|
||||
@@ -3228,30 +3228,6 @@ void AIS_InteractiveContext::ClearSelected (const Standard_Boolean theToUpdateVi
|
||||
}
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : isDetected
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
Standard_Boolean AIS_InteractiveContext::isDetected (const Handle(AIS_InteractiveObject)& theObject)
|
||||
{
|
||||
for (Standard_Integer aDetIter = myDetectedSeq.Lower(); aDetIter <= myDetectedSeq.Upper(); aDetIter++)
|
||||
{
|
||||
Handle(SelectMgr_EntityOwner) aPicked = MainSelector()->Picked(myDetectedSeq(aDetIter));
|
||||
Handle(AIS_InteractiveObject) anObj;
|
||||
if (!aPicked.IsNull())
|
||||
{
|
||||
anObj = Handle(AIS_InteractiveObject)::DownCast(aPicked->Selectable());
|
||||
}
|
||||
|
||||
if (!anObj.IsNull()
|
||||
&& anObj == theObject)
|
||||
{
|
||||
return Standard_True;
|
||||
}
|
||||
}
|
||||
return Standard_False;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : SetSelected
|
||||
//purpose : Sets the whole object as selected and highlights it with selection color
|
||||
@@ -3312,8 +3288,7 @@ void AIS_InteractiveContext::SetSelected (const Handle(AIS_InteractiveObject)& t
|
||||
}
|
||||
|
||||
// added to avoid untimely viewer update...
|
||||
const Handle(AIS_InteractiveObject) anObj = Handle(AIS_InteractiveObject)::DownCast (anOwner->Selectable());
|
||||
mySelection->ClearAndSelect (anOwner, myFilters, isDetected (anObj));
|
||||
mySelection->ClearAndSelect (anOwner);
|
||||
|
||||
if (myAutoHilight)
|
||||
{
|
||||
@@ -3375,7 +3350,7 @@ void AIS_InteractiveContext::SetSelected (const Handle(SelectMgr_EntityOwner)& t
|
||||
unhighlightSelected();
|
||||
}
|
||||
|
||||
mySelection->ClearAndSelect (theOwner, myFilters, isDetected (anObject));
|
||||
mySelection->ClearAndSelect (theOwner);
|
||||
if (myAutoHilight)
|
||||
{
|
||||
Handle(Prs3d_Drawer) aCustomStyle;
|
||||
@@ -3426,17 +3401,16 @@ void AIS_InteractiveContext::AddOrRemoveSelected (const Handle(SelectMgr_EntityO
|
||||
return;
|
||||
}
|
||||
|
||||
if (!myFilters->IsOk (theOwner) && !theOwner->IsSelected())
|
||||
if (!myFilters->IsOk(theOwner) && !theOwner->IsSelected())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
AIS_SelectionScheme aSelScheme = theOwner->IsSelected() ? AIS_SelectionScheme_Remove : AIS_SelectionScheme_Add;
|
||||
const Handle(AIS_InteractiveObject) anObj = Handle(AIS_InteractiveObject)::DownCast (theOwner->Selectable());
|
||||
mySelection->Select (theOwner, myFilters, aSelScheme, isDetected (anObj));
|
||||
mySelection->Select (theOwner);
|
||||
|
||||
if (myAutoHilight)
|
||||
{
|
||||
const Handle(AIS_InteractiveObject) anObj = Handle(AIS_InteractiveObject)::DownCast (theOwner->Selectable());
|
||||
Handle(AIS_GlobalStatus)* aStatusPtr = myObjects.ChangeSeek (anObj);
|
||||
if (!aStatusPtr)
|
||||
{
|
||||
@@ -3495,8 +3469,7 @@ Standard_Boolean AIS_InteractiveContext::SetSelectedState (const Handle(SelectMg
|
||||
}
|
||||
else
|
||||
{
|
||||
const Handle(AIS_InteractiveObject) anObj = Handle(AIS_InteractiveObject)::DownCast(theEntity->Selectable());
|
||||
const AIS_SelectStatus aSelStatus = mySelection->Select (theEntity, myFilters, AIS_SelectionScheme_Remove, isDetected (anObj));
|
||||
const AIS_SelectStatus aSelStatus = mySelection->Select (theEntity);
|
||||
theEntity->SetSelected (false);
|
||||
return aSelStatus == AIS_SS_Removed;
|
||||
}
|
||||
|
@@ -1302,9 +1302,6 @@ protected: //! @name internal methods
|
||||
Standard_EXPORT AIS_StatusOfDetection moveTo (const Handle(V3d_View)& theView,
|
||||
const Standard_Boolean theToRedrawOnUpdate);
|
||||
|
||||
//! Returns True if the object is detected.
|
||||
Standard_EXPORT Standard_Boolean isDetected (const Handle(AIS_InteractiveObject)& theObject);
|
||||
|
||||
//! Helper function to unhighlight all entity owners currently highlighted with seleciton color.
|
||||
Standard_EXPORT void unselectOwners (const Handle(AIS_InteractiveObject)& theObject);
|
||||
|
||||
|
@@ -259,10 +259,6 @@ Standard_Boolean AIS_LightSource::ProcessDragging (const Handle(AIS_InteractiveC
|
||||
myLocTrsfStart = LocalTransformation();
|
||||
return Standard_True;
|
||||
}
|
||||
case AIS_DragAction_Confirmed:
|
||||
{
|
||||
return Standard_True;
|
||||
}
|
||||
case AIS_DragAction_Update:
|
||||
{
|
||||
mySensSphere->ResetLastDetectedPoint();
|
||||
|
@@ -643,7 +643,7 @@ Standard_Boolean AIS_Manipulator::ObjectTransformation (const Standard_Integer t
|
||||
//function : ProcessDragging
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
Standard_Boolean AIS_Manipulator::ProcessDragging (const Handle(AIS_InteractiveContext)& aCtx,
|
||||
Standard_Boolean AIS_Manipulator::ProcessDragging (const Handle(AIS_InteractiveContext)&,
|
||||
const Handle(V3d_View)& theView,
|
||||
const Handle(SelectMgr_EntityOwner)&,
|
||||
const Graphic3d_Vec2i& theDragFrom,
|
||||
@@ -661,10 +661,6 @@ Standard_Boolean AIS_Manipulator::ProcessDragging (const Handle(AIS_InteractiveC
|
||||
}
|
||||
break;
|
||||
}
|
||||
case AIS_DragAction_Confirmed:
|
||||
{
|
||||
return Standard_True;
|
||||
}
|
||||
case AIS_DragAction_Update:
|
||||
{
|
||||
Transform (theDragTo.x(), theDragTo.y(), theView);
|
||||
@@ -676,16 +672,7 @@ Standard_Boolean AIS_Manipulator::ProcessDragging (const Handle(AIS_InteractiveC
|
||||
return Standard_True;
|
||||
}
|
||||
case AIS_DragAction_Stop:
|
||||
{
|
||||
//at the end of transformation redisplay for updating sensitive areas
|
||||
StopTransform (true);
|
||||
if (aCtx->IsDisplayed (this))
|
||||
{
|
||||
aCtx->Redisplay (this, true);
|
||||
}
|
||||
return Standard_True;
|
||||
}
|
||||
break;
|
||||
break;
|
||||
}
|
||||
return Standard_False;
|
||||
}
|
||||
@@ -843,18 +830,10 @@ void AIS_Manipulator::updateTransformation()
|
||||
if (myIsZoomPersistentMode)
|
||||
{
|
||||
if (TransformPersistence().IsNull()
|
||||
|| TransformPersistence()->Mode() != Graphic3d_TMF_AxialZoomPers
|
||||
|| TransformPersistence()->Mode() != Graphic3d_TMF_ZoomPers
|
||||
|| !TransformPersistence()->AnchorPoint().IsEqual (myPosition.Location(), 0.0))
|
||||
{
|
||||
setTransformPersistence (new Graphic3d_TransformPers (Graphic3d_TMF_AxialZoomPers, myPosition.Location()));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (TransformPersistence().IsNull()
|
||||
|| TransformPersistence()->Mode() != Graphic3d_TMF_AxialScalePers)
|
||||
{
|
||||
setTransformPersistence (new Graphic3d_TransformPers (Graphic3d_TMF_AxialScalePers, myPosition.Location()));
|
||||
setTransformPersistence (new Graphic3d_TransformPers (Graphic3d_TMF_ZoomPers, myPosition.Location()));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -939,7 +918,7 @@ void AIS_Manipulator::SetZoomPersistence (const Standard_Boolean theToEnable)
|
||||
|
||||
if (!theToEnable)
|
||||
{
|
||||
setTransformPersistence (new (Graphic3d_TransformPers)(Graphic3d_TMF_AxialScalePers));
|
||||
setTransformPersistence (Handle(Graphic3d_TransformPers)());
|
||||
}
|
||||
|
||||
updateTransformation();
|
||||
|
@@ -29,8 +29,6 @@ enum AIS_MouseGesture
|
||||
//
|
||||
AIS_MouseGesture_Zoom, //!< view zoom gesture;
|
||||
//! move mouse left to zoom-out, and to the right to zoom-in
|
||||
AIS_MouseGesture_ZoomVertical, //!< view zoom gesture;
|
||||
//! move mouse up to zoom-out, and to the down to zoom-in
|
||||
AIS_MouseGesture_ZoomWindow, //!< view zoom by window gesture;
|
||||
//! press button to start, move mouse to define rectangle, release to finish
|
||||
AIS_MouseGesture_Pan, //!< view panning gesture
|
||||
|
@@ -55,38 +55,24 @@ void AIS_Selection::Clear()
|
||||
//function : Select
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
AIS_SelectStatus AIS_Selection::Select (const Handle(SelectMgr_EntityOwner)& theOwner,
|
||||
const Handle(SelectMgr_Filter)& theFilter,
|
||||
const AIS_SelectionScheme theSelScheme,
|
||||
const Standard_Boolean theIsDetected)
|
||||
AIS_SelectStatus AIS_Selection::Select (const Handle(SelectMgr_EntityOwner)& theObject)
|
||||
{
|
||||
if (theOwner.IsNull()
|
||||
|| !theOwner->HasSelectable())
|
||||
if (theObject.IsNull()
|
||||
|| !theObject->HasSelectable())
|
||||
{
|
||||
return AIS_SS_NotDone;
|
||||
}
|
||||
|
||||
const Standard_Boolean isDetected = theIsDetected
|
||||
&& (theFilter.IsNull() || theFilter->IsOk (theOwner));
|
||||
|
||||
const Standard_Boolean wasSelected = theOwner->IsSelected();
|
||||
const Standard_Boolean toSelect = theOwner->Select (theSelScheme, isDetected);
|
||||
|
||||
if (toSelect && !wasSelected)
|
||||
if (!myResultMap.IsBound (theObject))
|
||||
{
|
||||
AIS_NListOfEntityOwner::Iterator aListIter;
|
||||
myresult.Append (theOwner, aListIter);
|
||||
myResultMap.Bind (theOwner, aListIter);
|
||||
theOwner->SetSelected (Standard_True);
|
||||
myresult.Append (theObject, aListIter);
|
||||
myResultMap.Bind (theObject, aListIter);
|
||||
theObject->SetSelected (Standard_True);
|
||||
return AIS_SS_Added;
|
||||
}
|
||||
|
||||
if (!toSelect && !wasSelected)
|
||||
{
|
||||
return AIS_SS_NotDone;
|
||||
}
|
||||
|
||||
AIS_NListOfEntityOwner::Iterator aListIter = myResultMap.Find (theOwner);
|
||||
AIS_NListOfEntityOwner::Iterator aListIter = myResultMap.Find (theObject);
|
||||
if (myIterator == aListIter)
|
||||
{
|
||||
if (myIterator.More())
|
||||
@@ -102,14 +88,14 @@ AIS_SelectStatus AIS_Selection::Select (const Handle(SelectMgr_EntityOwner)& the
|
||||
// In the mode of advanced mesh selection only one owner is created for all selection modes.
|
||||
// It is necessary to check the current detected entity
|
||||
// and remove the owner from map only if the detected entity is the same as previous selected (IsForcedHilight call)
|
||||
if (theOwner->IsForcedHilight())
|
||||
if (theObject->IsForcedHilight())
|
||||
{
|
||||
return AIS_SS_Added;
|
||||
}
|
||||
|
||||
myresult.Remove (aListIter);
|
||||
myResultMap.UnBind (theOwner);
|
||||
theOwner->SetSelected (Standard_False);
|
||||
myResultMap.UnBind (theObject);
|
||||
theObject->SetSelected (Standard_False);
|
||||
|
||||
// update list iterator for next object in <myresult> list if any
|
||||
if (aListIter.More())
|
||||
@@ -156,39 +142,86 @@ void AIS_Selection::SelectOwners (const AIS_NArray1OfEntityOwner& thePickedOwner
|
||||
const Standard_Boolean theToAllowSelOverlap,
|
||||
const Handle(SelectMgr_Filter)& theFilter)
|
||||
{
|
||||
(void)theToAllowSelOverlap;
|
||||
|
||||
if (theSelScheme == AIS_SelectionScheme_ReplaceExtra
|
||||
&& thePickedOwners.Size() == myresult.Size())
|
||||
(void )theToAllowSelOverlap;
|
||||
switch (theSelScheme)
|
||||
{
|
||||
// If picked owners is equivalent to the selected then just clear selected.
|
||||
Standard_Boolean isTheSame = Standard_True;
|
||||
for (AIS_NArray1OfEntityOwner::Iterator aPickedIter (thePickedOwners); aPickedIter.More(); aPickedIter.Next())
|
||||
case AIS_SelectionScheme_UNKNOWN:
|
||||
{
|
||||
if (!myResultMap.IsBound (aPickedIter.Value()))
|
||||
return;
|
||||
}
|
||||
case AIS_SelectionScheme_ReplaceExtra:
|
||||
{
|
||||
// If picked owners is equivalent to the selected then just clear selected
|
||||
// Else go to AIS_SelectionScheme_Replace
|
||||
if (thePickedOwners.Size() == myresult.Size())
|
||||
{
|
||||
isTheSame = Standard_False;
|
||||
break;
|
||||
Standard_Boolean isTheSame = Standard_True;
|
||||
for (AIS_NArray1OfEntityOwner::Iterator aSelIter (thePickedOwners); aSelIter.More(); aSelIter.Next())
|
||||
{
|
||||
if (!myResultMap.IsBound (aSelIter.Value()))
|
||||
{
|
||||
isTheSame = Standard_False;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (isTheSame)
|
||||
{
|
||||
Clear();
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (isTheSame)
|
||||
Standard_FALLTHROUGH
|
||||
case AIS_SelectionScheme_Replace:
|
||||
{
|
||||
Clear();
|
||||
return;
|
||||
Clear();
|
||||
for (AIS_NArray1OfEntityOwner::Iterator aSelIter (thePickedOwners); aSelIter.More(); aSelIter.Next())
|
||||
{
|
||||
appendOwner (aSelIter.Value(), theFilter);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
case AIS_SelectionScheme_Add:
|
||||
{
|
||||
for (AIS_NArray1OfEntityOwner::Iterator aSelIter (thePickedOwners); aSelIter.More(); aSelIter.Next())
|
||||
{
|
||||
appendOwner (aSelIter.Value(), theFilter);
|
||||
}
|
||||
return;
|
||||
}
|
||||
case AIS_SelectionScheme_Remove:
|
||||
{
|
||||
for (AIS_NArray1OfEntityOwner::Iterator aSelIter (thePickedOwners); aSelIter.More(); aSelIter.Next())
|
||||
{
|
||||
if (myResultMap.IsBound (aSelIter.Value()))
|
||||
{
|
||||
Select (aSelIter.Value());
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
case AIS_SelectionScheme_XOR:
|
||||
{
|
||||
for (AIS_NArray1OfEntityOwner::Iterator aSelIter (thePickedOwners); aSelIter.More(); aSelIter.Next())
|
||||
{
|
||||
const Handle(SelectMgr_EntityOwner)& anOwner = aSelIter.Value();
|
||||
if (anOwner.IsNull()
|
||||
|| !anOwner->HasSelectable()
|
||||
|| !theFilter->IsOk (anOwner))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (theSelScheme == AIS_SelectionScheme_Replace
|
||||
|| theSelScheme == AIS_SelectionScheme_ReplaceExtra
|
||||
|| theSelScheme == AIS_SelectionScheme_Clear)
|
||||
{
|
||||
Clear();
|
||||
}
|
||||
|
||||
for (AIS_NArray1OfEntityOwner::Iterator aPickedIter (thePickedOwners); aPickedIter.More(); aPickedIter.Next())
|
||||
{
|
||||
const Handle(SelectMgr_EntityOwner)& anOwner = aPickedIter.Value();
|
||||
Select (anOwner, theFilter, theSelScheme, true);
|
||||
Select (anOwner);
|
||||
}
|
||||
return;
|
||||
}
|
||||
case AIS_SelectionScheme_Clear:
|
||||
{
|
||||
Clear();
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -34,36 +34,23 @@ public:
|
||||
|
||||
//! creates a new selection.
|
||||
Standard_EXPORT AIS_Selection();
|
||||
|
||||
|
||||
//! removes all the object of the selection.
|
||||
Standard_EXPORT virtual void Clear();
|
||||
|
||||
|
||||
//! if the object is not yet in the selection, it will be added.
|
||||
//! if the object is already in the selection, it will be removed.
|
||||
//! @param[in] theOwner element to change selection state
|
||||
//! @param[in] theFilter context filter
|
||||
//! @param[in] theSelScheme selection scheme
|
||||
//! @param[in] theIsDetected flag of object detection
|
||||
//! @return result of selection
|
||||
Standard_EXPORT virtual AIS_SelectStatus Select (const Handle(SelectMgr_EntityOwner)& theOwner,
|
||||
const Handle(SelectMgr_Filter)& theFilter,
|
||||
const AIS_SelectionScheme theSelScheme,
|
||||
const Standard_Boolean theIsDetected);
|
||||
|
||||
Standard_EXPORT virtual AIS_SelectStatus Select (const Handle(SelectMgr_EntityOwner)& theObject);
|
||||
|
||||
//! the object is always add int the selection.
|
||||
//! faster when the number of objects selected is great.
|
||||
Standard_EXPORT virtual AIS_SelectStatus AddSelect (const Handle(SelectMgr_EntityOwner)& theObject);
|
||||
|
||||
//! clears the selection and adds the object in the selection.
|
||||
//! @param[in] theObject element to change selection state
|
||||
//! @param[in] theFilter context filter
|
||||
//! @param[in] theIsDetected flag of object detection
|
||||
virtual void ClearAndSelect (const Handle(SelectMgr_EntityOwner)& theObject,
|
||||
const Handle(SelectMgr_Filter)& theFilter,
|
||||
const Standard_Boolean theIsDetected)
|
||||
virtual void ClearAndSelect (const Handle(SelectMgr_EntityOwner)& theObject)
|
||||
{
|
||||
Clear();
|
||||
Select (theObject, theFilter, AIS_SelectionScheme_Add, theIsDetected);
|
||||
Select (theObject);
|
||||
}
|
||||
|
||||
//! checks if the object is in the selection.
|
||||
|
@@ -332,11 +332,6 @@ void AIS_ViewController::flushBuffers (const Handle(AIS_InteractiveContext)& ,
|
||||
myGL.Dragging.ToStart = true;
|
||||
myGL.Dragging.PointStart = myUI.Dragging.PointStart;
|
||||
}
|
||||
if (myUI.Dragging.ToConfirm)
|
||||
{
|
||||
myUI.Dragging.ToConfirm = false;
|
||||
myGL.Dragging.ToConfirm = true;
|
||||
}
|
||||
if (myUI.Dragging.ToMove)
|
||||
{
|
||||
myUI.Dragging.ToMove = false;
|
||||
@@ -843,7 +838,6 @@ bool AIS_ViewController::UpdateMouseButtons (const Graphic3d_Vec2i& thePoint,
|
||||
}
|
||||
case AIS_MouseGesture_Zoom:
|
||||
case AIS_MouseGesture_ZoomWindow:
|
||||
case AIS_MouseGesture_ZoomVertical:
|
||||
{
|
||||
if (!myToAllowZooming)
|
||||
{
|
||||
@@ -934,7 +928,6 @@ bool AIS_ViewController::UpdateMousePosition (const Graphic3d_Vec2i& thePoint,
|
||||
myMouseClickCounter = 0;
|
||||
myMouseSingleButton = -1;
|
||||
myMouseStopDragOnUnclick = true;
|
||||
myUI.Dragging.ToConfirm = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1044,7 +1037,6 @@ bool AIS_ViewController::UpdateMousePosition (const Graphic3d_Vec2i& thePoint,
|
||||
break;
|
||||
}
|
||||
case AIS_MouseGesture_Zoom:
|
||||
case AIS_MouseGesture_ZoomVertical:
|
||||
{
|
||||
if (!myToAllowZooming)
|
||||
{
|
||||
@@ -1053,19 +1045,12 @@ bool AIS_ViewController::UpdateMousePosition (const Graphic3d_Vec2i& thePoint,
|
||||
const double aZoomTol = theIsEmulated
|
||||
? double(myTouchToleranceScale) * myTouchZoomThresholdPx
|
||||
: 0.0;
|
||||
const double aScrollDelta = myMouseActiveGesture == AIS_MouseGesture_Zoom
|
||||
? aDelta.x()
|
||||
: aDelta.y();
|
||||
if (Abs (aScrollDelta) > aZoomTol)
|
||||
if (double (Abs (aDelta.x())) > aZoomTol)
|
||||
{
|
||||
if (UpdateZoom (Aspect_ScrollDelta (aScrollDelta)))
|
||||
if (UpdateZoom (Aspect_ScrollDelta (aDelta.x())))
|
||||
{
|
||||
toUpdateView = true;
|
||||
}
|
||||
|
||||
myUI.Dragging.ToMove = true;
|
||||
myUI.Dragging.PointTo = thePoint;
|
||||
|
||||
myMouseProgressPoint = thePoint;
|
||||
}
|
||||
break;
|
||||
@@ -1090,6 +1075,7 @@ bool AIS_ViewController::UpdateMousePosition (const Graphic3d_Vec2i& thePoint,
|
||||
}
|
||||
|
||||
aDelta.y() = -aDelta.y();
|
||||
myMouseProgressPoint = thePoint;
|
||||
if (myUI.Panning.ToPan)
|
||||
{
|
||||
myUI.Panning.Delta += aDelta;
|
||||
@@ -1099,12 +1085,6 @@ bool AIS_ViewController::UpdateMousePosition (const Graphic3d_Vec2i& thePoint,
|
||||
myUI.Panning.ToPan = true;
|
||||
myUI.Panning.Delta = aDelta;
|
||||
}
|
||||
|
||||
myUI.Dragging.ToMove = true;
|
||||
myUI.Dragging.PointTo = thePoint;
|
||||
|
||||
myMouseProgressPoint = thePoint;
|
||||
|
||||
toUpdateView = true;
|
||||
}
|
||||
break;
|
||||
@@ -2751,17 +2731,6 @@ void AIS_ViewController::OnObjectDragged (const Handle(AIS_InteractiveContext)&
|
||||
}
|
||||
return;
|
||||
}
|
||||
case AIS_DragAction_Confirmed:
|
||||
{
|
||||
if (myDragObject.IsNull())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
myDragObject->ProcessDragging (theCtx, theView, myDragOwner, myGL.Dragging.PointStart,
|
||||
myGL.Dragging.PointTo, theAction);
|
||||
return;
|
||||
}
|
||||
case AIS_DragAction_Update:
|
||||
{
|
||||
if (myDragObject.IsNull())
|
||||
@@ -3081,15 +3050,9 @@ void AIS_ViewController::handleDynamicHighlight (const Handle(AIS_InteractiveCon
|
||||
}
|
||||
else if (myGL.Dragging.ToMove)
|
||||
{
|
||||
if (myGL.Dragging.ToConfirm)
|
||||
{
|
||||
OnObjectDragged (theCtx, theView, AIS_DragAction_Confirmed);
|
||||
}
|
||||
OnObjectDragged (theCtx, theView, AIS_DragAction_Update);
|
||||
myGL.OrbitRotation.ToRotate = false;
|
||||
myGL.ViewRotation .ToRotate = false;
|
||||
myGL.Panning .ToPan = false;
|
||||
myGL.ZoomActions.Clear();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -640,9 +640,18 @@ protected:
|
||||
|
||||
protected:
|
||||
|
||||
NCollection_DataMap<V3d_TypeOfOrientation, TCollection_AsciiString>
|
||||
//! Trivial hasher to avoid ambiguity with enumeration type.
|
||||
struct IntegerHasher
|
||||
{
|
||||
static Standard_Integer HashCode (Standard_Integer theValue, Standard_Integer theUpper) { return ::HashCode (theValue, theUpper); }
|
||||
static Standard_Boolean IsEqual (Standard_Integer theA, Standard_Integer theB) { return theA == theB; }
|
||||
};
|
||||
|
||||
protected:
|
||||
|
||||
NCollection_DataMap<V3d_TypeOfOrientation, TCollection_AsciiString, IntegerHasher>
|
||||
myBoxSideLabels; //!< map with box side labels
|
||||
NCollection_DataMap<Prs3d_DatumParts, TCollection_AsciiString>
|
||||
NCollection_DataMap<Prs3d_DatumParts, TCollection_AsciiString, IntegerHasher>
|
||||
myAxesLabels; //!< map with axes labels
|
||||
Handle(Prs3d_ShadingAspect) myBoxEdgeAspect; //!< style for box edges
|
||||
Handle(Prs3d_ShadingAspect) myBoxCornerAspect; //!< style for box corner
|
||||
|
@@ -87,14 +87,13 @@ public:
|
||||
struct _draggingParams
|
||||
{
|
||||
bool ToStart; //!< start dragging
|
||||
bool ToConfirm; //!< confirm dragging
|
||||
bool ToMove; //!< perform dragging
|
||||
bool ToStop; //!< stop dragging
|
||||
bool ToAbort; //!< abort dragging (restore previous position)
|
||||
Graphic3d_Vec2i PointStart; //!< drag start point
|
||||
Graphic3d_Vec2i PointTo; //!< drag end point
|
||||
|
||||
_draggingParams() : ToStart (false), ToConfirm (false), ToMove (false), ToStop (false), ToAbort (false) {}
|
||||
_draggingParams() : ToStart (false), ToMove (false), ToStop (false), ToAbort (false) {}
|
||||
} Dragging;
|
||||
|
||||
struct _orbitRotation
|
||||
@@ -140,13 +139,12 @@ public:
|
||||
Selection.ToApplyTool = false;
|
||||
IsNewGesture = false;
|
||||
ZoomActions.Clear();
|
||||
Panning.ToStart = false;
|
||||
Panning.ToPan = false;
|
||||
Dragging.ToStart = false;
|
||||
Dragging.ToConfirm = false;
|
||||
Dragging.ToMove = false;
|
||||
Dragging.ToStop = false;
|
||||
Dragging.ToAbort = false;
|
||||
Panning.ToStart = false;
|
||||
Panning.ToPan = false;
|
||||
Dragging.ToStart = false;
|
||||
Dragging.ToMove = false;
|
||||
Dragging.ToStop = false;
|
||||
Dragging.ToAbort = false;
|
||||
OrbitRotation.ToStart = false;
|
||||
OrbitRotation.ToRotate = false;
|
||||
ViewRotation.ToStart = false;
|
||||
|
@@ -33,7 +33,7 @@ static Standard_Boolean lesparam(const Standard_Integer iordre,
|
||||
ndgjac += (9 - (iordre+1)); //iordre rescales the frequences upwards
|
||||
ndgjac += (icodeo-1)*10;
|
||||
}
|
||||
// ---> Min Number of required points.
|
||||
// ---> Min Number of required pointss.
|
||||
if (ndgjac < 8) { nbpnts = 8; }
|
||||
else if (ndgjac < 10) { nbpnts = 10; }
|
||||
// else if (ndgjac < 15) { nbpnt = 15; } Bug Uneven number
|
||||
|
@@ -3680,7 +3680,7 @@ int AdvApp2Var_MathBase::mmeps1_(doublereal *epsilo)
|
||||
/* equal to 1.D-9 */
|
||||
|
||||
/* KEYWORDS : */
|
||||
/* ---------- */
|
||||
/* ----------- */
|
||||
/* MPRCSN,PRECISON,EPS1. */
|
||||
|
||||
/* INPUT ARGUMENTS : */
|
||||
|
@@ -911,9 +911,10 @@ int macrmsg_(const char *,//crout,
|
||||
/* Parameter adjustments */
|
||||
ct -= ct_len;
|
||||
(void )ct; // unused
|
||||
(void )xt; // unused
|
||||
(void )it; // unused
|
||||
|
||||
--xt;
|
||||
--it;
|
||||
|
||||
/* Function Body */
|
||||
mamdlng_(cln, 3L);
|
||||
|
||||
@@ -1788,7 +1789,7 @@ int maoverf_(integer *nbentr,
|
||||
/* Loop. The upper limit is the integer value of the logarithm of base 2
|
||||
*/
|
||||
/* of NBENTR/NLONGR. */
|
||||
i__1 = (integer) (std::log((real) (*nbentr) / (float)63.) / std::log((float)2.))
|
||||
i__1 = (integer) (log((real) (*nbentr) / (float)63.) / log((float)2.))
|
||||
;
|
||||
for (ibid = 1; ibid <= i__1; ++ibid) {
|
||||
|
||||
@@ -2200,8 +2201,8 @@ int AdvApp2Var_SysBase::mcrdelt_(integer *iunit,
|
||||
/* ---------- */
|
||||
/* TABLE OF MANAGEMENT OF DYNAMIC ALLOCATIONS IN MEMORY */
|
||||
|
||||
/* KEYWORDS : */
|
||||
/* ---------- */
|
||||
/* KEYWORS : */
|
||||
/* ----------- */
|
||||
/* SYSTEM, MEMORY, ALLOCATION */
|
||||
|
||||
/* DEMSCRIPTION/NOTES/LIMITATIONS : */
|
||||
@@ -2867,7 +2868,7 @@ int AdvApp2Var_SysBase::mcrrqst_(integer *iunit,
|
||||
/* . add size of the user zone */
|
||||
/* . add 8 for alinement of start address of */
|
||||
/* allocation on multiple of 8 so that to be able to */
|
||||
/* set flags with Double Precision without other pb than alignment */
|
||||
/* set flags with Double Precision without other pb than alignement */
|
||||
/* . add 16 octets for two flags */
|
||||
|
||||
ibyte = izu + 24;
|
||||
|
@@ -30,6 +30,7 @@
|
||||
#include <TColgp_HArray2OfPnt2d.hxx>
|
||||
#include <TColgp_HArray2OfPnt.hxx>
|
||||
#include <TColStd_HArray1OfInteger.hxx>
|
||||
#include <Standard_Address.hxx>
|
||||
#include <AdvApprox_EvaluatorFunction.hxx>
|
||||
#include <TColStd_Array1OfInteger.hxx>
|
||||
#include <TColStd_Array1OfReal.hxx>
|
||||
|
@@ -24,6 +24,7 @@
|
||||
#include <Standard_Integer.hxx>
|
||||
#include <TColStd_HArray1OfReal.hxx>
|
||||
#include <TColStd_HArray2OfReal.hxx>
|
||||
#include <Standard_Address.hxx>
|
||||
#include <GeomAbs_Shape.hxx>
|
||||
#include <AdvApprox_EvaluatorFunction.hxx>
|
||||
#include <TColStd_Array1OfInteger.hxx>
|
||||
|
@@ -1238,7 +1238,7 @@ void VBernstein(const Standard_Integer classe,
|
||||
if (nbpoints > 24) throw Standard_DimensionError("VBernstein: nbpoints > 24");
|
||||
// math_Matrix VB(classe, nbpoints);
|
||||
|
||||
Standard_Integer i, j, Som;
|
||||
Standard_Integer i, j, k = 0, Som;
|
||||
// 300 = 1+2+ ... +24 points.
|
||||
Som = (Standard_Integer )( 300*((classe-1)*classe/2.-1) + classe * (nbpoints-1)*nbpoints/2.);
|
||||
|
||||
@@ -1248,6 +1248,7 @@ void VBernstein(const Standard_Integer classe,
|
||||
for (j = 1; j <= nbpoints; j++) {
|
||||
M(i, j) = *tmpVB;
|
||||
tmpVB++;
|
||||
k++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -22,7 +22,7 @@
|
||||
#include <math_Matrix.hxx>
|
||||
#include <NCollection_Array1.hxx>
|
||||
#include <AppParCurves_Constraint.hxx>
|
||||
#include <math_Vector.hxx>
|
||||
|
||||
|
||||
struct PeriodicityInfo
|
||||
{
|
||||
|
@@ -808,11 +808,8 @@ void Approx_BSplComputeLine::Parameters(const MultiLine& Line,
|
||||
const Standard_Integer aNbp = lastP - firstP + 1;
|
||||
|
||||
|
||||
// The first parameter should always be zero according to all the logic below,
|
||||
// so division by any value will give zero anyway, so it should never be scaled
|
||||
// to avoid case when there is only one parameter in the array thus division by zero happens.
|
||||
TheParameters(firstP) = 0.0;
|
||||
if (aNbp == 2) {
|
||||
TheParameters(firstP) = 0.0;
|
||||
TheParameters(lastP) = 1.0;
|
||||
}
|
||||
else if (Par == Approx_ChordLength || Par == Approx_Centripetal)
|
||||
@@ -823,6 +820,7 @@ void Approx_BSplComputeLine::Parameters(const MultiLine& Line,
|
||||
if (nbP3d == 0) mynbP3d = 1;
|
||||
if (nbP2d == 0) mynbP2d = 1;
|
||||
|
||||
TheParameters(firstP) = 0.0;
|
||||
dist = 0.0;
|
||||
TColgp_Array1OfPnt tabP(1, mynbP3d);
|
||||
TColgp_Array1OfPnt tabPP(1, mynbP3d);
|
||||
@@ -863,10 +861,10 @@ void Approx_BSplComputeLine::Parameters(const MultiLine& Line,
|
||||
TheParameters(i) = TheParameters(i - 1) + Sqrt(dist);
|
||||
}
|
||||
}
|
||||
for (i = firstP + 1; i <= lastP; i++) TheParameters(i) /= TheParameters(lastP);
|
||||
for (i = firstP; i <= lastP; i++) TheParameters(i) /= TheParameters(lastP);
|
||||
}
|
||||
else {
|
||||
for (i = firstP + 1; i <= lastP; i++) {
|
||||
for (i = firstP; i <= lastP; i++) {
|
||||
TheParameters(i) = (Standard_Real(i) - firstP) /
|
||||
(Standard_Real(lastP - Standard_Real(firstP)));
|
||||
}
|
||||
|
@@ -13,6 +13,7 @@
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <Approx_ParametrizationType.hxx>
|
||||
#include Approx_ParLeastSquareOfMyGradient_hxx
|
||||
#include <TColStd_Array1OfReal.hxx>
|
||||
#include <TColgp_Array1OfPnt.hxx>
|
||||
#include <TColgp_Array1OfPnt2d.hxx>
|
||||
@@ -1391,7 +1392,7 @@ Standard_Boolean Approx_ComputeLine::ComputeCurve(const MultiLine& Line,
|
||||
Standard_Boolean Parallel;
|
||||
#endif
|
||||
Standard_Integer myfirstpt = firstpt, mylastpt = lastpt;
|
||||
Standard_Integer nbp = lastpt-firstpt+1;
|
||||
Standard_Integer nbp = lastpt-firstpt+1, Kopt = 0;
|
||||
math_Vector Para(firstpt, lastpt);
|
||||
|
||||
Parameters(Line, firstpt, lastpt, Para);
|
||||
@@ -1426,6 +1427,11 @@ Standard_Boolean Approx_ComputeLine::ComputeCurve(const MultiLine& Line,
|
||||
Tangent1 = LineTool::Tangency(Line, myfirstpt, tabV1);
|
||||
Tangent2 = LineTool::Tangency(Line, mylastpt, tabV2);
|
||||
}
|
||||
|
||||
if (Tangent1) Kopt++;
|
||||
if (Tangent2) Kopt++;
|
||||
|
||||
|
||||
if (nbp == 2) {
|
||||
// S il n y a que 2 points, on verifie quand meme que les tangentes sont
|
||||
// alignees.
|
||||
|
@@ -556,7 +556,7 @@ void Approx_CurveOnSurface::Perform(const Standard_Integer theMaxSegments,
|
||||
//function : isIsoLine
|
||||
//purpose :
|
||||
//=============================================================================
|
||||
Standard_Boolean Approx_CurveOnSurface::isIsoLine(const Handle(Adaptor2d_Curve2d)& theC2D,
|
||||
Standard_Boolean Approx_CurveOnSurface::isIsoLine(const Handle(Adaptor2d_Curve2d) theC2D,
|
||||
Standard_Boolean& theIsU,
|
||||
Standard_Real& theParam,
|
||||
Standard_Boolean& theIsForward) const
|
||||
@@ -638,7 +638,7 @@ Standard_Boolean Approx_CurveOnSurface::isIsoLine(const Handle(Adaptor2d_Curve2d
|
||||
//function : buildC3dOnIsoLine
|
||||
//purpose :
|
||||
//=============================================================================
|
||||
Standard_Boolean Approx_CurveOnSurface::buildC3dOnIsoLine(const Handle(Adaptor2d_Curve2d)& theC2D,
|
||||
Standard_Boolean Approx_CurveOnSurface::buildC3dOnIsoLine(const Handle(Adaptor2d_Curve2d) theC2D,
|
||||
const Standard_Boolean theIsU,
|
||||
const Standard_Real theParam,
|
||||
const Standard_Boolean theIsForward)
|
||||
|
@@ -85,7 +85,7 @@ protected:
|
||||
//! @param theParam Line parameter.
|
||||
//! @param theIsForward Flag indicating forward parameterization on a isoline.
|
||||
//! @return Standard_True when 2d curve is a line and Standard_False otherwise.
|
||||
Standard_Boolean isIsoLine(const Handle(Adaptor2d_Curve2d)& theC2D,
|
||||
Standard_Boolean isIsoLine(const Handle(Adaptor2d_Curve2d) theC2D,
|
||||
Standard_Boolean& theIsU,
|
||||
Standard_Real& theParam,
|
||||
Standard_Boolean& theIsForward) const;
|
||||
@@ -97,7 +97,7 @@ protected:
|
||||
//! @param theParam Line parameter.
|
||||
//! @param theIsForward Flag indicating forward parameterization on a isoline.
|
||||
//! @return Standard_True when 3d curve is built and Standard_False otherwise.
|
||||
Standard_Boolean buildC3dOnIsoLine(const Handle(Adaptor2d_Curve2d)& theC2D,
|
||||
Standard_Boolean buildC3dOnIsoLine(const Handle(Adaptor2d_Curve2d) theC2D,
|
||||
const Standard_Boolean theIsU,
|
||||
const Standard_Real theParam,
|
||||
const Standard_Boolean theIsForward);
|
||||
|
@@ -196,7 +196,7 @@ Approx_CurvilinearParameter::Approx_CurvilinearParameter(const Handle(Adaptor3d_
|
||||
std::cout<<"initialization time = "<<t_init<<std::endl;
|
||||
std::cout<<"approximation time = "<<t_approx<<std::endl;
|
||||
std::cout<<"total time for uparam computation = "<<t_uparam<<std::endl;
|
||||
std::cout<<"number uparam calls = "<<uparam_count<<std::endl;
|
||||
std::cout<<"number uparam calles = "<<uparam_count<<std::endl;
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -357,7 +357,7 @@ Approx_CurvilinearParameter::Approx_CurvilinearParameter(const Handle(Adaptor2d_
|
||||
std::cout<<"initialization time = "<<t_init<<std::endl;
|
||||
std::cout<<"approximation time = "<<t_approx<<std::endl;
|
||||
std::cout<<"total time for uparam computation = "<<t_uparam<<std::endl;
|
||||
std::cout<<"number uparam calls = "<<uparam_count<<std::endl;
|
||||
std::cout<<"number uparam calles = "<<uparam_count<<std::endl;
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -530,7 +530,7 @@ Approx_CurvilinearParameter::Approx_CurvilinearParameter(const Handle(Adaptor2d_
|
||||
std::cout<<"initialization time = "<<t_init<<std::endl;
|
||||
std::cout<<"approximation time = "<<t_approx<<std::endl;
|
||||
std::cout<<"total time for uparam computation = "<<t_uparam<<std::endl;
|
||||
std::cout<<"number uparam calls = "<<uparam_count<<std::endl;
|
||||
std::cout<<"number uparam calles = "<<uparam_count<<std::endl;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@@ -128,7 +128,7 @@ void Approx_SweepApproximation::Perform(const Standard_Real First,
|
||||
if (Num2DSS == 0) {TwoDTol.Nullify();}
|
||||
else {
|
||||
// for 2d define affinity using resolutions, to
|
||||
// avoid homogeneous tolerance of approximation (u/v and 2d/3d)
|
||||
// avoid homogenuous tolerance of approximation (u/v and 2d/3d)
|
||||
Standard_Real res, tolu, tolv;
|
||||
TwoDTol = new (TColStd_HArray1OfReal) (1, Num2DSS);
|
||||
AAffin = new (Approx_HArray1OfGTrsf2d) (1, Num2DSS);
|
||||
|
@@ -14,21 +14,34 @@
|
||||
#ifndef _ApproxInt_KnotTools_HeaderFile
|
||||
#define _ApproxInt_KnotTools_HeaderFile
|
||||
|
||||
#ifndef _Standard_DefineAlloc_HeaderFile
|
||||
#include <Standard_DefineAlloc.hxx>
|
||||
#endif
|
||||
#ifndef _Standard_Macro_HeaderFile
|
||||
#include <Standard_Macro.hxx>
|
||||
#endif
|
||||
|
||||
#ifndef _Standard_Boolean_HeaderFile
|
||||
#include <Standard_Boolean.hxx>
|
||||
#endif
|
||||
#ifndef _Standard_Real_HeaderFile
|
||||
#include <Standard_Real.hxx>
|
||||
#endif
|
||||
#ifndef _Standard_Integer_HeaderFile
|
||||
#include <Standard_Integer.hxx>
|
||||
#endif
|
||||
|
||||
#include <TColgp_Array1OfPnt2d.hxx>
|
||||
#include <NCollection_Sequence.hxx>
|
||||
#include <NCollection_List.hxx>
|
||||
#include <math_Vector.hxx>
|
||||
#include <TColgp_Array1OfPnt.hxx>
|
||||
#include <TColStd_Array1OfReal.hxx>
|
||||
#include <NCollection_LocalArray.hxx>
|
||||
#include <NCollection_Vector.hxx>
|
||||
#include <Approx_ParametrizationType.hxx>
|
||||
|
||||
class math_Vector;
|
||||
template <class A> class NCollection_Sequence;
|
||||
template <class A> class NCollection_List;
|
||||
template <class A> class NCollection_Vector;
|
||||
|
||||
class IntPatch_WLine;
|
||||
|
||||
// Corresponds for debug information output.
|
||||
|
@@ -53,6 +53,6 @@ protected:
|
||||
};
|
||||
|
||||
//! Map of actions with action Id as a key.
|
||||
typedef NCollection_IndexedDataMap<TCollection_AsciiString, Handle(Aspect_XRAction)> Aspect_XRActionMap;
|
||||
typedef NCollection_IndexedDataMap<TCollection_AsciiString, Handle(Aspect_XRAction), TCollection_AsciiString> Aspect_XRActionMap;
|
||||
|
||||
#endif // _Aspect_XRAction_HeaderFile
|
||||
|
@@ -50,6 +50,6 @@ protected:
|
||||
Aspect_XRActionMap myActions; //!< map of actions
|
||||
};
|
||||
|
||||
typedef NCollection_IndexedDataMap<TCollection_AsciiString, Handle(Aspect_XRActionSet)> Aspect_XRActionSetMap;
|
||||
typedef NCollection_IndexedDataMap<TCollection_AsciiString, Handle(Aspect_XRActionSet), TCollection_AsciiString> Aspect_XRActionSetMap;
|
||||
|
||||
#endif // _Aspect_XRActionSet_HeaderFile
|
||||
|
@@ -167,7 +167,7 @@ void BOPAlgo_BuilderFace::Perform(const Message_ProgressRange& theRange)
|
||||
void BOPAlgo_BuilderFace::PerformShapesToAvoid(const Message_ProgressRange& theRange)
|
||||
{
|
||||
Standard_Boolean bFound;
|
||||
Standard_Integer i, aNbV, aNbE;
|
||||
Standard_Integer i, iCnt, aNbV, aNbE;
|
||||
TopTools_IndexedDataMapOfShapeListOfShape aMVE;
|
||||
TopTools_ListIteratorOfListOfShape aIt;
|
||||
//
|
||||
@@ -175,11 +175,14 @@ void BOPAlgo_BuilderFace::PerformShapesToAvoid(const Message_ProgressRange& theR
|
||||
//
|
||||
Message_ProgressScope aPS(theRange, NULL, 1);
|
||||
//
|
||||
iCnt=0;
|
||||
for(;;) {
|
||||
if (UserBreak(aPS))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
++iCnt;
|
||||
bFound=Standard_False;
|
||||
//
|
||||
// 1. MEF
|
||||
|
@@ -142,7 +142,7 @@ void BOPAlgo_BuilderSolid::Perform(const Message_ProgressRange& theRange)
|
||||
void BOPAlgo_BuilderSolid::PerformShapesToAvoid(const Message_ProgressRange& theRange)
|
||||
{
|
||||
Standard_Boolean bFound;
|
||||
Standard_Integer i, aNbE, aNbF;
|
||||
Standard_Integer i, iCnt, aNbE, aNbF;
|
||||
TopAbs_Orientation aOrE;
|
||||
TopTools_IndexedDataMapOfShapeListOfShape aMEF;
|
||||
TopTools_ListIteratorOfListOfShape aIt;
|
||||
@@ -151,10 +151,12 @@ void BOPAlgo_BuilderSolid::PerformShapesToAvoid(const Message_ProgressRange& the
|
||||
//
|
||||
Message_ProgressScope aPS(theRange, NULL, 1);
|
||||
//
|
||||
iCnt=0;
|
||||
for(;;) {
|
||||
if (UserBreak(aPS)) {
|
||||
return;
|
||||
}
|
||||
++iCnt;
|
||||
bFound=Standard_False;
|
||||
//
|
||||
// 1. MEF
|
||||
@@ -731,7 +733,7 @@ void MakeInternalShells(const TopTools_IndexedMapOfShape& theMF,
|
||||
//
|
||||
aNbF = theMF.Extent();
|
||||
for (i = 1; i <= aNbF; ++i) {
|
||||
const TopoDS_Shape& aF = theMF(i);
|
||||
TopoDS_Shape aF = theMF(i);
|
||||
TopExp::MapShapesAndAncestors(aF,
|
||||
TopAbs_EDGE, TopAbs_FACE,
|
||||
aMEF);
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user