mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-09-08 14:17:06 +03:00
Compare commits
17 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
75efe3538e | ||
|
ed20837d8b | ||
|
2ab4e9e180 | ||
|
d83d72acf9 | ||
|
fae5678dc7 | ||
|
488c43ed0c | ||
|
2fa9309186 | ||
|
4309cf7362 | ||
|
7236e83dcc | ||
|
099e0d2524 | ||
|
b332761e13 | ||
|
da71394f31 | ||
|
2736652117 | ||
|
677f383561 | ||
|
bd14b69336 | ||
|
f0620a8d65 | ||
|
245febe036 |
40
.github/workflows/build-linux-clang-x64-dynamic.yml
vendored
Normal file
40
.github/workflows/build-linux-clang-x64-dynamic.yml
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
# This workflow will build OCCT on Ubuntu with Clang compiler
|
||||
# using the provided Docker image with Clang tools.
|
||||
#
|
||||
# Notes:
|
||||
# freetype is disabled
|
||||
# samples are not built
|
||||
|
||||
name: Build OCCT on Linux with Clang x64 dynamic
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
|
||||
jobs:
|
||||
build-linux-clang:
|
||||
name: Build on Ubuntu with Clang
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4.1.7
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apt-get update && sudo apt-get install -y tcl-dev tk-dev cmake clang make libbtbb-dev libx11-dev libglu1-mesa-dev
|
||||
|
||||
- name: Configure OCCT
|
||||
run: |
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake -G "Unix Makefiles" \
|
||||
-D CMAKE_C_COMPILER=clang \
|
||||
-D CMAKE_CXX_COMPILER=clang++ \
|
||||
-D USE_FREETYPE=OFF \
|
||||
-D CMAKE_BUILD_TYPE=Release ..
|
||||
|
||||
- name: Build OCCT
|
||||
run: |
|
||||
cd build
|
||||
make -j$(nproc)
|
40
.github/workflows/build-linux-gcc-x64-dynamic.yml
vendored
Normal file
40
.github/workflows/build-linux-gcc-x64-dynamic.yml
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
# This workflow will build OCCT on Linux with GCC x64 dynamic
|
||||
# using the provided Docker image with GCC tools.
|
||||
#
|
||||
# Notes:
|
||||
# freetype is disabled
|
||||
# samples are not built
|
||||
|
||||
name: Build OCCT on Linux with GCC x64 dynamic
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
|
||||
jobs:
|
||||
build-linux-gcc:
|
||||
name: Build on Ubuntu with GCC
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4.1.7
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apt-get update && sudo apt-get install -y tcl-dev tk-dev cmake gcc g++ make libbtbb-dev libx11-dev libglu1-mesa-dev
|
||||
|
||||
- name: Configure OCCT
|
||||
run: |
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake -G "Unix Makefiles" \
|
||||
-D CMAKE_C_COMPILER=gcc \
|
||||
-D CMAKE_CXX_COMPILER=g++ \
|
||||
-D USE_FREETYPE=OFF \
|
||||
-D CMAKE_BUILD_TYPE=Release ..
|
||||
|
||||
- name: Build OCCT
|
||||
run: |
|
||||
cd build
|
||||
make -j$(nproc)
|
43
.github/workflows/build-macos-clang-x64-dynamic.yml
vendored
Normal file
43
.github/workflows/build-macos-clang-x64-dynamic.yml
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
# This workflow builds OCCT on macOS with Clang x64 dynamic.
|
||||
#
|
||||
# Notes:
|
||||
# freetype is disabled
|
||||
# samples are not built
|
||||
|
||||
name: Build OCCT on macOS with Clang x64 dynamic
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
|
||||
jobs:
|
||||
build-macos-clang:
|
||||
name: Build on macOS with Clang
|
||||
runs-on: macos-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4.1.7
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
brew update
|
||||
brew install tcl-tk tbb gl2ps xerces-c \
|
||||
libxmu libxi libxft libxpm \
|
||||
glew
|
||||
|
||||
- name: Configure OCCT
|
||||
run: |
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake -G "Unix Makefiles" \
|
||||
-D CMAKE_C_COMPILER=clang \
|
||||
-D CMAKE_CXX_COMPILER=clang++ \
|
||||
-D USE_FREETYPE=OFF \
|
||||
-D CMAKE_BUILD_TYPE=Release ..
|
||||
|
||||
- name: Build OCCT
|
||||
run: |
|
||||
cd build
|
||||
make -j$(sysctl -n hw.logicalcpu)
|
44
.github/workflows/build-windows-msvc-x64-dynamic.yml
vendored
Normal file
44
.github/workflows/build-windows-msvc-x64-dynamic.yml
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
# This workflow will build OCCT on Windows with MSVC x64 in dynamic mode
|
||||
# using the provided Docker image with MSVC tools.
|
||||
#
|
||||
# Notes:
|
||||
# freetype is disabled
|
||||
# Draw module is disabled
|
||||
# samples are not built
|
||||
|
||||
name: Build OCCT on Windows with MSVC x64 dynamic
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- '**'
|
||||
|
||||
jobs:
|
||||
build-windows-msvc:
|
||||
name: Build on Windows with MSVC
|
||||
runs-on: windows-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4.1.7
|
||||
|
||||
- name: Set up MSVC
|
||||
uses: ilammy/msvc-dev-cmd@v1.13.0
|
||||
with:
|
||||
arch: x64
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
choco install cmake --installargs 'ADD_CMAKE_TO_PATH=System' -y
|
||||
choco install magicsplat-tcl-tk -y
|
||||
|
||||
- name: Configure OCCT
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -T host=x64 -D USE_FREETYPE=OFF -D BUILD_MODULE_Draw=OFF -D CMAKE_BUILD_TYPE=Release ..
|
||||
|
||||
- name: Build OCCT
|
||||
run: |
|
||||
cd build
|
||||
cmake --build . --config Release -- /m
|
62
.github/workflows/codemsvc.yml
vendored
Normal file
62
.github/workflows/codemsvc.yml
vendored
Normal file
@@ -0,0 +1,62 @@
|
||||
# Security scanning with Microsoft C++ Code Analysis.
|
||||
# Checks any master integration and publish warnings into security GitHub tab.
|
||||
#
|
||||
# Find more information at:
|
||||
# https://github.com/microsoft/msvc-code-analysis-action
|
||||
|
||||
name: Microsoft C++ Code Analysis
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
|
||||
env:
|
||||
# Path to the CMake build directory.
|
||||
build: '${{ github.workspace }}/build'
|
||||
config: 'Debug'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
analyze:
|
||||
permissions:
|
||||
contents: read # for actions/checkout to fetch code
|
||||
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
|
||||
actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status
|
||||
name: Analyze
|
||||
runs-on: windows-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4.1.7
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
choco install cmake --installargs 'ADD_CMAKE_TO_PATH=System' -y
|
||||
choco install magicsplat-tcl-tk -y
|
||||
|
||||
- name: Configure CMake
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -D USE_FREETYPE=OFF -DCMAKE_BUILD_TYPE=${{ env.config }} ..
|
||||
|
||||
- name: Run MSVC Code Analysis
|
||||
uses: microsoft/msvc-code-analysis-action@v0.1.1
|
||||
# Provide a unique ID to access the sarif output path
|
||||
id: run-analysis
|
||||
with:
|
||||
cmakeBuildDirectory: ${{ env.build }}
|
||||
buildConfiguration: ${{ env.config }}
|
||||
# Ruleset file that will determine what checks will be run
|
||||
ruleset: NativeRecommendedRules.ruleset
|
||||
# Paths to ignore analysis of CMake targets and includes
|
||||
# ignoredPaths: ${{ github.workspace }}/dependencies;${{ github.workspace }}/test
|
||||
|
||||
# Upload SARIF file to GitHub Code Scanning Alerts
|
||||
- name: Upload SARIF to GitHub
|
||||
uses: github/codeql-action/upload-sarif@v3.26.5
|
||||
with:
|
||||
sarif_file: ${{ steps.run-analysis.outputs.sarif }}
|
60
.github/workflows/codeql.yml
vendored
Normal file
60
.github/workflows/codeql.yml
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
# Security scanning with CodeQL.
|
||||
# Checks any master integration and publish warnings into security GitHub tab.
|
||||
#
|
||||
# Find more information at:
|
||||
# https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/about-code-scanning
|
||||
|
||||
name: CodeQL Code Analysis
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
|
||||
jobs:
|
||||
analyze:
|
||||
name: Analyze (${{ matrix.language }})
|
||||
runs-on: ${{ 'ubuntu-latest' }}
|
||||
permissions:
|
||||
# required for all workflows
|
||||
security-events: write
|
||||
|
||||
# required to fetch internal or private CodeQL packs
|
||||
packages: read
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- language: c-cpp
|
||||
build-mode: manual
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v4.1.7
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apt-get update && sudo apt-get install -y tcl-dev tk-dev cmake gcc g++ make libbtbb-dev libx11-dev libglu1-mesa-dev
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v3.26.5
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
build-mode: ${{ matrix.build-mode }}
|
||||
|
||||
- if: matrix.build-mode == 'manual'
|
||||
shell: bash
|
||||
run: |
|
||||
mkdir -p build
|
||||
cd build
|
||||
cmake -G "Unix Makefiles" \
|
||||
-D CMAKE_C_COMPILER=gcc \
|
||||
-D CMAKE_CXX_COMPILER=g++ \
|
||||
-D USE_FREETYPE=OFF \
|
||||
-D CMAKE_BUILD_TYPE=Release ..
|
||||
make -j$(nproc)
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v3.26.5
|
||||
with:
|
||||
category: "/language:${{matrix.language}}"
|
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,6 +1,7 @@
|
||||
|
||||
# standard directories for derived files in CASROOT
|
||||
/.adm
|
||||
/.vscode
|
||||
/lin
|
||||
/mac
|
||||
/wnt
|
||||
|
@@ -19,7 +19,7 @@ macro (THIRDPARTY_PRODUCT PRODUCT_NAME HEADER_NAME LIBRARY_CSF_NAME LIBRARY_NAME
|
||||
# include occt macros. compiler_bitness, os_wiht_bit, compiler
|
||||
OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/occt_macros")
|
||||
|
||||
# specify product folder in connectin with 3RDPARTY_DIR
|
||||
# specify product folder in connection with 3RDPARTY_DIR
|
||||
if (3RDPARTY_DIR AND EXISTS "${3RDPARTY_DIR}")
|
||||
#CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_DIR 3RDPARTY_${PRODUCT_NAME}_DIR PATH "The directory containing ${PRODUCT_NAME}")
|
||||
|
||||
|
@@ -12,7 +12,7 @@ if (NOT BISON_EXECUTABLE OR NOT EXISTS "${BISON_EXECUTABLE}")
|
||||
endif()
|
||||
|
||||
# Add paths to 3rdparty subfolders containing name "bison" to CMAKE_PROGRAM_PATH variable to make
|
||||
# these paths searhed by find_package
|
||||
# these paths searched by find_package
|
||||
if (3RDPARTY_DIR)
|
||||
file (GLOB BISON_PATHS LIST_DIRECTORIES true "${3RDPARTY_DIR}/*bison*/")
|
||||
foreach (candidate_path ${BISON_PATHS})
|
||||
|
@@ -2580,7 +2580,7 @@ function (cotire_setup_target_pch_usage _languages _target _wholeTarget)
|
||||
message (STATUS "add_custom_command: TARGET ${_target} PRE_BUILD ${_cmds}")
|
||||
endif()
|
||||
# because CMake PRE_BUILD command does not support dependencies,
|
||||
# we check dependencies explicity in cotire script mode when the pre-build action is run
|
||||
# we check dependencies explicitly in cotire script mode when the pre-build action is run
|
||||
add_custom_command(
|
||||
TARGET "${_target}"
|
||||
PRE_BUILD ${_cmds}
|
||||
@@ -2637,7 +2637,7 @@ function (cotire_setup_unity_generation_commands _language _target _targetScript
|
||||
endif()
|
||||
if (WIN32 AND CMAKE_${_language}_COMPILER_ID MATCHES "MSVC|Intel")
|
||||
# unity file compilation results in potentially huge object file,
|
||||
# thus use /bigobj by default unter cl.exe and Windows Intel
|
||||
# thus use /bigobj by default under cl.exe and Windows Intel
|
||||
set_property (SOURCE "${_unityFile}" APPEND_STRING PROPERTY COMPILE_FLAGS "/bigobj")
|
||||
endif()
|
||||
cotire_set_cmd_to_prologue(_unityCmd)
|
||||
|
@@ -15,7 +15,7 @@ if (NOT FLEX_INCLUDE_DIR OR NOT EXISTS "${FLEX_INCLUDE_DIR}")
|
||||
endif()
|
||||
|
||||
# Add paths to 3rdparty subfolders containing name "flex" to CMAKE_PROGRAM_PATH and
|
||||
# CMAKE_INCLUDE_PATH variables to make these paths searhed by find_package
|
||||
# CMAKE_INCLUDE_PATH variables to make these paths searched by find_package
|
||||
if (3RDPARTY_DIR)
|
||||
file (GLOB FLEX_PATHS LIST_DIRECTORIES true "${3RDPARTY_DIR}/*flex*")
|
||||
foreach (candidate_path ${FLEX_PATHS})
|
||||
|
@@ -14,7 +14,7 @@ OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/occt_macros")
|
||||
OCCT_MAKE_COMPILER_SHORT_NAME()
|
||||
OCCT_MAKE_COMPILER_BITNESS()
|
||||
|
||||
# specify freetype folder in connectin with 3RDPARTY_DIR
|
||||
# specify freetype folder in connection with 3RDPARTY_DIR
|
||||
if (3RDPARTY_DIR AND EXISTS "${3RDPARTY_DIR}")
|
||||
#CHECK_PATH_FOR_CONSISTENCY (3RDPARTY_DIR 3RDPARTY_FREETYPE_DIR PATH "The directory containing freetype")
|
||||
|
||||
|
@@ -168,7 +168,7 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "[Cc][Ll][Aa][Nn][Gg]")
|
||||
set (CMAKE_CXX_FLAGS "-stdlib=libc++ ${CMAKE_CXX_FLAGS}")
|
||||
endif()
|
||||
# Optimize size of binaries
|
||||
set (CMAKE_SHARED_LINKER_FLAGS "-Wl,-s ${CMAKE_SHARED_LINKER_FLAGS}")
|
||||
set (CMAKE_SHARED_LINKER_FLAGS_RELEASE "-Wl,-s ${CMAKE_SHARED_LINKER_FLAGS_RELEASE}")
|
||||
elseif(MINGW)
|
||||
add_definitions(-D_WIN32_WINNT=0x0601)
|
||||
# _WIN32_WINNT=0x0601 (use Windows 7 SDK)
|
||||
|
@@ -107,8 +107,8 @@ foreach (OCCT_PACKAGE ${USED_PACKAGES})
|
||||
|
||||
# choose appropriate extension for generated files: "cxx" if source file contains
|
||||
# instruction to generate C++ code, "c" otherwise
|
||||
set (BISON_OUTPUT_FILE_EXT "c")
|
||||
set (FLEX_OUTPUT_FILE_EXT "c")
|
||||
set (BISON_OUTPUT_FILE_EXT "cxx")
|
||||
set (FLEX_OUTPUT_FILE_EXT "cxx")
|
||||
file (STRINGS "${CURRENT_BISON_FILE}" FILE_BISON_CONTENT)
|
||||
foreach (FILE_BISON_CONTENT_LINE ${FILE_BISON_CONTENT})
|
||||
string (REGEX MATCH "%language \"C\\+\\+\"" CXX_BISON_LANGUAGE_FOUND ${FILE_BISON_CONTENT_LINE})
|
||||
@@ -479,8 +479,8 @@ if (BUILD_SHARED_LIBS OR EXECUTABLE_PROJECT)
|
||||
if(IS_VTK_9XX)
|
||||
string (REGEX REPLACE "vtk" "VTK::" USED_TOOLKITS_BY_CURRENT_PROJECT "${USED_TOOLKITS_BY_CURRENT_PROJECT}")
|
||||
endif()
|
||||
target_link_libraries (${PROJECT_NAME} ${USED_TOOLKITS_BY_CURRENT_PROJECT} ${USED_EXTERNAL_LIBS_BY_CURRENT_PROJECT})
|
||||
endif()
|
||||
target_link_libraries (${PROJECT_NAME} ${USED_TOOLKITS_BY_CURRENT_PROJECT} ${USED_EXTERNAL_LIBS_BY_CURRENT_PROJECT})
|
||||
|
||||
if (USE_QT)
|
||||
foreach (PROJECT_LIBRARY_DEBUG ${PROJECT_LIBRARIES_DEBUG})
|
||||
|
@@ -27,7 +27,7 @@ if (WIN32)
|
||||
|
||||
# Below, we have correct 3RDPARTY_DIR.
|
||||
|
||||
# Initialize TBB folder in connectin with 3RDPARTY_DIR.
|
||||
# Initialize TBB folder in connection with 3RDPARTY_DIR.
|
||||
if (("${3RDPARTY_TBB_DIR}" STREQUAL "") OR (NOT EXISTS "${3RDPARTY_TBB_DIR}"))
|
||||
FIND_PRODUCT_DIR ("${3RDPARTY_DIR}" TBB TBB_DIR_NAME)
|
||||
if (TBB_DIR_NAME)
|
||||
@@ -44,7 +44,7 @@ if (WIN32)
|
||||
REQUIRED
|
||||
CONFIG)
|
||||
|
||||
# Achive include directory
|
||||
# Archive include directory
|
||||
get_target_property (TBB_INCLUDE_DIR TBB::tbb INTERFACE_INCLUDE_DIRECTORIES)
|
||||
if (NOT DEFINED 3RDPARTY_TBB_INCLUDE_DIR)
|
||||
set (3RDPARTY_TBB_INCLUDE_DIR "" CACHE PATH "The directory containing headers of the TBB")
|
||||
@@ -56,13 +56,17 @@ if (WIN32)
|
||||
list (APPEND 3RDPARTY_NOT_INCLUDED 3RDPARTY_TBB_INCLUDE_DIR)
|
||||
endif()
|
||||
|
||||
# Get installed configuration of tbb
|
||||
get_target_property (TARGET_TBB_IMPORT_CONFS TBB::tbb IMPORTED_CONFIGURATIONS)
|
||||
list (GET TARGET_TBB_IMPORT_CONFS 0 CHOSEN_IMPORT_CONF)
|
||||
|
||||
separate_arguments (CSF_TBB)
|
||||
foreach (LIB IN LISTS CSF_TBB)
|
||||
string(TOLOWER "${LIB}" LIB_LOWER)
|
||||
string(TOUPPER "${LIB}" LIB_UPPER)
|
||||
|
||||
# Achive *.lib files and directory containing it.
|
||||
get_target_property (TBB_LIB_FILE "TBB::${LIB_LOWER}" IMPORTED_IMPLIB_RELEASE)
|
||||
# Archive *.lib files and directory containing it.
|
||||
get_target_property (TBB_LIB_FILE "TBB::${LIB_LOWER}" IMPORTED_IMPLIB_${CHOSEN_IMPORT_CONF})
|
||||
# Reserve cache variable for *.lib.
|
||||
if (NOT DEFINED 3RDPARTY_${LIB_UPPER}_LIBRARY)
|
||||
set (3RDPARTY_${LIB_UPPER}_LIBRARY "" CACHE FILEPATH "${LIB_UPPER} library (*.lib)")
|
||||
@@ -88,8 +92,8 @@ if (WIN32)
|
||||
list (APPEND 3RDPARTY_NO_LIBS 3RDPARTY_${LIB_UPPER}_LIBRARY_DIR)
|
||||
endif()
|
||||
|
||||
# Achive *.dll files and directory containing it.
|
||||
get_target_property (TBB_DLL_FILE "TBB::${LIB_LOWER}" IMPORTED_LOCATION_RELEASE)
|
||||
# Archive *.dll files and directory containing it.
|
||||
get_target_property (TBB_DLL_FILE "TBB::${LIB_LOWER}" IMPORTED_LOCATION_${CHOSEN_IMPORT_CONF})
|
||||
# Reserve cache variable for *.dll.
|
||||
if (NOT DEFINED 3RDPARTY_${LIB_UPPER}_DLL)
|
||||
set (3RDPARTY_${LIB_UPPER}_DLL "" CACHE FILEPATH "${LIB_UPPER} library (*.dll)")
|
||||
@@ -171,9 +175,9 @@ else ()
|
||||
REQUIRED
|
||||
CONFIG)
|
||||
endif()
|
||||
# TBB has been configured (in other case FATAL_ERROR occures).
|
||||
# TBB has been configured (in other case FATAL_ERROR occurs).
|
||||
|
||||
# Achive include directory.
|
||||
# Archive include directory.
|
||||
get_target_property (TBB_INCLUDE_DIR TBB::tbb INTERFACE_INCLUDE_DIRECTORIES)
|
||||
if (NOT DEFINED 3RDPARTY_TBB_INCLUDE_DIR)
|
||||
set (3RDPARTY_TBB_INCLUDE_DIR "" CACHE PATH "The directory containing headers of the TBB")
|
||||
@@ -185,13 +189,17 @@ else ()
|
||||
list (APPEND 3RDPARTY_NOT_INCLUDED 3RDPARTY_TBB_INCLUDE_DIR)
|
||||
endif()
|
||||
|
||||
# Get installed configuration of tbb
|
||||
get_target_property (TARGET_TBB_IMPORT_CONFS TBB::tbb IMPORTED_CONFIGURATIONS)
|
||||
list (GET TARGET_TBB_IMPORT_CONFS 0 CHOSEN_IMPORT_CONF)
|
||||
|
||||
separate_arguments (CSF_TBB)
|
||||
foreach (LIB IN LISTS CSF_TBB)
|
||||
string(TOLOWER "${LIB}" LIB_LOWER)
|
||||
string(TOUPPER "${LIB}" LIB_UPPER)
|
||||
|
||||
# Achive *.so files and directory containing it.
|
||||
get_target_property (TBB_SO_FILE "TBB::${LIB_LOWER}" IMPORTED_LOCATION_RELEASE)
|
||||
# Archive *.so files and directory containing it.
|
||||
get_target_property (TBB_SO_FILE "TBB::${LIB_LOWER}" IMPORTED_LOCATION_${CHOSEN_IMPORT_CONF})
|
||||
# Reserve cache variable for *.so.
|
||||
if (NOT DEFINED 3RDPARTY_${LIB_UPPER}_LIBRARY)
|
||||
set (3RDPARTY_${LIB_UPPER}_LIBRARY "" CACHE FILEPATH "${LIB_UPPER} library (*.so)")
|
||||
|
@@ -405,7 +405,7 @@ proc Rename {thePath theExtensions theNewNames theCheckMode} {
|
||||
}
|
||||
}
|
||||
|
||||
# @thePackagePath eather file or folder. If it is a folder,
|
||||
# @thePackagePath either file or folder. If it is a folder,
|
||||
# all files with @theHeaderExtensions are processed.
|
||||
# "fwd.tcollection" section from upgrade.ini file is used to find out what
|
||||
# classes have been converted and, thus, what forward declarations can be replaced
|
||||
|
@@ -370,7 +370,7 @@ https://dev.opencascade.org/resources/download/3rd-party-components
|
||||
| Flex 2.6.4+ and Bison 3.7.1+ | https://sourceforge.net/projects/winflexbison/ | Data Exchange | Updating STEP and ExprIntrp parsers |
|
||||
| RapidJSON 1.1+ | https://rapidjson.org/ | Data Exchange | Reading glTF files |
|
||||
| Draco 1.4.1+ | https://github.com/google/draco | Data Exchange | Reading compressed glTF files |
|
||||
| Tcl/Tk 8.6.3+ | https://www.tcl.tk/software/tcltk/download.html | DRAW Test Harness | Tcl interpretor in Draw module |
|
||||
| Tcl/Tk 8.6.3+ | https://www.tcl.tk/software/tcltk/download.html | DRAW Test Harness | Tcl interpreter in Draw module |
|
||||
| Qt 5.3.2+ | https://www.qt.io/download/ | Inspector and Samples | Inspector Qt samples and |
|
||||
| Doxygen 1.8.5+ | https://www.doxygen.nl/download.html | Documentation | (Re)generating documentation |
|
||||
| Graphviz 2.38+ | https://graphviz.org/ | Documentation | Generating dependency graphs |
|
||||
|
@@ -763,7 +763,7 @@ filter2->AddSkipped("TDataStd_Integer");
|
||||
app->Open("example.cbf", doc, filter2);
|
||||
~~~~
|
||||
|
||||
*PCDM_ReaderFilter::AppendMode_Protect* means that if the loading algorithm finds already existing attribute in the document, it will not be overwritten by attibute from the loading file. If it is needed to
|
||||
*PCDM_ReaderFilter::AppendMode_Protect* means that if the loading algorithm finds already existing attribute in the document, it will not be overwritten by attribute from the loading file. If it is needed to
|
||||
substitute the existing attributes, the reading mode *PCDM_ReaderFilter::AppendMode_Overwrite* must be used instead.
|
||||
|
||||
*AddRead* and *AddSkipped* methods for attributes should not be used in one filter. If it is so, *AddSkipped* attributes are ignored during the read.
|
||||
@@ -971,7 +971,7 @@ The "correct" history of a used modeling operation serves the basis of naming me
|
||||
| Closed wire | Edges | All edges |
|
||||
| Opened wire | Edges and ending vertexes | All edges plus ending vertexes of the wire |
|
||||
| Edge | Vertexes | Two vertexes are expected |
|
||||
| Compound or CompSolid | To be used consequentially the above declared rule applied to all sub-shapes of the first level | Compound/CompSolid to be explored level by level until any the mentioned above types will be met |
|
||||
| Compound or CompSolid | To be used consequently the above declared rule applied to all sub-shapes of the first level | Compound/CompSolid to be explored level by level until any the mentioned above types will be met |
|
||||
|
||||
The history should return (and track) only elementary types of sub-shapes, i.e. Faces, Edges and Vertexes, while other so-called aggregation types: Compounds, Shells, Wires, are calculated by Selection mechanism automatically.
|
||||
|
||||
|
@@ -119,7 +119,7 @@ if (OpenCASCADE_INCLUDE_DIR_FOUND AND OpenCASCADE_LIBRARY_DIR_FOUND)
|
||||
set (OpenCASCADE_INSTALL_PREFIX ${OpenCASCADE_DIR})
|
||||
|
||||
# Define OCCT toolkits so that CMake can put absolute paths to linker;
|
||||
# the library existance is not checked here, since modules can be disabled.
|
||||
# the library existence is not checked here, since modules can be disabled.
|
||||
foreach (aLibIter ${OpenCASCADE_TKLIST})
|
||||
add_library (${aLibIter} SHARED IMPORTED)
|
||||
|
||||
|
@@ -11,7 +11,7 @@ project (ImportExport)
|
||||
add_definitions (-DWINVER=0x0501 -DUNICODE -D_UNICODE)
|
||||
set (CMAKE_MFC_FLAG 2)
|
||||
|
||||
set (ImportExport_SRC_DIR ${MFC_STANDARD_SAMPLES_DIR}/05_ImportExport/src)
|
||||
set (ImportExport_SRC_DIR ${MFC_STANDARD_SAMPLES_DIR}/03_ImportExport/src)
|
||||
set (ImportExport_HEADER_FILES ${ImportExport_SRC_DIR}/ColoredShapes.h
|
||||
${ImportExport_SRC_DIR}/ImportExportApp.h
|
||||
${ImportExport_SRC_DIR}/ImportExportDoc.h
|
||||
@@ -21,7 +21,7 @@ set (ImportExport_SOURCE_FILES ${ImportExport_SRC_DIR}/ColoredShapes.cpp
|
||||
${ImportExport_SRC_DIR}/ImportExportDoc.cpp
|
||||
${ImportExport_SRC_DIR}/StdAfx.cpp)
|
||||
|
||||
set (ImportExport_RESOURCE_DIR ${MFC_STANDARD_SAMPLES_DIR}/05_ImportExport/res)
|
||||
set (ImportExport_RESOURCE_DIR ${MFC_STANDARD_SAMPLES_DIR}/03_ImportExport/res)
|
||||
set (ImportExport_RESOURCE_HEADER ${ImportExport_RESOURCE_DIR}/resource.h)
|
||||
set (ImportExport_RESOURCE_FILES ${ImportExport_RESOURCE_DIR}/Toolbar.bmp
|
||||
${ImportExport_RESOURCE_DIR}/ImportExport.rc)
|
||||
@@ -55,7 +55,7 @@ else()
|
||||
endif()
|
||||
|
||||
include_directories (${CMAKE_BINARY_DIR}/inc
|
||||
${MFC_STANDARD_SAMPLES_DIR}/05_ImportExport
|
||||
${MFC_STANDARD_SAMPLES_DIR}/03_ImportExport
|
||||
${ImportExport_SRC_DIR}
|
||||
${MFC_STANDARD_SAMPLES_DIR}/Common)
|
||||
|
||||
|
@@ -11,7 +11,7 @@ project (HLR)
|
||||
add_definitions(-DWINVER=0x0501 -DUNICODE -D_UNICODE)
|
||||
set (CMAKE_MFC_FLAG 2)
|
||||
|
||||
set (HLR_SRC_DIR ${MFC_STANDARD_SAMPLES_DIR}/08_HLR/src)
|
||||
set (HLR_SRC_DIR ${MFC_STANDARD_SAMPLES_DIR}/04_HLR/src)
|
||||
set (HLR_HEADER_FILES ${HLR_SRC_DIR}/HLRApp.h
|
||||
${HLR_SRC_DIR}/HLRDoc.h
|
||||
${HLR_SRC_DIR}/HLRView2D.h
|
||||
@@ -23,7 +23,7 @@ set (HLR_SOURCE_FILES ${HLR_SRC_DIR}/HLRApp.cpp
|
||||
${HLR_SRC_DIR}/SelectionDialog.cpp
|
||||
${HLR_SRC_DIR}/StdAfx.cpp )
|
||||
|
||||
set (HLR_RESOURCE_DIR ${MFC_STANDARD_SAMPLES_DIR}/08_HLR/res)
|
||||
set (HLR_RESOURCE_DIR ${MFC_STANDARD_SAMPLES_DIR}/04_HLR/res)
|
||||
set (HLR_RESOURCE_HEADER ${HLR_RESOURCE_DIR}/resource.h)
|
||||
set (HLR_RESOURCE_FILES ${HLR_RESOURCE_DIR}/axoviewd.bmp
|
||||
${HLR_RESOURCE_DIR}/axoviewf.bmp
|
||||
|
@@ -82,7 +82,6 @@ set (COMMON_HEADER_FILES ${MFC_STANDARD_COMMON_SAMPLES_DIR}/AISDialogs.h
|
||||
${MFC_STANDARD_COMMON_SAMPLES_DIR}/OCC_StereoConfigDlg.h
|
||||
${MFC_STANDARD_COMMON_SAMPLES_DIR}/ParamsFacesPage.h
|
||||
${MFC_STANDARD_COMMON_SAMPLES_DIR}/ResultDialog.h
|
||||
${MFC_STANDARD_COMMON_SAMPLES_DIR}/User_Cylinder.hxx
|
||||
${MFC_STANDARD_COMMON_SAMPLES_DIR}/ColoredMeshDlg.h
|
||||
${MFC_STANDARD_COMMON_SAMPLES_DIR}/DimensionDlg.h
|
||||
${MFC_STANDARD_COMMON_SAMPLES_DIR}/LengthParamsEdgePage.h
|
||||
|
@@ -36,7 +36,7 @@
|
||||
//! The Datum groups together the construction elements such as lines, circles, points, trihedra, plane trihedra, planes and axes.
|
||||
//! The Relation is made up of constraints on one or more interactive shapes and the corresponding reference geometry.
|
||||
//! For example, you might want to constrain two edges in a parallel relation.
|
||||
//! This contraint is considered as an object in its own right, and is shown as a sensitive primitive.
|
||||
//! This constraint is considered as an object in its own right, and is shown as a sensitive primitive.
|
||||
//! This takes the graphic form of a perpendicular arrow marked with the || symbol and lying between the two edges.
|
||||
//! The Object type includes topological shapes, and connections between shapes.
|
||||
//! None, in order not to eliminate the object, tells the application to look further until it finds an object definition in its generation which is accepted.
|
||||
|
@@ -42,7 +42,7 @@ DEFINE_STANDARD_HANDLE(AIS_ExclusionFilter, SelectMgr_Filter)
|
||||
//! except those of the types and signatures stored
|
||||
//! in the filter framework
|
||||
//! - Exclusion flag off
|
||||
//! - the funciton IsOk answers true for all objects
|
||||
//! - the function IsOk answers true for all objects
|
||||
//! which have the same type and signature as the stored ones.
|
||||
class AIS_ExclusionFilter : public SelectMgr_Filter
|
||||
{
|
||||
|
@@ -40,7 +40,7 @@ public:
|
||||
//! @warning It binds this object with Graphic3d_ZLayerId_TopOSD layer.
|
||||
Standard_EXPORT AIS_RubberBand();
|
||||
|
||||
//! Consructs the rubber band with empty filling and defined line style.
|
||||
//! Constructs the rubber band with empty filling and defined line style.
|
||||
//! @param theLineColor [in] color of rubber band lines
|
||||
//! @param theType [in] type of rubber band lines
|
||||
//! @param theLineWidth [in] width of rubber band line. By default it is 1.
|
||||
|
@@ -31,7 +31,7 @@
|
||||
#include <TCollection_HAsciiString.hxx>
|
||||
|
||||
#include <stdio.h>
|
||||
// This is a generic header for any STEP sheme
|
||||
// This is a generic header for any STEP scheme
|
||||
static Handle(TCollection_HAsciiString) nulstr;
|
||||
static Handle(Interface_HArray1OfHAsciiString) nularr;
|
||||
|
||||
|
@@ -146,7 +146,7 @@ static void Hunt(const TColStd_Array1OfReal& Arr,
|
||||
const Standard_Real Coord,
|
||||
Standard_Integer& Iloc)
|
||||
{//Warning: Hunt is used to find number of knot which equals coordinate component,
|
||||
// when coordinate component definitly equals a knot only.
|
||||
// when coordinate component definitely equals a knot only.
|
||||
Standard_Real Tol=Precision::PConfusion()/10;
|
||||
Standard_Integer i=1;
|
||||
while((i <= Arr.Upper()) && (Abs(Coord - Arr(i)) > Tol)){
|
||||
@@ -638,7 +638,7 @@ static void Locate2Coord(const Standard_Integer Index,
|
||||
if((DComp > 0)&&(Abs(DComp)>Tol)) {
|
||||
Hunt(Arr,Comp,N);
|
||||
if (N >= NUp){
|
||||
//limit case: Hunt() cought upper knot. Take the last span.
|
||||
//limit case: Hunt() caught upper knot. Take the last span.
|
||||
N = NUp - 1;
|
||||
}
|
||||
if(Index==1) { Tmp1=BSplS->UKnot(N);
|
||||
@@ -659,7 +659,7 @@ static void Locate2Coord(const Standard_Integer Index,
|
||||
if((DComp < 0)&&(Abs(DComp)>Tol)){
|
||||
Hunt(Arr,Comp,N);
|
||||
if (N <= NLo) {
|
||||
//limit case: Hunt() cought lower knot. Take the first span.
|
||||
//limit case: Hunt() caught lower knot. Take the first span.
|
||||
N = NLo + 1;
|
||||
}
|
||||
if(Index==1) { Tmp1=BSplS->UKnot(N-1);
|
||||
|
@@ -559,7 +559,7 @@ Standard_Boolean Adaptor3d_TopolTool::Identical
|
||||
#include <gp_Dir.hxx>
|
||||
#include <gp_Vec.hxx>
|
||||
|
||||
#define myMinPnts 4 //Absolut possible minimum of sample points
|
||||
#define myMinPnts 4 //Absolute possible minimum of sample points
|
||||
//Restriction of IntPolyh
|
||||
|
||||
|
||||
|
@@ -363,7 +363,7 @@ void AdvApp2Var_ApproxAFunc2Var::ComputePatches(const AdvApprox_Cutting& UChoice
|
||||
throw Standard_ConstructionError("AdvApp2Var_ApproxAFunc2Var : Surface Discretisation Error");
|
||||
}
|
||||
|
||||
// calculate the number and the type of autorized cuts
|
||||
// calculate the number and the type of authorized cuts
|
||||
// depending on the max number of squares and the validity of next cuts.
|
||||
NbU = myResult.NbPatchInU();
|
||||
NbV = myResult.NbPatchInV();
|
||||
@@ -457,7 +457,7 @@ void AdvApp2Var_ApproxAFunc2Var::ComputePatches(const AdvApprox_Cutting& UChoice
|
||||
throw Standard_ConstructionError("AdvApp2Var_ApproxAFunc2Var : Surface Discretisation Error");
|
||||
}
|
||||
|
||||
// calculate the number and type of autorized cuts
|
||||
// calculate the number and type of authorized cuts
|
||||
// depending on the max number of squares and the validity of next cuts
|
||||
NbU = myResult.NbPatchInU();
|
||||
NbV = myResult.NbPatchInV();
|
||||
|
@@ -42,13 +42,13 @@ class Geom_BSplineSurface;
|
||||
//! OneDTol, TwoDTol, ThreeDTol: The tolerance of approximation in each
|
||||
//! subspaces
|
||||
//! OneDTolFr, TwoDTolFr, ThreeDTolFr: The tolerance of approximation on
|
||||
//! the boundarys in each subspaces
|
||||
//! the boundaries in each subspaces
|
||||
//! [FirstInU, LastInU]: The Bounds in U of the Approximation
|
||||
//! [FirstInV, LastInV]: The Bounds in V of the Approximation
|
||||
//! FavorIso : Give preference to extract u-iso or v-iso on F(U,V)
|
||||
//! This can be useful to optimize the <Func> method
|
||||
//! ContInU, ContInV : Continuity waiting in u and v
|
||||
//! PrecisCode : Precision on approximation's error mesurement
|
||||
//! PrecisCode : Precision on approximation's error measurement
|
||||
//! 1 : Fast computation and average precision
|
||||
//! 2 : Average computation and good precision
|
||||
//! 3 : Slow computation and very good precision
|
||||
|
@@ -337,7 +337,7 @@ int mma1cdi_(integer *ndimen,
|
||||
/* HERMIT: Table of coeff. 2*(IORDRE+1) Hermite polynoms */
|
||||
/* of degree 2*IORDRE+1. */
|
||||
/* IERCOD: Error code, */
|
||||
/* = 0, Everythig is OK */
|
||||
/* = 0, Everything is OK */
|
||||
/* = 1, The value of IORDRE is out of (0,2) */
|
||||
/* COMMON USED : */
|
||||
/* ---------------- */
|
||||
@@ -989,8 +989,8 @@ int mma1fer_(integer *,//ndimen,
|
||||
/* IORDRE: Order of constraint at the extremities of the border */
|
||||
/* -1 = no constraints, */
|
||||
/* 0 = constraints of passage to limits (i.e. C0), */
|
||||
/* 1 = C0 + constraintes of 1st derivatives (i.e. C1), */
|
||||
/* 2 = C1 + constraintes of 2nd derivatives (i.e. C2). */
|
||||
/* 1 = C0 + constraints of 1st derivatives (i.e. C1), */
|
||||
/* 2 = C1 + constraints of 2nd derivatives (i.e. C2). */
|
||||
/* NDGJAC: Degree of development in series to use for the calculation */
|
||||
/* in the base of Jacobi. */
|
||||
/* CRVJAC: Table of coeff. of the curve of approximation in the */
|
||||
@@ -1131,7 +1131,7 @@ int mma1fer_(integer *,//ndimen,
|
||||
|
||||
/* ------------------------------ The end -------------------------------
|
||||
*/
|
||||
/* --> The order of constraints is not within autorized values. */
|
||||
/* --> The order of constraints is not within authorized values. */
|
||||
L9100:
|
||||
*iercod = 1;
|
||||
goto L9999;
|
||||
@@ -3520,7 +3520,7 @@ int AdvApp2Var_ApproxF2var::mma2cdi_( integer *ndimen,
|
||||
goto L9100;
|
||||
}
|
||||
|
||||
/* ---- Subract discretizations of polynoms of constraints
|
||||
/* ---- Subtract discretizations of polynoms of constraints
|
||||
---- */
|
||||
|
||||
mma2cd3_(ndimen, nbpntu, &urootl[1], nbpntv, iordru, &sotbu1[1],
|
||||
@@ -4919,7 +4919,7 @@ int mma2cfv_(integer *ndvjac,
|
||||
/* MAXDGU: Degree maximum by U of coeff. to calculate. */
|
||||
/* NBPNTV: Degree of the Legendre polynom on the roots which of */
|
||||
/* the coefficients of integration by V are calculated */
|
||||
/* by Gauss method. It is reqired that NBPNTV = 30, 40, 50 or 61 and NDVJAC < NBPNTV. */
|
||||
/* by Gauss method. It is required that NBPNTV = 30, 40, 50 or 61 and NDVJAC < NBPNTV. */
|
||||
/* GSSVTB: Table of coefficients of integration by Gauss method */
|
||||
/* by V for NDVJAC fixed: j varies from 0 to NBPNTV/2. */
|
||||
/* CHPAIR: Table of terms connected to degrees from MINDGU to MAXDGU by U to */
|
||||
@@ -7511,7 +7511,7 @@ int mmmapcoe_(integer *ndim,
|
||||
|
||||
/* FUNCTION : */
|
||||
/* ---------- */
|
||||
/* Calculate the coefficients of polinomial approximation curve */
|
||||
/* Calculate the coefficients of polynomial approximation curve */
|
||||
/* of degree NDGJAC by the method of smallest squares starting from */
|
||||
/* the discretization of function on the roots of Legendre polynom */
|
||||
/* of degree NBPNTS. */
|
||||
@@ -8102,7 +8102,7 @@ int mmjacpt_(const integer *ndimen,
|
||||
|
||||
/* OUTPUT ARGUMENTS : */
|
||||
/* ------------------- */
|
||||
/* PTCAUX : Auxilliary space. */
|
||||
/* PTCAUX : Auxiliary space. */
|
||||
/* PTCCAN : The square in the canonic base (-1,1) */
|
||||
|
||||
/* COMMONS USED : */
|
||||
|
@@ -1229,7 +1229,7 @@ int AdvApp2Var_MathBase::mmaperx_(integer *ncofmx,
|
||||
/* ERRMAX : Precision of the approximation. */
|
||||
/* IERCOD = 0, OK */
|
||||
/* = 1, order of constraints (IORDRE) is not within the */
|
||||
/* autorized values. */
|
||||
/* authorized values. */
|
||||
/* COMMONS USED : */
|
||||
/* ---------------- */
|
||||
|
||||
@@ -2281,7 +2281,7 @@ int AdvApp2Var_MathBase::mmcglc1_(integer *ndimax,
|
||||
/* length calculation. */
|
||||
/* TFINAL : Upper limit of the interval of integration for */
|
||||
/* length calculation. */
|
||||
/* EPSILN : REQIRED precision for length calculation. */
|
||||
/* EPSILN : REQUIRED precision for length calculation. */
|
||||
|
||||
/* OUTPUT ARGUMENTS : */
|
||||
/* ------------------- */
|
||||
@@ -2677,14 +2677,14 @@ int AdvApp2Var_MathBase::mmcvctx_(integer *ndimen,
|
||||
/* 2 --> cas (0)+ (1) + " " 2nd derivatives. */
|
||||
/* etc... */
|
||||
/* CTRTES : Table of constraints. */
|
||||
/* CTRTES(*,1,*) = contraints at -1. */
|
||||
/* CTRTES(*,2,*) = contraints at 1. */
|
||||
/* CTRTES(*,1,*) = constraints at -1. */
|
||||
/* CTRTES(*,2,*) = constraints at 1. */
|
||||
|
||||
/* OUTPUT ARGUMENTS : */
|
||||
/* ------------------- */
|
||||
/* CRVRES : Resulting curve defined on (-1,1). */
|
||||
/* TABAUX : Auxilliary matrix. */
|
||||
/* XMATRI : Auxilliary matrix. */
|
||||
/* TABAUX : Auxiliary matrix. */
|
||||
/* XMATRI : Auxiliary matrix. */
|
||||
|
||||
/* COMMONS UTILISES : */
|
||||
/* ---------------- */
|
||||
@@ -3560,7 +3560,7 @@ int AdvApp2Var_MathBase::mmdrvck_(integer *ncoeff,
|
||||
*/
|
||||
|
||||
|
||||
/* Factorials (1 to 21) caculated on VAX in R*16 */
|
||||
/* Factorials (1 to 21) calculated on VAX in R*16 */
|
||||
|
||||
|
||||
/* **********************************************************************
|
||||
@@ -3845,7 +3845,7 @@ int mmexthi_(integer *ndegre,
|
||||
/* within the interval [0,1]. They are ranked for the degrees increasing from */
|
||||
/* 2 to 61. */
|
||||
/* HILTAB : Table of Legendre interpolators concerning ROOTAB. */
|
||||
/* The adressing is the same. */
|
||||
/* The addressing is the same. */
|
||||
/* HI0TAB : Table of Legendre interpolators for root x=0 */
|
||||
/* of polynoms of UNEVEN degree. */
|
||||
/* RTLTB0 : Table of Li(uk) where uk are the roots of */
|
||||
@@ -3990,7 +3990,7 @@ int mmextrl_(integer *ndegre,
|
||||
/* within the interval [0,1]. They are ranked for the degrees increasing from */
|
||||
/* 2 to 61. */
|
||||
/* HILTAB : Table of Legendre interpolators concerning ROOTAB. */
|
||||
/* The adressing is the same. */
|
||||
/* The addressing is the same. */
|
||||
/* HI0TAB : Table of Legendre interpolators for root x=0 */
|
||||
/* of polynoms of UNEVEN degree. */
|
||||
/* RTLTB0 : Table of Li(uk) where uk are the roots of */
|
||||
@@ -4610,7 +4610,7 @@ int AdvApp2Var_MathBase::mmfmcb5_(integer *isenmsc,
|
||||
|
||||
/* FUNCTION : */
|
||||
/* ---------- */
|
||||
/* Reformating (and eventual compression/decompression) of curve */
|
||||
/* Reformatting (and eventual compression/decompression) of curve */
|
||||
/* (ndim,.) by (.,ndim) and vice versa. */
|
||||
|
||||
/* KEYWORDS : */
|
||||
@@ -6260,7 +6260,7 @@ L9999:
|
||||
|
||||
/* OUTPUT ARGUMENTS : */
|
||||
/* ------------------- */
|
||||
/* POLAUX : Auxilliary space. */
|
||||
/* POLAUX : Auxiliary space. */
|
||||
/* CRVCAN : The curve in the canonic base [-1,1] */
|
||||
|
||||
/* COMMONS USED : */
|
||||
@@ -6297,7 +6297,7 @@ L9999:
|
||||
|
||||
i__1 = *ndim;
|
||||
for (nd = 1; nd <= i__1; ++nd) {
|
||||
/* Loading of the auxilliary table. */
|
||||
/* Loading of the auxiliary table. */
|
||||
ii = 0;
|
||||
i__2 = ndeg / 2;
|
||||
for (i__ = 0; i__ <= i__2; ++i__) {
|
||||
@@ -6377,7 +6377,7 @@ int mmloncv_(integer *ndimax,
|
||||
/* -------------------- */
|
||||
|
||||
/* NDIMAX : Max number of lines of tables (max number of polynoms). */
|
||||
/* NDIMEN : Dimension of the polynom (Nomber of polynoms). */
|
||||
/* NDIMEN : Dimension of the polynom (Number of polynoms). */
|
||||
/* NCOEFF : Number of coefficients of the polynom (no limitation) */
|
||||
/* This is degree + 1 */
|
||||
/* COURBE : Coefficients of the polynom ordered by increasing power */
|
||||
@@ -6606,7 +6606,7 @@ L9900:
|
||||
/* FUNCTION : */
|
||||
/* ---------- */
|
||||
/* Position on the polynoms of base hermit-Jacobi */
|
||||
/* and their succesive derivatives */
|
||||
/* and their successive derivatives */
|
||||
|
||||
/* KEYWORDS : */
|
||||
/* ----------- */
|
||||
@@ -7160,7 +7160,7 @@ int mmpojac_(doublereal *tparam,
|
||||
*/
|
||||
|
||||
|
||||
/* static varaibles */
|
||||
/* static variables */
|
||||
|
||||
|
||||
|
||||
@@ -7519,12 +7519,12 @@ L9999:
|
||||
|
||||
/* INPUT ARGUMENTS : */
|
||||
/* -------------------- */
|
||||
/* HDIMEN: NOMBER OF LINE (OR COLUMN) OF THE HESSIAN MATRIX */
|
||||
/* GDIMEN: NOMBER OF LINE OF THE MATRIX OF CONSTRAINTS */
|
||||
/* HNSTOC: NOMBErS OF TERMS IN THE PROFILE OF HESSIAN MATRIX
|
||||
/* HDIMEN: NUMBER OF LINE (OR COLUMN) OF THE HESSIAN MATRIX */
|
||||
/* GDIMEN: NUMBER OF LINE OF THE MATRIX OF CONSTRAINTS */
|
||||
/* HNSTOC: NUMBERS OF TERMS IN THE PROFILE OF HESSIAN MATRIX
|
||||
*/
|
||||
/* GNSTOC: NOMBERS OF TERMS IN THE PROFILE OF THE MATRIX OF CONSTRAINTS */
|
||||
/* MNSTOC: NOMBERS OF TERMS IN THE PROFILE OF THE MATRIX M= G H t(G) */
|
||||
/* GNSTOC: NUMBERS OF TERMS IN THE PROFILE OF THE MATRIX OF CONSTRAINTS */
|
||||
/* MNSTOC: NUMBERS OF TERMS IN THE PROFILE OF THE MATRIX M= G H t(G) */
|
||||
/* where H IS THE HESSIAN MATRIX AND G IS THE MATRIX OF CONSTRAINTS */
|
||||
/* MATSYH: TRIANGULAR INFERIOR PART OF THE HESSIAN MATRIX */
|
||||
/* IN FORM OF PROFILE */
|
||||
@@ -7896,7 +7896,7 @@ int mmrslss_(integer *,//mxcoef,
|
||||
/* ----------------------------------- */
|
||||
/* T */
|
||||
/* SS is the decomposition of choleski of a symmetric matrix */
|
||||
/* defined postive, that can result from routine MMCHOLE. */
|
||||
/* defined positive, that can result from routine MMCHOLE. */
|
||||
|
||||
/* For a full matrix it is possible to use MRSLMSC */
|
||||
|
||||
@@ -8409,7 +8409,7 @@ L9999:
|
||||
/* > */
|
||||
/* **********************************************************************
|
||||
*/
|
||||
/* Nome of the routine */
|
||||
/* Name of the routine */
|
||||
|
||||
|
||||
/* Common MLGDRTL: */
|
||||
@@ -8675,7 +8675,7 @@ int mmtmave_(integer *nligne,
|
||||
/* INPUT ARGUMENTS : */
|
||||
/* -------------------- */
|
||||
/* NLIGNE : NUMBER OF LINE OF THE MATRIX */
|
||||
/* NCOLON : NOMBER OF COLUMN OF THE MATRIX */
|
||||
/* NCOLON : NUMBER OF COLUMN OF THE MATRIX */
|
||||
/* GPOSIT: TABLE OF POSITIONING OF TERMS OF STORAGE */
|
||||
/* GPOSIT(1,I) CONTAINS THE NUMBER of TERMS-1 ON LINE */
|
||||
/* I IN THE PROFILE OF THE MATRIX */
|
||||
@@ -11193,7 +11193,7 @@ L9900:
|
||||
|
||||
/* FUNCTION : */
|
||||
/* ---------- */
|
||||
/* SERVES to calculate the euclidian norm of a vector : */
|
||||
/* SERVES to calculate the euclidean norm of a vector : */
|
||||
/* ____________________________ */
|
||||
/* Z = V V(1)**2 + V(2)**2 + ... */
|
||||
|
||||
@@ -11208,7 +11208,7 @@ L9900:
|
||||
|
||||
/* OUTPUT ARGUMENTS : */
|
||||
/* ------------------- */
|
||||
/* MZSNORM : Value of the euclidian norm of vector VECTEU */
|
||||
/* MZSNORM : Value of the euclidean norm of vector VECTEU */
|
||||
|
||||
/* COMMONS USED : */
|
||||
/* ---------------- */
|
||||
|
@@ -416,7 +416,7 @@ int AdvApp2Var_SysBase::macrchk_()
|
||||
|
||||
/* FONCTION : */
|
||||
/* ---------- */
|
||||
/* TABLE OF MANAGEMENT OF DYNAMIC MEMOTY ALLOCATIONS */
|
||||
/* TABLE OF MANAGEMENT OF DYNAMIC MEMORY ALLOCATIONS */
|
||||
|
||||
/* KEYWORDS : */
|
||||
/* ----------- */
|
||||
@@ -2484,7 +2484,7 @@ int mcrfree_(integer *,//ibyte,
|
||||
/* */
|
||||
/* = 0 ==> OK */
|
||||
/* = 1 ==> Allocation impossible */
|
||||
/* = -1 ==> Ofset > 2**31 - 1 */
|
||||
/* = -1 ==> Offset > 2**31 - 1 */
|
||||
/* */
|
||||
|
||||
/* */
|
||||
|
@@ -32,7 +32,7 @@
|
||||
class PLib_JacobiPolynomial;
|
||||
|
||||
|
||||
//! Approximate a function on an intervall [First,Last]
|
||||
//! Approximate a function on an interval [First,Last]
|
||||
//! The result is a simple polynomial whose degree is as low as
|
||||
//! possible to satisfy the required tolerance and the
|
||||
//! maximum degree. The maximum error and the averrage error
|
||||
|
@@ -68,7 +68,7 @@ public:
|
||||
//! get the Multplicities of the section
|
||||
Standard_EXPORT virtual void Mults (TColStd_Array1OfInteger& TMults) const = 0;
|
||||
|
||||
//! Returns if the sections are rationnal or not
|
||||
//! Returns if the sections are rational or not
|
||||
Standard_EXPORT virtual Standard_Boolean IsRational() const = 0;
|
||||
|
||||
//! Returns the number of intervals for continuity
|
||||
|
@@ -27,7 +27,7 @@ struct Aspect_XVisualInfo;
|
||||
//! This class creates and provides connection with X server.
|
||||
//! Raises exception if can not connect to X server.
|
||||
//! On Windows and Mac OS X (in case when Cocoa used) platforms this class does nothing.
|
||||
//! WARRNING: Do not close display connection manually!
|
||||
//! WARNING: Do not close display connection manually!
|
||||
class Aspect_DisplayConnection : public Standard_Transient
|
||||
{
|
||||
DEFINE_STANDARD_RTTIEXT(Aspect_DisplayConnection, Standard_Transient)
|
||||
|
@@ -223,7 +223,7 @@ typedef NCollection_Vector<BOPAlgo_VFI> BOPAlgo_VectorOfVFI;
|
||||
//=======================================================================
|
||||
void BOPAlgo_Builder::FillImagesFaces(const Message_ProgressRange& theRange)
|
||||
{
|
||||
Message_ProgressScope aPS(theRange, "Filing spligs of faces", 10);
|
||||
Message_ProgressScope aPS(theRange, "Filling splits of faces", 10);
|
||||
BuildSplitFaces(aPS.Next(9));
|
||||
if (HasErrors())
|
||||
{
|
||||
|
@@ -341,12 +341,8 @@ void BOPAlgo_PaveFiller::PerformEE(const Message_ProgressRange& theRange)
|
||||
GeomAbs_CurveType aType1 = aBAC1.GetType();
|
||||
GeomAbs_CurveType aType2 = aBAC2.GetType();
|
||||
//
|
||||
bAnalytical = (((aType1 == GeomAbs_Line) &&
|
||||
(aType2 == GeomAbs_Line ||
|
||||
aType2 == GeomAbs_Circle)) ||
|
||||
((aType2 == GeomAbs_Line) &&
|
||||
(aType1 == GeomAbs_Line ||
|
||||
aType1 == GeomAbs_Circle)));
|
||||
bAnalytical = (aType1 == GeomAbs_Line && aType2 == GeomAbs_Circle) ||
|
||||
(aType1 == GeomAbs_Circle && aType2 == GeomAbs_Line);
|
||||
}
|
||||
//
|
||||
for (i=1; i<=aNbCPrts; ++i) {
|
||||
@@ -443,7 +439,7 @@ void BOPAlgo_PaveFiller::PerformEE(const Message_ProgressRange& theRange)
|
||||
|
||||
Standard_Real aTolVnew = BRep_Tool::Tolerance(aVnew);
|
||||
if (bAnalytical) {
|
||||
// increase tolerance for Line/Line intersection, but do not update
|
||||
// increase tolerance for Line/Circle intersection, but do not update
|
||||
// the vertex till its intersection with some other shape
|
||||
Standard_Real aTolMin = (BRepAdaptor_Curve(aE1).GetType() == GeomAbs_Line) ?
|
||||
(aCR1.Last() - aCR1.First()) / 2. : (aCR2.Last() - aCR2.First()) / 2.;
|
||||
|
@@ -1925,7 +1925,7 @@ Standard_Boolean BOPTools_AlgoTools::IsBlockInOnFace
|
||||
}
|
||||
//
|
||||
|
||||
// Treatment intemediate
|
||||
// Treatment intermediate
|
||||
Standard_Real m1, aTolF, aTolE, aTol, aDist;
|
||||
m1=IntTools_Tools::IntermediatePoint(f1, l1);
|
||||
BOPTools_AlgoTools::PointOnEdge(aE1, m1, aP12);
|
||||
|
@@ -182,7 +182,7 @@ public: //! @name Point/Edge/Face classification relatively solid
|
||||
//! Computes the 3-D state of the point thePoint
|
||||
//! toward solid theSolid.
|
||||
//! theTol - value of precision of computation
|
||||
//! theContext- cahed geometrical tools
|
||||
//! theContext- cached geometrical tools
|
||||
//! Returns 3-D state.
|
||||
Standard_EXPORT static TopAbs_State ComputeState(const gp_Pnt& thePoint,
|
||||
const TopoDS_Solid& theSolid,
|
||||
@@ -192,7 +192,7 @@ public: //! @name Point/Edge/Face classification relatively solid
|
||||
//! Computes the 3-D state of the vertex theVertex
|
||||
//! toward solid theSolid.
|
||||
//! theTol - value of precision of computation
|
||||
//! theContext- cahed geometrical tools
|
||||
//! theContext- cached geometrical tools
|
||||
//! Returns 3-D state.
|
||||
Standard_EXPORT static TopAbs_State ComputeState(const TopoDS_Vertex& theVertex,
|
||||
const TopoDS_Solid& theSolid,
|
||||
@@ -202,7 +202,7 @@ public: //! @name Point/Edge/Face classification relatively solid
|
||||
//! Computes the 3-D state of the edge theEdge
|
||||
//! toward solid theSolid.
|
||||
//! theTol - value of precision of computation
|
||||
//! theContext- cahed geometrical tools
|
||||
//! theContext- cached geometrical tools
|
||||
//! Returns 3-D state.
|
||||
Standard_EXPORT static TopAbs_State ComputeState(const TopoDS_Edge& theEdge,
|
||||
const TopoDS_Solid& theSolid,
|
||||
@@ -213,7 +213,7 @@ public: //! @name Point/Edge/Face classification relatively solid
|
||||
//! toward solid theSolid.
|
||||
//! theTol - value of precision of computation
|
||||
//! theBounds - set of edges of <theSolid> to avoid
|
||||
//! theContext- cahed geometrical tools
|
||||
//! theContext- cached geometrical tools
|
||||
//! Returns 3-D state.
|
||||
Standard_EXPORT static TopAbs_State ComputeState(const TopoDS_Face& theFace,
|
||||
const TopoDS_Solid& theSolid,
|
||||
@@ -224,7 +224,7 @@ public: //! @name Point/Edge/Face classification relatively solid
|
||||
//! Computes the 3-D state of the shape theShape
|
||||
//! toward solid theSolid.
|
||||
//! theTol - value of precision of computation
|
||||
//! theContext- cahed geometrical tools
|
||||
//! theContext- cached geometrical tools
|
||||
//! Returns 3-D state.
|
||||
Standard_EXPORT static TopAbs_State ComputeStateByOnePoint(const TopoDS_Shape& theShape,
|
||||
const TopoDS_Solid& theSolid,
|
||||
@@ -274,7 +274,7 @@ public: //! @name Face classification relatively solid
|
||||
//! solid theSolid.
|
||||
//! theMEF - Map Edge/Faces for theSolid
|
||||
//! theTol - value of precision of computation
|
||||
//! theContext- cahed geometrical tools
|
||||
//! theContext- cached geometrical tools
|
||||
Standard_EXPORT static Standard_Boolean IsInternalFace(const TopoDS_Face& theFace,
|
||||
const TopoDS_Solid& theSolid,
|
||||
TopTools_IndexedDataMapOfShapeListOfShape& theMEF,
|
||||
|
@@ -51,12 +51,12 @@ public:
|
||||
//! Warning:
|
||||
//! The Wires must be closed.
|
||||
//!
|
||||
//! The edges of <W> can be modified if they have not pcurves
|
||||
//! on the surface <S> of <F>. In this case
|
||||
//! if <Proj> is false the first pcurve of the edge
|
||||
//! is positionned on <S>.
|
||||
//! if <Proj> is True ,the Pcurve On <S> is the
|
||||
//! projection of the curve 3d on <F>.
|
||||
//! The edges of <W> can be modified if they don't have
|
||||
//! pcurves on the surface <S> of <F>. In this case
|
||||
//! if <Proj> is false the first pcurve of the edge
|
||||
//! is positioned on <S>.
|
||||
//! if <Proj> is True, the Pcurve On <S> is the
|
||||
//! projection of the curve 3d on <F>.
|
||||
Standard_EXPORT void Add (TopoDS_Wire& W);
|
||||
|
||||
//! Removes all the Wires
|
||||
|
@@ -86,13 +86,13 @@ public:
|
||||
|
||||
Standard_EXPORT void VerticesForSubstitute (TopTools_DataMapOfShapeShape& VerVerMap);
|
||||
|
||||
//! Set maximal tolerance used for comparing distaces between vertices.
|
||||
//! Set maximal tolerance used for comparing distances between vertices.
|
||||
void SetTolConf(const Standard_Real theTolConf)
|
||||
{
|
||||
myTolConf = theTolConf;
|
||||
}
|
||||
|
||||
//! Get maximal tolerance used for comparing distaces between vertices.
|
||||
//! Get maximal tolerance used for comparing distances between vertices.
|
||||
Standard_Real GetTolConf() const
|
||||
{
|
||||
return myTolConf;
|
||||
|
@@ -49,7 +49,7 @@ BRepBlend_AppFuncRoot::BRepBlend_AppFuncRoot(Handle(BRepBlend_Line)& Line,
|
||||
// Tables
|
||||
Func.GetShape( NbPoles, NbKnots, Degree, NbPoles2d);
|
||||
|
||||
// Calculation of BaryCentre (rationnal case).
|
||||
// Calculation of BaryCentre (rational case).
|
||||
if (Func.IsRational()) {
|
||||
Standard_Real Xmax =-1.e100, Xmin = 1.e100,
|
||||
Ymax =-1.e100, Ymin = 1.e100,
|
||||
|
@@ -69,7 +69,7 @@ public:
|
||||
//! get the Multplicities of the section
|
||||
Standard_EXPORT virtual void Mults (TColStd_Array1OfInteger& TMults) const Standard_OVERRIDE;
|
||||
|
||||
//! Returns if the section is rationnal or not
|
||||
//! Returns if the section is rational or not
|
||||
Standard_EXPORT virtual Standard_Boolean IsRational() const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the number of intervals for continuity
|
||||
@@ -95,7 +95,7 @@ public:
|
||||
Standard_EXPORT virtual void Resolution (const Standard_Integer Index, const Standard_Real Tol, Standard_Real& TolU, Standard_Real& TolV) const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary (in radian)
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -139,7 +139,7 @@ public:
|
||||
|
||||
Standard_EXPORT void Section (const Standard_Real Param, const Standard_Real U, const Standard_Real V, Standard_Real& Pdeb, Standard_Real& Pfin, gp_Circ& C);
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT Standard_Boolean IsRational() const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -162,7 +162,7 @@ public:
|
||||
Standard_EXPORT void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -140,7 +140,7 @@ public:
|
||||
|
||||
Standard_EXPORT void Section (const Standard_Real Param, const Standard_Real U, const Standard_Real V, Standard_Real& Pdeb, Standard_Real& Pfin, gp_Circ& C);
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT Standard_Boolean IsRational() const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -163,7 +163,7 @@ public:
|
||||
Standard_EXPORT void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -133,7 +133,7 @@ public:
|
||||
|
||||
Standard_EXPORT void Section (const Standard_Real Param, const Standard_Real U, const Standard_Real V, const Standard_Real W, Standard_Real& Pdeb, Standard_Real& Pfin, gp_Circ& C);
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT Standard_Boolean IsRational() const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -156,7 +156,7 @@ public:
|
||||
Standard_EXPORT void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -132,7 +132,7 @@ public:
|
||||
|
||||
Standard_EXPORT void Section (const Standard_Real Param, const Standard_Real U, const Standard_Real V, const Standard_Real W, Standard_Real& Pdeb, Standard_Real& Pfin, gp_Circ& C);
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT Standard_Boolean IsRational() const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -155,7 +155,7 @@ public:
|
||||
Standard_EXPORT void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -202,7 +202,7 @@ Standard_Boolean BRepClass_FaceExplorer::OtherSegment(const gp_Pnt2d& P,
|
||||
// is tangent to the edge curve. This condition is bad for classification.
|
||||
// Therefore try to go to another point in the hope that there will be
|
||||
// no tangent. If there tangent is preserved then leave the last point in
|
||||
// order to get this edge chanse to participate in classification.
|
||||
// order to get this edge chance to participate in classification.
|
||||
if (myCurEdgePar + Probing_Step < Probing_End)
|
||||
continue;
|
||||
}
|
||||
|
@@ -95,7 +95,7 @@ void BRepExtrema_ProximityDistTool::LoadAdditionalPointsFirstSet (const BVH_Arra
|
||||
|
||||
//=======================================================================
|
||||
//function : goThroughtSet1
|
||||
//purpose : Goes throught vertices from the 1st set
|
||||
//purpose : Goes through vertices from the 1st set
|
||||
//=======================================================================
|
||||
void BRepExtrema_ProximityDistTool::goThroughtSet1 (const BVH_Array3d& theVertices1,
|
||||
const Standard_Boolean theIsAdditionalSet)
|
||||
|
@@ -88,7 +88,7 @@ public:
|
||||
|
||||
public:
|
||||
|
||||
//! Creates new unitialized tool.
|
||||
//! Creates new uninitialized tool.
|
||||
Standard_EXPORT BRepExtrema_ProximityDistTool();
|
||||
|
||||
//! Creates new tool for the given element sets.
|
||||
@@ -169,7 +169,7 @@ protected:
|
||||
|
||||
private:
|
||||
|
||||
//! Goes throught vertices from the 1st set.
|
||||
//! Goes through vertices from the 1st set.
|
||||
void goThroughtSet1 (const BVH_Array3d& aVertices1,
|
||||
const Standard_Boolean theIsAdditionalSet);
|
||||
|
||||
|
@@ -27,7 +27,7 @@
|
||||
|
||||
//=======================================================================
|
||||
//function : BRepExtrema_ProximityValueTool
|
||||
//purpose : Creates new unitialized proximity tool
|
||||
//purpose : Creates new uninitialized proximity tool
|
||||
//=======================================================================
|
||||
BRepExtrema_ProximityValueTool::BRepExtrema_ProximityValueTool()
|
||||
: myIsRefinementRequired1 (Standard_False),
|
||||
@@ -262,8 +262,8 @@ Standard_Boolean BRepExtrema_ProximityValueTool::getEdgeAdditionalVertices (
|
||||
//=======================================================================
|
||||
//function : doRecurTrgSplit
|
||||
//purpose : Splits the triangle into two ones recursively, halving the longest side
|
||||
// untill the area of the current triangle > input step
|
||||
//! @param theTrg points of the triangle to be splitted
|
||||
// until the area of the current triangle > input step
|
||||
//! @param theTrg points of the triangle to be split
|
||||
//! @param theEdgesStatus status of triangle edges - on the border or middle of the face
|
||||
//! @param theTol telerance used in search of coincidence points
|
||||
//! @param theStep minimum area of the resulting triangle
|
||||
|
@@ -90,7 +90,7 @@ class BRepExtrema_ProximityValueTool
|
||||
|
||||
public:
|
||||
|
||||
//! Creates new unitialized proximity tool.
|
||||
//! Creates new uninitialized proximity tool.
|
||||
Standard_EXPORT BRepExtrema_ProximityValueTool();
|
||||
|
||||
//! Creates new proximity tool for the given element sets.
|
||||
|
@@ -194,7 +194,7 @@ private:
|
||||
|
||||
//! Reference point of the proximity value on the 1st shape.
|
||||
gp_Pnt myProxPoint1;
|
||||
//! Reference point of the proximity value on the 2st shape.
|
||||
//! Reference point of the proximity value on the 2nd shape.
|
||||
gp_Pnt myProxPoint2;
|
||||
|
||||
//! Status of reference points of the proximity value.
|
||||
|
@@ -541,7 +541,7 @@ static Standard_Boolean GoodOrientation(const Bnd_Box& B,
|
||||
|
||||
if (!Surf.IsNull()) { // Add the face at end
|
||||
|
||||
// Waiting the use of traces & retriction in BRepFill_Sweep
|
||||
// Waiting the use of traces & restriction in BRepFill_Sweep
|
||||
// Make Fuse.
|
||||
BRepLib_MakeFace MkF;
|
||||
MkF.Init(Surf, Standard_True, Precision::Confusion());
|
||||
|
@@ -3144,7 +3144,7 @@ void CutEdgeProf (const TopoDS_Edge& E,
|
||||
|
||||
//=======================================================================
|
||||
//function : CutEdge
|
||||
//purpose : Cut an edge at thw extrema of curves and at points of inflexion.
|
||||
//purpose : Cut an edge at the extrema of curves and at points of inflexion.
|
||||
// Closed circles are also cut in two.
|
||||
// If <Cuts> are empty the edge is not modified.
|
||||
// The first and the last vertex of the original edge
|
||||
|
@@ -122,18 +122,18 @@ public:
|
||||
protected:
|
||||
|
||||
|
||||
//! Initialize all the fields, this methode have to
|
||||
//! Initialize all the fields, this methode has to
|
||||
//! be called by the constructors of Inherited class.
|
||||
Standard_EXPORT void Init (const TopoDS_Wire& Path);
|
||||
|
||||
//! To preseve if possible the Tangent in transformations
|
||||
//! To preserve if possible the Tangent in transformations
|
||||
//! It is the default mode.
|
||||
Standard_EXPORT void TangentIsMain();
|
||||
|
||||
//! To preseve if possible the Normal in transformations
|
||||
//! To preserve if possible the Normal in transformations
|
||||
Standard_EXPORT void NormalIsMain();
|
||||
|
||||
//! To preseve if possible the BiNormal in transformations
|
||||
//! To preserve if possible the BiNormal in transformations
|
||||
Standard_EXPORT void BiNormalIsMain();
|
||||
|
||||
TopoDS_Wire myPath;
|
||||
|
@@ -501,7 +501,7 @@ TopoDS_Shape BRepFill_Pipe::Section(const TopoDS_Vertex& VSpine) const
|
||||
|
||||
TopoDS_Wire BRepFill_Pipe::PipeLine(const gp_Pnt& Point)
|
||||
{
|
||||
// Postioning
|
||||
// Positioning
|
||||
gp_Pnt P;
|
||||
P = Point;
|
||||
P.Transform(myTrsf);
|
||||
|
@@ -1155,7 +1155,7 @@ void BRepFill_PipeShell::Generated(const TopoDS_Shape& theShape,
|
||||
|
||||
//=======================================================================
|
||||
//function : Place
|
||||
//purpose : Implement a Section in the local refernce frame
|
||||
//purpose : Implement a Section in the local reference frame
|
||||
// and return its parameter on the trajectory
|
||||
//=======================================================================
|
||||
void BRepFill_PipeShell::Place(const BRepFill_Section& Sec,
|
||||
|
@@ -48,7 +48,7 @@ class BRepFill_PipeShell;
|
||||
DEFINE_STANDARD_HANDLE(BRepFill_PipeShell, Standard_Transient)
|
||||
|
||||
//! Computes a topological shell using some wires
|
||||
//! (spines and profiles) and diplacement option
|
||||
//! (spines and profiles) and displacement option
|
||||
//! Perform general sweeping construction
|
||||
class BRepFill_PipeShell : public Standard_Transient
|
||||
{
|
||||
@@ -116,7 +116,7 @@ public:
|
||||
//! to be C0.
|
||||
//! Give section to sweep.
|
||||
//! Possibilities are :
|
||||
//! - Give one or sevral profile
|
||||
//! - Give one or several profile
|
||||
//! - Give one profile and an homotetic law.
|
||||
//! - Automatic compute of correspondence between profile, and section on the sweeped shape
|
||||
//! - correspondence between profile, and section on the sweeped shape defined by a vertex of the spine
|
||||
@@ -153,7 +153,7 @@ public:
|
||||
Standard_EXPORT void SetTransition (const BRepFill_TransitionStyle Mode = BRepFill_Modified, const Standard_Real Angmin = 1.0e-2, const Standard_Real Angmax = 6.0);
|
||||
|
||||
//! Perform simulation of the sweep :
|
||||
//! Somes Section are returned.
|
||||
//! Some Section are returned.
|
||||
Standard_EXPORT void Simulate (const Standard_Integer NumberOfSection, TopTools_ListOfShape& Sections);
|
||||
|
||||
//! Builds the resulting shape (redefined from MakeShape).
|
||||
|
@@ -2890,7 +2890,7 @@ BRepFill_Sweep::BRepFill_Sweep(const Handle(BRepFill_SectionLaw)& Section,
|
||||
|
||||
//=======================================================================
|
||||
//function : Build
|
||||
//purpose : Construt the result of sweeping
|
||||
//purpose : Construct the result of sweeping
|
||||
//======================================================================
|
||||
void BRepFill_Sweep::Build(TopTools_MapOfShape& ReversedEdges,
|
||||
BRepFill_DataMapOfShapeHArray2OfShape& Tapes,
|
||||
|
@@ -64,7 +64,7 @@ public:
|
||||
//! Tolerance To controle Corner management.
|
||||
//!
|
||||
//! If the discontinuity is lesser than <AngleMin> in radian The
|
||||
//! Transition Performed will be alway "Modified"
|
||||
//! Transition Performed will be always "Modified"
|
||||
Standard_EXPORT void SetAngularControl (const Standard_Real AngleMin = 0.01, const Standard_Real AngleMax = 6.0);
|
||||
|
||||
//! Set the flag that indicates attempt to approximate
|
||||
@@ -72,13 +72,13 @@ public:
|
||||
//! to be C0.
|
||||
Standard_EXPORT void SetForceApproxC1 (const Standard_Boolean ForceApproxC1);
|
||||
|
||||
//! Build the Sweep Surface
|
||||
//! Build the Sweep Surface
|
||||
//! Transition define Transition strategy
|
||||
//! Approx define Approximation Strategy
|
||||
//! - GeomFill_Section : The composed Function Location X Section
|
||||
//! is directly approximated.
|
||||
//! - GeomFill_Location : The location law is approximated, and the
|
||||
//! SweepSurface is bulid algebric composition
|
||||
//! SweepSurface builds an algebraic composition
|
||||
//! of approximated location law and section law
|
||||
//! This option is Ok, if Section.Surface() methode
|
||||
//! is effective.
|
||||
|
@@ -3915,10 +3915,9 @@ TopoDS_Shape BRepOffset_Tool::Deboucle3D(const TopoDS_Shape& S,
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if (!Boundary.IsEmpty() && !Boundary.Contains(anEdge) && !BRep_Tool::Degenerated(anEdge))
|
||||
{
|
||||
if (!Boundary.Contains(anEdge) &&
|
||||
!BRep_Tool::Degenerated(anEdge))
|
||||
JeGarde = Standard_False;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (JeGarde) SS = S;
|
||||
|
@@ -37,7 +37,7 @@ class TopoDS_Edge;
|
||||
//! - define if necessary a new tolerance
|
||||
//! - set if necessary analysis of degenerated shapes off
|
||||
//! - add shapes to be controlled -> Add
|
||||
//! - compute -> Perfom
|
||||
//! - compute -> Perform
|
||||
//! - output couples of connected edges for control
|
||||
//! - output the problems if any
|
||||
class BRepOffsetAPI_FindContigousEdges
|
||||
|
@@ -166,7 +166,7 @@ void BRepOffsetAPI_MakeOffset::Init(const GeomAbs_JoinType Join,
|
||||
//=======================================================================
|
||||
//function : SetApprox
|
||||
//purpose : Set approximation flag
|
||||
// for convertion input contours into ones consisting of
|
||||
// for conversion input contours into ones consisting of
|
||||
// 2D circular arcs and 2D linear segments only
|
||||
//=======================================================================
|
||||
|
||||
|
@@ -64,7 +64,7 @@ public:
|
||||
Standard_EXPORT void Init (const GeomAbs_JoinType Join = GeomAbs_Arc, const Standard_Boolean IsOpenResult = Standard_False);
|
||||
|
||||
//! Set approximation flag
|
||||
//! for convertion input contours into ones consisting of
|
||||
//! for conversion input contours into ones consisting of
|
||||
//! 2D circular arcs and 2D linear segments only.
|
||||
Standard_EXPORT void SetApprox (const Standard_Boolean ToApprox);
|
||||
|
||||
|
@@ -114,7 +114,7 @@ public:
|
||||
const Standard_Boolean RemoveIntEdges = Standard_False,
|
||||
const Message_ProgressRange& theRange = Message_ProgressRange());
|
||||
|
||||
//! Returns instance of the unrelying intersection / arc algorithm.
|
||||
//! Returns instance of the underlying intersection / arc algorithm.
|
||||
Standard_EXPORT virtual const BRepOffset_MakeOffset& MakeOffset() const;
|
||||
|
||||
//! Does nothing.
|
||||
|
@@ -112,7 +112,7 @@ public:
|
||||
//! along the path.
|
||||
//! Give section to sweep.
|
||||
//! Possibilities are :
|
||||
//! - Give one or sevral section
|
||||
//! - Give one or several section
|
||||
//! - Give one profile and an homotetic law.
|
||||
//! - Automatic compute of correspondence between spine, and section
|
||||
//! on the sweeped shape
|
||||
|
@@ -306,7 +306,7 @@ static Standard_Integer fillet2d(Draw_Interpretor& di, Standard_Integer n, const
|
||||
Standard_Boolean status = algo.Perform(radius);
|
||||
if (!status)
|
||||
{
|
||||
di << "Error: the algrithm failed.";
|
||||
di << "Error: the algorithm failed.";
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -326,7 +326,7 @@ static Standard_Integer fillet2d(Draw_Interpretor& di, Standard_Integer n, const
|
||||
TopoDS_Edge fillet = algo.Result(common, M1, M2);
|
||||
if (fillet.IsNull())
|
||||
{
|
||||
di << "Error: the algrithm produced no result.";
|
||||
di << "Error: the algorithm produced no result.";
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -403,7 +403,7 @@ static Standard_Integer chamfer2d(Draw_Interpretor& di, Standard_Integer n, cons
|
||||
TopoDS_Edge chamfer = algo.Result(M1, M2, length1, length2);
|
||||
if (chamfer.IsNull())
|
||||
{
|
||||
di << "Error: the algrithm produced no result.";
|
||||
di << "Error: the algorithm produced no result.";
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@@ -11,7 +11,7 @@
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
// abv 28.04.99 S4137: ading method Apply for work on all types of shapes
|
||||
// abv 28.04.99 S4137: adding method Apply for work on all types of shapes
|
||||
// sln 29.11.01 Bug24: correction iteration through map in method 'Status'
|
||||
// sln 29.11.01 Bug22: correction of methods Replace and Value for case when mode myConsiderLocation is on
|
||||
|
||||
@@ -362,7 +362,7 @@ TopoDS_Shape BRepTools_ReShape::Apply (const TopoDS_Shape& shape,
|
||||
if(st == TopAbs_VERTEX || st == TopAbs_SHAPE)
|
||||
return shape;
|
||||
// define allowed types of components
|
||||
//fix for SAMTECH bug OCC322 about abcense internal vertices after sewing.
|
||||
//fix for SAMTECH bug OCC322 about absent internal vertices after sewing.
|
||||
/*
|
||||
switch ( st ) {
|
||||
case TopAbs_COMPOUND: subt = TopAbs_SHAPE; break;
|
||||
@@ -402,14 +402,14 @@ TopoDS_Shape BRepTools_ReShape::Apply (const TopoDS_Shape& shape,
|
||||
if ( isEmpty )
|
||||
isEmpty = Standard_False;
|
||||
locStatus |= EncodeStatus(3);//ShapeExtend::EncodeStatus ( ShapeExtend_DONE3 );
|
||||
if ( st == TopAbs_COMPOUND || newsh.ShapeType() == sh.ShapeType()) { //fix for SAMTECH bug OCC322 about abcense internal vertices after sewing.
|
||||
if ( st == TopAbs_COMPOUND || newsh.ShapeType() == sh.ShapeType()) { //fix for SAMTECH bug OCC322 about absent internal vertices after sewing.
|
||||
B.Add ( result, newsh );
|
||||
continue;
|
||||
}
|
||||
Standard_Integer nitems = 0;
|
||||
for ( TopoDS_Iterator subit(newsh); subit.More(); subit.Next(), nitems++ ) {
|
||||
const TopoDS_Shape& subsh = subit.Value();
|
||||
if ( subsh.ShapeType() == sh.ShapeType() ) B.Add ( result, subsh );//fix for SAMTECH bug OCC322 about abcense internal vertices after sewing.
|
||||
if ( subsh.ShapeType() == sh.ShapeType() ) B.Add ( result, subsh );//fix for SAMTECH bug OCC322 about absent internal vertices after sewing.
|
||||
else locStatus |= EncodeStatus(10);//ShapeExtend::EncodeStatus ( ShapeExtend_FAIL1 );
|
||||
}
|
||||
if ( ! nitems ) locStatus |= EncodeStatus(10);//ShapeExtend::EncodeStatus ( ShapeExtend_FAIL1 );
|
||||
|
@@ -72,7 +72,7 @@ public:
|
||||
//! Clears the content of the set.
|
||||
Standard_EXPORT virtual void Clear() Standard_OVERRIDE;
|
||||
|
||||
//! Stores the goemetry of <S>.
|
||||
//! Stores the geometry of <S>.
|
||||
Standard_EXPORT virtual void AddGeometry (const TopoDS_Shape& S) Standard_OVERRIDE;
|
||||
|
||||
//! Dumps the geometry of me on the stream <OS>.
|
||||
|
@@ -171,7 +171,7 @@ Standard_Boolean BRepTools_TrsfModification::NewTriangulation
|
||||
// modify normals
|
||||
if (theTriangulation->HasNormals())
|
||||
{
|
||||
for (Standard_Integer anInd = 1; anInd <= theTriangulation->NbTriangles(); ++anInd)
|
||||
for (Standard_Integer anInd = 1; anInd <= theTriangulation->NbNodes(); ++anInd)
|
||||
{
|
||||
gp_Dir aNormal = theTriangulation->Normal(anInd);
|
||||
aNormal.Transform(aTrsf);
|
||||
|
@@ -1263,7 +1263,7 @@ void BSplCLib::MovePoint (const Standard_Real U,
|
||||
}
|
||||
}
|
||||
|
||||
// find a kk2 if symetriy
|
||||
// find a kk2 if symmetry
|
||||
kk2 = kk1;
|
||||
i = kk1 - FirstNonZeroBsplineIndex + 2;
|
||||
if ((kk1+1) <= LastIndex) {
|
||||
|
@@ -2845,7 +2845,7 @@ void BSplSLib::MovePoint (const Standard_Real U,
|
||||
}
|
||||
}
|
||||
|
||||
// find a ukk2 if symetriy
|
||||
// find a ukk2 if symmetry
|
||||
ukk2 = ukk1;
|
||||
i = ukk1 - UFirstNonZeroBsplineIndex + 2;
|
||||
if ((ukk1+1) <= ULastIndex) {
|
||||
@@ -2871,7 +2871,7 @@ void BSplSLib::MovePoint (const Standard_Real U,
|
||||
}
|
||||
}
|
||||
|
||||
// find a vkk2 if symetriy
|
||||
// find a vkk2 if symmetry
|
||||
vkk2 = vkk1;
|
||||
j = vkk1 - VFirstNonZeroBsplineIndex + 2;
|
||||
if ((vkk1+1) <= VLastIndex) {
|
||||
|
@@ -31,7 +31,7 @@ public:
|
||||
//! \param theDegreeU degree along the first parameter (U) of the surface
|
||||
//! \param thePeriodicU identify the surface is periodical along U axis
|
||||
//! \param theFlatKnotsU knots of the surface (with repetition) along U axis
|
||||
//! \param theDegreeV degree alogn the second parameter (V) of the surface
|
||||
//! \param theDegreeV degree along the second parameter (V) of the surface
|
||||
//! \param thePeriodicV identify the surface is periodical along V axis
|
||||
//! \param theFlatKnotsV knots of the surface (with repetition) along V axis
|
||||
//! \param theWeights array of weights of corresponding poles
|
||||
|
@@ -115,7 +115,7 @@ public:
|
||||
//! Returns the point on the first support.
|
||||
Standard_EXPORT virtual const gp_Pnt& Pnt2() const = 0;
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT virtual Standard_Boolean IsRational() const = 0;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -145,7 +145,7 @@ public:
|
||||
Standard_Integer& NbPoles2d) = 0;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -148,7 +148,7 @@ public:
|
||||
Standard_EXPORT virtual void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE = 0;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -156,7 +156,7 @@ public:
|
||||
//! but the values calculated can be senseless.
|
||||
Standard_EXPORT virtual Blend_DecrochStatus Decroch (const math_Vector& Sol, gp_Vec& NRst1, gp_Vec& TgRst1, gp_Vec& NRst2, gp_Vec& TgRst2) const = 0;
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT virtual Standard_Boolean IsRational() const = 0;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -180,7 +180,7 @@ public:
|
||||
Standard_EXPORT virtual void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) = 0;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -150,7 +150,7 @@ public:
|
||||
//! specific to the function.
|
||||
Standard_EXPORT virtual Standard_Boolean Decroch (const math_Vector& Sol, gp_Vec& NS, gp_Vec& TgS) const = 0;
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT virtual Standard_Boolean IsRational() const = 0;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -174,7 +174,7 @@ public:
|
||||
Standard_EXPORT virtual void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) = 0;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -116,7 +116,7 @@ public:
|
||||
|
||||
Standard_EXPORT void Set (const Standard_Real Radius, const Standard_Integer Choix);
|
||||
|
||||
//! Sets the type of section generation for the
|
||||
//! Sets the type of section generation for the
|
||||
//! approximations.
|
||||
Standard_EXPORT void Set (const BlendFunc_SectionShape TypeSection);
|
||||
|
||||
@@ -129,7 +129,7 @@ public:
|
||||
|
||||
Standard_EXPORT Standard_Boolean GetSection (const Standard_Real Param, const Standard_Real U, const Standard_Real V, const Standard_Real W, TColgp_Array1OfPnt& tabP, TColgp_Array1OfVec& tabV);
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT Standard_Boolean IsRational() const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -143,7 +143,7 @@ public:
|
||||
//! <S>. May be one if Continuity(me) >= <S>
|
||||
Standard_EXPORT Standard_Integer NbIntervals (const GeomAbs_Shape S) const Standard_OVERRIDE;
|
||||
|
||||
//! Stores in <T> the parameters bounding the intervals
|
||||
//! Stores in <T> the parameters bounding the intervals
|
||||
//! of continuity <S>.
|
||||
//!
|
||||
//! The array must provide enough room to accommodate
|
||||
@@ -155,7 +155,7 @@ public:
|
||||
Standard_EXPORT void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -117,7 +117,7 @@ public:
|
||||
|
||||
Standard_EXPORT Standard_Boolean GetSection (const Standard_Real Param, const Standard_Real U, const Standard_Real V, const Standard_Real W, TColgp_Array1OfPnt& tabP, TColgp_Array1OfVec& tabV);
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT Standard_Boolean IsRational() const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -142,7 +142,7 @@ public:
|
||||
Standard_EXPORT void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -111,7 +111,7 @@ public:
|
||||
//! Utile pour une visu rapide et approximative de la surface.
|
||||
Standard_EXPORT void Section (const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, Standard_Real& Pdeb, Standard_Real& Pfin, gp_Lin& C);
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT Standard_Boolean IsRational() const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -135,7 +135,7 @@ public:
|
||||
Standard_EXPORT void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -62,7 +62,7 @@ BlendFunc_ConstRad::BlendFunc_ConstRad(const Handle(Adaptor3d_Surface)& S1,
|
||||
distmin(RealLast()),
|
||||
mySShape(BlendFunc_Rational)
|
||||
{
|
||||
// Initialisaton of cash control variables.
|
||||
// Initialisation of cash control variables.
|
||||
tval = -9.876e100;
|
||||
xval.Init(-9.876e100);
|
||||
myXOrder = -1;
|
||||
|
@@ -116,7 +116,7 @@ public:
|
||||
//! Utile pour une visu rapide et approximative de la surface.
|
||||
Standard_EXPORT void Section (const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, Standard_Real& Pdeb, Standard_Real& Pfin, gp_Circ& C);
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT Standard_Boolean IsRational() const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -140,7 +140,7 @@ public:
|
||||
Standard_EXPORT void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -108,14 +108,14 @@ public:
|
||||
|
||||
Standard_EXPORT void Set (const Standard_Integer Choix);
|
||||
|
||||
//! Sets the type of section generation for the
|
||||
//! Sets the type of section generation for the
|
||||
//! approximations.
|
||||
Standard_EXPORT void Set (const BlendFunc_SectionShape TypeSection);
|
||||
|
||||
//! Method for graphic traces
|
||||
Standard_EXPORT void Section (const Standard_Real Param, const Standard_Real U1, const Standard_Real V1, const Standard_Real U2, const Standard_Real V2, Standard_Real& Pdeb, Standard_Real& Pfin, gp_Circ& C);
|
||||
|
||||
//! Returns if the section is rationnal
|
||||
//! Returns if the section is rational
|
||||
Standard_EXPORT Standard_Boolean IsRational() const Standard_OVERRIDE;
|
||||
|
||||
//! Returns the length of the maximum section
|
||||
@@ -139,7 +139,7 @@ public:
|
||||
Standard_EXPORT void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -105,7 +105,7 @@ public:
|
||||
Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -127,7 +127,7 @@ public:
|
||||
Standard_EXPORT void GetShape (Standard_Integer& NbPoles, Standard_Integer& NbKnots, Standard_Integer& Degree, Standard_Integer& NbPoles2d) Standard_OVERRIDE;
|
||||
|
||||
//! Returns the tolerance to reach in approximation
|
||||
//! to respecte
|
||||
//! to respect
|
||||
//! BoundTol error at the Boundary
|
||||
//! AngleTol tangent error at the Boundary
|
||||
//! SurfTol error inside the surface.
|
||||
|
@@ -215,7 +215,7 @@ static void TreatInfinitePlane(const gp_Pln &aPlane,
|
||||
// theMinIdx - minimum poles index, that can be used.
|
||||
// theMaxIdx - maximum poles index, that can be used.
|
||||
// theShiftCoeff - shift between flatknots array and poles array.
|
||||
// This vaule should be equal to 1 in case of non periodic BSpline,
|
||||
// This value should be equal to 1 in case of non periodic BSpline,
|
||||
// and (degree + 1) - mults(the lowest index).
|
||||
|
||||
void ComputePolesIndexes(const TColStd_Array1OfReal &theKnots,
|
||||
|
@@ -451,7 +451,7 @@ void CPnts_AbscissaPoint::Perform(const Standard_Real Abscissa,
|
||||
}
|
||||
else {
|
||||
Standard_Real Ui = U0 + (Abscissa / myL) * (myUMax - myUMin) / 3.;
|
||||
// exercice : why 3 ?
|
||||
// exercise : why 3 ?
|
||||
Perform(Abscissa,U0,Ui,Resolution);
|
||||
}
|
||||
}
|
||||
|
@@ -157,7 +157,7 @@ static Standard_Boolean SearchFD(TopOpeBRepDS_DataStructure& DStr,
|
||||
|
||||
//=======================================================================
|
||||
//function : ToricCorner
|
||||
//purpose : Test if this is a paricular cas of a torus corner
|
||||
//purpose : Test if this is a particular case of a torus corner
|
||||
// (or spherical limited by isos).
|
||||
//=======================================================================
|
||||
|
||||
@@ -601,7 +601,7 @@ void ChFi3d_FilBuilder::PerformThreeCorner(const Standard_Integer Jndex)
|
||||
#endif
|
||||
|
||||
// the contour to be fillet consists of straight lines uv in beginning and end
|
||||
// of two pcurves (only one if c1pointu) calculted as possible
|
||||
// of two pcurves (only one if c1pointu) calculated as possible
|
||||
// on piv and the opposite face.
|
||||
Handle(GeomFill_Boundary) Bdeb,Bfin,Bpiv,Bfac;
|
||||
Handle(Geom2d_Curve) PCurveOnFace;
|
||||
|
@@ -51,7 +51,7 @@
|
||||
//! TrueIntervals : the nth polynomial has to be mapped linearly to be
|
||||
//! defined on the following interval :
|
||||
//! myTrueIntervals->Value(n) and myTrueIntervals->Value(n+1)
|
||||
//! so that it represent adequatly the function with the
|
||||
//! so that it adequately represents the function with the
|
||||
//! required continuity
|
||||
class Convert_CompPolynomialToPoles
|
||||
{
|
||||
@@ -85,7 +85,7 @@ public:
|
||||
//! TrueIntervals[2] = {-1, 1}
|
||||
Standard_EXPORT Convert_CompPolynomialToPoles(const Standard_Integer NumCurves, const Standard_Integer Continuity, const Standard_Integer Dimension, const Standard_Integer MaxDegree, const Handle(TColStd_HArray1OfInteger)& NumCoeffPerCurve, const Handle(TColStd_HArray1OfReal)& Coefficients, const Handle(TColStd_HArray2OfReal)& PolynomialIntervals, const Handle(TColStd_HArray1OfReal)& TrueIntervals);
|
||||
|
||||
//! To Convert sevral span with different order of Continuity.
|
||||
//! To Convert several span with different order of Continuity.
|
||||
//! Warning: The Length of Continuity have to be NumCurves-1
|
||||
Standard_EXPORT Convert_CompPolynomialToPoles(const Standard_Integer NumCurves, const Standard_Integer Dimension, const Standard_Integer MaxDegree, const TColStd_Array1OfInteger& Continuity, const TColStd_Array1OfInteger& NumCoeffPerCurve, const TColStd_Array1OfReal& Coefficients, const TColStd_Array2OfReal& PolynomialIntervals, const TColStd_Array1OfReal& TrueIntervals);
|
||||
|
||||
|
492
src/DE/DE_ShapeFixConfigurationNode.cxx
Normal file
492
src/DE/DE_ShapeFixConfigurationNode.cxx
Normal file
@@ -0,0 +1,492 @@
|
||||
// Copyright (c) 2024 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#include <DE_ShapeFixConfigurationNode.hxx>
|
||||
|
||||
#include <DE_ConfigurationContext.hxx>
|
||||
#include <DE_PluginHolder.hxx>
|
||||
#include <DE_Wrapper.hxx>
|
||||
|
||||
IMPLEMENT_STANDARD_RTTIEXT(DE_ShapeFixConfigurationNode, DE_ConfigurationNode)
|
||||
|
||||
namespace
|
||||
{
|
||||
static const TCollection_AsciiString& THE_CONFIGURATION_SCOPE()
|
||||
{
|
||||
static const TCollection_AsciiString aScope = "provider";
|
||||
return aScope;
|
||||
}
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
// function : DE_ShapeFixConfigurationNode
|
||||
// purpose :
|
||||
//=======================================================================
|
||||
DE_ShapeFixConfigurationNode::DE_ShapeFixConfigurationNode()
|
||||
: DE_ConfigurationNode()
|
||||
{}
|
||||
|
||||
//=======================================================================
|
||||
// function : DE_ShapeFixConfigurationNode
|
||||
// purpose :
|
||||
//=======================================================================
|
||||
DE_ShapeFixConfigurationNode::DE_ShapeFixConfigurationNode(const Handle(DE_ShapeFixConfigurationNode)& theNode)
|
||||
: DE_ConfigurationNode(theNode)
|
||||
{
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
// function : Load
|
||||
// purpose :
|
||||
//=======================================================================
|
||||
bool DE_ShapeFixConfigurationNode::Load(const Handle(DE_ConfigurationContext)& theResource)
|
||||
{
|
||||
TCollection_AsciiString aScope = THE_CONFIGURATION_SCOPE() + "." + GetFormat() + "." + GetVendor() + ".healing";
|
||||
|
||||
HealingParameters.Tolerance3d = theResource->RealVal("tolerance3d", HealingParameters.Tolerance3d, aScope);
|
||||
HealingParameters.MaxTolerance3d = theResource->RealVal("max.tolerance3d", HealingParameters.MaxTolerance3d, aScope);
|
||||
HealingParameters.MinTolerance3d = theResource->RealVal("min.tolerance3d", HealingParameters.MinTolerance3d, aScope);
|
||||
HealingParameters.FixFreeShellMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("free.shell", (int)HealingParameters.FixFreeShellMode, aScope);
|
||||
HealingParameters.FixFreeFaceMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("free.face", (int)HealingParameters.FixFreeFaceMode, aScope);
|
||||
HealingParameters.FixFreeWireMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("free.wire", (int)HealingParameters.FixFreeWireMode, aScope);
|
||||
HealingParameters.FixSameParameterMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("same.parameter", (int)HealingParameters.FixSameParameterMode, aScope);
|
||||
HealingParameters.FixSolidMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("solid", (int)HealingParameters.FixSolidMode, aScope);
|
||||
HealingParameters.FixShellOrientationMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("shell.orientation", (int)HealingParameters.FixShellOrientationMode, aScope);
|
||||
HealingParameters.CreateOpenSolidMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("create.open.solid", (int)HealingParameters.CreateOpenSolidMode, aScope);
|
||||
HealingParameters.FixShellMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("shell", (int)HealingParameters.FixShellMode, aScope);
|
||||
HealingParameters.FixFaceOrientationMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("face.orientation", (int)HealingParameters.FixFaceOrientationMode, aScope);
|
||||
HealingParameters.FixFaceMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("face", (int)HealingParameters.FixFaceMode, aScope);
|
||||
HealingParameters.FixWireMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("wire", (int)HealingParameters.FixWireMode, aScope);
|
||||
HealingParameters.FixOrientationMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("orientation", (int)HealingParameters.FixOrientationMode, aScope);
|
||||
HealingParameters.FixAddNaturalBoundMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("add.natural.bound", (int)HealingParameters.FixAddNaturalBoundMode, aScope);
|
||||
HealingParameters.FixMissingSeamMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("missing.seam", (int)HealingParameters.FixMissingSeamMode, aScope);
|
||||
HealingParameters.FixSmallAreaWireMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("small.area.wire", (int)HealingParameters.FixSmallAreaWireMode, aScope);
|
||||
HealingParameters.RemoveSmallAreaFaceMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("remove.small.area.face", (int)HealingParameters.RemoveSmallAreaFaceMode, aScope);
|
||||
HealingParameters.FixIntersectingWiresMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("intersecting.wires", (int)HealingParameters.FixIntersectingWiresMode, aScope);
|
||||
HealingParameters.FixLoopWiresMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("loop.wires", (int)HealingParameters.FixLoopWiresMode, aScope);
|
||||
HealingParameters.FixSplitFaceMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("split.face", (int)HealingParameters.FixSplitFaceMode, aScope);
|
||||
HealingParameters.AutoCorrectPrecisionMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("auto.correct.precision", (int)HealingParameters.AutoCorrectPrecisionMode, aScope);
|
||||
HealingParameters.ModifyTopologyMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("modify.topology", (int)HealingParameters.ModifyTopologyMode, aScope);
|
||||
HealingParameters.ModifyGeometryMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("modify.geometry", (int)HealingParameters.ModifyGeometryMode, aScope);
|
||||
HealingParameters.ClosedWireMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("closed.wire", (int)HealingParameters.ClosedWireMode, aScope);
|
||||
HealingParameters.PreferencePCurveMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("preference.pcurve", (int)HealingParameters.PreferencePCurveMode, aScope);
|
||||
HealingParameters.FixReorderMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("reorder.edges", (int)HealingParameters.FixReorderMode, aScope);
|
||||
HealingParameters.FixSmallMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("remove.small.edges", (int)HealingParameters.FixSmallMode, aScope);
|
||||
HealingParameters.FixConnectedMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("connected.edges", (int)HealingParameters.FixConnectedMode, aScope);
|
||||
HealingParameters.FixEdgeCurvesMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("edge.curves", (int)HealingParameters.FixEdgeCurvesMode, aScope);
|
||||
HealingParameters.FixDegeneratedMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("add.degenerated.edges", (int)HealingParameters.FixDegeneratedMode, aScope);
|
||||
HealingParameters.FixLackingMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("add.lacking.edges", (int)HealingParameters.FixLackingMode, aScope);
|
||||
HealingParameters.FixSelfIntersectionMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("selfintersection", (int)HealingParameters.FixSelfIntersectionMode, aScope);
|
||||
HealingParameters.RemoveLoopMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("remove.loop", (int)HealingParameters.RemoveLoopMode, aScope);
|
||||
HealingParameters.FixReversed2dMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("reversed2d", (int)HealingParameters.FixReversed2dMode, aScope);
|
||||
HealingParameters.FixRemovePCurveMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("remove.pcurve", (int)HealingParameters.FixRemovePCurveMode, aScope);
|
||||
HealingParameters.FixRemoveCurve3dMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("remove.curve3d", (int)HealingParameters.FixRemoveCurve3dMode, aScope);
|
||||
HealingParameters.FixAddPCurveMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("add.pcurve", (int)HealingParameters.FixAddPCurveMode, aScope);
|
||||
HealingParameters.FixAddCurve3dMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("add.curve3d", (int)HealingParameters.FixAddCurve3dMode, aScope);
|
||||
HealingParameters.FixSeamMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("correct.order.in.seam", (int)HealingParameters.FixSeamMode, aScope);
|
||||
HealingParameters.FixShiftedMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("shifted", (int)HealingParameters.FixShiftedMode, aScope);
|
||||
HealingParameters.FixEdgeSameParameterMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("edge.same.parameter", (int)HealingParameters.FixEdgeSameParameterMode, aScope);
|
||||
HealingParameters.FixNotchedEdgesMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("notched.edges", (int)HealingParameters.FixNotchedEdgesMode, aScope);
|
||||
HealingParameters.FixTailMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("tail", (int)HealingParameters.FixTailMode, aScope);
|
||||
HealingParameters.MaxTailAngle = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("max.tail.angle", (int)HealingParameters.MaxTailAngle, aScope);
|
||||
HealingParameters.MaxTailWidth = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("max.tail.width", (int)HealingParameters.MaxTailWidth, aScope);
|
||||
HealingParameters.FixSelfIntersectingEdgeMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("selfintersecting.edge", (int)HealingParameters.FixSelfIntersectingEdgeMode, aScope);
|
||||
HealingParameters.FixIntersectingEdgesMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("intersecting.edges", (int)HealingParameters.FixIntersectingEdgesMode, aScope);
|
||||
HealingParameters.FixNonAdjacentIntersectingEdgesMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("nonadjacent.intersecting.edges", (int)HealingParameters.FixNonAdjacentIntersectingEdgesMode, aScope);
|
||||
HealingParameters.FixVertexPositionMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("vertex.position", (int)HealingParameters.FixVertexPositionMode, aScope);
|
||||
HealingParameters.FixVertexToleranceMode = (DE_ShapeFixParameters::FixMode)
|
||||
theResource->IntegerVal("vertex.tolerance", (int)HealingParameters.FixVertexToleranceMode, aScope);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
// function : Save
|
||||
// purpose :
|
||||
//=======================================================================
|
||||
TCollection_AsciiString DE_ShapeFixConfigurationNode::Save() const
|
||||
{
|
||||
TCollection_AsciiString aResult;
|
||||
TCollection_AsciiString aScope = THE_CONFIGURATION_SCOPE() + "." + GetFormat() + "." + GetVendor() + ".healing";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Shape healing parameters:\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the maximum allowable tolerance\n";
|
||||
aResult += "!Default value: 1.e-6. Available values: any real positive (non null) value\n";
|
||||
aResult += aScope + "tolerance3d :\t " + HealingParameters.Tolerance3d + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the maximum allowable tolerance\n";
|
||||
aResult += "!Default value: 1.0. Available values: any real positive (non null) value\n";
|
||||
aResult += aScope + "max.tolerance3d :\t " + HealingParameters.MaxTolerance3d + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the minimum allowable tolerance\n";
|
||||
aResult += "!Default value: 1.e-7. Available values: any real positive (non null) value\n";
|
||||
aResult += aScope + "min.tolerance3d :\t " + HealingParameters.MinTolerance3d + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying fixes of ShapeFix_Shell for ShapeFix_Shape\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "free.shell :\t " + (int)HealingParameters.FixFreeShellMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying fixes of ShapeFix_Face for ShapeFix_Shape\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "free.face :\t " + (int)HealingParameters.FixFreeFaceMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying fixes of ShapeFix_Wire for ShapeFix_Shape\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "free.wire :\t " + (int)HealingParameters.FixFreeWireMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying ShapeFix::SameParameter after all fixes\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "same.parameter :\t " + (int)HealingParameters.FixSameParameterMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying fixes of ShapeFix_Solid\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "solid :\t " + (int)HealingParameters.FixSolidMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying analysis and fixes of orientation of shells in the solid\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "shell.orientation :\t " + (int)HealingParameters.FixShellOrientationMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for creation of solids. If operation is executed then solids are created from open shells ";
|
||||
aResult += "else solids are created from closed shells only\n";
|
||||
aResult += "!Default value: \"NotFix\"(0). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "create.open.solid :\t " + (int)HealingParameters.CreateOpenSolidMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying fixes of ShapeFix_Shell for ShapeFix_Solid\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "shell :\t " + (int)HealingParameters.FixShellMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying analysis and fixes of orientation of faces in the shell\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "face.orientation :\t " + (int)HealingParameters.FixFaceOrientationMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying fixes of ShapeFix_Face\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "face :\t " + (int)HealingParameters.FixFaceMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying fixes of ShapeFix_Wire\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "wire :\t " + (int)HealingParameters.FixWireMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying a fix for the orientation of faces in the shell\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "orientation :\t " + (int)HealingParameters.FixOrientationMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the add natural bound mode. If operation is executed then natural boundary is added on faces that miss them\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "add.natural.bound :\t " + (int)HealingParameters.FixAddNaturalBoundMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the fix missing seam mode (tries to insert seam is missed)\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "missing.seam :\t " + (int)HealingParameters.FixMissingSeamMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the fix small area wire mode (drops small wires)\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "small.area.wire :\t " + (int)HealingParameters.FixSmallAreaWireMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the remove face with small area (drops faces with small outer wires)\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "remove.small.area.face :\t " + (int)HealingParameters.RemoveSmallAreaFaceMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the fix intersecting wires mode in ShapeFix_Face\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "intersecting.wires :\t " + (int)HealingParameters.FixIntersectingWiresMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the fix loop wires mode in ShapeFix_Face\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "loop.wires :\t " + (int)HealingParameters.FixLoopWiresMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the fix split face mode in ShapeFix_Face\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "split.face :\t " + (int)HealingParameters.FixSplitFaceMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the auto-correct precision mode in ShapeFix_Face\n";
|
||||
aResult += "!Default value: \"Fix\"(1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "auto.correct.precision :\t " + (int)HealingParameters.AutoCorrectPrecisionMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to modify topology of the wire during fixing (adding/removing edges etc.)\n";
|
||||
aResult += "!Default value: \"NotFix\"(0). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "modify.topology :\t " + (int)HealingParameters.ModifyTopologyMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to modify geometry of the edges and vertices\n";
|
||||
aResult += "!Default value: \"Fix\"(1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "modify.geometry :\t " + (int)HealingParameters.ModifyGeometryMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to defines whether the wire is to be closed (by calling methods like FixDegenerated() ";
|
||||
aResult += "!and FixConnected() for lastand first edges\n";
|
||||
aResult += "!Default value: \"Fix\"(1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "closed.wire :\t " + (int)HealingParameters.ClosedWireMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to defines the 2d representation of the wire is preferable over 3d one ";
|
||||
aResult += "(in the case of ambiguity in FixEdgeCurves)\n";
|
||||
aResult += "!and FixConnected() for lastand first edges\n";
|
||||
aResult += "!Default value: \"Fix\"(1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "preference.pcurve :\t " + (int)HealingParameters.PreferencePCurveMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to reorder edges in the wire\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "reorder.edges :\t " + (int)HealingParameters.FixReorderMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to remove small edges\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "remove.small.edges :\t " + (int)HealingParameters.FixSmallMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for fix connecting edges in the wire\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "connected.edges :\t " + (int)HealingParameters.FixConnectedMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for fix edges (3Dcurves and 2D curves)\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "edge.curves :\t " + (int)HealingParameters.FixEdgeCurvesMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for add degenerated edges\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "add.degenerated.edges :\t " + (int)HealingParameters.FixDegeneratedMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for add lacking edges\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "add.lacking.edges :\t " + (int)HealingParameters.FixLackingMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for fix selfintersection edges\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "selfintersection :\t " + (int)HealingParameters.FixSelfIntersectionMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to remove loop\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "remove.loop :\t " + (int)HealingParameters.RemoveLoopMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to fix edge if pcurve is directed opposite to 3d curve\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "reversed2d :\t " + (int)HealingParameters.FixReversed2dMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to remove the pcurve(s) of the edge if it does not match the vertices\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "remove.pcurve :\t " + (int)HealingParameters.FixRemovePCurveMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to remove 3d curve of the edge if it does not match the vertices\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "remove.curve3d :\t " + (int)HealingParameters.FixRemoveCurve3dMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to add pcurve(s) of the edge if missing (by projecting 3d curve)\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "add.pcurve :\t " + (int)HealingParameters.FixAddPCurveMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to build 3d curve of the edge if missing\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "add.curve3d :\t " + (int)HealingParameters.FixAddCurve3dMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to correct order of pcurves in the seam edge depends on its orientation\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "correct.order.in.seam :\t " + (int)HealingParameters.FixSeamMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode allowed to shifts wrong 2D curves back, ensuring that the 2D curves of the edges in the wire are connected\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "shifted :\t " + (int)HealingParameters.FixShiftedMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying EdgeSameParameter\n";
|
||||
aResult += "!Default value: \"NotFix\"(0). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "edge.same.parameter :\t " + (int)HealingParameters.FixEdgeSameParameterMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for fix notched edges\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "notched.edges :\t " + (int)HealingParameters.FixNotchedEdgesMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for fix tail in wire\n";
|
||||
aResult += "!Default value: \"NotFix\"(0). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "tail :\t " + (int)HealingParameters.FixTailMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for max angle of the tails\n";
|
||||
aResult += "!Default value: \"NotFix\"(0). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "max.tail.angle :\t " + (int)HealingParameters.MaxTailAngle + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for max tail width\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "max.tail.width :\t " + (int)HealingParameters.MaxTailWidth + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for fix selfintersecting of edge\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "selfintersecting.edge :\t " + (int)HealingParameters.FixSelfIntersectingEdgeMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for fix intersecting edges\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "intersecting.edges :\t " + (int)HealingParameters.FixIntersectingEdgesMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for fix non adjacent intersecting edges\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "nonadjacent.intersecting.edges :\t " + (int)HealingParameters.FixNonAdjacentIntersectingEdgesMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for applying ShapeFix::FixVertexPosition before all fixes\n";
|
||||
aResult += "!Default value: \"NotFix\"(0). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "vertex.position :\t " + (int)HealingParameters.FixVertexPositionMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
aResult += "!\n";
|
||||
aResult += "!Defines the mode for increases the tolerances of the edge vertices to comprise ";
|
||||
aResult += "!the ends of 3d curve and pcurve on the given face (first method) or all pcurves stored in an edge (second one)\n";
|
||||
aResult += "!Default value: \"FixOrNot\"(-1). Available values: \"FixOrNot\"(-1), \"NotFix\"(0), \"Fix\"(1)\n";
|
||||
aResult += aScope + "vertex.tolerance :\t " + (int)HealingParameters.FixVertexToleranceMode + "\n";
|
||||
aResult += "!\n";
|
||||
|
||||
return aResult;
|
||||
}
|
51
src/DE/DE_ShapeFixConfigurationNode.hxx
Normal file
51
src/DE/DE_ShapeFixConfigurationNode.hxx
Normal file
@@ -0,0 +1,51 @@
|
||||
// Copyright (c) 2024 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _DE_ShapeFixConfigurationNode_HeaderFile
|
||||
#define _DE_ShapeFixConfigurationNode_HeaderFile
|
||||
|
||||
#include <DE_ConfigurationNode.hxx>
|
||||
#include <DE_ShapeFixParameters.hxx>
|
||||
#include <TColStd_ListOfAsciiString.hxx>
|
||||
|
||||
class DE_ConfigurationContext;
|
||||
|
||||
//! Base class to work with shape healing parameters for child classes.
|
||||
class DE_ShapeFixConfigurationNode : public DE_ConfigurationNode
|
||||
{
|
||||
DEFINE_STANDARD_RTTIEXT(DE_ShapeFixConfigurationNode, DE_ConfigurationNode)
|
||||
public:
|
||||
|
||||
//! Initializes all field by default
|
||||
Standard_EXPORT DE_ShapeFixConfigurationNode();
|
||||
|
||||
//! Copies values of all fields
|
||||
//! @param[in] theConfigurationNode object to copy
|
||||
Standard_EXPORT DE_ShapeFixConfigurationNode(const Handle(DE_ShapeFixConfigurationNode)& theConfigurationNode);
|
||||
|
||||
//! Updates values according the resource
|
||||
//! @param[in] theResource input resource to use
|
||||
//! @return True if Load was successful
|
||||
Standard_EXPORT virtual bool Load(const Handle(DE_ConfigurationContext)& theResource) Standard_OVERRIDE;
|
||||
|
||||
//! Writes configuration to the string
|
||||
//! @return result resource string
|
||||
Standard_EXPORT virtual TCollection_AsciiString Save() const Standard_OVERRIDE;
|
||||
|
||||
public:
|
||||
|
||||
DE_ShapeFixParameters HealingParameters; //!< Shape healing parameters
|
||||
|
||||
};
|
||||
|
||||
#endif // _DE_ShapeFixConfigurationNode_HeaderFile
|
82
src/DE/DE_ShapeFixParameters.hxx
Normal file
82
src/DE/DE_ShapeFixParameters.hxx
Normal file
@@ -0,0 +1,82 @@
|
||||
// Copyright (c) 2024 OPEN CASCADE SAS
|
||||
//
|
||||
// This file is part of Open CASCADE Technology software library.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or modify it under
|
||||
// the terms of the GNU Lesser General Public License version 2.1 as published
|
||||
// by the Free Software Foundation, with special exception defined in the file
|
||||
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
|
||||
// distribution for complete text of the license and disclaimer of any warranty.
|
||||
//
|
||||
// Alternatively, this file may be used under the terms of Open CASCADE
|
||||
// commercial license or contractual agreement.
|
||||
|
||||
#ifndef _DE_ShapeFixParameters_HeaderFile
|
||||
#define _DE_ShapeFixParameters_HeaderFile
|
||||
|
||||
//! Struct for shape healing parameters storage
|
||||
struct DE_ShapeFixParameters
|
||||
{
|
||||
//! Enum, classifying a type of value for parameters
|
||||
enum class FixMode : char
|
||||
{
|
||||
FixOrNot = -1, //!< Procedure will be executed or not (depending on the situation)
|
||||
NotFix = 0, //!< Procedure will be executed
|
||||
Fix = 1 //!< Procedure will be executed anyway
|
||||
};
|
||||
|
||||
double Tolerance3d = 1.e-6;
|
||||
double MaxTolerance3d = 1.0;
|
||||
double MinTolerance3d = 1.e-7;
|
||||
FixMode FixFreeShellMode = FixMode::FixOrNot;
|
||||
FixMode FixFreeFaceMode = FixMode::FixOrNot;
|
||||
FixMode FixFreeWireMode = FixMode::FixOrNot;
|
||||
FixMode FixSameParameterMode = FixMode::FixOrNot;
|
||||
FixMode FixSolidMode = FixMode::FixOrNot;
|
||||
FixMode FixShellOrientationMode = FixMode::FixOrNot;
|
||||
FixMode CreateOpenSolidMode = FixMode::NotFix;
|
||||
FixMode FixShellMode = FixMode::FixOrNot;
|
||||
FixMode FixFaceOrientationMode = FixMode::FixOrNot;
|
||||
FixMode FixFaceMode = FixMode::FixOrNot;
|
||||
FixMode FixWireMode = FixMode::FixOrNot;
|
||||
FixMode FixOrientationMode = FixMode::FixOrNot;
|
||||
FixMode FixAddNaturalBoundMode = FixMode::FixOrNot;
|
||||
FixMode FixMissingSeamMode = FixMode::FixOrNot;
|
||||
FixMode FixSmallAreaWireMode = FixMode::FixOrNot;
|
||||
FixMode RemoveSmallAreaFaceMode = FixMode::FixOrNot;
|
||||
FixMode FixIntersectingWiresMode = FixMode::FixOrNot;
|
||||
FixMode FixLoopWiresMode = FixMode::FixOrNot;
|
||||
FixMode FixSplitFaceMode = FixMode::FixOrNot;
|
||||
FixMode AutoCorrectPrecisionMode = FixMode::FixOrNot;
|
||||
FixMode ModifyTopologyMode = FixMode::NotFix;
|
||||
FixMode ModifyGeometryMode = FixMode::Fix;
|
||||
FixMode ClosedWireMode = FixMode::Fix;
|
||||
FixMode PreferencePCurveMode = FixMode::Fix;
|
||||
FixMode FixReorderMode = FixMode::FixOrNot;
|
||||
FixMode FixSmallMode = FixMode::FixOrNot;
|
||||
FixMode FixConnectedMode = FixMode::FixOrNot;
|
||||
FixMode FixEdgeCurvesMode = FixMode::FixOrNot;
|
||||
FixMode FixDegeneratedMode = FixMode::FixOrNot;
|
||||
FixMode FixLackingMode = FixMode::FixOrNot;
|
||||
FixMode FixSelfIntersectionMode = FixMode::FixOrNot;
|
||||
FixMode RemoveLoopMode = FixMode::FixOrNot;
|
||||
FixMode FixReversed2dMode = FixMode::FixOrNot;
|
||||
FixMode FixRemovePCurveMode = FixMode::FixOrNot;
|
||||
FixMode FixRemoveCurve3dMode = FixMode::FixOrNot;
|
||||
FixMode FixAddPCurveMode = FixMode::FixOrNot;
|
||||
FixMode FixAddCurve3dMode = FixMode::FixOrNot;
|
||||
FixMode FixSeamMode = FixMode::FixOrNot;
|
||||
FixMode FixShiftedMode = FixMode::FixOrNot;
|
||||
FixMode FixEdgeSameParameterMode = FixMode::NotFix;
|
||||
FixMode FixNotchedEdgesMode = FixMode::FixOrNot;
|
||||
FixMode FixTailMode = FixMode::NotFix;
|
||||
FixMode MaxTailAngle = FixMode::NotFix;
|
||||
FixMode MaxTailWidth = FixMode::FixOrNot;
|
||||
FixMode FixSelfIntersectingEdgeMode = FixMode::FixOrNot;
|
||||
FixMode FixIntersectingEdgesMode = FixMode::FixOrNot;
|
||||
FixMode FixNonAdjacentIntersectingEdgesMode = FixMode::FixOrNot;
|
||||
FixMode FixVertexPositionMode = FixMode::NotFix;
|
||||
FixMode FixVertexToleranceMode = FixMode::FixOrNot;
|
||||
};
|
||||
|
||||
#endif // _DE_ShapeFixParameters_HeaderFile
|
@@ -5,5 +5,8 @@ DE_ConfigurationNode.hxx
|
||||
DE_PluginHolder.hxx
|
||||
DE_Provider.cxx
|
||||
DE_Provider.hxx
|
||||
DE_ShapeFixConfigurationNode.cxx
|
||||
DE_ShapeFixConfigurationNode.hxx
|
||||
DE_ShapeFixParameters.hxx
|
||||
DE_Wrapper.cxx
|
||||
DE_Wrapper.hxx
|
||||
|
@@ -1,8 +1,8 @@
|
||||
// A Bison parser, made by GNU Bison 3.7.4.
|
||||
// A Bison parser, made by GNU Bison 3.8.2.
|
||||
|
||||
// Skeleton implementation for Bison LALR(1) parsers in C++
|
||||
|
||||
// Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc.
|
||||
// Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
@@ -15,7 +15,7 @@
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
// As a special exception, you may create a larger work that contains
|
||||
// part or all of the Bison parser skeleton and distribute that work
|
||||
@@ -176,7 +176,7 @@ static Express_HSequenceOfField *mkflist ( Express_Field *field, Express_HSequen
|
||||
#else // !YYDEBUG
|
||||
|
||||
# define YYCDEBUG if (false) std::cerr
|
||||
# define YY_SYMBOL_PRINT(Title, Symbol) YYUSE (Symbol)
|
||||
# define YY_SYMBOL_PRINT(Title, Symbol) YY_USE (Symbol)
|
||||
# define YY_REDUCE_PRINT(Rule) static_cast<void> (0)
|
||||
# define YY_STACK_PRINT() static_cast<void> (0)
|
||||
|
||||
@@ -209,9 +209,9 @@ namespace exptocas {
|
||||
parser::syntax_error::~syntax_error () YY_NOEXCEPT YY_NOTHROW
|
||||
{}
|
||||
|
||||
/*---------------.
|
||||
| symbol kinds. |
|
||||
`---------------*/
|
||||
/*---------.
|
||||
| symbol. |
|
||||
`---------*/
|
||||
|
||||
// basic_symbol.
|
||||
template <typename Base>
|
||||
@@ -229,11 +229,12 @@ namespace exptocas {
|
||||
{}
|
||||
|
||||
template <typename Base>
|
||||
parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (semantic_type) v)
|
||||
parser::basic_symbol<Base>::basic_symbol (typename Base::kind_type t, YY_RVREF (value_type) v)
|
||||
: Base (t)
|
||||
, value (YY_MOVE (v))
|
||||
{}
|
||||
|
||||
|
||||
template <typename Base>
|
||||
parser::symbol_kind_type
|
||||
parser::basic_symbol<Base>::type_get () const YY_NOEXCEPT
|
||||
@@ -241,6 +242,7 @@ namespace exptocas {
|
||||
return this->kind ();
|
||||
}
|
||||
|
||||
|
||||
template <typename Base>
|
||||
bool
|
||||
parser::basic_symbol<Base>::empty () const YY_NOEXCEPT
|
||||
@@ -257,28 +259,30 @@ namespace exptocas {
|
||||
}
|
||||
|
||||
// by_kind.
|
||||
parser::by_kind::by_kind ()
|
||||
parser::by_kind::by_kind () YY_NOEXCEPT
|
||||
: kind_ (symbol_kind::S_YYEMPTY)
|
||||
{}
|
||||
|
||||
#if 201103L <= YY_CPLUSPLUS
|
||||
parser::by_kind::by_kind (by_kind&& that)
|
||||
parser::by_kind::by_kind (by_kind&& that) YY_NOEXCEPT
|
||||
: kind_ (that.kind_)
|
||||
{
|
||||
that.clear ();
|
||||
}
|
||||
#endif
|
||||
|
||||
parser::by_kind::by_kind (const by_kind& that)
|
||||
parser::by_kind::by_kind (const by_kind& that) YY_NOEXCEPT
|
||||
: kind_ (that.kind_)
|
||||
{}
|
||||
|
||||
parser::by_kind::by_kind (token_kind_type t)
|
||||
parser::by_kind::by_kind (token_kind_type t) YY_NOEXCEPT
|
||||
: kind_ (yytranslate_ (t))
|
||||
{}
|
||||
|
||||
|
||||
|
||||
void
|
||||
parser::by_kind::clear ()
|
||||
parser::by_kind::clear () YY_NOEXCEPT
|
||||
{
|
||||
kind_ = symbol_kind::S_YYEMPTY;
|
||||
}
|
||||
@@ -296,6 +300,7 @@ namespace exptocas {
|
||||
return kind_;
|
||||
}
|
||||
|
||||
|
||||
parser::symbol_kind_type
|
||||
parser::by_kind::type_get () const YY_NOEXCEPT
|
||||
{
|
||||
@@ -303,6 +308,7 @@ namespace exptocas {
|
||||
}
|
||||
|
||||
|
||||
|
||||
// by_state.
|
||||
parser::by_state::by_state () YY_NOEXCEPT
|
||||
: state (empty_state)
|
||||
@@ -385,7 +391,7 @@ namespace exptocas {
|
||||
YY_SYMBOL_PRINT (yymsg, yysym);
|
||||
|
||||
// User destructor.
|
||||
YYUSE (yysym.kind ());
|
||||
YY_USE (yysym.kind ());
|
||||
}
|
||||
|
||||
#if YYDEBUG
|
||||
@@ -394,7 +400,7 @@ namespace exptocas {
|
||||
parser::yy_print_ (std::ostream& yyo, const basic_symbol<Base>& yysym) const
|
||||
{
|
||||
std::ostream& yyoutput = yyo;
|
||||
YYUSE (yyoutput);
|
||||
YY_USE (yyoutput);
|
||||
if (yysym.empty ())
|
||||
yyo << "empty symbol";
|
||||
else
|
||||
@@ -402,7 +408,7 @@ namespace exptocas {
|
||||
symbol_kind_type yykind = yysym.kind ();
|
||||
yyo << (yykind < YYNTOKENS ? "token" : "nterm")
|
||||
<< ' ' << yysym.name () << " (";
|
||||
YYUSE (yykind);
|
||||
YY_USE (yykind);
|
||||
yyo << ')';
|
||||
}
|
||||
}
|
||||
@@ -428,7 +434,7 @@ namespace exptocas {
|
||||
}
|
||||
|
||||
void
|
||||
parser::yypop_ (int n)
|
||||
parser::yypop_ (int n) YY_NOEXCEPT
|
||||
{
|
||||
yystack_.pop (n);
|
||||
}
|
||||
@@ -471,13 +477,13 @@ namespace exptocas {
|
||||
}
|
||||
|
||||
bool
|
||||
parser::yy_pact_value_is_default_ (int yyvalue)
|
||||
parser::yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT
|
||||
{
|
||||
return yyvalue == yypact_ninf_;
|
||||
}
|
||||
|
||||
bool
|
||||
parser::yy_table_value_is_error_ (int yyvalue)
|
||||
parser::yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT
|
||||
{
|
||||
return yyvalue == yytable_ninf_;
|
||||
}
|
||||
@@ -1087,6 +1093,10 @@ namespace exptocas {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
const short parser::yypact_ninf_ = -134;
|
||||
|
||||
const signed char parser::yytable_ninf_ = -1;
|
||||
@@ -1145,10 +1155,10 @@ namespace exptocas {
|
||||
-64, 31, -134, -134, -127, -134, -134, -7, 18, -131
|
||||
};
|
||||
|
||||
const short
|
||||
const unsigned char
|
||||
parser::yydefgoto_[] =
|
||||
{
|
||||
-1, 2, 9, 10, 11, 12, 13, 14, 15, 109,
|
||||
0, 2, 9, 10, 11, 12, 13, 14, 15, 109,
|
||||
49, 40, 41, 42, 43, 72, 152, 47, 24, 61,
|
||||
85, 86, 87, 88, 119, 121, 123, 124, 106, 166
|
||||
};
|
||||
@@ -1306,7 +1316,7 @@ namespace exptocas {
|
||||
#endif // YYDEBUG
|
||||
|
||||
parser::symbol_kind_type
|
||||
parser::yytranslate_ (int t)
|
||||
parser::yytranslate_ (int t) YY_NOEXCEPT
|
||||
{
|
||||
// YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to
|
||||
// TOKEN-NUM as returned by yylex.
|
||||
@@ -1350,7 +1360,7 @@ namespace exptocas {
|
||||
if (t <= 0)
|
||||
return symbol_kind::S_YYEOF;
|
||||
else if (t <= code_max)
|
||||
return YY_CAST (symbol_kind_type, translate_table[t]);
|
||||
return static_cast <symbol_kind_type> (translate_table[t]);
|
||||
else
|
||||
return symbol_kind::S_YYUNDEF;
|
||||
}
|
||||
|
@@ -1,8 +1,8 @@
|
||||
// A Bison parser, made by GNU Bison 3.7.4.
|
||||
// A Bison parser, made by GNU Bison 3.8.2.
|
||||
|
||||
// Skeleton interface for Bison LALR(1) parsers in C++
|
||||
|
||||
// Copyright (C) 2002-2015, 2018-2020 Free Software Foundation, Inc.
|
||||
// Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
@@ -15,7 +15,7 @@
|
||||
// GNU General Public License for more details.
|
||||
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
// As a special exception, you may create a larger work that contains
|
||||
// part or all of the Bison parser skeleton and distribute that work
|
||||
@@ -148,17 +148,23 @@ namespace exptocas {
|
||||
|
||||
/* Suppress unused-variable warnings by "using" E. */
|
||||
#if ! defined lint || defined __GNUC__
|
||||
# define YYUSE(E) ((void) (E))
|
||||
# define YY_USE(E) ((void) (E))
|
||||
#else
|
||||
# define YYUSE(E) /* empty */
|
||||
# define YY_USE(E) /* empty */
|
||||
#endif
|
||||
|
||||
#if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
|
||||
/* Suppress an incorrect diagnostic about yylval being uninitialized. */
|
||||
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
|
||||
#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
|
||||
# if __GNUC__ * 100 + __GNUC_MINOR__ < 407
|
||||
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
|
||||
_Pragma ("GCC diagnostic push") \
|
||||
_Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
|
||||
# else
|
||||
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
|
||||
_Pragma ("GCC diagnostic push") \
|
||||
_Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
|
||||
_Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
|
||||
# endif
|
||||
# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
|
||||
_Pragma ("GCC diagnostic pop")
|
||||
#else
|
||||
@@ -219,9 +225,14 @@ namespace exptocas {
|
||||
class parser
|
||||
{
|
||||
public:
|
||||
#ifndef YYSTYPE
|
||||
#ifdef YYSTYPE
|
||||
# ifdef __GNUC__
|
||||
# pragma GCC message "bison: do not #define YYSTYPE in C++, use %define api.value.type"
|
||||
# endif
|
||||
typedef YYSTYPE value_type;
|
||||
#else
|
||||
/// Symbol semantic values.
|
||||
union semantic_type
|
||||
union value_type
|
||||
{
|
||||
|
||||
int num;
|
||||
@@ -237,9 +248,10 @@ namespace exptocas {
|
||||
|
||||
|
||||
};
|
||||
#else
|
||||
typedef YYSTYPE semantic_type;
|
||||
#endif
|
||||
/// Backward compatibility (Bison 3.8).
|
||||
typedef value_type semantic_type;
|
||||
|
||||
|
||||
/// Syntax errors thrown from user actions.
|
||||
struct syntax_error : std::runtime_error
|
||||
@@ -302,7 +314,7 @@ namespace exptocas {
|
||||
};
|
||||
|
||||
/// Token kind, as returned by yylex.
|
||||
typedef token::yytokentype token_kind_type;
|
||||
typedef token::token_kind_type token_kind_type;
|
||||
|
||||
/// Backward compatibility alias (Bison 3.6).
|
||||
typedef token_kind_type token_type;
|
||||
@@ -412,7 +424,7 @@ namespace exptocas {
|
||||
typedef Base super_type;
|
||||
|
||||
/// Default constructor.
|
||||
basic_symbol ()
|
||||
basic_symbol () YY_NOEXCEPT
|
||||
: value ()
|
||||
{}
|
||||
|
||||
@@ -431,7 +443,7 @@ namespace exptocas {
|
||||
|
||||
/// Constructor for symbols with semantic value.
|
||||
basic_symbol (typename Base::kind_type t,
|
||||
YY_RVREF (semantic_type) v);
|
||||
YY_RVREF (value_type) v);
|
||||
|
||||
/// Destroy the symbol.
|
||||
~basic_symbol ()
|
||||
@@ -439,8 +451,10 @@ namespace exptocas {
|
||||
clear ();
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// Destroy contents, and record that is empty.
|
||||
void clear ()
|
||||
void clear () YY_NOEXCEPT
|
||||
{
|
||||
Base::clear ();
|
||||
}
|
||||
@@ -464,7 +478,7 @@ namespace exptocas {
|
||||
void move (basic_symbol& s);
|
||||
|
||||
/// The semantic value.
|
||||
semantic_type value;
|
||||
value_type value;
|
||||
|
||||
private:
|
||||
#if YY_CPLUSPLUS < 201103L
|
||||
@@ -476,25 +490,27 @@ namespace exptocas {
|
||||
/// Type access provider for token (enum) based symbols.
|
||||
struct by_kind
|
||||
{
|
||||
/// Default constructor.
|
||||
by_kind ();
|
||||
|
||||
#if 201103L <= YY_CPLUSPLUS
|
||||
/// Move constructor.
|
||||
by_kind (by_kind&& that);
|
||||
#endif
|
||||
|
||||
/// Copy constructor.
|
||||
by_kind (const by_kind& that);
|
||||
|
||||
/// The symbol kind as needed by the constructor.
|
||||
typedef token_kind_type kind_type;
|
||||
|
||||
/// Default constructor.
|
||||
by_kind () YY_NOEXCEPT;
|
||||
|
||||
#if 201103L <= YY_CPLUSPLUS
|
||||
/// Move constructor.
|
||||
by_kind (by_kind&& that) YY_NOEXCEPT;
|
||||
#endif
|
||||
|
||||
/// Copy constructor.
|
||||
by_kind (const by_kind& that) YY_NOEXCEPT;
|
||||
|
||||
/// Constructor from (external) token numbers.
|
||||
by_kind (kind_type t);
|
||||
by_kind (kind_type t) YY_NOEXCEPT;
|
||||
|
||||
|
||||
|
||||
/// Record that this symbol is empty.
|
||||
void clear ();
|
||||
void clear () YY_NOEXCEPT;
|
||||
|
||||
/// Steal the symbol kind from \a that.
|
||||
void move (by_kind& that);
|
||||
@@ -586,19 +602,19 @@ namespace exptocas {
|
||||
|
||||
/// Whether the given \c yypact_ value indicates a defaulted state.
|
||||
/// \param yyvalue the value to check
|
||||
static bool yy_pact_value_is_default_ (int yyvalue);
|
||||
static bool yy_pact_value_is_default_ (int yyvalue) YY_NOEXCEPT;
|
||||
|
||||
/// Whether the given \c yytable_ value indicates a syntax error.
|
||||
/// \param yyvalue the value to check
|
||||
static bool yy_table_value_is_error_ (int yyvalue);
|
||||
static bool yy_table_value_is_error_ (int yyvalue) YY_NOEXCEPT;
|
||||
|
||||
static const short yypact_ninf_;
|
||||
static const signed char yytable_ninf_;
|
||||
|
||||
/// Convert a scanner token kind \a t to a symbol kind.
|
||||
/// In theory \a t should be a token_kind_type, but character literals
|
||||
/// are valid, yet not members of the token_type enum.
|
||||
static symbol_kind_type yytranslate_ (int t);
|
||||
/// are valid, yet not members of the token_kind_type enum.
|
||||
static symbol_kind_type yytranslate_ (int t) YY_NOEXCEPT;
|
||||
|
||||
#if YYDEBUG || 0
|
||||
/// For a symbol, its name in clear.
|
||||
@@ -620,7 +636,7 @@ namespace exptocas {
|
||||
static const short yypgoto_[];
|
||||
|
||||
// YYDEFGOTO[NTERM-NUM].
|
||||
static const short yydefgoto_[];
|
||||
static const unsigned char yydefgoto_[];
|
||||
|
||||
// YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
|
||||
// positive, shift that token. If negative, reduce the rule whose
|
||||
@@ -629,14 +645,14 @@ namespace exptocas {
|
||||
|
||||
static const short yycheck_[];
|
||||
|
||||
// YYSTOS[STATE-NUM] -- The (internal number of the) accessing
|
||||
// symbol of state STATE-NUM.
|
||||
// YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
|
||||
// state STATE-NUM.
|
||||
static const signed char yystos_[];
|
||||
|
||||
// YYR1[YYN] -- Symbol number of symbol that rule YYN derives.
|
||||
// YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM.
|
||||
static const signed char yyr1_[];
|
||||
|
||||
// YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.
|
||||
// YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM.
|
||||
static const signed char yyr2_[];
|
||||
|
||||
|
||||
@@ -735,7 +751,7 @@ namespace exptocas {
|
||||
typedef typename S::size_type size_type;
|
||||
typedef typename std::ptrdiff_t index_type;
|
||||
|
||||
stack (size_type n = 200)
|
||||
stack (size_type n = 200) YY_NOEXCEPT
|
||||
: seq_ (n)
|
||||
{}
|
||||
|
||||
@@ -814,7 +830,7 @@ namespace exptocas {
|
||||
class slice
|
||||
{
|
||||
public:
|
||||
slice (const stack& stack, index_type range)
|
||||
slice (const stack& stack, index_type range) YY_NOEXCEPT
|
||||
: stack_ (stack)
|
||||
, range_ (range)
|
||||
{}
|
||||
@@ -864,7 +880,7 @@ namespace exptocas {
|
||||
void yypush_ (const char* m, state_type s, YY_MOVE_REF (symbol_type) sym);
|
||||
|
||||
/// Pop \a n symbols from the stack.
|
||||
void yypop_ (int n = 1);
|
||||
void yypop_ (int n = 1) YY_NOEXCEPT;
|
||||
|
||||
/// Constants.
|
||||
enum
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -17,7 +17,7 @@
|
||||
|
||||
%option yywrap
|
||||
%{
|
||||
#include <ExprIntrp.tab.h>
|
||||
#include <ExprIntrp.tab.hxx>
|
||||
|
||||
#include <ExprIntrp_yaccintrf.hxx>
|
||||
|
||||
|
@@ -1,8 +1,8 @@
|
||||
/* A Bison parser, made by GNU Bison 3.7.4. */
|
||||
/* A Bison parser, made by GNU Bison 3.8.2. */
|
||||
|
||||
/* Bison implementation for Yacc-like parsers in C
|
||||
|
||||
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software Foundation,
|
||||
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
|
||||
Inc.
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
@@ -16,7 +16,7 @@
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>. */
|
||||
|
||||
/* As a special exception, you may create a larger work that contains
|
||||
part or all of the Bison parser skeleton and distribute that work
|
||||
@@ -46,10 +46,10 @@
|
||||
USER NAME SPACE" below. */
|
||||
|
||||
/* Identify Bison output, and Bison version. */
|
||||
#define YYBISON 30704
|
||||
#define YYBISON 30802
|
||||
|
||||
/* Bison version string. */
|
||||
#define YYBISON_VERSION "3.7.4"
|
||||
#define YYBISON_VERSION "3.8.2"
|
||||
|
||||
/* Skeleton name. */
|
||||
#define YYSKELETON_NAME "yacc.c"
|
||||
@@ -151,7 +151,7 @@ extern void ExprIntrp_EndOfEqual();
|
||||
# endif
|
||||
# endif
|
||||
|
||||
#include "ExprIntrp.tab.h"
|
||||
#include "ExprIntrp.tab.hxx"
|
||||
/* Symbol kind. */
|
||||
enum yysymbol_kind_t
|
||||
{
|
||||
@@ -267,6 +267,18 @@ typedef int_least16_t yytype_int16;
|
||||
typedef short yytype_int16;
|
||||
#endif
|
||||
|
||||
/* Work around bug in HP-UX 11.23, which defines these macros
|
||||
incorrectly for preprocessor constants. This workaround can likely
|
||||
be removed in 2023, as HPE has promised support for HP-UX 11.23
|
||||
(aka HP-UX 11i v2) only through the end of 2022; see Table 2 of
|
||||
<https://h20195.www2.hpe.com/V2/getpdf.aspx/4AA4-7673ENW.pdf>. */
|
||||
#ifdef __hpux
|
||||
# undef UINT_LEAST8_MAX
|
||||
# undef UINT_LEAST16_MAX
|
||||
# define UINT_LEAST8_MAX 255
|
||||
# define UINT_LEAST16_MAX 65535
|
||||
#endif
|
||||
|
||||
#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
|
||||
typedef __UINT_LEAST8_TYPE__ yytype_uint8;
|
||||
#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
|
||||
@@ -364,17 +376,23 @@ typedef int yy_state_fast_t;
|
||||
|
||||
/* Suppress unused-variable warnings by "using" E. */
|
||||
#if ! defined lint || defined __GNUC__
|
||||
# define YYUSE(E) ((void) (E))
|
||||
# define YY_USE(E) ((void) (E))
|
||||
#else
|
||||
# define YYUSE(E) /* empty */
|
||||
# define YY_USE(E) /* empty */
|
||||
#endif
|
||||
|
||||
#if defined __GNUC__ && ! defined __ICC && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
|
||||
/* Suppress an incorrect diagnostic about yylval being uninitialized. */
|
||||
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
|
||||
#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
|
||||
# if __GNUC__ * 100 + __GNUC_MINOR__ < 407
|
||||
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
|
||||
_Pragma ("GCC diagnostic push") \
|
||||
_Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
|
||||
# else
|
||||
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
|
||||
_Pragma ("GCC diagnostic push") \
|
||||
_Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
|
||||
_Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
|
||||
# endif
|
||||
# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
|
||||
_Pragma ("GCC diagnostic pop")
|
||||
#else
|
||||
@@ -590,7 +608,7 @@ static const yytype_int8 yytranslate[] =
|
||||
};
|
||||
|
||||
#if YYDEBUG
|
||||
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
|
||||
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
|
||||
static const yytype_uint8 yyrline[] =
|
||||
{
|
||||
0, 80, 80, 81, 82, 83, 84, 87, 87, 90,
|
||||
@@ -637,17 +655,6 @@ yysymbol_name (yysymbol_kind_t yysymbol)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef YYPRINT
|
||||
/* YYTOKNUM[NUM] -- (External) token number corresponding to the
|
||||
(internal) symbol number NUM (which must be that of a token). */
|
||||
static const yytype_int16 yytoknum[] =
|
||||
{
|
||||
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
|
||||
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
|
||||
275, 276, 277, 278, 279, 10
|
||||
};
|
||||
#endif
|
||||
|
||||
#define YYPACT_NINF (-51)
|
||||
|
||||
#define yypact_value_is_default(Yyn) \
|
||||
@@ -658,8 +665,8 @@ static const yytype_int16 yytoknum[] =
|
||||
#define yytable_value_is_error(Yyn) \
|
||||
0
|
||||
|
||||
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
|
||||
STATE-NUM. */
|
||||
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
|
||||
STATE-NUM. */
|
||||
static const yytype_int16 yypact[] =
|
||||
{
|
||||
4, 62, 62, 62, 62, -51, 2, 87, 39, 58,
|
||||
@@ -679,9 +686,9 @@ static const yytype_int16 yypact[] =
|
||||
140, 171, 172, -51, -51, 174, 175, -51, -51
|
||||
};
|
||||
|
||||
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
|
||||
Performed when YYTABLE does not specify something else to do. Zero
|
||||
means the default is an error. */
|
||||
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
|
||||
Performed when YYTABLE does not specify something else to do. Zero
|
||||
means the default is an error. */
|
||||
static const yytype_int8 yydefact[] =
|
||||
{
|
||||
0, 0, 0, 0, 0, 28, 27, 0, 0, 0,
|
||||
@@ -701,7 +708,7 @@ static const yytype_int8 yydefact[] =
|
||||
0, 0, 0, 62, 65, 0, 0, 63, 66
|
||||
};
|
||||
|
||||
/* YYPGOTO[NTERM-NUM]. */
|
||||
/* YYPGOTO[NTERM-NUM]. */
|
||||
static const yytype_int8 yypgoto[] =
|
||||
{
|
||||
-51, -51, -51, -51, -51, -51, 0, -51, -51, -51,
|
||||
@@ -711,19 +718,19 @@ static const yytype_int8 yypgoto[] =
|
||||
-35, -51
|
||||
};
|
||||
|
||||
/* YYDEFGOTO[NTERM-NUM]. */
|
||||
static const yytype_int16 yydefgoto[] =
|
||||
/* YYDEFGOTO[NTERM-NUM]. */
|
||||
static const yytype_uint8 yydefgoto[] =
|
||||
{
|
||||
-1, 13, 14, 36, 15, 94, 79, 17, 18, 19,
|
||||
0, 13, 14, 36, 15, 94, 79, 17, 18, 19,
|
||||
57, 80, 112, 20, 21, 58, 22, 37, 23, 66,
|
||||
129, 42, 24, 38, 89, 114, 90, 25, 116, 117,
|
||||
135, 26, 95, 126, 27, 119, 145, 28, 120, 146,
|
||||
29, 30
|
||||
};
|
||||
|
||||
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
|
||||
positive, shift that token. If negative, reduce the rule whose
|
||||
number is the opposite. If YYTABLE_NINF, syntax error. */
|
||||
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
|
||||
positive, shift that token. If negative, reduce the rule whose
|
||||
number is the opposite. If YYTABLE_NINF, syntax error. */
|
||||
static const yytype_int16 yytable[] =
|
||||
{
|
||||
16, 32, 33, 34, 35, 41, 81, 1, 2, 48,
|
||||
@@ -770,8 +777,8 @@ static const yytype_int16 yycheck[] =
|
||||
13, 11, -1, 12, 12, 11, 11, -1, 114, 66
|
||||
};
|
||||
|
||||
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
|
||||
symbol of state STATE-NUM. */
|
||||
/* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
|
||||
state STATE-NUM. */
|
||||
static const yytype_int8 yystos[] =
|
||||
{
|
||||
0, 3, 4, 8, 9, 12, 13, 15, 17, 19,
|
||||
@@ -791,7 +798,7 @@ static const yytype_int8 yystos[] =
|
||||
32, 14, 14, 12, 12, 62, 65, 11, 11
|
||||
};
|
||||
|
||||
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
|
||||
/* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */
|
||||
static const yytype_int8 yyr1[] =
|
||||
{
|
||||
0, 26, 27, 27, 27, 27, 27, 29, 28, 31,
|
||||
@@ -804,7 +811,7 @@ static const yytype_int8 yyr1[] =
|
||||
67
|
||||
};
|
||||
|
||||
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
|
||||
/* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */
|
||||
static const yytype_int8 yyr2[] =
|
||||
{
|
||||
0, 2, 1, 1, 1, 1, 1, 0, 4, 0,
|
||||
@@ -826,6 +833,7 @@ enum { YYENOMEM = -2 };
|
||||
#define YYACCEPT goto yyacceptlab
|
||||
#define YYABORT goto yyabortlab
|
||||
#define YYERROR goto yyerrorlab
|
||||
#define YYNOMEM goto yyexhaustedlab
|
||||
|
||||
|
||||
#define YYRECOVERING() (!!yyerrstatus)
|
||||
@@ -866,10 +874,7 @@ do { \
|
||||
YYFPRINTF Args; \
|
||||
} while (0)
|
||||
|
||||
/* This macro is provided for backward compatibility. */
|
||||
# ifndef YY_LOCATION_PRINT
|
||||
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
|
||||
# endif
|
||||
|
||||
|
||||
|
||||
# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \
|
||||
@@ -893,15 +898,11 @@ yy_symbol_value_print (FILE *yyo,
|
||||
yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep)
|
||||
{
|
||||
FILE *yyoutput = yyo;
|
||||
YYUSE (yyoutput);
|
||||
YY_USE (yyoutput);
|
||||
if (!yyvaluep)
|
||||
return;
|
||||
# ifdef YYPRINT
|
||||
if (yykind < YYNTOKENS)
|
||||
YYPRINT (yyo, yytoknum[yykind], *yyvaluep);
|
||||
# endif
|
||||
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
|
||||
YYUSE (yykind);
|
||||
YY_USE (yykind);
|
||||
YY_IGNORE_MAYBE_UNINITIALIZED_END
|
||||
}
|
||||
|
||||
@@ -1015,13 +1016,13 @@ static void
|
||||
yydestruct (const char *yymsg,
|
||||
yysymbol_kind_t yykind, YYSTYPE *yyvaluep)
|
||||
{
|
||||
YYUSE (yyvaluep);
|
||||
YY_USE (yyvaluep);
|
||||
if (!yymsg)
|
||||
yymsg = "Deleting";
|
||||
YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp);
|
||||
|
||||
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
|
||||
YYUSE (yykind);
|
||||
YY_USE (yykind);
|
||||
YY_IGNORE_MAYBE_UNINITIALIZED_END
|
||||
}
|
||||
|
||||
@@ -1084,6 +1085,7 @@ yyparse (void)
|
||||
YYDPRINTF ((stderr, "Starting parse\n"));
|
||||
|
||||
yychar = YYEMPTY; /* Cause a token to be read. */
|
||||
|
||||
goto yysetstate;
|
||||
|
||||
|
||||
@@ -1109,7 +1111,7 @@ yysetstate:
|
||||
|
||||
if (yyss + yystacksize - 1 <= yyssp)
|
||||
#if !defined yyoverflow && !defined YYSTACK_RELOCATE
|
||||
goto yyexhaustedlab;
|
||||
YYNOMEM;
|
||||
#else
|
||||
{
|
||||
/* Get the current used size of the three stacks, in elements. */
|
||||
@@ -1137,7 +1139,7 @@ yysetstate:
|
||||
# else /* defined YYSTACK_RELOCATE */
|
||||
/* Extend the stack our own way. */
|
||||
if (YYMAXDEPTH <= yystacksize)
|
||||
goto yyexhaustedlab;
|
||||
YYNOMEM;
|
||||
yystacksize *= 2;
|
||||
if (YYMAXDEPTH < yystacksize)
|
||||
yystacksize = YYMAXDEPTH;
|
||||
@@ -1148,7 +1150,7 @@ yysetstate:
|
||||
YY_CAST (union yyalloc *,
|
||||
YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
|
||||
if (! yyptr)
|
||||
goto yyexhaustedlab;
|
||||
YYNOMEM;
|
||||
YYSTACK_RELOCATE (yyss_alloc, yyss);
|
||||
YYSTACK_RELOCATE (yyvs_alloc, yyvs);
|
||||
# undef YYSTACK_RELOCATE
|
||||
@@ -1170,6 +1172,7 @@ yysetstate:
|
||||
}
|
||||
#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
|
||||
|
||||
|
||||
if (yystate == YYFINAL)
|
||||
YYACCEPT;
|
||||
|
||||
@@ -1551,6 +1554,7 @@ yyerrorlab:
|
||||
label yyerrorlab therefore never appears in user code. */
|
||||
if (0)
|
||||
YYERROR;
|
||||
++yynerrs;
|
||||
|
||||
/* Do not reclaim the symbols of the rule whose action triggered
|
||||
this YYERROR. */
|
||||
@@ -1611,7 +1615,7 @@ yyerrlab1:
|
||||
`-------------------------------------*/
|
||||
yyacceptlab:
|
||||
yyresult = 0;
|
||||
goto yyreturn;
|
||||
goto yyreturnlab;
|
||||
|
||||
|
||||
/*-----------------------------------.
|
||||
@@ -1619,24 +1623,22 @@ yyacceptlab:
|
||||
`-----------------------------------*/
|
||||
yyabortlab:
|
||||
yyresult = 1;
|
||||
goto yyreturn;
|
||||
goto yyreturnlab;
|
||||
|
||||
|
||||
#if !defined yyoverflow
|
||||
/*-------------------------------------------------.
|
||||
| yyexhaustedlab -- memory exhaustion comes here. |
|
||||
`-------------------------------------------------*/
|
||||
/*-----------------------------------------------------------.
|
||||
| yyexhaustedlab -- YYNOMEM (memory exhaustion) comes here. |
|
||||
`-----------------------------------------------------------*/
|
||||
yyexhaustedlab:
|
||||
yyerror (YY_("memory exhausted"));
|
||||
yyresult = 2;
|
||||
goto yyreturn;
|
||||
#endif
|
||||
goto yyreturnlab;
|
||||
|
||||
|
||||
/*-------------------------------------------------------.
|
||||
| yyreturn -- parsing is finished, clean up and return. |
|
||||
`-------------------------------------------------------*/
|
||||
yyreturn:
|
||||
/*----------------------------------------------------------.
|
||||
| yyreturnlab -- parsing is finished, clean up and return. |
|
||||
`----------------------------------------------------------*/
|
||||
yyreturnlab:
|
||||
if (yychar != YYEMPTY)
|
||||
{
|
||||
/* Make sure we have latest lookahead translation. See comments at
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user