Merge remote-tracking branch 'origin/master' into rnc/t_shape_plugin
@ -31,10 +31,10 @@ STRING(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC)
|
||||
|
||||
SET(${PROJECT_NAME_UC}_MAJOR_VERSION 7)
|
||||
SET(${PROJECT_NAME_UC}_MINOR_VERSION 4)
|
||||
SET(${PROJECT_NAME_UC}_PATCH_VERSION 0)
|
||||
SET(${PROJECT_NAME_UC}_PATCH_VERSION 1)
|
||||
SET(${PROJECT_NAME_UC}_VERSION
|
||||
${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION})
|
||||
SET(${PROJECT_NAME_UC}_VERSION_DEV 0)
|
||||
SET(${PROJECT_NAME_UC}_VERSION_DEV 1)
|
||||
|
||||
# Find KERNEL
|
||||
# ===========
|
||||
@ -67,20 +67,7 @@ OPTION(SALOME_BUILD_TESTS "Build SALOME tests" ON)
|
||||
OPTION(SALOME_BUILD_GUI "Enable GUI" ON)
|
||||
CMAKE_DEPENDENT_OPTION(SALOME_GEOM_USE_OPENCV "Enable shape recognition from picture" OFF
|
||||
"SALOME_BUILD_GUI" OFF)
|
||||
CMAKE_DEPENDENT_OPTION(SALOME_GEOM_BUILD_CC "Enable curve creator (experimental)" OFF
|
||||
"SALOME_BUILD_GUI" OFF)
|
||||
MARK_AS_ADVANCED(SALOME_BUILD_GUI SALOME_GEOM_USE_OPENCV SALOME_GEOM_BUILD_CC)
|
||||
|
||||
# Debug options (!!! FOR DEVELOPERS ONLY !!! TO BE REMOVED LATER !!!)
|
||||
IF(CMAKE_BUILD_TYPE MATCHES "^Debug$")
|
||||
CMAKE_DEPENDENT_OPTION(SALOME_GEOM_DEBUG_CC "Debug curve creator" OFF
|
||||
"SALOME_GEOM_BUILD_CC" OFF)
|
||||
MARK_AS_ADVANCED(SALOME_GEOM_DEBUG_CC)
|
||||
|
||||
IF(SALOME_GEOM_DEBUG_CC)
|
||||
ADD_DEFINITIONS(-DDEBUG_CURVE_CREATOR)
|
||||
ENDIF(SALOME_GEOM_DEBUG_CC)
|
||||
ENDIF()
|
||||
MARK_AS_ADVANCED(SALOME_BUILD_GUI SALOME_GEOM_USE_OPENCV)
|
||||
|
||||
# Prerequisites
|
||||
# =============
|
||||
@ -151,7 +138,7 @@ ENDIF(SALOME_BUILD_GUI)
|
||||
##
|
||||
|
||||
FIND_PACKAGE(SalomeCAS REQUIRED)
|
||||
FIND_PACKAGE(SalomeVTK 6.1 REQUIRED)
|
||||
FIND_PACKAGE(SalomeVTK REQUIRED)
|
||||
|
||||
# OpenCV
|
||||
IF(SALOME_GEOM_USE_OPENCV)
|
||||
@ -234,16 +221,18 @@ INCLUDE(CMakePackageConfigHelpers)
|
||||
# List of targets in this project we want to make visible to the rest of the world.
|
||||
# They all have to be INSTALL'd with the option "EXPORT ${PROJECT_NAME}TargetGroup"
|
||||
SET(_${PROJECT_NAME}_exposed_targets
|
||||
GEOMArchimede BREPExport BREPImport BlockFix GEOMbasic GEOMAlgo GEOMClient GEOMImpl
|
||||
GEOMUtils GEOMEngine GEOM_SupervEngine IGESExport IGESImport GEOMSketcher
|
||||
SalomeIDLGEOM STEPExport STEPImport STLExport STLImport ShHealOper XAO AdvancedEngine OCC2VTK
|
||||
VTKExport
|
||||
GEOMArchimede BlockFix GEOMbasic GEOMAlgo GEOMClient GEOMImpl
|
||||
GEOMUtils GEOMEngine GEOM_SupervEngine GEOMSketcher
|
||||
SalomeIDLGEOM SalomeIDLGEOMSuperv SalomeIDLAdvancedGEOM ShHealOper XAO AdvancedEngine OCC2VTK
|
||||
SalomeIDLSTLPlugin SalomeIDLBREPPlugin SalomeIDLSTEPPlugin SalomeIDLIGESPlugin SalomeIDLXAOPlugin SalomeIDLVTKPlugin
|
||||
STLPluginEngine BREPPluginEngine STEPPluginEngine IGESPluginEngine XAOPluginEngine VTKPluginEngine
|
||||
)
|
||||
IF(SALOME_BUILD_GUI)
|
||||
LIST(APPEND _${PROJECT_NAME}_exposed_targets
|
||||
AdvancedGUI BasicGUI BlocksGUI BooleanGUI BuildGUI DisplayGUI DlgRef EntityGUI GEOMBase
|
||||
AdvancedGUI BasicGUI BlocksGUI BooleanGUI BuildGUI DisplayGUI DlgRef CurveCreator EntityGUI GEOMBase
|
||||
GEOMFiltersSelection GEOM GEOMToolsGUI GenerationGUI GroupGUI Material MeasureGUI GEOMObject
|
||||
OperationGUI PrimitiveGUI RepairGUI TransformationGUI ImportExportGUI
|
||||
OperationGUI PrimitiveGUI RepairGUI TransformationGUI DependencyTree
|
||||
STLPluginGUI BREPPluginGUI STEPPluginGUI IGESPluginGUI XAOPluginGUI VTKPluginGUI
|
||||
)
|
||||
ENDIF(SALOME_BUILD_GUI)
|
||||
|
||||
@ -253,12 +242,6 @@ IF(SALOME_GEOM_USE_OPENCV)
|
||||
)
|
||||
ENDIF(SALOME_GEOM_USE_OPENCV)
|
||||
|
||||
IF(SALOME_GEOM_BUILD_CC)
|
||||
LIST(APPEND _${PROJECT_NAME}_exposed_targets
|
||||
CurveCreator
|
||||
)
|
||||
ENDIF(SALOME_GEOM_BUILD_CC)
|
||||
|
||||
# Add all targets to the build-tree export set
|
||||
EXPORT(TARGETS ${_${PROJECT_NAME}_exposed_targets}
|
||||
FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}Targets.cmake)
|
||||
|
@ -129,8 +129,6 @@ ENDIF(SALOME_GEOM_BUILD_GUI)
|
||||
|
||||
# Exposed GEOM targets:
|
||||
SET(GEOM_GEOMArchimede GEOMArchimede)
|
||||
SET(GEOM_BREPExport BREPExport)
|
||||
SET(GEOM_BREPImport BREPImport)
|
||||
SET(GEOM_BlockFix BlockFix)
|
||||
SET(GEOM_GEOMbasic GEOMbasic)
|
||||
SET(GEOM_GEOMAlgo GEOMAlgo)
|
||||
@ -139,14 +137,16 @@ SET(GEOM_GEOMImpl GEOMImpl)
|
||||
SET(GEOM_GEOMUtils GEOMUtils)
|
||||
SET(GEOM_GEOMEngine GEOMEngine)
|
||||
SET(GEOM_GEOM_SupervEngine GEOM_SupervEngine)
|
||||
SET(GEOM_IGESExport IGESExport)
|
||||
SET(GEOM_IGESImport IGESImport)
|
||||
SET(GEOM_GEOMSketcher GEOMSketcher)
|
||||
SET(GEOM_SalomeIDLGEOM SalomeIDLGEOM)
|
||||
SET(GEOM_STEPExport STEPExport)
|
||||
SET(GEOM_STEPImport STEPImport)
|
||||
SET(GEOM_STLExport STLExport)
|
||||
SET(GEOM_STLImport STLImport)
|
||||
SET(GEOM_SalomeIDLGEOMSuperv SalomeIDLGEOMSuperv)
|
||||
SET(GEOM_SalomeIDLAdvancedGEOM SalomeIDLAdvancedGEOM)
|
||||
SET(GEOM_SalomeIDLSTLPlugin SalomeIDLSTLPlugin)
|
||||
SET(GEOM_SalomeIDLBREPPlugin SalomeIDLBREPPlugin)
|
||||
SET(GEOM_SalomeIDLSTEPPlugin SalomeIDLSTEPPlugin)
|
||||
SET(GEOM_SalomeIDLIGESPlugin SalomeIDLIGESPlugin)
|
||||
SET(GEOM_SalomeIDLXAOPlugin SalomeIDLXAOPlugin)
|
||||
SET(GEOM_SalomeIDLVTKPlugin SalomeIDLVTKPlugin)
|
||||
SET(GEOM_ShHealOper ShHealOper)
|
||||
SET(GEOM_XAO XAO)
|
||||
SET(GEOM_AdvancedEngine AdvancedEngine)
|
||||
@ -162,17 +162,28 @@ SET(GEOM_GEOMBase GEOMBase)
|
||||
SET(GEOM_GEOMFiltersSelection GEOMFiltersSelection)
|
||||
SET(GEOM_GEOM GEOM)
|
||||
SET(GEOM_GEOMToolsGUI GEOMToolsGUI)
|
||||
SET(GEOM_DependencyTree DependencyTree)
|
||||
SET(GEOM_GenerationGUI GenerationGUI)
|
||||
SET(GEOM_GroupGUI GroupGUI)
|
||||
SET(GEOM_Material Material)
|
||||
SET(GEOM_MeasureGUI MeasureGUI)
|
||||
SET(GEOM_GEOMObject GEOMObject)
|
||||
SET(GEOM_OCC2VTK OCC2VTK)
|
||||
SET(GEOM_VTKExport VTKExport)
|
||||
SET(GEOM_OperationGUI OperationGUI)
|
||||
SET(GEOM_PrimitiveGUI PrimitiveGUI)
|
||||
SET(GEOM_RepairGUI RepairGUI)
|
||||
SET(GEOM_TransformationGUI TransformationGUI)
|
||||
SET(GEOM_ImportExportGUI ImportExportGUI)
|
||||
SET(GEOM_STLPluginGUI STLPluginGUI)
|
||||
SET(GEOM_STLPluginEngine STLPluginEngine)
|
||||
SET(GEOM_BREPPluginGUI BREPPluginGUI)
|
||||
SET(GEOM_BREPPluginEngine BREPPluginEngine)
|
||||
SET(GEOM_STEPPluginGUI STEPPluginGUI)
|
||||
SET(GEOM_STEPPluginEngine STEPPluginEngine)
|
||||
SET(GEOM_IGESPluginGUI IGESPluginGUI)
|
||||
SET(GEOM_IGESPluginEngine IGESPluginEngine)
|
||||
SET(GEOM_XAOPluginGUI XAOPluginGUI)
|
||||
SET(GEOM_XAOPluginEngine XAOPluginEngine)
|
||||
SET(GEOM_VTKPluginGUI VTKPluginGUI)
|
||||
SET(GEOM_VTKPluginEngine VTKPluginEngine)
|
||||
SET(GEOM_GEOMShapeRec GEOMShapeRec)
|
||||
SET(GEOM_CurveCreator CurveCreator)
|
||||
|
@ -21,8 +21,6 @@ SET(GEOM_CXXFLAGS -I${GEOM_ROOT_DIR}/include/salome) # to be removed
|
||||
SET(GEOM_INCLUDE_DIRS ${GEOM_ROOT_DIR}/include/salome)
|
||||
|
||||
FIND_LIBRARY(GEOM_GEOMArchimede GEOMArchimede ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_BREPExport BREPExport ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_BREPImport BREPImport ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_BlockFix BlockFix ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GEOMbasic GEOMbasic ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GEOMAlgo GEOMAlgo ${GEOM_ROOT_DIR}/lib/salome)
|
||||
@ -31,14 +29,15 @@ FIND_LIBRARY(GEOM_GEOMimpl GEOMimpl ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GEOMUtils GEOMUtils ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GEOMEngine GEOMEngine ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_SupervEngine GEOM_SupervEngine ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_IGESExport IGESExport ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_IGESImport IGESImport ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GEOMSketcher GEOMSketcher ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_SalomeIDLGEOM SalomeIDLGEOM ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_STEPExport STEPExport ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_STEPImport STEPImport ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_STLExport STLExport ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_STLImport STLImport ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_SalomeIDLGEOMSuperv SalomeIDLGEOMSuperv ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_SalomeIDLSTLPlugin SalomeIDLSTLPlugin ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_SalomeIDLBREPPlugin SalomeIDLBREPPlugin ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_SalomeIDLSTEPPlugin SalomeIDLSTEPPlugin ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_SalomeIDLIGESPlugin SalomeIDLIGESPlugin ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_SalomeIDLVTKPlugin SalomeIDLVTKPlugin ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_SalomeIDLXAOPlugin SalomeIDLXAOPlugin ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_ShHealOper ShHealOper ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_XAO XAO ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_AdvancedEngine AdvancedEngine ${GEOM_ROOT_DIR}/lib/salome)
|
||||
@ -54,17 +53,28 @@ FIND_LIBRARY(GEOM_GEOMBase GEOMBase ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GEOMFiltersSelection GEOMFiltersSelection ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GEOM GEOM ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GEOMToolsGUI GEOMToolsGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_DependencyTree DependencyTree ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GenerationGUI GenerationGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GroupGUI GroupGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_Material Material ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_MeasureGUI MeasureGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GEOMObject GEOMObject ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_OCC2VTK OCC2VTK ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_VTKExport VTKExport ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_OperationGUI OperationGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_PrimitiveGUI PrimitiveGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_RepairGUI RepairGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_TransformationGUI TransformationGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_ImportExportGUI ImportExportGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_STLPluginGUI STLPluginGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_STLPluginEngine STLPluginEngine ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_BREPPluginGUI BREPPluginGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_BREPPluginEngine BREPPluginEngine ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_STEPPluginGUI STEPPluginGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_STEPPluginEngine STEPPluginEngine ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_IGESPluginGUI IGESPluginGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_IGESPluginEngine IGESPluginEngine ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_XAOPluginGUI XAOPluginGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_XAOPluginEngine XAOPluginEngine ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_VTKPluginGUI VTKPluginGUI ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_VTKPluginEngine VTKPluginEngine ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_GEOMShapeRec GEOMShapeRec ${GEOM_ROOT_DIR}/lib/salome)
|
||||
FIND_LIBRARY(GEOM_CurveCreator CurveCreator ${GEOM_ROOT_DIR}/lib/salome)
|
||||
|
@ -36,28 +36,28 @@ def set_env( args ):
|
||||
|
||||
csf_list = ["Plugin", "GEOMDS_Resources", "ShHealing"]
|
||||
|
||||
for csf_file in csf_list:
|
||||
uniteFiles( os.path.join( res_dir, csf_file ), os.path.join( env_dir, csf_file ) )
|
||||
pass
|
||||
|
||||
for csf_string in csf_list:
|
||||
csf_var = "CSF_" + csf_string + "Defaults"
|
||||
for csf in csf_list:
|
||||
uniteFiles( os.path.join( res_dir, csf ), os.path.join( env_dir, csf ) )
|
||||
csf_var = "CSF_%sDefaults" % csf
|
||||
if not os.getenv( csf_var ):
|
||||
os.environ[ csf_var ] = env_dir
|
||||
pass
|
||||
pass
|
||||
|
||||
# find plugins
|
||||
# collect plugins
|
||||
plugin_list = []
|
||||
resource_path_list = []
|
||||
plugins_dir_var = "GEOM_ENGINE_RESOURCES_DIR"
|
||||
if os.environ.has_key(plugins_dir_var):
|
||||
# reverse the user's paths list, because the used 'add_path' prepends a new path,
|
||||
# but we want to append it: [a, b, c] => [c, b, a]
|
||||
plugins_dirs = os.environ[plugins_dir_var].split(os.pathsep)
|
||||
plugins_dirs.reverse()
|
||||
os.environ[plugins_dir_var] = string.join(plugins_dirs, os.pathsep)
|
||||
pass
|
||||
|
||||
# standard plugins
|
||||
plugin_list.append("BREPPlugin")
|
||||
plugin_list.append("STEPPlugin")
|
||||
plugin_list.append("IGESPlugin")
|
||||
plugin_list.append("STLPlugin")
|
||||
plugin_list.append("XAOPlugin")
|
||||
plugin_list.append("VTKPlugin")
|
||||
plugin_list.append("AdvancedGEOM")
|
||||
|
||||
# find additional plugins
|
||||
for env_var in os.environ.keys():
|
||||
value = os.environ[env_var]
|
||||
if env_var[-9:] == "_ROOT_DIR" and value:
|
||||
@ -65,61 +65,48 @@ def set_env( args ):
|
||||
plugin = env_var[:-9] # plugin name may have wrong case
|
||||
|
||||
# look for NAMEOFPlugin.xml file among resource files
|
||||
resource_dir = os.path.join(plugin_root,"share",salome_subdir,"resources",plugin.lower())
|
||||
if not os.access( resource_dir, os.F_OK ): continue
|
||||
for resource_file in os.listdir( resource_dir ):
|
||||
if resource_file.endswith( ".xml") and \
|
||||
resource_dir = os.path.join(plugin_root, "share", salome_subdir, "resources", plugin.lower())
|
||||
if not os.access(resource_dir, os.F_OK): continue
|
||||
|
||||
for resource_file in os.listdir(resource_dir):
|
||||
if resource_file.endswith(".xml") and \
|
||||
resource_file.lower() == plugin.lower() + ".xml":
|
||||
# use "name" attribute of "geom-plugin" as name of plugin in a right case
|
||||
from xml.dom.minidom import parse
|
||||
try:
|
||||
xml_doc = parse( os.path.join( resource_dir, resource_file ))
|
||||
from xml.dom.minidom import parse
|
||||
xml_doc = parse(os.path.join(resource_dir, resource_file))
|
||||
plugin_nodes = xml_doc.getElementsByTagName("geom-plugin")
|
||||
except:
|
||||
continue
|
||||
if not plugin_nodes or not plugin_nodes[0].hasAttribute("name"): continue
|
||||
plugin = plugin_nodes[0].getAttribute("name")
|
||||
if plugin in plugin_list: continue
|
||||
if not plugin_nodes or not plugin_nodes[0].hasAttribute("name"): continue
|
||||
|
||||
# add paths of plugin
|
||||
plugin_list.append(plugin)
|
||||
if not os.environ.has_key("SALOME_"+plugin+"Resources"):
|
||||
resource_path = os.path.join(plugin_root,"share",salome_subdir,"resources",plugin.lower())
|
||||
os.environ["SALOME_"+plugin+"Resources"] = resource_path
|
||||
resource_path_list.append( resource_path )
|
||||
add_path(os.path.join(plugin_root,get_lib_dir(),python_version, "site-packages",salome_subdir), "PYTHONPATH")
|
||||
add_path(os.path.join(plugin_root,get_lib_dir(),salome_subdir), "PYTHONPATH")
|
||||
plugin = plugin_nodes[0].getAttribute("name")
|
||||
if plugin in plugin_list: continue
|
||||
|
||||
if sys.platform == "win32":
|
||||
add_path(os.path.join(plugin_root,get_lib_dir(),salome_subdir), "PATH")
|
||||
add_path(os.path.join(plugin_root,"bin",salome_subdir), "PYTHONPATH")
|
||||
else:
|
||||
add_path(os.path.join(plugin_root,get_lib_dir(),salome_subdir), "LD_LIBRARY_PATH")
|
||||
add_path(os.path.join(plugin_root,"bin",salome_subdir), "PYTHONPATH")
|
||||
add_path(os.path.join(plugin_root,"bin",salome_subdir), "PATH")
|
||||
plugin_list.append(plugin)
|
||||
|
||||
# add paths of plugin
|
||||
if not os.environ.has_key("SALOME_"+plugin+"Resources"):
|
||||
resource_path = os.path.join(plugin_root, "share", salome_subdir, "resources", plugin.lower())
|
||||
os.environ["SALOME_"+plugin+"Resources"] = resource_path
|
||||
resource_path_list.append(resource_path)
|
||||
add_path(os.path.join(plugin_root, get_lib_dir(), python_version, "site-packages", salome_subdir), "PYTHONPATH")
|
||||
add_path(os.path.join(plugin_root, get_lib_dir(), salome_subdir), "PYTHONPATH")
|
||||
if sys.platform == "win32":
|
||||
add_path(os.path.join(plugin_root, get_lib_dir(), salome_subdir), "PATH")
|
||||
add_path(os.path.join(plugin_root, "bin", salome_subdir), "PYTHONPATH")
|
||||
else:
|
||||
add_path(os.path.join(plugin_root, get_lib_dir(), salome_subdir), "LD_LIBRARY_PATH")
|
||||
add_path(os.path.join(plugin_root, "bin", salome_subdir), "PYTHONPATH")
|
||||
add_path(os.path.join(plugin_root, "bin", salome_subdir), "PATH")
|
||||
pass
|
||||
pass
|
||||
pass
|
||||
pass
|
||||
elif resource_file == "ImportExport" and plugin.upper() != "GEOM":
|
||||
# add 'ImportExport' plugin file path into variable
|
||||
add_path(resource_dir, plugins_dir_var)
|
||||
# add plugin's library path into environment
|
||||
if sys.platform == "win32":
|
||||
add_path(os.path.join(plugin_root,get_lib_dir(),salome_subdir), "PATH")
|
||||
else:
|
||||
add_path(os.path.join(plugin_root,get_lib_dir(),salome_subdir), "LD_LIBRARY_PATH")
|
||||
pass
|
||||
except:
|
||||
continue
|
||||
pass
|
||||
pass
|
||||
plugin_list.append("GEOMActions")
|
||||
pass
|
||||
pass
|
||||
|
||||
os.environ["GEOM_PluginsList"] = ":".join(plugin_list)
|
||||
os.environ["SalomeAppConfig"] = os.environ["SalomeAppConfig"] + psep + psep.join(resource_path_list)
|
||||
|
||||
if os.environ.has_key(plugins_dir_var):
|
||||
# reverse back the plugin paths:
|
||||
# [f, e, d, c, b, a] => [a, b, c, d, e, f]
|
||||
plugins_dirs = os.environ[plugins_dir_var].split(os.pathsep)
|
||||
plugins_dirs.reverse()
|
||||
os.environ[plugins_dir_var] = string.join(plugins_dirs, os.pathsep)
|
||||
pass
|
||||
pass
|
||||
|
@ -25,7 +25,7 @@ print "UnitName2 = ", UnitName2
|
||||
# import shapes
|
||||
Shape1 = geompy.ImportIGES(theFileName1)
|
||||
Shape2 = geompy.ImportIGES(theFileName2)
|
||||
Shape3 = geompy.ImportFile(theFileName2,"IGES_SCALE")
|
||||
Shape3 = geompy.ImportIGES(theFileName2, True)
|
||||
[Xmin1,Xmax1, Ymin1,Ymax1, Zmin1,Zmax1] = geompy.BoundingBox(Shape1)
|
||||
[Xmin2,Xmax2, Ymin2,Ymax2, Zmin2,Zmax2] = geompy.BoundingBox(Shape2)
|
||||
[Xmin3,Xmax3, Ymin3,Ymax3, Zmin3,Zmax3] = geompy.BoundingBox(Shape3)
|
||||
|
48
doc/salome/examples/polyline.py
Normal file
@ -0,0 +1,48 @@
|
||||
# 2D polyline
|
||||
|
||||
import salome
|
||||
salome.salome_init()
|
||||
import GEOM
|
||||
from salome.geom import geomBuilder
|
||||
geompy = geomBuilder.New(salome.myStudy)
|
||||
gg = salome.ImportComponentGUI("GEOM")
|
||||
|
||||
# create vertices
|
||||
p1 = geompy.MakeVertex(70., 0., 0.)
|
||||
p2 = geompy.MakeVertex(70., 70., 80.)
|
||||
p3 = geompy.MakeVertex( 0., 70., 0.)
|
||||
|
||||
#create a vector from two points
|
||||
vector_arc = geompy.MakeVector(p1, p3)
|
||||
|
||||
# create an arc from three points
|
||||
arc = geompy.MakeArc(p1, p2, p3)
|
||||
|
||||
# create a wire
|
||||
wire = geompy.MakeWire([vector_arc, arc])
|
||||
|
||||
# create a planar face
|
||||
isPlanarWanted = 1
|
||||
face = geompy.MakeFace(wire, isPlanarWanted)
|
||||
|
||||
# Create a 2D polyline with Polyline2D interface
|
||||
pl = geompy.Polyline2D()
|
||||
pl.addSection("section 1", GEOM.Polyline, True, [0, 0, 10, 0, 10, 10])
|
||||
polyline1 = pl.result([100, 0, 0, 1, 1, 1, -1, 1, 0])
|
||||
|
||||
pl = geompy.Polyline2D()
|
||||
pl.addSection("section 2", GEOM.Interpolation, False)
|
||||
pl.addPoints([20, 0, 30, 0, 30, 10])
|
||||
polyline2 = pl.result(face)
|
||||
|
||||
# add objects in the study
|
||||
id_face = geompy.addToStudy(face,"Face")
|
||||
id_polyline1 = geompy.addToStudy(polyline1, "Polyline1")
|
||||
id_polyline2 = geompy.addToStudy(polyline2, "Polyline2")
|
||||
|
||||
# display the first polyline and the second polyline with its planar face
|
||||
gg.createAndDisplayGO(id_face)
|
||||
gg.setDisplayMode(id_face,1)
|
||||
gg.setTransparency(id_face,0.5)
|
||||
gg.createAndDisplayGO(id_polyline1)
|
||||
gg.createAndDisplayGO(id_polyline2)
|
@ -1,5 +1,7 @@
|
||||
# Creation of a Cylinder
|
||||
|
||||
import math
|
||||
|
||||
import salome
|
||||
salome.salome_init()
|
||||
import GEOM
|
||||
@ -11,23 +13,37 @@ gg = salome.ImportComponentGUI("GEOM")
|
||||
# create a vertex and a vector
|
||||
p1 = geompy.MakeVertex(25, 35, 45)
|
||||
p2 = geompy.MakeVertex(70, 70, 70)
|
||||
v = geompy.MakeVector(p1, p2)
|
||||
v = geompy.MakeVector(p1, p2)
|
||||
|
||||
# create cylinders
|
||||
height = 40
|
||||
|
||||
height = 40
|
||||
radius1 = 15
|
||||
radius2 = 30
|
||||
angle1 = 45. * math.pi / 180.
|
||||
angle2 = 210. * math.pi / 180.
|
||||
|
||||
cylinder1 = geompy.MakeCylinder(p1, v, radius1, height)
|
||||
|
||||
radius2 = 30
|
||||
cylinder2 = geompy.MakeCylinderRH(radius2, height)
|
||||
|
||||
cylinder3 = geompy.MakeCylinderA(p1, v, radius1, height, angle1)
|
||||
geompy.TranslateDXDYDZ(cylinder3, 80., 0., 0.)
|
||||
|
||||
cylinder4 = geompy.MakeCylinderRHA(radius2, height, angle2)
|
||||
geompy.TranslateDXDYDZ(cylinder4, 80., 0., 0.)
|
||||
|
||||
# add objects in the study
|
||||
id_cylinder1 = geompy.addToStudy(cylinder1,"Cylinder1")
|
||||
id_cylinder2 = geompy.addToStudy(cylinder2,"Cylinder2")
|
||||
id_cylinder3 = geompy.addToStudy(cylinder3,"Cylinder3")
|
||||
id_cylinder4 = geompy.addToStudy(cylinder4,"Cylinder4")
|
||||
|
||||
# display the cylinders
|
||||
gg.createAndDisplayGO(id_cylinder1)
|
||||
gg.setDisplayMode(id_cylinder1,1)
|
||||
gg.createAndDisplayGO(id_cylinder2)
|
||||
gg.setDisplayMode(id_cylinder2,1)
|
||||
gg.createAndDisplayGO(id_cylinder3)
|
||||
gg.setDisplayMode(id_cylinder3,1)
|
||||
gg.createAndDisplayGO(id_cylinder4)
|
||||
gg.setDisplayMode(id_cylinder4,1)
|
||||
|
@ -11,10 +11,9 @@ box2 = geompy.MakeBox(-50,-50,-50, 0,0,0)
|
||||
sphere = geompy.MakeSphere(50,50,50, 30)
|
||||
fuse = geompy.MakeBoolean(box,sphere,3)
|
||||
fuse_id = geompy.addToStudy(fuse,"Fuse")
|
||||
box_id = geompy.addToStudy(box2, "Box")
|
||||
|
||||
gg = salome.ImportComponentGUI("GEOM")
|
||||
gg.createAndDisplayGO(fuse_id)
|
||||
gg.setDisplayMode(fuse_id,1)
|
||||
gg.createAndDisplayGO(box_id)
|
||||
gg.setVectorsMode(box_id, 1)
|
||||
gg.setVectorsMode(fuse_id, 1)
|
||||
gg.setVerticesMode(fuse_id, 1)
|
||||
|
@ -25,12 +25,23 @@ SALOME_CONFIGURE_FILE(doxyfile_tui.in doxyfile_tui)
|
||||
SALOME_CONFIGURE_FILE(static/header.html.in ${CMAKE_CURRENT_BINARY_DIR}/static/header.html)
|
||||
SALOME_CONFIGURE_FILE(static/header_py.html.in ${CMAKE_CURRENT_BINARY_DIR}/static/header_py.html)
|
||||
|
||||
# Generate a temporary python file, needed for the genaration of the documentation
|
||||
# of the built-in Geometry plugins.
|
||||
SET(DOC_GEOM_PluginsList AdvancedGEOM STLPlugin BREPPlugin STEPPlugin IGESPlugin XAOPlugin VTKPlugin)
|
||||
SALOME_ACCUMULATE_ENVIRONMENT(GEOM_PluginsList NOCHECK ${DOC_GEOM_PluginsList})
|
||||
SET(geom_file "${CMAKE_CURRENT_SOURCE_DIR}/collect_geom_methods.py")
|
||||
SET(plugins_cmd_options ${geom_file} -o tmp1/geomBuilder.py ${DOC_GEOM_PluginsList})
|
||||
SALOME_GENERATE_ENVIRONMENT_SCRIPT(plugins_cmd env_script "${PYTHON_EXECUTABLE}" "${plugins_cmd_options}")
|
||||
# Install a script
|
||||
SALOME_INSTALL_SCRIPTS(collect_geom_methods.py ${SALOME_INSTALL_BINS})
|
||||
|
||||
SET(f "$ENV{KERNEL_ROOT_DIR}/bin/salome/prepare_generating_doc.py")
|
||||
IF(WIN32)
|
||||
STRING(REPLACE "/" "\\" f ${f})
|
||||
ENDIF(WIN32)
|
||||
|
||||
ADD_CUSTOM_TARGET(usr_docs ${CMAKE_COMMAND} -E make_directory tmp
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory tmp1
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${f} -o tmp/geomBuilder.py ${CMAKE_SOURCE_DIR}/src/GEOM_SWIG/geomBuilder.py
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${f} -o tmp/gsketcher.py ${CMAKE_SOURCE_DIR}/src/GEOM_SWIG/gsketcher.py
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${f} -o tmp/geomtools.py ${CMAKE_SOURCE_DIR}/src/GEOM_PY/geomtools.py
|
||||
@ -38,12 +49,14 @@ ADD_CUSTOM_TARGET(usr_docs ${CMAKE_COMMAND} -E make_directory tmp
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${f} -o tmp/structelem.py ${CMAKE_SOURCE_DIR}/src/GEOM_PY/structelem/__init__.py
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${f} -o tmp/parts.py ${CMAKE_SOURCE_DIR}/src/GEOM_PY/structelem/parts.py
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${f} -o tmp/orientation.py ${CMAKE_SOURCE_DIR}/src/GEOM_PY/structelem/orientation.py
|
||||
COMMAND ${plugins_cmd}
|
||||
COMMAND ${DOXYGEN_EXECUTABLE} doxyfile_tui
|
||||
COMMAND ${DOXYGEN_EXECUTABLE} doxyfile_py
|
||||
COMMAND ${DOXYGEN_EXECUTABLE} doxyfile
|
||||
COMMAND ${CMAKE_COMMAND} -E remove_directory tmp
|
||||
COMMAND ${CMAKE_COMMAND} -E remove_directory tmp1
|
||||
VERBATIM
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
|
||||
)
|
||||
|
||||
ADD_DEPENDENCIES(usr_docs html_docs)
|
||||
|
148
doc/salome/gui/GEOM/collect_geom_methods.py
Normal file
@ -0,0 +1,148 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
# Copyright (C) 2012-2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
#
|
||||
# This library is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Lesser General Public
|
||||
# License as published by the Free Software Foundation; either
|
||||
# version 2.1 of the License, or (at your option) any later version.
|
||||
#
|
||||
# This library is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# Lesser General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Lesser General Public
|
||||
# License along with this library; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
#
|
||||
|
||||
#################################################################################
|
||||
#
|
||||
# File: collect_geom_methods.py
|
||||
# Author: Roman NIKOLAEV, Open CASCADE S.A.S (roman.nikolaev@opencascade.com)
|
||||
#
|
||||
#################################################################################
|
||||
#
|
||||
# Extraction of the methods dynamically added by the Geometry
|
||||
# module plug-in(s) to the geomBuilder class.
|
||||
#
|
||||
# This script is intended for internal usage - only
|
||||
# for generatation of the extra developer documentation for
|
||||
# the Geometry module plug-in(s).
|
||||
#
|
||||
# Usage:
|
||||
# collect_geom_methods.py <plugin_name>
|
||||
# where
|
||||
# <plugin_name> is a name of the plug-in module
|
||||
#
|
||||
# Notes:
|
||||
# - the script is supposed to be run in correct environment
|
||||
# i.e. PYTHONPATH, GEOM_PluginsList and other important
|
||||
# variables are set properly; otherwise the script will fail.
|
||||
#
|
||||
################################################################################
|
||||
|
||||
import sys
|
||||
import inspect
|
||||
|
||||
def generate(plugin_name, output):
|
||||
plugin_module_name = plugin_name + "Builder"
|
||||
plugin_module = "salome.%s.%s" % (plugin_name, plugin_module_name)
|
||||
import_str = "from salome.%s import %s" % (plugin_name, plugin_module_name)
|
||||
exec( import_str )
|
||||
exec( "import %s" % plugin_module )
|
||||
exec( "mod = %s" % plugin_module )
|
||||
functions = []
|
||||
for attr in dir( mod ):
|
||||
if attr.startswith( '_' ): continue # skip an internal methods
|
||||
item = getattr( mod, attr )
|
||||
if type( item ).__name__ == 'function':
|
||||
if item not in functions:
|
||||
functions.append( item )
|
||||
pass
|
||||
pass
|
||||
pass
|
||||
if functions:
|
||||
for function in functions:
|
||||
comments = inspect.getcomments(function)
|
||||
if comments:
|
||||
comments = comments.strip().split("\n")
|
||||
comments = "\t" + "\n\t".join(comments)
|
||||
output.append(comments)
|
||||
pass
|
||||
sources = inspect.getsource(function)
|
||||
if sources is not None:
|
||||
sources_list = sources.split("\n")
|
||||
sources_new_list = []
|
||||
found = False
|
||||
for item in sources_list:
|
||||
if '"""' in item:
|
||||
if found == True:
|
||||
found = False
|
||||
continue
|
||||
else:
|
||||
found = True
|
||||
continue
|
||||
pass
|
||||
pass
|
||||
if found == False :
|
||||
sources_new_list.append(item)
|
||||
pass
|
||||
pass
|
||||
sources = "\n".join(sources_new_list)
|
||||
sources = "\t" + sources.replace("\n", "\n\t")
|
||||
output.append(sources)
|
||||
pass
|
||||
pass
|
||||
pass
|
||||
pass
|
||||
|
||||
if __name__ == "__main__":
|
||||
import optparse
|
||||
parser = optparse.OptionParser(usage="%prog [options] plugin")
|
||||
h = "Output file (geomBuilder.py by default)"
|
||||
parser.add_option("-o", "--output", dest="output",
|
||||
action="store", default=None, metavar="file",
|
||||
help=h)
|
||||
h = "If this option is True, dummy help for geomBuiler class is added. "
|
||||
h += "This option should be False (default) when building documentation for Geometry module "
|
||||
h += "and True when building documentation for Geometry module plug-ins."
|
||||
parser.add_option("-d", "--dummy-geom-help", dest="dummygeomhelp",
|
||||
action="store_true", default=False,
|
||||
help=h)
|
||||
(options, args) = parser.parse_args()
|
||||
if len( args ) < 1: sys.exit("Plugin name is not specified")
|
||||
|
||||
f = open(options.output, "w")
|
||||
|
||||
output = []
|
||||
if options.dummygeomhelp:
|
||||
output.append( "## @package geomBuilder" )
|
||||
output.append( "# Documentation of the methods dynamically added by the " + plugin_name + " Geometry plug-in to the geomBuilder class." )
|
||||
# Add dummy Geometry help
|
||||
# This is supposed to be done when generating documentation for Geometry module plug-ins
|
||||
output.append( "# @note The documentation below does not provide complete description of class @b %geomBuilder" )
|
||||
output.append( "# from @b geomBuilder package. This documentation provides only information about" )
|
||||
output.append( "# the methods dynamically added to the %geomBuilder class by the " + plugin_name + " plugin" )
|
||||
output.append( "# For more details on the %geomBuilder class, please refer to the SALOME %Geometry module" )
|
||||
output.append( "# documentation." )
|
||||
pass
|
||||
else:
|
||||
# Extend documentation for geomBuilder class with information about dynamically added methods.
|
||||
# This is supposed to be done only when building documentation for Geometry module
|
||||
output.append( "## @package geomBuilder" )
|
||||
output.append( "# @note Some methods are dynamically added to the @b %geomBuilder class in runtime by the" )
|
||||
output.append( "# plug-in modules. If you fail to find help on some methods in the documentation of Geometry module, " )
|
||||
output.append( "# try to look into the documentation for the Geometry module plug-ins." )
|
||||
pass
|
||||
output.append("class geomBuilder():")
|
||||
|
||||
for arg in args:
|
||||
generate( arg, output )
|
||||
pass
|
||||
|
||||
for line in output: f.write( line + "\n" )
|
||||
f.close()
|
@ -99,7 +99,14 @@ EXAMPLE_RECURSIVE = NO
|
||||
#---------------------------------------------------------------------------
|
||||
#Input related options
|
||||
#---------------------------------------------------------------------------
|
||||
INPUT = tmp @CMAKE_SOURCE_DIR@/idl/GEOM_Gen.idl
|
||||
INPUT = tmp tmp1 @CMAKE_SOURCE_DIR@/idl/GEOM_Gen.idl \
|
||||
@CMAKE_SOURCE_DIR@/idl/AdvancedGEOM_Gen.idl \
|
||||
@CMAKE_SOURCE_DIR@/idl/STLPlugin.idl \
|
||||
@CMAKE_SOURCE_DIR@/idl/BREPPlugin.idl \
|
||||
@CMAKE_SOURCE_DIR@/idl/STEPPlugin.idl \
|
||||
@CMAKE_SOURCE_DIR@/idl/IGESPlugin.idl \
|
||||
@CMAKE_SOURCE_DIR@/idl/XAOPlugin.idl \
|
||||
@CMAKE_SOURCE_DIR@/idl/VTKPlugin.idl
|
||||
FILE_PATTERNS =
|
||||
IMAGE_PATH = @CMAKE_CURRENT_SOURCE_DIR@/images
|
||||
EXAMPLE_PATH = @CMAKE_SOURCE_DIR@/src/GEOM_SWIG
|
||||
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 12 KiB |
BIN
doc/salome/gui/GEOM/images/dialog.png
Executable file → Normal file
Before Width: | Height: | Size: 9.9 KiB After Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 9.2 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 28 KiB |
BIN
doc/salome/gui/GEOM/images/importxao_dlg.png
Normal file
After Width: | Height: | Size: 8.4 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 43 KiB |
BIN
doc/salome/gui/GEOM/images/polyline_dlg.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
doc/salome/gui/GEOM/images/polyline_dlg_add_section.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
doc/salome/gui/GEOM/images/polyline_dlg_edit_section.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
doc/salome/gui/GEOM/images/pref15.png
Executable file → Normal file
Before Width: | Height: | Size: 75 KiB After Width: | Height: | Size: 89 KiB |
BIN
doc/salome/gui/GEOM/images/pref_dep_tree.png
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
doc/salome/gui/GEOM/images/reduce_study_dialog.png
Normal file
After Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 7.0 KiB |
BIN
doc/salome/gui/GEOM/images/tree_bidir_link.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
BIN
doc/salome/gui/GEOM/images/tree_button_update.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
doc/salome/gui/GEOM/images/tree_cycldep_link.png
Normal file
After Width: | Height: | Size: 6.6 KiB |
BIN
doc/salome/gui/GEOM/images/tree_default_node.png
Normal file
After Width: | Height: | Size: 3.1 KiB |
BIN
doc/salome/gui/GEOM/images/tree_disp_ascendants.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
BIN
doc/salome/gui/GEOM/images/tree_disp_descendants.png
Normal file
After Width: | Height: | Size: 2.3 KiB |
BIN
doc/salome/gui/GEOM/images/tree_example.png
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
doc/salome/gui/GEOM/images/tree_hierarchy_type.png
Normal file
After Width: | Height: | Size: 2.9 KiB |
BIN
doc/salome/gui/GEOM/images/tree_highlighted_node.png
Normal file
After Width: | Height: | Size: 4.4 KiB |
BIN
doc/salome/gui/GEOM/images/tree_main_node.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
BIN
doc/salome/gui/GEOM/images/tree_move_nodes.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
BIN
doc/salome/gui/GEOM/images/tree_popup_menu1.png
Normal file
After Width: | Height: | Size: 6.2 KiB |
BIN
doc/salome/gui/GEOM/images/tree_popup_menu2.png
Normal file
After Width: | Height: | Size: 5.0 KiB |
BIN
doc/salome/gui/GEOM/images/tree_selected_node.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
doc/salome/gui/GEOM/images/tree_selfdep_link.png
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
doc/salome/gui/GEOM/images/tree_tool_bar.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
doc/salome/gui/GEOM/images/tree_unidir_link.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
doc/salome/gui/GEOM/images/tree_unpublished_node.png
Normal file
After Width: | Height: | Size: 2.0 KiB |
BIN
doc/salome/gui/GEOM/images/tree_view_dump.png
Normal file
After Width: | Height: | Size: 682 B |
BIN
doc/salome/gui/GEOM/images/tree_view_fitall.png
Normal file
After Width: | Height: | Size: 816 B |
BIN
doc/salome/gui/GEOM/images/tree_view_fitarea.png
Normal file
After Width: | Height: | Size: 815 B |
BIN
doc/salome/gui/GEOM/images/tree_view_fitselect.png
Executable file
After Width: | Height: | Size: 857 B |
BIN
doc/salome/gui/GEOM/images/tree_view_glpan.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
doc/salome/gui/GEOM/images/tree_view_pan.png
Normal file
After Width: | Height: | Size: 982 B |
BIN
doc/salome/gui/GEOM/images/tree_view_zoom.png
Normal file
After Width: | Height: | Size: 797 B |
BIN
doc/salome/gui/GEOM/images/vertices_mode.png
Normal file
After Width: | Height: | Size: 8.9 KiB |
@ -20,6 +20,7 @@ parent object is highlighted with bold font.</li>
|
||||
and then displays only the children of the selected object(s).
|
||||
</li>
|
||||
|
||||
\anchor publish_hidden_objects
|
||||
<li><b>Unpublish</b> - hides the selected geometric object from the Object Browser
|
||||
and erases it from all viewers. To publish unpublished geometric objects select in the
|
||||
context menu of the <b>Geometry</b> root object <b>Publish...</b> item.
|
||||
@ -34,6 +35,12 @@ and then displays only the children of the selected object(s).
|
||||
unpublished objects are sorted by name in ascending order. It is possible
|
||||
to change the order (ascending / descending) by clicking the corresponding title bar of the objects list.
|
||||
</li>
|
||||
|
||||
<li>\ref dependency_tree_page "Show dependency tree" - shows dependency tree of selected objects
|
||||
in new 2D View Window.</li>
|
||||
|
||||
<li>\ref reduce_study_page "Reduce study" - allows to reduce study
|
||||
by automatic removing objects according to user's options.</li>
|
||||
</ul>
|
||||
|
||||
<h2> Folders </h2>
|
||||
|
@ -15,6 +15,7 @@ geometrical objects as:
|
||||
<li>\subpage create_isoline_page</li>
|
||||
<li>\subpage create_sketcher_page</li>
|
||||
<li>\subpage create_3dsketcher_page</li>
|
||||
<li>\subpage create_polyline_page</li>
|
||||
<li>\subpage create_vector_page</li>
|
||||
<li>\subpage create_plane_page</li>
|
||||
<li>\subpage create_lcs_page</li>
|
||||
|
@ -10,20 +10,33 @@ Entity - > Primitives - > Cylinder</b>
|
||||
|
||||
\n Firstly, you can define a \b Cylinder by the <b>Base Point</b> (the central
|
||||
point of the cylinder base), the \b Vector (the axis of the cylinder),
|
||||
and its dimensions: the Radius and the Height.
|
||||
and its dimensions: the \b Radius and the \b Height. Also, you can optionally specify
|
||||
the \b Angle in order to create a portion of cylinder.
|
||||
|
||||
\n <b>TUI Command:</b> <em>geompy.MakeCylinder(Point, Axis, Radius, Height)</em>
|
||||
\n <b>Arguments:</b> Name + 1 vertex + 1 vector + 2 values
|
||||
(Dimensions: radius and height).
|
||||
|
||||
\n <b>TUI Command:</b> <em>geompy.MakeCylinderA(Point, Axis, Radius, Height, Angle)</em>
|
||||
\n <b>Arguments:</b> Name + 1 vertex + 1 vector + 3 values
|
||||
(Dimensions: radius, height and angle).
|
||||
|
||||
\image html cylinder1.png
|
||||
|
||||
\n Secondly, you can define a \b Cylinder by the given radius and the
|
||||
height at the origin of coordinate system. The axis of the cylinder
|
||||
will be collinear to the OZ axis of the coordinate system.
|
||||
\n Secondly, you can define a \b Cylinder by the given \b Radius and
|
||||
\b Height at the origin of coordinate system. The axis of the cylinder
|
||||
will be collinear to the OZ axis of the coordinate system.
|
||||
Similarly to first constructor, you can optionally specify the \b Angle
|
||||
in order to create a portion of cylinder.
|
||||
|
||||
\n <b>TUI Command:</b> <em>geompy.MakeCylinderRH(Radius, Height)</em>
|
||||
\n <b>Arguments:</b> Name + 2 values (Dimensions at origin: radius and
|
||||
height).
|
||||
|
||||
\n <b>TUI Command:</b> <em>geompy.MakeCylinderRHA(Radius, Height, Angle)</em>
|
||||
\n <b>Arguments:</b> Name + 3 values
|
||||
(Dimensions at origin: radius, height and angle).
|
||||
|
||||
\image html cylinder2.png
|
||||
|
||||
<b>Example:</b>
|
||||
|
@ -25,11 +25,13 @@ sub-shapes of a given Type and returns a List of sub-shapes.</li>
|
||||
sub-shapes of a given Type and returns a List of IDs of
|
||||
sub-shapes.</li>
|
||||
<li><em>geompy.SubShapeAllSortedCentres(Shape, Type)</em> explodes a
|
||||
shape on sub-shapes of a given type and sorts them by coordinates of
|
||||
their gravity centers, returning a list of sub-shapes.</li>
|
||||
shape on sub-shapes of a given type and sorts them taking into account
|
||||
their gravity centers, to provide stable order of sub-shapes.
|
||||
It returns a list of sub-shapes.</li>
|
||||
<li><em>geompy.SubShapeAllSortedCentresIDs(Shape, Type)</em> explodes
|
||||
a shape on sub-shapes of a given type and sorts them by coordinates of
|
||||
their gravity centers, returning a List of IDs of sub-shapes.</li>
|
||||
a shape on sub-shapes of a given type and sorts them taking into
|
||||
account their gravity centers, to provide stable order of sub-shapes.
|
||||
It returns a List of IDs of sub-shapes.</li>
|
||||
<li><em>geompy.SubShape(Shape, Type, ListOfInd)</em> allows to obtain
|
||||
a compound of sub-shapes of the Shape, selected by they indices in a
|
||||
list of all sub-shapes of the given Type. Each index is in the range
|
||||
|
107
doc/salome/gui/GEOM/input/creating_polyline.doc
Normal file
@ -0,0 +1,107 @@
|
||||
/*!
|
||||
|
||||
\page create_polyline_page 2D Polyline
|
||||
|
||||
The 2D Polyline allows drawing arbitrary 2D shapes.
|
||||
|
||||
To create a <b>2D Polyline</b> select in the main menu <b>New Entity -> Basic -> 2D Polyline</b>.
|
||||
|
||||
\image html polyline_dlg.png
|
||||
|
||||
A polyline represents a section or a set of sections. Each section is constructed from a sequence of 2D points
|
||||
connected either by linear setgments or an interpolation curve. Every section has its own attributes:
|
||||
- \b Name,
|
||||
- \b Type (Polyline or Spline),
|
||||
- \b Closed flag.
|
||||
|
||||
A Polyline created represents a shape that lies on the XOY plane. It can have the following types:
|
||||
- \b Vertex for a single section with only 1 point.
|
||||
- \b Wire for a single section with 2 or more points. A Wire can have multiple edges for more then 2 points if the section type is Polyline.
|
||||
A single edge in the result wire is obtained for a Spline or Polyline with 2 points.
|
||||
- \b Compound of Wires and/or Vertices if there are several sections.
|
||||
|
||||
For the moment only one reference coordinate system for polyline creation is supported. The XOY plane of the <b>Global coordinate system</b>
|
||||
is suggested. Implementation of another reference coordinate system is a subject of further development of this functionality.
|
||||
Restore button orientates the viewer correspondingly to the chosen working plane and fits the scene to show all objects.
|
||||
For the moment this button works with only one plane.
|
||||
|
||||
It is possible to import a shape in this dialog using <b>Import polyline</b> selection button. To do it an imported object should satisfy conditions
|
||||
for polyline shapes mentioned above. If a valid shape is selected, when dialog is opened, it is initialized by this shape.
|
||||
Though the shape can be on any plane, an imported polyline will be defined on XOY plane only due to the limitation.
|
||||
|
||||
The group \b Sections in this dialog represents the Polyline construction framework. Its toolbar has the following operations:
|
||||
- \b Undo
|
||||
- \b Redo
|
||||
- <b>Insert new section</b>
|
||||
- <b>Addition mode</b>
|
||||
- <b>Modification mode</b> - not implemented
|
||||
- <b>Detection mode</b> - not implemented
|
||||
- \b Remove
|
||||
- <b>Join selected sections</b>
|
||||
|
||||
<b>Undo/Redo</b> buttons allows to undo/redo changes of the polyline.
|
||||
|
||||
<b>Insert new section</b> button opens a dialog that allows to add a new section:
|
||||
|
||||
\image html polyline_dlg_add_section.png
|
||||
|
||||
In this dialog it is possible to choose:
|
||||
- \b Name of section
|
||||
- \b Type of section
|
||||
- \b Closed flag
|
||||
|
||||
To create a new section \b Add button should be clicked. \b Cancel button is used to cancel this operation.
|
||||
After clicking \b Add button a new section is appeared on the list. Its name supplemented by its type and closedness
|
||||
information (see icon) and the number of points (equal to 0 after creation).
|
||||
|
||||
To modify section parameters it is possible to double-click on a section in the list. In this case the following dialog appears:
|
||||
|
||||
\image html polyline_dlg_edit_section.png
|
||||
|
||||
To apply modifications the button \b Ok should be clicked.
|
||||
|
||||
<b>Addition mode</b> allows to add points to a section. It is necessary to select a particular section in a list of sections
|
||||
and make some mouse clicks in the viewer. A section preview is recomputed after each click.
|
||||
|
||||
<b>Modification mode</b> and <b>Detection mode</b> are not implemented for the moment.
|
||||
|
||||
\b Remove button allows to remove a section. It is available if all modes are deactivated and one section is selected.
|
||||
|
||||
<b>Join selected sections</b> button is available in modification mode if two or more sections are selected. It is used to
|
||||
merge several sections into the first one from selection list. Joined section has parameters of the first selected one. Points of
|
||||
the other sections are appended at the end of the list of the first section points.
|
||||
|
||||
Some actions are available via popup menu by right mouse button click.
|
||||
|
||||
If all modes are deactivated:
|
||||
- <b>Join all sections</b> - join all defined sections into the first one.
|
||||
- \b Join - join sections. Available if two or more sections are selected.
|
||||
|
||||
In <b>Addition mode</b>:
|
||||
- <b>Join all sections</b> - join all defined sections into the first one.
|
||||
|
||||
In <b>Modification mode</b>:
|
||||
- <b>Join all sections</b> - join all defined sections into the first one.
|
||||
- \b Join - join sections. Available if two or more sections are selected.
|
||||
- <b>Clear all</b> - remove all sections. Available if at least one section is selected.
|
||||
- <b>Set closed</b> - set all selected section's Closed flag. Available if at least one section is selected.
|
||||
- <b>Set open</b> - reset all selected section's Closed flag. Available if at least one section is selected.
|
||||
- <b>Set polyline</b> - set all selected section's type to Polyline. Available if at least one section is selected.
|
||||
- <b>Set spline</b> - set all selected section's type to Spline. Available if at least one section is selected.
|
||||
|
||||
In <b>Detection mode</b>:
|
||||
- <b>Join all sections</b> - join all defined sections into the first one.
|
||||
- \b Join - join sections. Available if two or more sections are selected.
|
||||
|
||||
<h2>TUI Commands</h2>
|
||||
|
||||
|
||||
To create the 2D polyline in TUI Polyline2D interface is used.
|
||||
|
||||
<em>pl = geompy.Polyline2D()</em> - returns an instance of Polyline2D interface <i>pl</i>.
|
||||
|
||||
See the \ref gsketcher.Polyline2D "Polyline2D" interface documentation for more information.
|
||||
|
||||
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
||||
\ref tui_polyline_page "2D Polyline".
|
||||
*/
|
211
doc/salome/gui/GEOM/input/dependency_tree.doc
Normal file
@ -0,0 +1,211 @@
|
||||
/*!
|
||||
|
||||
\page dependency_tree_page Dependency Tree
|
||||
|
||||
<ul>
|
||||
<li>\ref dependency_tree_general_description_anchor "General description"</li>
|
||||
<li>\ref dependency_tree_nodes_anchor "Nodes" </li>
|
||||
<li>\ref dependency_tree_links_anchor "Links" </li>
|
||||
<li>\ref dependency_tree_operations_anchor "Operations" </li>
|
||||
<li>\ref dependency_tree_navigation_anchor "Navigation" </li>
|
||||
<li>\ref dependency_tree_popup_menu_anchor "Context menu"</li>
|
||||
</ul>
|
||||
|
||||
\anchor dependency_tree_general_description_anchor <h2>General description</h2>
|
||||
|
||||
In order to better understand the relations between the %GEOM
|
||||
objects in a study the user has a possibility to display the
|
||||
ascendants and descendant of the object(s) in a family tree.
|
||||
|
||||
User can build the dependency tree by selecting desirable object
|
||||
in Object Browser or OCC Viewer and calling "Show dependency tree"
|
||||
popup item. It will open a new or clear the existing "Dependency
|
||||
Tree" view window (only one view is supported) and display a
|
||||
dependency tree for the selected object or objects (multiple
|
||||
selection is supported). Also user can rebuild the tree if to select
|
||||
some object(s) right in the "Dependency Tree" view and call
|
||||
"Rebuild the tree" popup menu item.
|
||||
|
||||
\image html tree_example.png
|
||||
|
||||
User can change all necessary parameters of Dependency Tree Viewer
|
||||
in \ref pref_dependency_tree "Preferences".
|
||||
|
||||
<hr>
|
||||
\anchor dependency_tree_nodes_anchor <h2>Nodes</h2>
|
||||
|
||||
Tree nodes in the Dependency Viewer are named according to the study
|
||||
names of the corresponding objects.
|
||||
|
||||
Non-published objects are shown in the tree as "unpublished" and
|
||||
colored in special color.
|
||||
|
||||
All nodes have the fixed size, so the long names are cut and shown
|
||||
with ellipsis; full name of the object can be seen in the tooltip
|
||||
if to keep the cursor over the node.
|
||||
|
||||
"Dependency Tree" view supports the following states of nodes:
|
||||
|
||||
<ul><li><b>Main node</b> - node of main object(s), which were selected in Object
|
||||
Browser, OCC Viewer or Dependency Tree Viewer in order to build the
|
||||
dependency tree;</li></ul>
|
||||
\image html tree_main_node.png
|
||||
|
||||
<ul><li><b>Default node</b> - node of published in study object, which participate in building of
|
||||
dependency tree as ascendant or descendant;</li></ul>
|
||||
\image html tree_default_node.png
|
||||
|
||||
<ul><li><b>Unpublished node</b> - the same as "Default node", but
|
||||
corresponding object was not published in study;</li></ul>
|
||||
\image html tree_unpublished_node.png
|
||||
|
||||
<ul><li><b>Highlighted node</b> - the state of node when mouse
|
||||
cursor is over it;</li></ul>
|
||||
\image html tree_highlighted_node.png
|
||||
|
||||
<ul><li><b>Selected node</b> - the state of node when user
|
||||
clicks the left mouse button on node.</li></ul>
|
||||
\image html tree_selected_node.png
|
||||
|
||||
<hr>
|
||||
\anchor dependency_tree_links_anchor <h2>Links</h2>
|
||||
|
||||
Dependency Tree Viewer shows oriented links between nodes to
|
||||
represent dependency direction. Viewer supports the following states
|
||||
of links:
|
||||
|
||||
<ul><li><b>Unidirectional link</b> - shows that A object depends on
|
||||
B object;</li></ul>
|
||||
\image html tree_unidir_link.png
|
||||
|
||||
<ul><li><b>Bidirectional link</b> - shows that A object depends on
|
||||
B object and, at the same time, B object depends on
|
||||
A object;</li></ul>
|
||||
\image html tree_bidir_link.png
|
||||
|
||||
<ul><li><b>Self-dependency link</b> - shows that object depends on
|
||||
itself;</li></ul>
|
||||
\image html tree_selfdep_link.png
|
||||
|
||||
<ul><li><b>Cyclic dependency links</b> - shows cyclic dependency of
|
||||
some nodes.</li></ul>
|
||||
\image html tree_cycldep_link.png
|
||||
|
||||
<hr>
|
||||
\anchor dependency_tree_operations_anchor <h2>Operations</h2>
|
||||
|
||||
The dependency tree of a chosen %GEOM object is displayed in
|
||||
the dedicated 2D view window.
|
||||
\n The functionalities of 2D viewer are available via its Viewer
|
||||
Toolbar.
|
||||
|
||||
Buttons marked with small downward triangles have extended
|
||||
functionality which can be accessed by locking on them with left
|
||||
mouse button.
|
||||
|
||||
\image tree_tool_bar
|
||||
|
||||
<b>Dump View</b> - exports an object from the viewer in bmp, png or
|
||||
jpeg image format.
|
||||
\image html tree_view_dump.png
|
||||
|
||||
<b>Fit all</b> - scales the presentation so that it could fit within
|
||||
the Viewer boundaries.
|
||||
\image html tree_view_fitall.png
|
||||
|
||||
<b>Fit area</b> - resizes the view to place in the visible area only
|
||||
the contents of a frame drawn with pressed left mouse button.
|
||||
\image html tree_view_fitarea.png
|
||||
|
||||
<b>Fit selection</b> - resizes the view to fit in the visible area
|
||||
only currently selected objects.
|
||||
\image html tree_view_fitselect.png
|
||||
|
||||
<b>Zoom</b> - allows to zoom in and out.
|
||||
\image html tree_view_zoom.png
|
||||
|
||||
<b>Panning</b> - if the represented objects are greater that the
|
||||
visible area and you don't wish to use <b>Fit all</b> functionality,
|
||||
click on this button and you'll be able to drag the scene to see its
|
||||
remote parts.
|
||||
\image html tree_view_pan.png
|
||||
|
||||
<b>Global panning</b> - allows to select a point to be the center of
|
||||
the presentation showing all displayed objects in the visible ares.
|
||||
\image html tree_view_glpan.png
|
||||
|
||||
<b>Hierarchy depth</b> - allows to change the number of hierarchy
|
||||
levels to be shown in the dependency tree.
|
||||
\image html tree_hierarchy_type.png
|
||||
<ul>
|
||||
<li>Level 1 corresponds to the parents and children of the selected
|
||||
object(s);</li>
|
||||
<li>Level 2 is Level 1 plus the grand-parents and grand-children
|
||||
of the selected object(s);</li>
|
||||
<li>etc...</li>
|
||||
</ul>
|
||||
|
||||
<b>Display ascendants</b> - allows user to control the displaying
|
||||
of ascendants.
|
||||
\image html tree_disp_ascendants.png
|
||||
|
||||
<b>Display descendants</b> - allows user to control the displaying
|
||||
of descendants.
|
||||
\image html tree_disp_descendants.png
|
||||
|
||||
<b>Move nodes</b> - enables/disables of moving the nodes.
|
||||
\image html tree_move_nodes.png
|
||||
|
||||
<b>Update</b> - allows user to update a dependency tree model and the view.
|
||||
\image html tree_button_update.png
|
||||
|
||||
<hr>
|
||||
\anchor dependency_tree_navigation_anchor <h2>Navigation</h2>
|
||||
|
||||
Dependency Tree 2D Viewer supports the following navigation mode:
|
||||
|
||||
<ul>
|
||||
<li>rectangle selection in this mode is performed by the left mouse
|
||||
button</li>;
|
||||
<li>multiple selection is available when \b Shift button
|
||||
is pressed.</li>
|
||||
</ul>
|
||||
|
||||
Also, holding \b Ctrl key with pressed mouse buttons performs
|
||||
the following view transformations:
|
||||
<ul>
|
||||
<li>Ctrl + left mouse button - zooming;</li>
|
||||
<li>Ctrl + middle mouse button - panning;</li>
|
||||
</ul>
|
||||
|
||||
<hr>
|
||||
\anchor dependency_tree_popup_menu_anchor <h2>Popup Menu</h2>
|
||||
|
||||
After the object has appeared in the Dependency Tree 2D Viewer,
|
||||
user can select it with left mouse click to change its presentation
|
||||
parameters and get access to other useful options by right-clicking on
|
||||
the selected object.
|
||||
|
||||
\image html tree_popup_menu1.png
|
||||
|
||||
<ul>
|
||||
<li>\b Show - allows to show selected object(s) in OCC 3D Viewer;</li>
|
||||
<li><b> Show Only</b> - allows to show only selected object(s)
|
||||
in OCC 3D Viewer;</li>
|
||||
<li><b> Rebuild the tree</b> - allows to rebuild the dependency tree
|
||||
for selected object(s);</li>
|
||||
<li>\ref reduce_study_page "Reduce study" - allows to reduce study.</li>
|
||||
</ul>
|
||||
|
||||
Some functionalities are available through right-clicking on
|
||||
the viewer background:
|
||||
|
||||
\image html tree_popup_menu2.png
|
||||
|
||||
Dependency Tree 2D Viewer background can be customized using the
|
||||
"Change background" popup menu command that opens standard
|
||||
"Select Color" dialog box:
|
||||
|
||||
\image html selectcolor.png
|
||||
|
||||
*/
|
@ -29,6 +29,17 @@ functionality for all objects in the current view via the main menu
|
||||
|
||||
\n <b>TUI Command:</b> <em>gg.setVectorsMode(ID, Bool)</em>
|
||||
|
||||
\n Also it is possible to show the vertices of the selected
|
||||
shape. For this, choose in the context menu of the shape
|
||||
<b>Display mode -> Show Vertices</b>, or apply this
|
||||
functionality for all objects in the current view via the main menu
|
||||
<b> View -> Display Mode -> Show/Hide Vertices.</b>
|
||||
|
||||
\image html vertices_mode.png
|
||||
<center><em>Vertices Mode (Show Vertices)</em></center>
|
||||
|
||||
\n <b>TUI Command:</b> <em>gg.setVerticesMode(ID, Bool)</em>
|
||||
|
||||
Our <b>TUI Scripts</b> provide you with useful examples of
|
||||
\ref tui_change_disp_mode "Changing Display Parameters".
|
||||
|
||||
|
@ -2,6 +2,8 @@
|
||||
|
||||
\page geometry_preferences_page Geometry preferences
|
||||
|
||||
\anchor pref_settings <h2>Settings</h2>
|
||||
|
||||
In the \b Geometry module you can set preferences for visualisation of
|
||||
geometrical figures, which can be used in later sessions with this module.
|
||||
There is also a special group of preferences controlling input
|
||||
@ -31,8 +33,21 @@ default color for edges, vectors and wires (isolated lines).</li>
|
||||
vertices.</li>
|
||||
<li><b>Color of isolines</b> - allows to select default color for
|
||||
isolines.</li>
|
||||
<li><b>Step value for spin boxes</b> - allows to define the increment
|
||||
of values set in spin boxes.</li>
|
||||
<li><b>Top level color</b> - allows to select default color for objects which
|
||||
were brought to the viewer foreground.</li>
|
||||
<li><b>Top level display mode</b> - allows to select default top level display mode between:</li>
|
||||
<ul>
|
||||
<li><b>Show additional wireframe actor</b> - allows to have the shading actor at its usual
|
||||
place (in the back) and add the additional wireframe actor in the viewer foreground.</li>
|
||||
<li><b>Keep current display mode</b> - allows to use current display mode of object.</li>
|
||||
<li><b>Wireframe</b> - allows to switch display mode to wireframe mode after
|
||||
"top-level" operation.</li>
|
||||
<li><b>Shading</b> - allows to switch display mode to shading mode after
|
||||
"top-level" operation.</li>
|
||||
<li><b>Shading With Edges</b> - allows to switch display mode to shading with edges mode after
|
||||
"top-level" operation.</li>
|
||||
</ul>
|
||||
<li><b>Transparency</b> - allows to define default transparency value.</li>
|
||||
<li><b>Deflection coefficient</b> - allows to define default deflection
|
||||
coefficient for lines and surfaces. A smaller coefficient provides
|
||||
better quality of a shape in the viewer.</li>
|
||||
@ -44,6 +59,8 @@ predefined materials.</li>
|
||||
<li><b>Isolines width</b> - allows to define default width of the isolines.</li>
|
||||
<li><b>Preview edges width</b> - allows to define width of the edges for preview.</li>
|
||||
<li><b>Measures line width</b> - allows to define lines width of measurements tools.</li>
|
||||
<li><b>Step value for spin boxes</b> - allows to define the increment
|
||||
of values set in spin boxes.</li>
|
||||
<li><b>Automatic bring to front</b> - when the option is on, the objects selected by the user automatically become "top-level".</li>
|
||||
|
||||
</ul>
|
||||
@ -128,5 +145,35 @@ system immediately after the module activation.</li>
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
\anchor pref_dependency_tree <h2>Dependency Tree</h2>
|
||||
|
||||
Also user can set preferences for visualisation of <b>Dependency Tree</b> in 2D Viewer.
|
||||
|
||||
\image html pref_dep_tree.png
|
||||
|
||||
<ul>
|
||||
<li><b>General</b></li>
|
||||
<ul>
|
||||
<li><b>Hierarchy type</b> - allows to choose default displaying mode of dependency tree.</li>
|
||||
<li><b>Possibility to move nodes</b> - enable/disable the possibility of moving nodes by default.</li>
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li><b>Color</b></li>
|
||||
<ul>
|
||||
<li><b>Background color</b> - allows to select default background color.</li>
|
||||
<li><b>Default node color</b> - allows to select default node color.</li>
|
||||
<li><b>Main node color</b> - allows to select default main node color.</li>
|
||||
<li><b>Unpublished node color</b> - allows to select default node color
|
||||
for unpublished objects.</li>
|
||||
<li><b>Selected node color</b> - allows to select default selected node color.</li>
|
||||
<li><b>Default arrow color</b> - allows to select default arrow color.</li>
|
||||
<li><b>Highlighted arrow color</b> - allows to select default highlighted
|
||||
arrow color.</li>
|
||||
<li><b>Selected arrow color</b> - allows to select default selected
|
||||
arrow color.</li>
|
||||
</ul>
|
||||
</ul>
|
||||
|
||||
*/
|
||||
|
@ -2,34 +2,44 @@
|
||||
|
||||
\page import_export_geom_obj_page Importing/exporting geometrical objects
|
||||
|
||||
In Geometry module you can import and export geometrical objects
|
||||
from/into BREP, IGES, STEP, ACIS and STL files. The mechanisms of import and export
|
||||
are implemented via plug-ins, which gives the opportunity to
|
||||
expand the range of available formats by adding more plug-ins (for
|
||||
example, CATIA 5).
|
||||
\tableofcontents
|
||||
|
||||
The \subpage xao_format_page "import and export of shapes in XAO format" is implemented differently.
|
||||
\section io_general General information
|
||||
|
||||
In Geometry module you can import and export geometrical objects
|
||||
from/into \b BREP, \b IGES, \b STEP, \b STL, \b XAO, \b VTK (only export)
|
||||
and others files.
|
||||
The mechanisms of import and export are implemented via plugins,
|
||||
which gives the opportunity to expand the range of available formats
|
||||
by adding more plugins (for example, CATIA 5 or ACIS).
|
||||
|
||||
\note If a plugin supports import of materials associated with shapes, these
|
||||
shapes are grouped corresponding to the imported materials. For the moment STEP
|
||||
import is the only plugin that supports this feature.
|
||||
|
||||
<em>To import geometrical objects from a BREP, IGES, STEP, ACIS or STL file:</em>
|
||||
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
||||
\ref tui_import_export_page
|
||||
|
||||
\section io_import Import file
|
||||
|
||||
<em>To import geometrical objects from a BREP, IGES, STEP or STL file:</em>
|
||||
|
||||
\par
|
||||
From the \b File menu choose \b Import. In the opening dialog box \b Import
|
||||
select the required format of the file for importation and search for
|
||||
a *.brep, *.iges, *.step, *.sat or *.stl file.
|
||||
From the \b File menu choose <b>Import/<FormatName></b>, where <b><FormatName></b> is a name
|
||||
of desirable format. In the <b>Import <FormatName></b> dialog box select the file to import
|
||||
and press \b Open. The file will be imported in the module and its contents (geometrical object)
|
||||
will be displayed in the <b>Object Browser</b>.
|
||||
|
||||
The dialog box to import the file can provide additional parameters.
|
||||
|
||||
For example, dialog box for importing files in STL format:
|
||||
|
||||
\image html geomimport.png
|
||||
|
||||
\par
|
||||
Select the required file and click \b Open. Your file will be imported in
|
||||
the module and its contents (geometrical object) will be displayed in
|
||||
the <b>Object Browser</b>.
|
||||
\par
|
||||
|
||||
\note If the selected file is in IGES or STEP format and the length
|
||||
is not expressed in meters, it will be asked whether to take or not these
|
||||
\note If the selected file is in IGES or STEP format and the model size
|
||||
is not expressed in meters, the user will be asked whether to take or not the
|
||||
units into account (see the picture below). This feature can be
|
||||
helpful if some wrong units have been written to the IGES or STEP file by a
|
||||
3rd-party software.
|
||||
@ -38,15 +48,6 @@ helpful if some wrong units have been written to the IGES or STEP file by a
|
||||
|
||||
\par
|
||||
|
||||
\note If the selected file is in ACIS format (the use of this format
|
||||
requires licensing) and the file contains names for some shapes, it
|
||||
will be suggested to create groups by types (solid, face, edge and
|
||||
vertex) for all named shapes:
|
||||
|
||||
\image html sat_named_shapes.png
|
||||
|
||||
\par
|
||||
|
||||
\note It is possible to re-open from the initial file a previously imported shape if
|
||||
the file has been changed on disk. For this, select
|
||||
<b>Reload From Disk</b> in the context menu of the imported
|
||||
@ -55,21 +56,52 @@ as before this operation.
|
||||
|
||||
\image html geomimport_reopen.png
|
||||
|
||||
\n <em>To export geometrical objects into a BREP, IGES, STEP, ACIS or STL
|
||||
\section io_export Export file
|
||||
|
||||
\n <em>To export geometrical objects into a BREP, IGES, STEP, STL or VTK
|
||||
file:</em>
|
||||
|
||||
\par
|
||||
Select the object you wish to export, then from the \b File menu choose
|
||||
\b Export. In the opening dialog box \b Export define the required format,
|
||||
the name and the location of the file for exportation.
|
||||
<b>Export/<FormatName></b>, where <b><FormatName></b> is a name of desirable format.
|
||||
In the <b>Export <FormatName></b> dialog box define the name and the location
|
||||
of the file to export and press \b Save.
|
||||
|
||||
The dialog box to export the file can provide additional advanced parameters.
|
||||
|
||||
For example, dialog box for exporting files in STL format:
|
||||
|
||||
\image html geomexport.png
|
||||
|
||||
\par
|
||||
Click \b Save to confirm your exportation.
|
||||
|
||||
Our <b>TUI Scripts</b> provide you with useful examples of the use of
|
||||
\ref tui_import_export_page
|
||||
\section io_xao Import and export of shapes in XAO format
|
||||
|
||||
XAO is a file format which describes a shape with its topology, groups and fields.
|
||||
|
||||
<em>To import a shape in the \b XAO format:</em>
|
||||
|
||||
\par
|
||||
In the \b File menu select <b>Import/XAO</b>.
|
||||
|
||||
\image html importxao_dlg.png
|
||||
|
||||
\par
|
||||
|
||||
<em>To export a shape in the \b XAO format:</em>
|
||||
|
||||
\par
|
||||
In the \b File menu select <b>Export/XAO</b>.
|
||||
|
||||
\image html exportxao_dlg.png
|
||||
|
||||
In this dialog:
|
||||
- Click the arrow button and select in the Object Browser or in the Viewer the <b>Shape</b> to be exported.
|
||||
- Input the <b>File name</b> to create a new file or click browse button to save in an existing file.
|
||||
- Select the \b Groups of the chosen shape to be exported.
|
||||
- Select the \b Fields of the chosen shape to be exported.
|
||||
- Press "Apply" or "Apply & Close" button to get the result.
|
||||
|
||||
It also possible to export a shape using the TUI Command: <em>geompy.ExportXAO(Shape, FileName, Groups, Fields)</em>
|
||||
|
||||
*/
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
|
||||
\b Geometry module of SALOME is destined for:
|
||||
- \subpage import_export_geom_obj_page "import and export of geometrical models"
|
||||
in IGES, BREP, STEP, ACIS and STL formats;
|
||||
in IGES, BREP, STEP, STL, XAO and VTK formats;
|
||||
- \subpage create_geom_obj_page "construction of geometrical objects"
|
||||
using a wide range of functions;
|
||||
- \subpage view_geom_obj_page "viewing geometrical objects" in the OCC
|
||||
|
58
doc/salome/gui/GEOM/input/reduce_study.doc
Normal file
@ -0,0 +1,58 @@
|
||||
/*!
|
||||
|
||||
\page reduce_study_page Reduce Study
|
||||
|
||||
The user sometimes needs to keep in the study only some objects that
|
||||
present the final result(s) of the design operations and to delete all
|
||||
other objects which do not contribute to these results.
|
||||
|
||||
The feature is especially useful when the user designs the whole model
|
||||
through the GUI and wants to generate simplified "clean" Python dump only
|
||||
at the end of the model construction with no "useless" objects in the
|
||||
%GEOM module.
|
||||
|
||||
User can open dialog box by selecting desirable object(s) in Object
|
||||
Browser or OCC Viewer and calling "Reduce study" popup item.
|
||||
|
||||
\image html reduce_study_dialog.png
|
||||
|
||||
<ul>
|
||||
|
||||
<li><b> Objects to be kept</b> - objects that will be kept in the study after
|
||||
applying operation of reduce study. The list of objects being selected by
|
||||
the user are highlighted in bold font.</li>
|
||||
|
||||
<li><b> Objects to be removed</b> - objects that will be deleted.</li>
|
||||
|
||||
\note Mentioned views provide possibility to show/hide object(s) in
|
||||
current Viewer using "eye" icon near each item of tree. Also user can
|
||||
show/hide ALL objects in tree by clicking "eye" icon in the head of tree view.
|
||||
|
||||
<li><b> Intermediate objects</b> group box allows to choose an action
|
||||
that will be performed with the objects that took part in the operations
|
||||
chain to produce the selected object(s):
|
||||
<ul>
|
||||
<li>Keep - object(s) will be kept in the study;</li>
|
||||
<li>Unpublish - object(s) will be unpublished (hidden) from the study;</li>
|
||||
<li>Remove - object(s) will be removed from the study. \note Since use of
|
||||
this option can lead to the broken Dump Python script, the warning message
|
||||
will be shown at the operation commiting to confirm/reject removing
|
||||
intermediate objects.</li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li><b> Sub-objects</b> group box allows to choose the same operations for
|
||||
sub-objects of selected item(s): keep, unpublish or remove.</li>
|
||||
|
||||
<li><b> Remove empty folders</b> - if this option is checked, then all folders,
|
||||
which will become empty after removing unused objects from the study,
|
||||
will be also removed; otherwise, empty folders will be kept.</li>
|
||||
|
||||
<li><b> Soft removal</b> - if this option is checked, operation will just
|
||||
unpublish the redundant objects from the study instead of their hard delete.
|
||||
\n Soft removal would keep all the data in the study to give the user a
|
||||
chance to revert this operation using \ref publish_hidden_objects
|
||||
"Publish Objects" dialog box.</li>
|
||||
|
||||
</ul>
|
||||
*/
|
@ -10,7 +10,7 @@ geompy = geomBuilder.New(salome.myStudy)
|
||||
gg = salome.ImportComponentGUI("GEOM")
|
||||
|
||||
# create ExportXAO object
|
||||
exportxao = geompy.MakeExportXAO([value], [value], [value], [value])
|
||||
exportxao = geompy.ExportXAO([value], [value], [value], [value])
|
||||
|
||||
# add object in the study
|
||||
id_exportxao = geompy.addToStudy(exportxao,"ExportXAO")
|
||||
|
6
doc/salome/gui/GEOM/input/tui_polyline.doc
Normal file
@ -0,0 +1,6 @@
|
||||
/*!
|
||||
|
||||
\page tui_polyline_page 2D Polyline
|
||||
\tui_script{polyline.py}
|
||||
|
||||
*/
|
@ -21,6 +21,7 @@ other useful options by right-clicking on the selected object.
|
||||
object.</li>
|
||||
<li><b>Delete</b> - irreversibly deletes the selected object from the
|
||||
viewer and from the Object Browser.</li>
|
||||
<li><b>Create Group</b> - allows to create group.</li>
|
||||
<li>\subpage display_mode_page "Display Mode" - allows to select between
|
||||
Wireframe and Shading presentation.</li>
|
||||
<li>\subpage bring_to_front_page "Bring To Front" - allows to bring to
|
||||
@ -63,6 +64,10 @@ geometrical object. TUI Command: <em>sg.DisplayOnly(ID)</em></li>
|
||||
|
||||
<li><b>Show all dimensions</b> - shows all of the persistent dimensions created for the selected geometrical object.</li>
|
||||
<li><b>Hide all dimensions</b> - hides all of the persistent dimensions created for the selected geometrical object.</li>
|
||||
<li>\subpage dependency_tree_page "Show dependency tree" - shows dependency tree of selected objects
|
||||
in new 2D View Window.</li>
|
||||
<li>\subpage reduce_study_page "Reduce study" - allows to reduce study
|
||||
by automatic removing objects according to user's options.</li>
|
||||
<li><b>Dump view</b> - exports an object from the viewer in bmp, png,
|
||||
jpg or jpeg image format.</li>
|
||||
<li><b>Change background</b> - allows to redefine the background
|
||||
|
@ -1,24 +0,0 @@
|
||||
/*!
|
||||
|
||||
\page xao_format_page Import and export of shapes in XAO format
|
||||
|
||||
XAO is a file format which describes a shape with its topology, groups and fields.
|
||||
|
||||
To import a shape in the \b XAO format, in the <b>Main Menu</b> select <b>New Entity ->
|
||||
Import / Export -> Import XAO. </b>
|
||||
|
||||
To export a shape in the \b XAO format, in the <b>Main Menu</b> select <b>New Entity ->
|
||||
Import / Export -> Export XAO. </b>
|
||||
|
||||
\image html exportxao_dlg.png
|
||||
|
||||
In this dialog:
|
||||
- Click the arrow button and select in the Object Browser or in the Viewer the <b>Shape</b> to be exported.
|
||||
- Input the <b>File name</b> to create a new file or click browse button to save in an existing file.
|
||||
- Select the \b Groups of the chosen shape to be exported.
|
||||
- Select the \b Fields of the chosen shape to be exported.
|
||||
- Press "Apply" or "Apply & Close" button to get the result.
|
||||
|
||||
It also possible to export a shape using the TUI Command: <em>geompy.MakeExportXAO(Shape, FileName, Groups, Fields)</em>
|
||||
|
||||
*/
|
479
idl/AdvancedGEOM.idl
Normal file
@ -0,0 +1,479 @@
|
||||
// Copyright (C) 2007-2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
//
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
// File : AdvancedGEOM.idl
|
||||
// Author : Roman NIKOLAEV
|
||||
|
||||
#ifndef __AdvancedGEOM_IDL__
|
||||
#define __AdvancedGEOM_IDL__
|
||||
|
||||
#include "GEOM_Gen.idl"
|
||||
|
||||
module GEOM
|
||||
{
|
||||
/*!
|
||||
* \brief Pattern for block division of the disk
|
||||
*/
|
||||
enum pattern {
|
||||
/*! Square */
|
||||
SQUARE,
|
||||
/*! Hexagon */
|
||||
HEXAGON
|
||||
};
|
||||
|
||||
/*!
|
||||
* \brief Interface for advanced modeling functions.
|
||||
*/
|
||||
interface IAdvancedOperations : GEOM::GEOM_IOperations
|
||||
{
|
||||
// T-Shape WITHOUT Thickness reduction
|
||||
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShape (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeWithPosition (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in boolean theHexMesh,
|
||||
in GEOM::GEOM_Object theP1, in GEOM::GEOM_Object theP2,
|
||||
in GEOM::GEOM_Object theP3);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length). A chamfer is created
|
||||
* on the junction of the pipes.
|
||||
*
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theH Height of the chamfer.
|
||||
* \param theW Width of the chamfer.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeChamfer (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theH, in double theW, in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A chamfer is created on the junction of the pipes.
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theH Height of the chamfer.
|
||||
* \param theW Width of the chamfer.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeChamferWithPosition (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theH, in double theW, in boolean theHexMesh,
|
||||
in GEOM::GEOM_Object theP1, in GEOM::GEOM_Object theP2,
|
||||
in GEOM::GEOM_Object theP3);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A fillet is created on the junction of the pipes.
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theRF Radius of curvature of fillet.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeFillet (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRF, in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A fillet is created on the junction of the pipes.
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theRF Radius of curvature of fillet.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeFilletWithPosition (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRF, in boolean theHexMesh,
|
||||
in GEOM::GEOM_Object theP1, in GEOM::GEOM_Object theP2,
|
||||
in GEOM::GEOM_Object theP3);
|
||||
|
||||
// T-Shape WITH Thickness reduction
|
||||
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeTR (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeTRWithPosition(in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in boolean theHexMesh,
|
||||
in GEOM::GEOM_Object theP1, in GEOM::GEOM_Object theP2, in GEOM::GEOM_Object theP3);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length). A chamfer is created
|
||||
* on the junction of the pipes.
|
||||
*
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theH Height of the chamfer.
|
||||
* \param theW Width of the chamfer.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeTRChamfer(in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in double theH, in double theW, in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A chamfer is created on the junction of the pipes.
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theH Height of the chamfer.
|
||||
* \param theW Width of the chamfer.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeTRChamferWithPosition(in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in double theH, in double theW, in boolean theHexMesh,
|
||||
in GEOM::GEOM_Object theP1, in GEOM::GEOM_Object theP2, in GEOM::GEOM_Object theP3);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A fillet is created on the junction of the pipes.
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theRF Radius of curvature of fillet.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeTRFillet(in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in double theRF, in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A fillet is created on the junction of the pipes.
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theRF Radius of curvature of fillet.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO MakePipeTShapeTRFilletWithPosition(in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in double theRF, in boolean theHexMesh,
|
||||
in GEOM::GEOM_Object theP1, in GEOM::GEOM_Object theP2,
|
||||
in GEOM::GEOM_Object theP3);
|
||||
|
||||
/*!
|
||||
* This function allows to create a disk already divided into blocks. It
|
||||
* can be use to create divided pipes for later meshing in hexaedra.
|
||||
* \param theR Radius of the disk
|
||||
* \param theRatio Relative size of the central square diagonal against the disk diameter
|
||||
* \param theOrientation Plane on which the disk will be built
|
||||
* \param thePattern Division pattern. It can be GEOM.SQUARE or GEOM.HEXAGON
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
GEOM::GEOM_Object MakeDividedDisk (in double theR,
|
||||
in double theRatio,
|
||||
in short theOrientation,
|
||||
in GEOM::pattern thePattern);
|
||||
|
||||
/*!
|
||||
* \brief Create a Disk prepared for hexa meshing with given center, normal vector and radius.
|
||||
* \param thePnt disk center.
|
||||
* \param theVec Vector, normal to the plane of the disk.
|
||||
* \param theR Disk radius.
|
||||
* \param theRatio Relative size of the central square diagonal against the disk diameter
|
||||
* \param thePattern Division pattern. It can be GEOM.SQUARE or GEOM.HEXAGON
|
||||
* \return New GEOM_Object, containing the created disk.
|
||||
*/
|
||||
GEOM::GEOM_Object MakeDividedDiskPntVecR ( in GEOM::GEOM_Object thePnt,
|
||||
in GEOM::GEOM_Object theVec,
|
||||
in double theR,
|
||||
in double theRatio,
|
||||
in GEOM::pattern thePattern);
|
||||
|
||||
/*!
|
||||
* Builds a cylinder prepared for hexa meshes
|
||||
* \param theR Radius of the cylinder
|
||||
* \param theH Height of the cylinder
|
||||
* \param thePattern Division pattern. It can be GEOM.SQUARE or GEOM.HEXAGON
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
GEOM::GEOM_Object MakeDividedCylinder (in double theR,
|
||||
in double theH,
|
||||
in GEOM::pattern thePattern );
|
||||
/*!
|
||||
*
|
||||
* Create a smoothing surface from a set of points
|
||||
* \param thelPoints list of points. Compounds of ggpoints are accepted as well.
|
||||
* \param theNbMax maximum number of Bezier pieces in the resulting surface.
|
||||
* \param theDegMax maximum degree of the resulting BSpline surface
|
||||
* \param theDMax specifies maximum value of the GeomPlate_PlateG0Criterion criterion.
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
GEOM::GEOM_Object MakeSmoothingSurface (in GEOM::ListOfGO thelPoints,
|
||||
in long theNbMax,
|
||||
in long theDegMax,
|
||||
in double theDMax);
|
||||
|
||||
/*@@ insert new functions before this line @@ do not remove this line @@*/
|
||||
};
|
||||
};
|
||||
|
||||
#endif // __AdvancedGEOM_IDL__
|
51
idl/BREPPlugin.idl
Normal file
@ -0,0 +1,51 @@
|
||||
// Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
//
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#ifndef __BREPPlugin_IDL__
|
||||
#define __BREPPlugin_IDL__
|
||||
|
||||
#include "GEOM_Gen.idl"
|
||||
|
||||
module GEOM
|
||||
{
|
||||
/*!
|
||||
* \brief Interface for BREPPlugin modeling functions.
|
||||
*/
|
||||
interface IBREPOperations : GEOM::GEOM_IOperations
|
||||
{
|
||||
/*!
|
||||
* \brief Export the given shape into a file with given name in BREP format.
|
||||
*
|
||||
* \param theObject Shape to be stored in the file.
|
||||
* \param theFileName Name of the file to store the given shape in.
|
||||
*/
|
||||
void ExportBREP( in GEOM::GEOM_Object theObject,
|
||||
in string theFileName );
|
||||
|
||||
/*!
|
||||
* \brief Import a shape from the BREP file.
|
||||
*
|
||||
* \param theFileName The file, containing the shape.
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO ImportBREP( in string theFileName );
|
||||
};
|
||||
};
|
||||
|
||||
#endif // __BREPPlugin_IDL__
|
@ -32,16 +32,83 @@ ENDIF(WIN32)
|
||||
|
||||
SET(SalomeIDLGEOM_IDLSOURCES
|
||||
GEOM_Gen.idl
|
||||
)
|
||||
|
||||
SET(SalomeIDLGEOMSuperv_IDLSOURCES
|
||||
GEOM_Superv.idl
|
||||
)
|
||||
|
||||
SET(SalomeIDLAdvancedGEOM_IDLSOURCES
|
||||
AdvancedGEOM.idl
|
||||
)
|
||||
|
||||
SET(SalomeIDLSTLPlugin_IDLSOURCES
|
||||
STLPlugin.idl
|
||||
)
|
||||
|
||||
SET(SalomeIDLBREPPlugin_IDLSOURCES
|
||||
BREPPlugin.idl
|
||||
)
|
||||
|
||||
SET(SalomeIDLSTEPPlugin_IDLSOURCES
|
||||
STEPPlugin.idl
|
||||
)
|
||||
|
||||
SET(SalomeIDLIGESPlugin_IDLSOURCES
|
||||
IGESPlugin.idl
|
||||
)
|
||||
|
||||
SET(SalomeIDLXAOPlugin_IDLSOURCES
|
||||
XAOPlugin.idl
|
||||
)
|
||||
|
||||
SET(SalomeIDLVTKPlugin_IDLSOURCES
|
||||
VTKPlugin.idl
|
||||
)
|
||||
|
||||
SET(IDL_INCLUDE_DIRS
|
||||
${KERNEL_ROOT_DIR}/idl/salome
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
SET(IDL_LINK_FLAGS
|
||||
${KERNEL_SalomeIDLKernel}
|
||||
)
|
||||
|
||||
SET(IDL_LINK_PLUGIN_FLAGS
|
||||
${KERNEL_SalomeIDLKernel}
|
||||
SalomeIDLGEOM
|
||||
)
|
||||
|
||||
SET(IDL_LINK_SUPERV_FLAGS
|
||||
${KERNEL_SalomeIDLKernel}
|
||||
SalomeIDLGEOM
|
||||
SalomeIDLAdvancedGEOM
|
||||
)
|
||||
|
||||
OMNIORB_ADD_MODULE(SalomeIDLGEOM "${SalomeIDLGEOM_IDLSOURCES}" "${IDL_INCLUDE_DIRS}" "${IDL_LINK_FLAGS}")
|
||||
INSTALL(TARGETS SalomeIDLGEOM EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
|
||||
|
||||
OMNIORB_ADD_MODULE(SalomeIDLAdvancedGEOM "${SalomeIDLAdvancedGEOM_IDLSOURCES}" "${IDL_INCLUDE_DIRS}" "${IDL_LINK_PLUGIN_FLAGS}")
|
||||
INSTALL(TARGETS SalomeIDLAdvancedGEOM EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
|
||||
|
||||
OMNIORB_ADD_MODULE(SalomeIDLSTLPlugin "${SalomeIDLSTLPlugin_IDLSOURCES}" "${IDL_INCLUDE_DIRS}" "${IDL_LINK_PLUGIN_FLAGS}")
|
||||
INSTALL(TARGETS SalomeIDLSTLPlugin EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
|
||||
|
||||
OMNIORB_ADD_MODULE(SalomeIDLBREPPlugin "${SalomeIDLBREPPlugin_IDLSOURCES}" "${IDL_INCLUDE_DIRS}" "${IDL_LINK_PLUGIN_FLAGS}")
|
||||
INSTALL(TARGETS SalomeIDLBREPPlugin EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
|
||||
|
||||
OMNIORB_ADD_MODULE(SalomeIDLSTEPPlugin "${SalomeIDLSTEPPlugin_IDLSOURCES}" "${IDL_INCLUDE_DIRS}" "${IDL_LINK_PLUGIN_FLAGS}")
|
||||
INSTALL(TARGETS SalomeIDLSTEPPlugin EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
|
||||
|
||||
OMNIORB_ADD_MODULE(SalomeIDLIGESPlugin "${SalomeIDLIGESPlugin_IDLSOURCES}" "${IDL_INCLUDE_DIRS}" "${IDL_LINK_PLUGIN_FLAGS}")
|
||||
INSTALL(TARGETS SalomeIDLIGESPlugin EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
|
||||
|
||||
OMNIORB_ADD_MODULE(SalomeIDLXAOPlugin "${SalomeIDLXAOPlugin_IDLSOURCES}" "${IDL_INCLUDE_DIRS}" "${IDL_LINK_PLUGIN_FLAGS}")
|
||||
INSTALL(TARGETS SalomeIDLXAOPlugin EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
|
||||
|
||||
OMNIORB_ADD_MODULE(SalomeIDLVTKPlugin "${SalomeIDLVTKPlugin_IDLSOURCES}" "${IDL_INCLUDE_DIRS}" "${IDL_LINK_PLUGIN_FLAGS}")
|
||||
INSTALL(TARGETS SalomeIDLVTKPlugin EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
|
||||
|
||||
OMNIORB_ADD_MODULE(SalomeIDLGEOMSuperv "${SalomeIDLGEOMSuperv_IDLSOURCES}" "${IDL_INCLUDE_DIRS}" "${IDL_LINK_SUPERV_FLAGS}")
|
||||
INSTALL(TARGETS SalomeIDLGEOMSuperv EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
|
||||
|
648
idl/GEOM_Gen.idl
@ -164,7 +164,8 @@ module GEOM
|
||||
/*!
|
||||
* \brief Kind of the curves.
|
||||
*
|
||||
* Used in the functions GEOM_ICurvesOperations.MakeCurveParametric(), GEOM_ICurvesOperations.MakeCurveParametricNew()
|
||||
* Used in the functions GEOM_ICurvesOperations.MakeCurveParametric(), GEOM_ICurvesOperations.MakeCurveParametricNew(),
|
||||
* GEOM_ICurvesOperations.MakePolyline2D, GEOM_ICurvesOperations.MakePolyline2DOnPlane.
|
||||
*/
|
||||
enum curve_type {
|
||||
/*! Polyline curve */
|
||||
@ -177,19 +178,6 @@ module GEOM
|
||||
Interpolation
|
||||
};
|
||||
|
||||
/*!
|
||||
* \brief Pattern for block division of the disk
|
||||
*
|
||||
* Used in the functions GEOM_IAdvancedOperations.MakeDividedDisk(), GEOM_ICurvesOperations.MakeDividedDiskPntVecR()
|
||||
*/
|
||||
enum pattern {
|
||||
/*! Square */
|
||||
SQUARE,
|
||||
|
||||
/*! Hexagon */
|
||||
HEXAGON
|
||||
};
|
||||
|
||||
/*!
|
||||
* \brief Type of field data
|
||||
*/
|
||||
@ -221,11 +209,12 @@ module GEOM
|
||||
};
|
||||
|
||||
|
||||
typedef sequence<string> string_array;
|
||||
typedef sequence<short> short_array;
|
||||
typedef sequence<boolean> ListOfBool;
|
||||
typedef sequence<long> ListOfLong;
|
||||
typedef sequence<double> ListOfDouble;
|
||||
typedef sequence<string> string_array;
|
||||
typedef sequence<short> short_array;
|
||||
typedef sequence<boolean> ListOfBool;
|
||||
typedef sequence<long> ListOfLong;
|
||||
typedef sequence<double> ListOfDouble;
|
||||
typedef sequence<ListOfDouble> ListOfListOfDouble;
|
||||
|
||||
interface GEOM_Object;
|
||||
interface GEOM_BaseObject;
|
||||
@ -1481,6 +1470,18 @@ module GEOM
|
||||
*/
|
||||
GEOM_Object MakeCylinderRH (in double theR, in double theH);
|
||||
|
||||
/*!
|
||||
* \brief Create a portion of cylinder with given radius, height and angle at
|
||||
* the origin of coordinate system.
|
||||
*
|
||||
* Axis of the cylinder will be collinear to the OZ axis of the coordinate system.
|
||||
* \param theR Cylinder radius.
|
||||
* \param theH Cylinder height.
|
||||
* \param theA Cylinder angle.
|
||||
* \return New GEOM_Object, containing the created cylinder.
|
||||
*/
|
||||
GEOM_Object MakeCylinderRHA (in double theR, in double theH, in double theA);
|
||||
|
||||
/*!
|
||||
* \brief Create a cylinder with given base point, axis, radius and height.
|
||||
* \param thePnt Central point of cylinder base.
|
||||
@ -1493,6 +1494,20 @@ module GEOM
|
||||
in GEOM_Object theAxis,
|
||||
in double theR,
|
||||
in double theH);
|
||||
/*!
|
||||
* \brief Create a portion of cylinder with given base point, axis, radius, height and angle.
|
||||
* \param thePnt Central point of cylinder base.
|
||||
* \param theAxis Cylinder axis.
|
||||
* \param theR Cylinder radius.
|
||||
* \param theH Cylinder height.
|
||||
* \param theA Cylinder angle.
|
||||
* \return New GEOM_Object, containing the created cylinder.
|
||||
*/
|
||||
GEOM_Object MakeCylinderPntVecRHA (in GEOM_Object thePnt,
|
||||
in GEOM_Object theAxis,
|
||||
in double theR,
|
||||
in double theH,
|
||||
in double theA);
|
||||
|
||||
/*!
|
||||
* \brief Create a cone with given height and radiuses at
|
||||
@ -3319,6 +3334,72 @@ module GEOM
|
||||
* \return New GEOM_Object, containing the created wire.
|
||||
*/
|
||||
GEOM_Object Make3DSketcher (in ListOfDouble theCoordinates);
|
||||
|
||||
/*!
|
||||
* \brief Create a 2D polyline (wire or a compound of wires).
|
||||
*
|
||||
* The polyline can have several sections. Each section represents a set
|
||||
* of points in the form of list of coordinates of the following order:
|
||||
* x1, y1, x2, y2, ..., xN, yN
|
||||
* Each section has its own name, type of curve (can be either
|
||||
* GEOM::Polyline or GEOM::Interpolation) and Closed flag.
|
||||
* For each section a wire is created. It represents either a polyline or
|
||||
* interpolation BSpline either closed or not depending on the Closed flag.
|
||||
* The result represents a wire if there is only one section is defined.
|
||||
* Otherwise a compound of wires is returned.
|
||||
*
|
||||
* \param theCoordsList the list of coordinates list. theCoordsList[0]
|
||||
* is the coordinates list of the first section. theCoordsList[1]
|
||||
* is for the second section etc.
|
||||
* \param theNamesList the list of names. The order corresponds to
|
||||
* theCoordsList.
|
||||
* \param theTypesList the list of curve types. The order corresponds to
|
||||
* theCoordsList.
|
||||
* \param theClosedList the list of Closed flags. The order corresponds to
|
||||
* theCoordsList.
|
||||
* \param theWorkingPlane 9 double values, defining origin,
|
||||
* OZ and OX directions of the working plane.
|
||||
* \return New GEOM_Object, containing the created wire or a compound
|
||||
* of wires.
|
||||
*/
|
||||
GEOM_Object MakePolyline2D (in ListOfListOfDouble theCoordsList,
|
||||
in string_array theNamesList,
|
||||
in short_array theTypesList,
|
||||
in ListOfBool theClosedList,
|
||||
in ListOfDouble theWorkingPlane);
|
||||
|
||||
/*!
|
||||
* \brief Create a 2D polyline (wire or a compound of wires).
|
||||
*
|
||||
* The polyline can have several sections. Each section represents a set
|
||||
* of points in the form of list of coordinates of the following order:
|
||||
* x1, y1, x2, y2, ..., xN, yN
|
||||
* Each section has its own name, type of curve (can be either
|
||||
* GEOM::Polyline or GEOM::Interpolation) and Closed flag.
|
||||
* For each section a wire is created. It represents either a polyline or
|
||||
* interpolation BSpline either closed or not depending on the Closed flag.
|
||||
* The result represents a wire if there is only one section is defined.
|
||||
* Otherwise a compound of wires is returned.
|
||||
*
|
||||
* \param theCoordsList the list of coordinates list. theCoordsList[0]
|
||||
* is the coordinates list of the first section. theCoordsList[1]
|
||||
* is for the second section etc.
|
||||
* \param theNamesList the list of names. The order corresponds to
|
||||
* theCoordsList.
|
||||
* \param theTypesList the list of curve types. The order corresponds to
|
||||
* theCoordsList.
|
||||
* \param theClosedList the list of Closed flags. The order corresponds to
|
||||
* theCoordsList.
|
||||
* \param theWorkingPlane planar Face or LCS(Marker) of the working plane.
|
||||
* \return New GEOM_Object, containing the created wire or a compound
|
||||
* of wires.
|
||||
*/
|
||||
GEOM_Object MakePolyline2DOnPlane (in ListOfListOfDouble theCoordsList,
|
||||
in string_array theNamesList,
|
||||
in short_array theTypesList,
|
||||
in ListOfBool theClosedList,
|
||||
in GEOM_Object theWorkingPlane);
|
||||
|
||||
};
|
||||
|
||||
// # GEOM_ILocalOperations:
|
||||
@ -3684,56 +3765,43 @@ module GEOM
|
||||
GEOM_Object MakeCopy (in GEOM_Object theOriginal);
|
||||
|
||||
/*!
|
||||
* \brief Deprecated method. Use Export<FormatName> (from the
|
||||
* corresponding plugin) instead; here <FormatName> is a name of format.
|
||||
*
|
||||
* \brief Export the given shape into a file with given name.
|
||||
* \param theObject Shape to be stored in the file.
|
||||
* \param theFileName Name of the file to store the given shape in.
|
||||
* \param theFormatName Specify format for the shape storage.
|
||||
* Available formats can be obtained with <VAR>ImportTranslators()</VAR> method.
|
||||
*/
|
||||
void Export (in GEOM_Object theObject, in string theFileName, in string theFormatName);
|
||||
|
||||
/*!
|
||||
* \brief Import a shape from the BRep or IGES or STEP file
|
||||
* \brief Deprecated method. Use Import<FormatName> (from the
|
||||
* corresponding plugin) instead; here <FormatName> is a name of format.
|
||||
*
|
||||
* \brief Import a shape from the STL, BREP, IGES or STEP file
|
||||
* (depends on given format) with given name.
|
||||
* \param theFileName The file, containing the shape.
|
||||
* \param theFormatName Specify format for the file reading.
|
||||
* Available formats can be obtained with <VAR>ImportTranslators()</VAR> method.
|
||||
* If format 'IGES_SCALE' is used instead of 'IGES' or
|
||||
* format 'STEP_SCALE' is used instead of 'STEP',
|
||||
* file length unit will be ignored (set to 'meter') and result model will be scaled.
|
||||
* \return List of GEOM_Object, containing the created shape and groups of materials.
|
||||
*/
|
||||
ListOfGO ImportFile (in string theFileName, in string theFormatName);
|
||||
ListOfGBO ImportFile (in string theFileName, in string theFormatName);
|
||||
|
||||
/*!
|
||||
* \brief Deprecated method. Use ReadValue (from the corresponding plugin) instead.
|
||||
*
|
||||
* \brief Read a value of parameter from a file, containing a shape.
|
||||
* \param theFileName The file, containing the shape.
|
||||
* \param theFormatName Specify format for the file reading.
|
||||
* Available formats can be obtained with <VAR>ImportTranslators()</VAR> method.
|
||||
* \param theParameterName Specify the parameter. For example, pass "LEN_UNITS"
|
||||
* to obtain length units, in which the file is written.
|
||||
* \return Value of requested parameter in form of text string.
|
||||
*/
|
||||
string ReadValue (in string theFileName, in string theFormatName, in string theParameterName);
|
||||
|
||||
/*!
|
||||
* \brief Get the supported import formats and corresponding patterns for File dialog.
|
||||
* \param theFormats Output. List of formats, available for import.
|
||||
* \param thePatterns Output. List of file patterns, corresponding to available formats.
|
||||
* \return Returns available formats and patterns through the arguments.
|
||||
*/
|
||||
void ImportTranslators (out string_array theFormats,
|
||||
out string_array thePatterns);
|
||||
|
||||
/*!
|
||||
* \brief Get the supported export formats and corresponding patterns for File dialog.
|
||||
* \param theFormats Output. List of formats, available for export.
|
||||
* \param thePatterns Output. List of file patterns, corresponding to available formats.
|
||||
* \return Returns available formats and patterns through the arguments.
|
||||
*/
|
||||
void ExportTranslators (out string_array theFormats,
|
||||
out string_array thePatterns);
|
||||
|
||||
/*!
|
||||
* \brief Read a shape from the binary stream, containing its bounding representation (BRep).
|
||||
* \note GEOM_Object::GetShapeStream() method can be used to obtain the shape's BRep stream.
|
||||
@ -3772,31 +3840,7 @@ module GEOM
|
||||
* \return list of all texture IDs avaiable for the current study
|
||||
*/
|
||||
ListOfLong GetAllTextures();
|
||||
|
||||
/*!
|
||||
* Export a shape to XAO format
|
||||
* \param shape The shape to export
|
||||
* \param groups The list of groups to export
|
||||
* \param fields The list of fields to export
|
||||
* \param author The author of the export
|
||||
* \param fileName The name of the file to export
|
||||
* \return boolean indicating if export was successful.
|
||||
*/
|
||||
boolean ExportXAO(in GEOM_Object shape,
|
||||
in ListOfGO groups, in ListOfFields fields,
|
||||
in string author, in string fileName);
|
||||
|
||||
/*!
|
||||
* Import a shape from XAO format
|
||||
* \param fileName The name of the file to import
|
||||
* \param shape The imported shape
|
||||
* \param subShapes The list of imported subShapes
|
||||
* \param groups The list of imported groups
|
||||
* \param fields The list of imported fields
|
||||
* \return boolean indicating if import was successful.
|
||||
*/
|
||||
boolean ImportXAO(in string fileName, out GEOM_Object shape,
|
||||
out ListOfGO subShapes, out ListOfGO groups, out ListOfFields fields);
|
||||
};
|
||||
|
||||
// # GEOM_IKindOfShape:
|
||||
@ -4365,448 +4409,7 @@ module GEOM
|
||||
ListOfLong GetObjects (in GEOM_Object theGroup);
|
||||
};
|
||||
|
||||
// # GEOM_IAdvancedOperations:
|
||||
/*!
|
||||
* \brief Interface for advanced modeling functions.
|
||||
*/
|
||||
interface GEOM_IAdvancedOperations : GEOM_IOperations
|
||||
{
|
||||
// T-Shape WITHOUT Thickness reduction
|
||||
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShape (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeWithPosition (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in boolean theHexMesh,
|
||||
in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length). A chamfer is created
|
||||
* on the junction of the pipes.
|
||||
*
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theH Height of the chamfer.
|
||||
* \param theW Width of the chamfer.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeChamfer (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theH, in double theW, in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A chamfer is created on the junction of the pipes.
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theH Height of the chamfer.
|
||||
* \param theW Width of the chamfer.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeChamferWithPosition (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theH, in double theW, in boolean theHexMesh,
|
||||
in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A fillet is created on the junction of the pipes.
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theRF Radius of curvature of fillet.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeFillet (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRF, in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A fillet is created on the junction of the pipes.
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
* \param theRF Radius of curvature of fillet.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeFilletWithPosition (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRF, in boolean theHexMesh,
|
||||
in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
|
||||
|
||||
// T-Shape WITH Thickness reduction
|
||||
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeTR (in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeTRWithPosition
|
||||
(in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in boolean theHexMesh,
|
||||
in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length). A chamfer is created
|
||||
* on the junction of the pipes.
|
||||
*
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theH Height of the chamfer.
|
||||
* \param theW Width of the chamfer.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeTRChamfer
|
||||
(in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in double theH, in double theW, in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A chamfer is created on the junction of the pipes.
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theH Height of the chamfer.
|
||||
* \param theW Width of the chamfer.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeTRChamferWithPosition
|
||||
(in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in double theH, in double theW, in boolean theHexMesh,
|
||||
in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A fillet is created on the junction of the pipes.
|
||||
* Center of the shape is (0,0,0). The main plane of the T-shape is XOY.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theRF Radius of curvature of fillet.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeTRFillet
|
||||
(in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in double theRF, in boolean theHexMesh);
|
||||
/*!
|
||||
* \brief Create a T-shape object with specified caracteristics for the main and
|
||||
* the incident pipes (radius, width, half-length).
|
||||
*
|
||||
* A fillet is created on the junction of the pipes.
|
||||
* The extremities of the main pipe are located on junctions points P1 and P2.
|
||||
* The extremity of the incident pipe is located on junction point P3.
|
||||
* \param theR1 Internal radius of main pipe
|
||||
* \param theW1 Width of main pipe
|
||||
* \param theL1 Half-length of main pipe
|
||||
* \param theR2 Internal radius of incident pipe (R2 < R1)
|
||||
* \param theW2 Width of incident pipe (R2+W2 < R1+W1)
|
||||
* \param theL2 Half-length of incident pipe
|
||||
*
|
||||
* \param theRL Internal radius of left thickness reduction
|
||||
* \param theWL Width of left thickness reduction
|
||||
* \param theLtransL Length of left transition part
|
||||
* \param theLthinL Length of left thin part
|
||||
*
|
||||
* \param theRR Internal radius of right thickness reduction
|
||||
* \param theWR Width of right thickness reduction
|
||||
* \param theLtransR Length of right transition part
|
||||
* \param theLthinR Length of right thin part
|
||||
*
|
||||
* \param theRI Internal radius of incident thickness reduction
|
||||
* \param theWI Width of incident thickness reduction
|
||||
* \param theLtransI Length of incident transition part
|
||||
* \param theLthinI Length of incident thin part
|
||||
*
|
||||
* \param theRF Radius of curvature of fillet.
|
||||
* \param theHexMesh Boolean indicating if shape is prepared for hex mesh (default=true)
|
||||
* \param theP1 1st junction point of main pipe
|
||||
* \param theP2 2nd junction point of main pipe
|
||||
* \param theP3 Junction point of incident pipe
|
||||
* \return List of GEOM_Object, containing the created shape and propagation groups.
|
||||
*/
|
||||
ListOfGO MakePipeTShapeTRFilletWithPosition
|
||||
(in double theR1, in double theW1, in double theL1,
|
||||
in double theR2, in double theW2, in double theL2,
|
||||
in double theRL, in double theWL, in double theLtransL, in double theLthinL,
|
||||
in double theRR, in double theWR, in double theLtransR, in double theLthinR,
|
||||
in double theRI, in double theWI, in double theLtransI, in double theLthinI,
|
||||
in double theRF, in boolean theHexMesh,
|
||||
in GEOM_Object theP1, in GEOM_Object theP2, in GEOM_Object theP3);
|
||||
|
||||
/*!
|
||||
* This function allows to create a disk already divided into blocks. It
|
||||
* can be use to create divided pipes for later meshing in hexaedra.
|
||||
* \param theR Radius of the disk
|
||||
* \param theRatio Relative size of the central square diagonal against the disk diameter
|
||||
* \param theOrientation Plane on which the disk will be built
|
||||
* \param thePattern Division pattern. It can be GEOM.SQUARE or GEOM.HEXAGON
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
GEOM_Object MakeDividedDisk (in double theR,
|
||||
in double theRatio,
|
||||
in short theOrientation,
|
||||
in pattern thePattern);
|
||||
|
||||
/*!
|
||||
* \brief Create a Disk prepared for hexa meshing with given center, normal vector and radius.
|
||||
* \param thePnt disk center.
|
||||
* \param theVec Vector, normal to the plane of the disk.
|
||||
* \param theR Disk radius.
|
||||
* \param theRatio Relative size of the central square diagonal against the disk diameter
|
||||
* \param thePattern Division pattern. It can be GEOM.SQUARE or GEOM.HEXAGON
|
||||
* \return New GEOM_Object, containing the created disk.
|
||||
*/
|
||||
GEOM_Object MakeDividedDiskPntVecR ( in GEOM_Object thePnt,
|
||||
in GEOM_Object theVec,
|
||||
in double theR,
|
||||
in double theRatio,
|
||||
in pattern thePattern);
|
||||
|
||||
/*!
|
||||
* Builds a cylinder prepared for hexa meshes
|
||||
* \param theR Radius of the cylinder
|
||||
* \param theH Height of the cylinder
|
||||
* \param thePattern Division pattern. It can be GEOM.SQUARE or GEOM.HEXAGON
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
GEOM_Object MakeDividedCylinder (in double theR,
|
||||
in double theH,
|
||||
in pattern thePattern );
|
||||
/*!
|
||||
*
|
||||
* Create a smoothing surface from a set of points
|
||||
* \param thelPoints list of points. Compounds of points are accepted as well.
|
||||
* \param theNbMax maximum number of Bezier pieces in the resulting surface.
|
||||
* \param theDegMax maximum degree of the resulting BSpline surface
|
||||
* \param theDMax specifies maximum value of the GeomPlate_PlateG0Criterion criterion.
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
GEOM_Object MakeSmoothingSurface (in ListOfGO thelPoints,
|
||||
in long theNbMax,
|
||||
in long theDegMax,
|
||||
in double theDMax);
|
||||
|
||||
/*@@ insert new functions before this line @@ do not remove this line @@*/
|
||||
};
|
||||
|
||||
// # GEOM_IFieldOperations:
|
||||
// # GEOM_IFieldOperations:
|
||||
/*!
|
||||
* \brief Interface for field operation.
|
||||
*/
|
||||
@ -5089,6 +4692,35 @@ module GEOM
|
||||
void Move( in object_list what,
|
||||
in SALOMEDS::SObject where,
|
||||
in long row );
|
||||
|
||||
/*!
|
||||
* \brief Collects dependencies of the given objects from other ones
|
||||
* \param theStudy The study in which the object is published
|
||||
* \param theListOfEntries List of GEOM object entries in OCAF tree (not in study)
|
||||
* \return Struct of dependent entries and its links as a byte array
|
||||
* \note This method is supposed to be used by GUI only.
|
||||
*/
|
||||
SALOMEDS::TMPFile GetDependencyTree(in SALOMEDS::Study theStudy,
|
||||
in string_array theListOfEntries);
|
||||
|
||||
/*!
|
||||
* \brief Fills 3 lists that is used to reduce study of redundant objects:
|
||||
* - dependencies of the given objects from other ones;
|
||||
* - children of the given objects;
|
||||
* - all other objects in study.
|
||||
* \param theStudy The study in which the object was published
|
||||
* \param theSelectedEntries List of GEOM object entries in OCAF tree
|
||||
* \param theParentEntries List of GEOM object entries on which the given objects depend
|
||||
* \param theSubEntries Children entries list of the given objects
|
||||
* \param theOtherEntries List of GEOM object entries which are in the study, but not in parents and children lists
|
||||
* \note This method is supposed to be used by GUI only.
|
||||
*/
|
||||
void GetEntriesToReduceStudy(in SALOMEDS::Study theStudy,
|
||||
inout string_array theSelectedEntries,
|
||||
inout string_array theParentEntries,
|
||||
inout string_array theSubEntries,
|
||||
inout string_array theOtherEntries);
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -26,6 +26,7 @@
|
||||
#define __GEOM_SUPERV__
|
||||
|
||||
#include "GEOM_Gen.idl"
|
||||
#include "AdvancedGEOM.idl"
|
||||
|
||||
module GEOM
|
||||
{
|
||||
@ -161,6 +162,14 @@ module GEOM
|
||||
in double theHeight) ;
|
||||
GEOM_Object MakeCylinderRH (in double theR,
|
||||
in double theH) ;
|
||||
GEOM_Object MakeCylinderPntVecRHA (in GEOM_Object thePnt,
|
||||
in GEOM_Object theAxis,
|
||||
in double theRadius,
|
||||
in double theHeight,
|
||||
in double theAngle) ;
|
||||
GEOM_Object MakeCylinderRHA (in double theR,
|
||||
in double theH,
|
||||
in double theA) ;
|
||||
GEOM_Object MakeSphere (in double theX,
|
||||
in double theY,
|
||||
in double theZ,
|
||||
@ -264,15 +273,6 @@ module GEOM
|
||||
GEOM_Object MakeCopy (in GEOM_Object theOriginal) ;
|
||||
void Export (in GEOM_Object theObject, in string theFileName, in string theFormatName) ;
|
||||
GEOM_Object ImportFile (in string theFileName, in string theFormatName) ;
|
||||
void ImportTranslators (out string_array theFormats,
|
||||
out string_array thePatterns) ;
|
||||
void ExportTranslators (out string_array theFormats,
|
||||
out string_array thePatterns) ;
|
||||
boolean ExportXAO(in GEOM_Object shape,
|
||||
in ListOfGO groups, in ListOfFields fields,
|
||||
in string author, in string fileName);
|
||||
boolean ImportXAO(in string fileName, out GEOM_Object shape,
|
||||
out ListOfGO subShapes, out ListOfGO groups, out ListOfFields fields);
|
||||
|
||||
//-----------------------------------------------------------//
|
||||
// TransformOperations //
|
||||
@ -635,6 +635,46 @@ module GEOM
|
||||
in pattern thePattern);
|
||||
|
||||
GEOM_Object MakeSmoothingSurface (in GEOM_List thelPoints);
|
||||
|
||||
//-----------------------------------------------------------//
|
||||
// Import/Export Operations //
|
||||
//-----------------------------------------------------------//
|
||||
void ExportSTL( in GEOM::GEOM_Object theObject,
|
||||
in string theFileName,
|
||||
in boolean theIsASCII,
|
||||
in double theDeflection,
|
||||
in boolean theIsRelative );
|
||||
GEOM_Object ImportSTL( in string theFileName );
|
||||
|
||||
void ExportBREP( in GEOM::GEOM_Object theObject,
|
||||
in string theFileName );
|
||||
GEOM_Object ImportBREP( in string theFileName );
|
||||
|
||||
void ExportSTEP( in GEOM::GEOM_Object theObject,
|
||||
in string theFileName );
|
||||
GEOM_Object ImportSTEP( in string theFileName,
|
||||
in boolean theIsIgnoreUnits );
|
||||
|
||||
void ExportIGES( in GEOM::GEOM_Object theObject,
|
||||
in string theFileName,
|
||||
in string theVersion );
|
||||
GEOM_Object ImportIGES( in string theFileName,
|
||||
in boolean theIsIgnoreUnits );
|
||||
|
||||
boolean ExportXAO( in GEOM_Object shape,
|
||||
in ListOfGO groups,
|
||||
in ListOfFields fields,
|
||||
in string author,
|
||||
in string fileName );
|
||||
boolean ImportXAO( in string fileName,
|
||||
out GEOM_Object shape,
|
||||
out ListOfGO subShapes,
|
||||
out ListOfGO groups,
|
||||
out ListOfFields fields );
|
||||
|
||||
void ExportVTK( in GEOM::GEOM_Object theObject,
|
||||
in string theFileName,
|
||||
in double theDeflection );
|
||||
|
||||
/*@@ insert new functions before this line @@ do not remove this line @@*/
|
||||
};
|
||||
|
67
idl/IGESPlugin.idl
Normal file
@ -0,0 +1,67 @@
|
||||
// Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
//
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#ifndef __IGESPlugin_IDL__
|
||||
#define __IGESPlugin_IDL__
|
||||
|
||||
#include "GEOM_Gen.idl"
|
||||
|
||||
module GEOM
|
||||
{
|
||||
/*!
|
||||
* \brief Interface for IGESPlugin modeling functions.
|
||||
*/
|
||||
interface IIGESOperations : GEOM::GEOM_IOperations
|
||||
{
|
||||
/*!
|
||||
* \brief Export the given shape into a file with given name in IGES format.
|
||||
*
|
||||
* \param theObject Shape to be stored in the file.
|
||||
* \param theFileName Name of the file to store the given shape in.
|
||||
* \param theVersion Version of IGES format which defines, whether to write
|
||||
* only faces (5.1 IGES format) or shells and solids also (5.3 IGES format).
|
||||
*/
|
||||
void ExportIGES( in GEOM::GEOM_Object theObject,
|
||||
in string theFileName,
|
||||
in string theVersion );
|
||||
|
||||
/*!
|
||||
* \brief Import a shape from the IGES file.
|
||||
*
|
||||
* \param theFileName The file, containing the shape.
|
||||
* \param theIsIgnoreUnits If True, file length units will be ignored (set to 'meter')
|
||||
* and result model will be scaled, if its units are not meters.
|
||||
* If False (default), file length units will be taken into account.
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO ImportIGES( in string theFileName,
|
||||
in boolean theIsIgnoreUnits );
|
||||
|
||||
/*!
|
||||
* \brief Read a value of parameter from a file, containing a shape.
|
||||
* \param theFileName The file, containing the shape.
|
||||
* \param theParameterName Specify the parameter. For example, pass "LEN_UNITS"
|
||||
* to obtain length units, in which the file is written.
|
||||
* \return Value of requested parameter in form of text string.
|
||||
*/
|
||||
string ReadValue( in string theFileName, in string theParameterName);
|
||||
};
|
||||
};
|
||||
|
||||
#endif // __IGESPlugin_IDL__
|
66
idl/STEPPlugin.idl
Normal file
@ -0,0 +1,66 @@
|
||||
// Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
//
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#ifndef __STEPPlugin_IDL__
|
||||
#define __STEPPlugin_IDL__
|
||||
|
||||
#include "GEOM_Gen.idl"
|
||||
|
||||
module GEOM
|
||||
{
|
||||
/*!
|
||||
* \brief Interface for STEPPlugin modeling functions.
|
||||
*/
|
||||
interface ISTEPOperations : GEOM::GEOM_IOperations
|
||||
{
|
||||
/*!
|
||||
* \brief Export the given shape into a file with given name in STEP format.
|
||||
*
|
||||
* \param theObject Shape to be stored in the file.
|
||||
* \param theFileName Name of the file to store the given shape in.
|
||||
*/
|
||||
void ExportSTEP( in GEOM::GEOM_Object theObject,
|
||||
in string theFileName );
|
||||
|
||||
/*!
|
||||
* \brief Import a shape from the STEP file.
|
||||
*
|
||||
* \param theFileName The file, containing the shape.
|
||||
* \param theIsIgnoreUnits If True, file length units will be ignored (set to 'meter')
|
||||
* and result model will be scaled, if its units are not meters.
|
||||
* If False (default), file length units will be taken into account.
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO ImportSTEP( in string theFileName,
|
||||
in boolean theIsIgnoreUnits );
|
||||
|
||||
/*!
|
||||
* \brief Read a value of parameter from a file, containing a shape.
|
||||
* \param theFileName The file, containing the shape.
|
||||
* \param theParameterName Specify the parameter. For example, pass "LEN_UNITS"
|
||||
* to obtain length units, in which the file is written.
|
||||
* \return Value of requested parameter in form of text string.
|
||||
*/
|
||||
string ReadValue( in string theFileName,
|
||||
in string theParameterName );
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
#endif // __STEPPlugin_IDL__
|
59
idl/STLPlugin.idl
Normal file
@ -0,0 +1,59 @@
|
||||
// Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
//
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#ifndef __STLPlugin_IDL__
|
||||
#define __STLPlugin_IDL__
|
||||
|
||||
#include "GEOM_Gen.idl"
|
||||
|
||||
module GEOM
|
||||
{
|
||||
/*!
|
||||
* \brief Interface for STLPlugin modeling functions.
|
||||
*/
|
||||
interface ISTLOperations : GEOM::GEOM_IOperations
|
||||
{
|
||||
/*!
|
||||
* \brief Export the given shape into a file with given name in STL format.
|
||||
*
|
||||
* \param theObject Shape to be stored in the file.
|
||||
* \param theFileName Name of the file to store the given shape in.
|
||||
* \param theIsASCII The format of the exported file (ASCII or Binary).
|
||||
* \param theDeflection Deflection of the given shape.
|
||||
* \param theIsRelative Mode for writing the file. If True (default value), the
|
||||
* deflection is calculated from the relative size of the
|
||||
* shape; if False, the user defined deflection is used.
|
||||
*/
|
||||
void ExportSTL( in GEOM::GEOM_Object theObject,
|
||||
in string theFileName,
|
||||
in boolean theIsASCII,
|
||||
in double theDeflection,
|
||||
in boolean theIsRelative );
|
||||
|
||||
/*!
|
||||
* \brief Import a shape from the STL file.
|
||||
*
|
||||
* \param theFileName The file, containing the shape.
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
GEOM::ListOfGO ImportSTL( in string theFileName );
|
||||
};
|
||||
};
|
||||
|
||||
#endif // __STLPlugin_IDL__
|
45
idl/VTKPlugin.idl
Normal file
@ -0,0 +1,45 @@
|
||||
// Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
//
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#ifndef __VTKPlugin_IDL__
|
||||
#define __VTKPlugin_IDL__
|
||||
|
||||
#include "GEOM_Gen.idl"
|
||||
|
||||
module GEOM
|
||||
{
|
||||
/*!
|
||||
* \brief Interface for VTKPlugin modeling functions.
|
||||
*/
|
||||
interface IVTKOperations : GEOM::GEOM_IOperations
|
||||
{
|
||||
/*!
|
||||
* \brief Export the given shape into a file with given name in VTK format.
|
||||
*
|
||||
* \param theObject Shape to be stored in the file.
|
||||
* \param theFileName Name of the file to store the given shape in.
|
||||
* \param theDeflection Deflection of the given shape.
|
||||
*/
|
||||
void ExportVTK( in GEOM::GEOM_Object theObject,
|
||||
in string theFileName,
|
||||
in double theDeflection );
|
||||
};
|
||||
};
|
||||
|
||||
#endif // __VTKPlugin_IDL__
|
64
idl/XAOPlugin.idl
Normal file
@ -0,0 +1,64 @@
|
||||
// Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Lesser General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2.1 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Lesser General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Lesser General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
//
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#ifndef __XAOPlugin_IDL__
|
||||
#define __XAOPlugin_IDL__
|
||||
|
||||
#include "GEOM_Gen.idl"
|
||||
|
||||
module GEOM
|
||||
{
|
||||
/*!
|
||||
* \brief Interface for XAOPlugin modeling functions.
|
||||
*/
|
||||
interface IXAOOperations : GEOM::GEOM_IOperations
|
||||
{
|
||||
/*!
|
||||
* Export a shape to XAO format
|
||||
* \param shape The shape to export
|
||||
* \param groups The list of groups to export
|
||||
* \param fields The list of fields to export
|
||||
* \param author The author of the export
|
||||
* \param fileName The name of the file to export
|
||||
* \return boolean indicating if export was successful.
|
||||
*/
|
||||
boolean ExportXAO( in GEOM::GEOM_Object shape,
|
||||
in GEOM::ListOfGO groups,
|
||||
in GEOM::ListOfFields fields,
|
||||
in string author,
|
||||
in string fileName );
|
||||
|
||||
/*!
|
||||
* Import a shape from XAO format
|
||||
* \param fileName The name of the file to import
|
||||
* \param shape The imported shape
|
||||
* \param subShapes The list of imported subShapes
|
||||
* \param groups The list of imported groups
|
||||
* \param fields The list of imported fields
|
||||
* \return boolean indicating if import was successful.
|
||||
*/
|
||||
boolean ImportXAO( in string fileName,
|
||||
out GEOM::GEOM_Object shape,
|
||||
out GEOM::ListOfGO subShapes,
|
||||
out GEOM::ListOfGO groups,
|
||||
out GEOM::ListOfFields fields );
|
||||
};
|
||||
};
|
||||
|
||||
#endif // __XAOPlugin_IDL__
|
@ -28,7 +28,7 @@
|
||||
|
||||
<geom-plugins>
|
||||
|
||||
<geom-plugin name="AdvancedGUI"
|
||||
<geom-plugin name="AdvancedGEOM"
|
||||
server-lib="AdvancedEngine"
|
||||
gui-lib="AdvancedGUI">
|
||||
<actions>
|
45
resources/BREPPlugin.xml
Normal file
@ -0,0 +1,45 @@
|
||||
<?xml version='1.0' encoding='us-ascii'?>
|
||||
<!DOCTYPE meshers PUBLIC "" "desktop.dtd">
|
||||
<!--
|
||||
Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
|
||||
-->
|
||||
|
||||
<!-- GUI customization for GEOM component -->
|
||||
|
||||
<geom-plugins>
|
||||
|
||||
<geom-plugin name="BREPPlugin"
|
||||
server-lib="BREPPluginEngine"
|
||||
gui-lib="BREPPluginGUI">
|
||||
<actions>
|
||||
<action label="Import_BREP"
|
||||
menu="FILE/IMPORT:10/IMPORTBREP"
|
||||
status-bar="IMPORTBREP"
|
||||
accel="Ctrl+I">
|
||||
</action>
|
||||
<action label="Export_BREP"
|
||||
menu="FILE/EXPORT:10/EXPORTBREP"
|
||||
status-bar="EXPORTBREP"
|
||||
accel="Ctrl+E">
|
||||
</action>
|
||||
</actions>
|
||||
</geom-plugin>
|
||||
|
||||
</geom-plugins>
|
@ -23,12 +23,17 @@
|
||||
|
||||
# These files are data, module or lib files
|
||||
SET( _res_files
|
||||
GEOMActions.xml
|
||||
AdvancedGEOM.xml
|
||||
STLPlugin.xml
|
||||
BREPPlugin.xml
|
||||
STEPPlugin.xml
|
||||
IGESPlugin.xml
|
||||
XAOPlugin.xml
|
||||
VTKPlugin.xml
|
||||
GEOM_en.xml
|
||||
GEOM_fr.xml
|
||||
GEOM.config
|
||||
GEOMDS_Resources
|
||||
ImportExport
|
||||
ShHealing
|
||||
3dsketch.png
|
||||
isoline.png
|
||||
|
43
resources/IGESPlugin.xml
Normal file
@ -0,0 +1,43 @@
|
||||
<?xml version='1.0' encoding='us-ascii'?>
|
||||
<!DOCTYPE meshers PUBLIC "" "desktop.dtd">
|
||||
<!--
|
||||
Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
|
||||
-->
|
||||
|
||||
<!-- GUI customization for GEOM component -->
|
||||
|
||||
<geom-plugins>
|
||||
|
||||
<geom-plugin name="IGESPlugin"
|
||||
server-lib="IGESPluginEngine"
|
||||
gui-lib="IGESPluginGUI">
|
||||
<actions>
|
||||
<action label="Import_IGES"
|
||||
menu="FILE/IMPORT:10/IMPORTIGES"
|
||||
status-bar="IMPORTIGES">
|
||||
</action>
|
||||
<action label="Export_IGES"
|
||||
menu="FILE/EXPORT:10/EXPORTIGES"
|
||||
status-bar="EXPORTIGES">
|
||||
</action>
|
||||
</actions>
|
||||
</geom-plugin>
|
||||
|
||||
</geom-plugins>
|
@ -1,30 +0,0 @@
|
||||
Import: BREP|IGES|STEP|STL
|
||||
Export: BREP|IGES|IGES_5_3|STEP|STL_Bin|STL_ASCII|VTK
|
||||
|
||||
BREP.Import: BREPImport
|
||||
BREP.Export: BREPExport
|
||||
BREP.Pattern: BREP Files ( *.brep )
|
||||
|
||||
IGES.Import: IGESImport
|
||||
IGES.Export: IGESExport
|
||||
IGES.Pattern: IGES Files ( *.iges *.igs )
|
||||
IGES.ExportPattern: IGES 5.1 Files ( *.iges *.igs )
|
||||
|
||||
IGES_5_3.Export: IGESExport
|
||||
IGES_5_3.Pattern: IGES 5.3 Files ( *.iges *.igs )
|
||||
|
||||
STEP.Import: STEPImport
|
||||
STEP.Export: STEPExport
|
||||
STEP.Pattern: STEP Files ( *.step *.stp )
|
||||
|
||||
STL.Import: STLImport
|
||||
STL.Pattern: STL Files ( *.stl )
|
||||
|
||||
STL_Bin.Export: STLExport
|
||||
STL_Bin.Pattern: STL Binary Files ( *.stl )
|
||||
|
||||
STL_ASCII.Export: STLExport
|
||||
STL_ASCII.Pattern: STL ASCII Files ( *.stl )
|
||||
|
||||
VTK.Export: VTKExport
|
||||
VTK.Pattern: VTK Files ( *.vtk )
|
43
resources/STEPPlugin.xml
Normal file
@ -0,0 +1,43 @@
|
||||
<?xml version='1.0' encoding='us-ascii'?>
|
||||
<!DOCTYPE meshers PUBLIC "" "desktop.dtd">
|
||||
<!--
|
||||
Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
|
||||
-->
|
||||
|
||||
<!-- GUI customization for GEOM component -->
|
||||
|
||||
<geom-plugins>
|
||||
|
||||
<geom-plugin name="STEPPlugin"
|
||||
server-lib="STEPPluginEngine"
|
||||
gui-lib="STEPPluginGUI">
|
||||
<actions>
|
||||
<action label="Import_STEP"
|
||||
menu="FILE/IMPORT:10/IMPORTSTEP"
|
||||
status-bar="IMPORTSTEP">
|
||||
</action>
|
||||
<action label="Export_STEP"
|
||||
menu="FILE/EXPORT:10/EXPORTSTEP"
|
||||
status-bar="EXPORTSTEP">
|
||||
</action>
|
||||
</actions>
|
||||
</geom-plugin>
|
||||
|
||||
</geom-plugins>
|
43
resources/STLPlugin.xml
Normal file
@ -0,0 +1,43 @@
|
||||
<?xml version='1.0' encoding='us-ascii'?>
|
||||
<!DOCTYPE meshers PUBLIC "" "desktop.dtd">
|
||||
<!--
|
||||
Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
|
||||
-->
|
||||
|
||||
<!-- GUI customization for GEOM component -->
|
||||
|
||||
<geom-plugins>
|
||||
|
||||
<geom-plugin name="STLPlugin"
|
||||
server-lib="STLPluginEngine"
|
||||
gui-lib="STLPluginGUI">
|
||||
<actions>
|
||||
<action label="Import_STL"
|
||||
menu="FILE/IMPORT:10/IMPORTSTL"
|
||||
status-bar="IMPORTSTL">
|
||||
</action>
|
||||
<action label="Export_STL"
|
||||
menu="FILE/EXPORT:10/EXPORTSTL"
|
||||
status-bar="EXPORTSTL">
|
||||
</action>
|
||||
</actions>
|
||||
</geom-plugin>
|
||||
|
||||
</geom-plugins>
|
39
resources/VTKPlugin.xml
Normal file
@ -0,0 +1,39 @@
|
||||
<?xml version='1.0' encoding='us-ascii'?>
|
||||
<!DOCTYPE meshers PUBLIC "" "desktop.dtd">
|
||||
<!--
|
||||
Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
|
||||
-->
|
||||
|
||||
<!-- GUI customization for GEOM component -->
|
||||
|
||||
<geom-plugins>
|
||||
|
||||
<geom-plugin name="VTKPlugin"
|
||||
server-lib="VTKPluginEngine"
|
||||
gui-lib="VTKPluginGUI">
|
||||
<actions>
|
||||
<action label="Export_VTK"
|
||||
menu="FILE/EXPORT:10/EXPORTVTK"
|
||||
status-bar="EXPORTVTK">
|
||||
</action>
|
||||
</actions>
|
||||
</geom-plugin>
|
||||
|
||||
</geom-plugins>
|
43
resources/XAOPlugin.xml
Normal file
@ -0,0 +1,43 @@
|
||||
<?xml version='1.0' encoding='us-ascii'?>
|
||||
<!DOCTYPE meshers PUBLIC "" "desktop.dtd">
|
||||
<!--
|
||||
Copyright (C) 2014 CEA/DEN, EDF R&D, OPEN CASCADE
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2.1 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
|
||||
-->
|
||||
|
||||
<!-- GUI customization for GEOM component -->
|
||||
|
||||
<geom-plugins>
|
||||
|
||||
<geom-plugin name="XAOPlugin"
|
||||
server-lib="XAOPluginEngine"
|
||||
gui-lib="XAOPluginGUI">
|
||||
<actions>
|
||||
<action label="Import_XAO"
|
||||
menu="FILE/IMPORT:10/IMPORTXAO"
|
||||
status-bar="IMPORTXAO">
|
||||
</action>
|
||||
<action label="Export_XAO"
|
||||
menu="FILE/EXPORT:10/EXPORTXAO"
|
||||
status-bar="EXPORTXAO">
|
||||
</action>
|
||||
</actions>
|
||||
</geom-plugin>
|
||||
|
||||
</geom-plugins>
|
@ -20,25 +20,14 @@
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#include "GEOM_AdvancedEngine.hxx"
|
||||
|
||||
#include "AdvancedEngine_OperationsCreator.hh"
|
||||
|
||||
//=============================================================================
|
||||
/*!
|
||||
*
|
||||
*/
|
||||
//=============================================================================
|
||||
#include "AdvancedEngine.hxx"
|
||||
#include "AdvancedEngine_OperationsCreator.hxx"
|
||||
|
||||
extern "C"
|
||||
{
|
||||
ADVANCEDENGINE_EXPORT
|
||||
ADVANCEDENGINE_EXPORT
|
||||
GEOM_GenericOperationsCreator* GetOperationsCreator()
|
||||
{
|
||||
//MESSAGE("GetOperationsCreator");
|
||||
|
||||
AdvancedEngine_OperationsCreator* aCreator = new AdvancedEngine_OperationsCreator();
|
||||
|
||||
return aCreator;
|
||||
return new AdvancedEngine_OperationsCreator();
|
||||
}
|
||||
}
|
||||
|
@ -22,12 +22,11 @@
|
||||
|
||||
#include <Standard_Stream.hxx>
|
||||
|
||||
#include "AdvancedEngine_DividedDiskDriver.hxx"
|
||||
#include "AdvancedEngine_IDividedDisk.hxx"
|
||||
#include "AdvancedEngine_Types.hxx"
|
||||
|
||||
#include <GEOMImpl_DividedDiskDriver.hxx>
|
||||
#include <GEOMImpl_IDividedDisk.hxx>
|
||||
#include <GEOMImpl_Types.hxx>
|
||||
#include <GEOM_Function.hxx>
|
||||
#include "GEOM_Function.hxx"
|
||||
|
||||
// OCCT includes
|
||||
#include <gp_Pnt.hxx>
|
||||
@ -56,28 +55,28 @@
|
||||
#include <TopExp.hxx>
|
||||
|
||||
#include <utilities.h>
|
||||
//@@ include required header files here @@//
|
||||
|
||||
enum
|
||||
{
|
||||
SQUARE,
|
||||
HEXAGON
|
||||
};
|
||||
|
||||
//=======================================================================
|
||||
//function : GetID
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
const Standard_GUID& GEOMImpl_DividedDiskDriver::GetID()
|
||||
const Standard_GUID& AdvancedEngine_DividedDiskDriver::GetID()
|
||||
{
|
||||
static Standard_GUID aGUID("0b01da9a-c5da-11e1-8d80-78e7d1879630");
|
||||
return aGUID;
|
||||
}
|
||||
|
||||
//=======================================================================
|
||||
//function : GEOMImpl_DividedDiskDriver
|
||||
//function : AdvancedEngine_DividedDiskDriver
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
GEOMImpl_DividedDiskDriver::GEOMImpl_DividedDiskDriver()
|
||||
AdvancedEngine_DividedDiskDriver::AdvancedEngine_DividedDiskDriver()
|
||||
{
|
||||
}
|
||||
|
||||
@ -85,12 +84,12 @@ GEOMImpl_DividedDiskDriver::GEOMImpl_DividedDiskDriver()
|
||||
//function : Execute
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
Standard_Integer GEOMImpl_DividedDiskDriver::Execute(TFunction_Logbook& log) const
|
||||
Standard_Integer AdvancedEngine_DividedDiskDriver::Execute(TFunction_Logbook& log) const
|
||||
{
|
||||
if (Label().IsNull()) return 0;
|
||||
Handle(GEOM_Function) aFunction = GEOM_Function::GetFunction(Label());
|
||||
|
||||
GEOMImpl_IDividedDisk aData (aFunction);
|
||||
AdvancedEngine_IDividedDisk aData (aFunction);
|
||||
Standard_Integer aType = aFunction->GetType();
|
||||
|
||||
TopoDS_Shape aShape;
|
||||
@ -150,7 +149,7 @@ Standard_Integer GEOMImpl_DividedDiskDriver::Execute(TFunction_Logbook& log) con
|
||||
//function : MakeDiskHexagon
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
TopoDS_Shell GEOMImpl_DividedDiskDriver::MakeDiskHexagon(double R, double Ratio) const
|
||||
TopoDS_Shell AdvancedEngine_DividedDiskDriver::MakeDiskHexagon(double R, double Ratio) const
|
||||
{
|
||||
// Geometry
|
||||
gp_Dir ZDir(0,0,1);
|
||||
@ -312,7 +311,7 @@ TopoDS_Shell GEOMImpl_DividedDiskDriver::MakeDiskHexagon(double R, double Ratio)
|
||||
//function : MakeDiskSquare
|
||||
//purpose :
|
||||
//=======================================================================
|
||||
TopoDS_Shape GEOMImpl_DividedDiskDriver::MakeDiskSquare(double R, double Ratio) const
|
||||
TopoDS_Shape AdvancedEngine_DividedDiskDriver::MakeDiskSquare(double R, double Ratio) const
|
||||
{
|
||||
// Geometry
|
||||
gp_Dir ZDir(0,0,1);
|
||||
@ -430,7 +429,7 @@ TopoDS_Shape GEOMImpl_DividedDiskDriver::MakeDiskSquare(double R, double Ratio)
|
||||
//purpose : Perform shape transformation accordingly with specified
|
||||
// orientation
|
||||
//=======================================================================
|
||||
TopoDS_Shape GEOMImpl_DividedDiskDriver::TransformShape(TopoDS_Shape theShape, int theOrientation) const
|
||||
TopoDS_Shape AdvancedEngine_DividedDiskDriver::TransformShape(TopoDS_Shape theShape, int theOrientation) const
|
||||
{
|
||||
gp_Dir N, Vx;
|
||||
gp_Pnt theOrigin = gp::Origin();
|
||||
@ -467,7 +466,7 @@ TopoDS_Shape GEOMImpl_DividedDiskDriver::TransformShape(TopoDS_Shape theShape, i
|
||||
//purpose : Perform shape transformation accordingly with specified
|
||||
// pnt and direction
|
||||
//=======================================================================
|
||||
TopoDS_Shape GEOMImpl_DividedDiskDriver::TransformShape(TopoDS_Shape theShape, gp_Pnt P, gp_Dir V) const
|
||||
TopoDS_Shape AdvancedEngine_DividedDiskDriver::TransformShape(TopoDS_Shape theShape, gp_Pnt P, gp_Dir V) const
|
||||
{
|
||||
gp_Ax3 aWPlane( P, V );
|
||||
return WPlaneTransform(theShape, aWPlane);
|
||||
@ -478,7 +477,7 @@ TopoDS_Shape GEOMImpl_DividedDiskDriver::TransformShape(TopoDS_Shape theShape, g
|
||||
//purpose : Perform shape transformation accordingly with the given
|
||||
// Working Plane
|
||||
//=======================================================================
|
||||
TopoDS_Shape GEOMImpl_DividedDiskDriver::WPlaneTransform(TopoDS_Shape theShape, gp_Ax3 theWPlane) const
|
||||
TopoDS_Shape AdvancedEngine_DividedDiskDriver::WPlaneTransform(TopoDS_Shape theShape, gp_Ax3 theWPlane) const
|
||||
{
|
||||
gp_Trsf aTrans;
|
||||
aTrans.SetTransformation(theWPlane);
|
||||
@ -493,14 +492,14 @@ TopoDS_Shape GEOMImpl_DividedDiskDriver::WPlaneTransform(TopoDS_Shape theShape,
|
||||
*/
|
||||
//================================================================================
|
||||
|
||||
bool GEOMImpl_DividedDiskDriver::
|
||||
bool AdvancedEngine_DividedDiskDriver::
|
||||
GetCreationInformation(std::string& theOperationName,
|
||||
std::vector<GEOM_Param>& theParams)
|
||||
{
|
||||
if (Label().IsNull()) return 0;
|
||||
Handle(GEOM_Function) function = GEOM_Function::GetFunction(Label());
|
||||
|
||||
GEOMImpl_IDividedDisk aCI( function );
|
||||
AdvancedEngine_IDividedDisk aCI( function );
|
||||
Standard_Integer aType = function->GetType();
|
||||
|
||||
theOperationName = "DIVIDEDDISK";
|
||||
@ -525,5 +524,5 @@ GetCreationInformation(std::string& theOperationName,
|
||||
return true;
|
||||
}
|
||||
|
||||
IMPLEMENT_STANDARD_HANDLE (GEOMImpl_DividedDiskDriver,GEOM_BaseDriver);
|
||||
IMPLEMENT_STANDARD_RTTIEXT (GEOMImpl_DividedDiskDriver,GEOM_BaseDriver);
|
||||
IMPLEMENT_STANDARD_HANDLE (AdvancedEngine_DividedDiskDriver,GEOM_BaseDriver);
|
||||
IMPLEMENT_STANDARD_RTTIEXT (AdvancedEngine_DividedDiskDriver,GEOM_BaseDriver);
|
@ -20,40 +20,38 @@
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#ifndef _GEOMImpl_DividedDiskDriver_HXX
|
||||
#define _GEOMImpl_DividedDiskDriver_HXX
|
||||
#ifndef _AdvancedEngine_DividedDiskDriver_HXX
|
||||
#define _AdvancedEngine_DividedDiskDriver_HXX
|
||||
|
||||
#include "GEOM_BaseDriver.hxx"
|
||||
|
||||
#include <TFunction_Driver.hxx>
|
||||
|
||||
class Handle_Standard_Type;
|
||||
class GEOMImpl_DividedDiskDriver;
|
||||
class TopoDS_Shape;
|
||||
class TopoDS_Shell;
|
||||
class gp_Pnt;
|
||||
class gp_Dir;
|
||||
class gp_Ax3;
|
||||
|
||||
#include "GEOM_BaseDriver.hxx"
|
||||
DEFINE_STANDARD_HANDLE( AdvancedEngine_DividedDiskDriver, GEOM_BaseDriver );
|
||||
|
||||
DEFINE_STANDARD_HANDLE( GEOMImpl_DividedDiskDriver, GEOM_BaseDriver );
|
||||
|
||||
class GEOMImpl_DividedDiskDriver : public GEOM_BaseDriver {
|
||||
class AdvancedEngine_DividedDiskDriver : public GEOM_BaseDriver
|
||||
{
|
||||
public:
|
||||
// Methods PUBLIC
|
||||
//
|
||||
Standard_EXPORT GEOMImpl_DividedDiskDriver();
|
||||
Standard_EXPORT virtual Standard_Integer Execute(TFunction_Logbook& log) const;
|
||||
Standard_EXPORT virtual void Validate(TFunction_Logbook&) const {}
|
||||
Standard_EXPORT Standard_Boolean MustExecute(const TFunction_Logbook&) const
|
||||
AdvancedEngine_DividedDiskDriver();
|
||||
virtual Standard_Integer Execute(TFunction_Logbook& log) const;
|
||||
virtual void Validate(TFunction_Logbook&) const {}
|
||||
Standard_Boolean MustExecute(const TFunction_Logbook&) const
|
||||
{
|
||||
return Standard_True;
|
||||
}
|
||||
Standard_EXPORT static const Standard_GUID& GetID();
|
||||
Standard_EXPORT ~GEOMImpl_DividedDiskDriver() {};
|
||||
static const Standard_GUID& GetID();
|
||||
~AdvancedEngine_DividedDiskDriver() {};
|
||||
|
||||
Standard_EXPORT virtual
|
||||
bool GetCreationInformation(std::string& theOperationName,
|
||||
std::vector<GEOM_Param>& params);
|
||||
virtual bool GetCreationInformation(std::string& theOperationName,
|
||||
std::vector<GEOM_Param>& params);
|
||||
private:
|
||||
TopoDS_Shape TransformShape (TopoDS_Shape aShape, int theOrientation) const;
|
||||
TopoDS_Shape TransformShape (TopoDS_Shape aShape, gp_Pnt P, gp_Dir V) const;
|
||||
@ -61,7 +59,7 @@ private:
|
||||
TopoDS_Shell MakeDiskHexagon (double R, double Ratio) const;
|
||||
TopoDS_Shape MakeDiskSquare (double R, double Ratio) const;
|
||||
|
||||
DEFINE_STANDARD_RTTI( GEOMImpl_DividedDiskDriver )
|
||||
DEFINE_STANDARD_RTTI( AdvancedEngine_DividedDiskDriver )
|
||||
};
|
||||
|
||||
#endif // _GEOMImpl_DividedDiskDriver_HXX
|
||||
#endif // _AdvancedEngine_DividedDiskDriver_HXX
|
@ -20,8 +20,8 @@
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#ifndef _GEOMImpl_IDividedDisk_HXX_
|
||||
#define _GEOMImpl_IDividedDisk_HXX_
|
||||
#ifndef _AdvancedEngine_IDividedDisk_HXX_
|
||||
#define _AdvancedEngine_IDividedDisk_HXX_
|
||||
|
||||
#include "GEOM_Function.hxx"
|
||||
|
||||
@ -34,10 +34,10 @@
|
||||
|
||||
#define DIVIDEDDISK_ARG_TYPE 6
|
||||
|
||||
class GEOMImpl_IDividedDisk
|
||||
class AdvancedEngine_IDividedDisk
|
||||
{
|
||||
public:
|
||||
GEOMImpl_IDividedDisk(Handle(GEOM_Function) theFunction): _func(theFunction) {}
|
||||
AdvancedEngine_IDividedDisk(Handle(GEOM_Function) theFunction): _func(theFunction) {}
|
||||
|
||||
void SetR(double theR) { _func->SetReal(DIVIDEDDISK_ARG_R, theR); }
|
||||
double GetR() { return _func->GetReal(DIVIDEDDISK_ARG_R); }
|
||||
@ -61,4 +61,4 @@ private:
|
||||
Handle(GEOM_Function) _func;
|
||||
};
|
||||
|
||||
#endif // _GEOMImpl_IDividedDisk_HXX_
|
||||
#endif // _AdvancedEngine_IDividedDisk_HXX_
|
@ -16,10 +16,16 @@
|
||||
//
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
// File : GEOMImpl_IAdvancedOperations.cxx
|
||||
// File : AdvancedEngine_IOperations.cxx
|
||||
// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
|
||||
|
||||
#include "GEOMImpl_IAdvancedOperations.hxx"
|
||||
#include "AdvancedEngine_IOperations.hxx"
|
||||
#include "AdvancedEngine_PipeTShapeDriver.hxx"
|
||||
#include "AdvancedEngine_IPipeTShape.hxx"
|
||||
#include "AdvancedEngine_DividedDiskDriver.hxx"
|
||||
#include "AdvancedEngine_IDividedDisk.hxx"
|
||||
#include "AdvancedEngine_SmoothingSurfaceDriver.hxx"
|
||||
#include "AdvancedEngine_ISmoothingSurface.hxx"
|
||||
|
||||
#include <Basics_OCCTVersion.hxx>
|
||||
|
||||
@ -45,15 +51,7 @@
|
||||
#include "GEOMImpl_ILocalOperations.hxx"
|
||||
#include "GEOMImpl_IHealingOperations.hxx"
|
||||
#include "GEOMImpl_IGroupOperations.hxx"
|
||||
|
||||
#include "GEOMImpl_GlueDriver.hxx"
|
||||
#include "GEOMImpl_PipeTShapeDriver.hxx"
|
||||
#include "GEOMImpl_IPipeTShape.hxx"
|
||||
#include "GEOMImpl_DividedDiskDriver.hxx"
|
||||
#include "GEOMImpl_IDividedDisk.hxx"
|
||||
#include <GEOMImpl_SmoothingSurfaceDriver.hxx>
|
||||
#include <GEOMImpl_ISmoothingSurface.hxx>
|
||||
/*@@ insert new functions before this line @@ do not remove this line @@ do not remove this line @@*/
|
||||
|
||||
#include <TDF_Tool.hxx>
|
||||
#include <TFunction_DriverTable.hxx>
|
||||
@ -116,10 +114,10 @@
|
||||
* Constructor
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOMImpl_IAdvancedOperations::GEOMImpl_IAdvancedOperations(GEOM_Engine* theEngine, int theDocID) :
|
||||
AdvancedEngine_IOperations::AdvancedEngine_IOperations(GEOM_Engine* theEngine, int theDocID) :
|
||||
GEOM_IOperations(theEngine, theDocID)
|
||||
{
|
||||
MESSAGE("GEOMImpl_IAdvancedOperations::GEOMImpl_IAdvancedOperations");
|
||||
MESSAGE("AdvancedEngine_IOperations::AdvancedEngine_IOperations");
|
||||
myBasicOperations = new GEOMImpl_IBasicOperations(GetEngine(), GetDocID());
|
||||
myBooleanOperations = new GEOMImpl_IBooleanOperations(GetEngine(), GetDocID());
|
||||
myShapesOperations = new GEOMImpl_IShapesOperations(GetEngine(), GetDocID());
|
||||
@ -136,9 +134,9 @@ GEOMImpl_IAdvancedOperations::GEOMImpl_IAdvancedOperations(GEOM_Engine* theEngin
|
||||
* Destructor
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOMImpl_IAdvancedOperations::~GEOMImpl_IAdvancedOperations()
|
||||
AdvancedEngine_IOperations::~AdvancedEngine_IOperations()
|
||||
{
|
||||
MESSAGE("GEOMImpl_IAdvancedOperations::~GEOMImpl_IAdvancedOperations");
|
||||
MESSAGE("AdvancedEngine_IOperations::~AdvancedEngine_IOperations");
|
||||
delete myBasicOperations;
|
||||
delete myBooleanOperations;
|
||||
delete myShapesOperations;
|
||||
@ -155,10 +153,10 @@ GEOMImpl_IAdvancedOperations::~GEOMImpl_IAdvancedOperations()
|
||||
* SetPosition
|
||||
*/
|
||||
//=============================================================================
|
||||
gp_Trsf GEOMImpl_IAdvancedOperations::GetPositionTrsf(double theL1, double theL2,
|
||||
Handle(GEOM_Object) theP1,
|
||||
Handle(GEOM_Object) theP2,
|
||||
Handle(GEOM_Object) theP3)
|
||||
gp_Trsf AdvancedEngine_IOperations::GetPositionTrsf(double theL1, double theL2,
|
||||
Handle(GEOM_Object) theP1,
|
||||
Handle(GEOM_Object) theP2,
|
||||
Handle(GEOM_Object) theP3)
|
||||
{
|
||||
// Old Local Coordinates System oldLCS
|
||||
gp_Pnt P0(0, 0, 0);
|
||||
@ -196,11 +194,11 @@ gp_Trsf GEOMImpl_IAdvancedOperations::GetPositionTrsf(double theL1, double theL2
|
||||
*
|
||||
*/
|
||||
//=============================================================================
|
||||
bool GEOMImpl_IAdvancedOperations::CheckCompatiblePosition(double& theL1, double& theL2,
|
||||
Handle(GEOM_Object) theP1,
|
||||
Handle(GEOM_Object) theP2,
|
||||
Handle(GEOM_Object) theP3,
|
||||
double theTolerance)
|
||||
bool AdvancedEngine_IOperations::CheckCompatiblePosition(double& theL1, double& theL2,
|
||||
Handle(GEOM_Object) theP1,
|
||||
Handle(GEOM_Object) theP2,
|
||||
Handle(GEOM_Object) theP3,
|
||||
double theTolerance)
|
||||
{
|
||||
SetErrorCode(KO);
|
||||
gp_Pnt P1 = BRep_Tool::Pnt(TopoDS::Vertex(theP1->GetValue()));
|
||||
@ -267,12 +265,12 @@ bool GEOMImpl_IAdvancedOperations::CheckCompatiblePosition(double& theL1, double
|
||||
* Generate the propagation groups of a Pipe T-Shape used for hexa mesh
|
||||
*/
|
||||
//=============================================================================
|
||||
bool GEOMImpl_IAdvancedOperations::MakeGroups(Handle(GEOM_Object) theShape, int shapeType,
|
||||
double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theH, double theW, double theRF,
|
||||
Handle(TColStd_HSequenceOfTransient) theSeq,
|
||||
gp_Trsf aTrsf)
|
||||
bool AdvancedEngine_IOperations::MakeGroups(Handle(GEOM_Object) theShape, int shapeType,
|
||||
double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theH, double theW, double theRF,
|
||||
Handle(TColStd_HSequenceOfTransient) theSeq,
|
||||
gp_Trsf aTrsf)
|
||||
{
|
||||
SetErrorCode(KO);
|
||||
|
||||
@ -807,7 +805,7 @@ bool GEOMImpl_IAdvancedOperations::MakeGroups(Handle(GEOM_Object) theShape, int
|
||||
* Return faces that are laying on surface.
|
||||
*/
|
||||
//=============================================================================
|
||||
bool GEOMImpl_IAdvancedOperations::GetFacesOnSurf
|
||||
bool AdvancedEngine_IOperations::GetFacesOnSurf
|
||||
(const TopoDS_Shape &theShape,
|
||||
const Handle_Geom_Surface& theSurface,
|
||||
const Standard_Real theTolerance,
|
||||
@ -863,7 +861,7 @@ bool GEOMImpl_IAdvancedOperations::GetFacesOnSurf
|
||||
* Creates and returns conical face.
|
||||
*/
|
||||
//=============================================================================
|
||||
TopoDS_Shape GEOMImpl_IAdvancedOperations::MakeConicalFace
|
||||
TopoDS_Shape AdvancedEngine_IOperations::MakeConicalFace
|
||||
(const gp_Ax2 &theAxis,
|
||||
const double theRadius,
|
||||
const double theRadiusThin,
|
||||
@ -902,7 +900,7 @@ TopoDS_Shape GEOMImpl_IAdvancedOperations::MakeConicalFace
|
||||
* Generate the internal group of a Pipe T-Shape
|
||||
*/
|
||||
//=============================================================================
|
||||
bool GEOMImpl_IAdvancedOperations::MakeInternalGroup
|
||||
bool AdvancedEngine_IOperations::MakeInternalGroup
|
||||
(const Handle(GEOM_Object) &theShape,
|
||||
const double theR1, const double theLen1,
|
||||
const double theR2, const double theLen2,
|
||||
@ -1074,7 +1072,7 @@ bool GEOMImpl_IAdvancedOperations::MakeInternalGroup
|
||||
Handle(GEOM_Object) aCone =
|
||||
GetEngine()->AddObject(GetDocID(), GEOM_TSHAPE);
|
||||
Handle(GEOM_Function) aFunction =
|
||||
aCone->AddFunction(GEOMImpl_PipeTShapeDriver::GetID(), TSHAPE_BASIC);
|
||||
aCone->AddFunction(AdvancedEngine_PipeTShapeDriver::GetID(), TSHAPE_BASIC);
|
||||
TopTools_ListIteratorOfListOfShape aFIter(aConicalFaces);
|
||||
Handle(GEOM_Object) aConeFromShape;
|
||||
|
||||
@ -1133,11 +1131,11 @@ bool GEOMImpl_IAdvancedOperations::MakeInternalGroup
|
||||
return true;
|
||||
}
|
||||
|
||||
bool GEOMImpl_IAdvancedOperations::MakePipeTShapePartition(Handle(GEOM_Object) theShape,
|
||||
double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theH, double theW,
|
||||
double theRF, bool isNormal)
|
||||
bool AdvancedEngine_IOperations::MakePipeTShapePartition(Handle(GEOM_Object) theShape,
|
||||
double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theH, double theW,
|
||||
double theRF, bool isNormal)
|
||||
{
|
||||
SetErrorCode(KO);
|
||||
|
||||
@ -1151,9 +1149,7 @@ bool GEOMImpl_IAdvancedOperations::MakePipeTShapePartition(Handle(GEOM_Object) t
|
||||
Handle(GEOM_Object) Te3;
|
||||
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
Handle(GEOM_Object) Vector_Z = myBasicOperations->MakeVectorDXDYDZ(0, 0, 1);
|
||||
Vector_Z->GetLastFunction()->SetDescription("");
|
||||
|
||||
@ -1617,9 +1613,9 @@ bool GEOMImpl_IAdvancedOperations::MakePipeTShapePartition(Handle(GEOM_Object) t
|
||||
}
|
||||
|
||||
// Mirror and glue faces
|
||||
bool GEOMImpl_IAdvancedOperations::MakePipeTShapeMirrorAndGlue(Handle(GEOM_Object) theShape,
|
||||
double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2)
|
||||
bool AdvancedEngine_IOperations::MakePipeTShapeMirrorAndGlue(Handle(GEOM_Object) theShape,
|
||||
double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2)
|
||||
{
|
||||
SetErrorCode(KO);
|
||||
|
||||
@ -1726,7 +1722,7 @@ bool GEOMImpl_IAdvancedOperations::MakePipeTShapeMirrorAndGlue(Handle(GEOM_Objec
|
||||
//purpose : Static method. Add thiskness reduction elements at the three
|
||||
// open ends of the T-Shape.
|
||||
//=======================================================================
|
||||
TopoDS_Shape GEOMImpl_IAdvancedOperations::MakePipeTShapeThicknessReduction
|
||||
TopoDS_Shape AdvancedEngine_IOperations::MakePipeTShapeThicknessReduction
|
||||
(TopoDS_Shape theShape,
|
||||
double r1, double w1, double l1,
|
||||
double r2, double w2, double l2,
|
||||
@ -1757,7 +1753,7 @@ TopoDS_Shape GEOMImpl_IAdvancedOperations::MakePipeTShapeThicknessReduction
|
||||
if (rL > aTol && wL > aTol && ltransL > aTol) {
|
||||
gp_Pnt aPLeft (-l1, 0, 0);
|
||||
gp_Ax2 anAxesLeft (aPLeft, -aVX, aVZ);
|
||||
TopoDS_Shape aReductionLeft = GEOMImpl_IAdvancedOperations::MakeThicknessReduction
|
||||
TopoDS_Shape aReductionLeft = AdvancedEngine_IOperations::MakeThicknessReduction
|
||||
(anAxesLeft, r1, w1, rL, wL, ltransL, lthinL, fuseReductions);
|
||||
|
||||
if (fuseReductions) {
|
||||
@ -1780,7 +1776,7 @@ TopoDS_Shape GEOMImpl_IAdvancedOperations::MakePipeTShapeThicknessReduction
|
||||
if (rR > aTol && wR > aTol && ltransR > aTol) {
|
||||
gp_Pnt aPRight (l1, 0, 0);
|
||||
gp_Ax2 anAxesRight (aPRight, aVX, aVZ);
|
||||
TopoDS_Shape aReductionRight = GEOMImpl_IAdvancedOperations::MakeThicknessReduction
|
||||
TopoDS_Shape aReductionRight = AdvancedEngine_IOperations::MakeThicknessReduction
|
||||
(anAxesRight, r1, w1, rR, wR, ltransR, lthinR, fuseReductions);
|
||||
|
||||
if (fuseReductions) {
|
||||
@ -1803,7 +1799,7 @@ TopoDS_Shape GEOMImpl_IAdvancedOperations::MakePipeTShapeThicknessReduction
|
||||
if (rI > aTol && wI > aTol && ltransI > aTol) {
|
||||
gp_Pnt aPInci (0, 0, l2);
|
||||
gp_Ax2 anAxesInci (aPInci, aVZ, aVX);
|
||||
TopoDS_Shape aReductionInci = GEOMImpl_IAdvancedOperations::MakeThicknessReduction
|
||||
TopoDS_Shape aReductionInci = AdvancedEngine_IOperations::MakeThicknessReduction
|
||||
(anAxesInci, r2, w2, rI, wI, ltransI, lthinI, fuseReductions);
|
||||
|
||||
if (fuseReductions) {
|
||||
@ -1848,11 +1844,11 @@ TopoDS_Shape GEOMImpl_IAdvancedOperations::MakePipeTShapeThicknessReduction
|
||||
//function : MakeThicknessReduction
|
||||
//purpose : Static method. Create one thickness reduction element.
|
||||
//=======================================================================
|
||||
TopoDS_Shape GEOMImpl_IAdvancedOperations::MakeThicknessReduction (gp_Ax2 theAxes,
|
||||
const double R, const double W,
|
||||
const double Rthin, const double Wthin,
|
||||
const double Ltrans, const double Lthin,
|
||||
bool fuse)
|
||||
TopoDS_Shape AdvancedEngine_IOperations::MakeThicknessReduction (gp_Ax2 theAxes,
|
||||
const double R, const double W,
|
||||
const double Rthin, const double Wthin,
|
||||
const double Ltrans, const double Lthin,
|
||||
bool fuse)
|
||||
{
|
||||
double aTol = Precision::Confusion();
|
||||
if (Rthin < aTol || Wthin < aTol || Ltrans < aTol) {
|
||||
@ -1956,26 +1952,26 @@ TopoDS_Shape GEOMImpl_IAdvancedOperations::MakeThicknessReduction (gp_Ax2 theAxe
|
||||
*/
|
||||
//=============================================================================
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
GEOMImpl_IAdvancedOperations::MakePipeTShape(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
double theRR, double theWR, double theLtransR, double theLthinR,
|
||||
double theRI, double theWI, double theLtransI, double theLthinI,
|
||||
bool theHexMesh)
|
||||
AdvancedEngine_IOperations::MakePipeTShape(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
double theRR, double theWR, double theLtransR, double theLthinR,
|
||||
double theRI, double theWI, double theLtransI, double theLthinI,
|
||||
bool theHexMesh)
|
||||
{
|
||||
MESSAGE("GEOMImpl_IAdvancedOperations::MakePipeTShape");
|
||||
MESSAGE("AdvancedEngine_IOperations::MakePipeTShape");
|
||||
SetErrorCode(KO);
|
||||
//Add a new object
|
||||
Handle(GEOM_Object) aShape = GetEngine()->AddObject(GetDocID(), GEOM_TSHAPE);
|
||||
|
||||
//Add a new shape function with parameters
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(GEOMImpl_PipeTShapeDriver::GetID(), TSHAPE_BASIC);
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(AdvancedEngine_PipeTShapeDriver::GetID(), TSHAPE_BASIC);
|
||||
if (aFunction.IsNull()) return NULL;
|
||||
|
||||
//Check if the function is set correctly
|
||||
if (aFunction->GetDriverGUID() != GEOMImpl_PipeTShapeDriver::GetID()) return NULL;
|
||||
if (aFunction->GetDriverGUID() != AdvancedEngine_PipeTShapeDriver::GetID()) return NULL;
|
||||
|
||||
GEOMImpl_IPipeTShape aData (aFunction);
|
||||
AdvancedEngine_IPipeTShape aData (aFunction);
|
||||
|
||||
aData.SetR1(theR1);
|
||||
aData.SetW1(theW1);
|
||||
@ -1991,9 +1987,7 @@ Handle(TColStd_HSequenceOfTransient)
|
||||
|
||||
//Compute the resulting value
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (!GetSolver()->ComputeFunction(aFunction)) {
|
||||
SetErrorCode("TShape driver failed");
|
||||
return NULL;
|
||||
@ -2110,7 +2104,7 @@ Handle(TColStd_HSequenceOfTransient)
|
||||
*/
|
||||
//=============================================================================
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
GEOMImpl_IAdvancedOperations::MakePipeTShapeWithPosition
|
||||
AdvancedEngine_IOperations::MakePipeTShapeWithPosition
|
||||
(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
@ -2128,18 +2122,18 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeWithPosition
|
||||
// TSHAPE CODE
|
||||
/////////////////
|
||||
//Add a new shape function with parameters
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(GEOMImpl_PipeTShapeDriver::GetID(), TSHAPE_BASIC);
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(AdvancedEngine_PipeTShapeDriver::GetID(), TSHAPE_BASIC);
|
||||
if (aFunction.IsNull()) return NULL;
|
||||
|
||||
//Check if the function is set correctly
|
||||
if (aFunction->GetDriverGUID() != GEOMImpl_PipeTShapeDriver::GetID()) return NULL;
|
||||
if (aFunction->GetDriverGUID() != AdvancedEngine_PipeTShapeDriver::GetID()) return NULL;
|
||||
|
||||
// Check new position
|
||||
if (!CheckCompatiblePosition(theL1, theL2, theP1, theP2, theP3, 0.01)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
GEOMImpl_IPipeTShape aData(aFunction);
|
||||
AdvancedEngine_IPipeTShape aData(aFunction);
|
||||
|
||||
aData.SetR1(theR1);
|
||||
aData.SetW1(theW1);
|
||||
@ -2155,9 +2149,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeWithPosition
|
||||
|
||||
//Compute the resulting value
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (!GetSolver()->ComputeFunction(aFunction)) {
|
||||
SetErrorCode("TShape driver failed");
|
||||
return NULL;
|
||||
@ -2282,7 +2274,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeWithPosition
|
||||
*/
|
||||
//=============================================================================
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
GEOMImpl_IAdvancedOperations::MakePipeTShapeChamfer
|
||||
AdvancedEngine_IOperations::MakePipeTShapeChamfer
|
||||
(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
@ -2295,13 +2287,13 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeChamfer
|
||||
//Add a new object
|
||||
Handle(GEOM_Object) aShape = GetEngine()->AddObject(GetDocID(), GEOM_TSHAPE);
|
||||
//Add a new shape function with parameters
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(GEOMImpl_PipeTShapeDriver::GetID(), TSHAPE_CHAMFER);
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(AdvancedEngine_PipeTShapeDriver::GetID(), TSHAPE_CHAMFER);
|
||||
if (aFunction.IsNull()) return NULL;
|
||||
|
||||
//Check if the function is set correctly
|
||||
if (aFunction->GetDriverGUID() != GEOMImpl_PipeTShapeDriver::GetID()) return NULL;
|
||||
if (aFunction->GetDriverGUID() != AdvancedEngine_PipeTShapeDriver::GetID()) return NULL;
|
||||
|
||||
GEOMImpl_IPipeTShape aData(aFunction);
|
||||
AdvancedEngine_IPipeTShape aData(aFunction);
|
||||
|
||||
aData.SetR1(theR1);
|
||||
aData.SetW1(theW1);
|
||||
@ -2319,9 +2311,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeChamfer
|
||||
|
||||
//Compute the resulting value
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (!GetSolver()->ComputeFunction(aFunction)) {
|
||||
SetErrorCode("TShape driver failed");
|
||||
return NULL;
|
||||
@ -2405,9 +2395,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeChamfer
|
||||
// Add thickness reduction elements
|
||||
// at the three extremities: Left, Right and Incident
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (isTRL || isTRR || isTRI) {
|
||||
TopoDS_Shape aResShape =
|
||||
MakePipeTShapeThicknessReduction(aShape->GetValue(), theR1, theW1, theL1, theR2, theW2, theL2,
|
||||
@ -2513,7 +2501,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeChamfer
|
||||
*/
|
||||
//=============================================================================
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
GEOMImpl_IAdvancedOperations::MakePipeTShapeChamferWithPosition
|
||||
AdvancedEngine_IOperations::MakePipeTShapeChamferWithPosition
|
||||
(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
@ -2529,18 +2517,18 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeChamferWithPosition
|
||||
//Add a new object
|
||||
Handle(GEOM_Object) aShape = GetEngine()->AddObject(GetDocID(), GEOM_TSHAPE);
|
||||
//Add a new shape function with parameters
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(GEOMImpl_PipeTShapeDriver::GetID(), TSHAPE_CHAMFER);
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(AdvancedEngine_PipeTShapeDriver::GetID(), TSHAPE_CHAMFER);
|
||||
if (aFunction.IsNull()) return NULL;
|
||||
|
||||
//Check if the function is set correctly
|
||||
if (aFunction->GetDriverGUID() != GEOMImpl_PipeTShapeDriver::GetID()) return NULL;
|
||||
if (aFunction->GetDriverGUID() != AdvancedEngine_PipeTShapeDriver::GetID()) return NULL;
|
||||
|
||||
// Check new position
|
||||
if (!CheckCompatiblePosition(theL1, theL2, theP1, theP2, theP3, 0.01)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
GEOMImpl_IPipeTShape aData(aFunction);
|
||||
AdvancedEngine_IPipeTShape aData(aFunction);
|
||||
|
||||
aData.SetR1(theR1);
|
||||
aData.SetW1(theW1);
|
||||
@ -2558,9 +2546,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeChamferWithPosition
|
||||
|
||||
//Compute the resulting value
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (!GetSolver()->ComputeFunction(aFunction)) {
|
||||
SetErrorCode("TShape driver failed");
|
||||
return NULL;
|
||||
@ -2642,9 +2628,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeChamferWithPosition
|
||||
// Add thickness reduction elements
|
||||
// at the three extremities: Left, Right and Incident
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (isTRL || isTRR || isTRI) {
|
||||
TopoDS_Shape aResShape =
|
||||
MakePipeTShapeThicknessReduction(aShape->GetValue(), theR1, theW1, theL1, theR2, theW2, theL2,
|
||||
@ -2752,7 +2736,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeChamferWithPosition
|
||||
*/
|
||||
//=============================================================================
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
GEOMImpl_IAdvancedOperations::MakePipeTShapeFillet
|
||||
AdvancedEngine_IOperations::MakePipeTShapeFillet
|
||||
(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
@ -2764,13 +2748,13 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeFillet
|
||||
//Add a new object
|
||||
Handle(GEOM_Object) aShape = GetEngine()->AddObject(GetDocID(), GEOM_TSHAPE);
|
||||
//Add a new shape function with parameters
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(GEOMImpl_PipeTShapeDriver::GetID(), TSHAPE_FILLET);
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(AdvancedEngine_PipeTShapeDriver::GetID(), TSHAPE_FILLET);
|
||||
if (aFunction.IsNull()) return NULL;
|
||||
|
||||
//Check if the function is set correctly
|
||||
if (aFunction->GetDriverGUID() != GEOMImpl_PipeTShapeDriver::GetID()) return NULL;
|
||||
if (aFunction->GetDriverGUID() != AdvancedEngine_PipeTShapeDriver::GetID()) return NULL;
|
||||
|
||||
GEOMImpl_IPipeTShape aData(aFunction);
|
||||
AdvancedEngine_IPipeTShape aData(aFunction);
|
||||
|
||||
aData.SetR1(theR1);
|
||||
aData.SetW1(theW1);
|
||||
@ -2787,9 +2771,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeFillet
|
||||
|
||||
//Compute the resulting value
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (!GetSolver()->ComputeFunction(aFunction)) {
|
||||
SetErrorCode("TShape driver failed");
|
||||
return NULL;
|
||||
@ -2887,9 +2869,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeFillet
|
||||
// Add thickness reduction elements
|
||||
// at the three extremities: Left, Right and Incident
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (isTRL || isTRR || isTRI) {
|
||||
TopoDS_Shape aResShape =
|
||||
MakePipeTShapeThicknessReduction(aShape->GetValue(), theR1, theW1, theL1, theR2, theW2, theL2,
|
||||
@ -2994,7 +2974,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeFillet
|
||||
*/
|
||||
//=============================================================================
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
GEOMImpl_IAdvancedOperations::MakePipeTShapeFilletWithPosition
|
||||
AdvancedEngine_IOperations::MakePipeTShapeFilletWithPosition
|
||||
(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
@ -3009,18 +2989,18 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeFilletWithPosition
|
||||
//Add a new object
|
||||
Handle(GEOM_Object) aShape = GetEngine()->AddObject(GetDocID(), GEOM_TSHAPE);
|
||||
//Add a new shape function with parameters
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(GEOMImpl_PipeTShapeDriver::GetID(), TSHAPE_FILLET);
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(AdvancedEngine_PipeTShapeDriver::GetID(), TSHAPE_FILLET);
|
||||
if (aFunction.IsNull()) return NULL;
|
||||
|
||||
//Check if the function is set correctly
|
||||
if (aFunction->GetDriverGUID() != GEOMImpl_PipeTShapeDriver::GetID()) return NULL;
|
||||
if (aFunction->GetDriverGUID() != AdvancedEngine_PipeTShapeDriver::GetID()) return NULL;
|
||||
|
||||
// Check new position
|
||||
if (!CheckCompatiblePosition(theL1, theL2, theP1, theP2, theP3, 0.01)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
GEOMImpl_IPipeTShape aData(aFunction);
|
||||
AdvancedEngine_IPipeTShape aData(aFunction);
|
||||
|
||||
aData.SetR1(theR1);
|
||||
aData.SetW1(theW1);
|
||||
@ -3037,9 +3017,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeFilletWithPosition
|
||||
|
||||
//Compute the resulting value
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (!GetSolver()->ComputeFunction(aFunction)) {
|
||||
SetErrorCode("TShape driver failed");
|
||||
return NULL;
|
||||
@ -3136,9 +3114,7 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeFilletWithPosition
|
||||
// Add thickness reduction elements
|
||||
// at the three extremities: Left, Right and Incident
|
||||
try {
|
||||
#if OCC_VERSION_LARGE > 0x06010000
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (isTRL || isTRR || isTRI) {
|
||||
TopoDS_Shape aResShape =
|
||||
MakePipeTShapeThicknessReduction(aShape->GetValue(), theR1, theW1, theL1, theR2, theW2, theL2,
|
||||
@ -3238,8 +3214,8 @@ GEOMImpl_IAdvancedOperations::MakePipeTShapeFilletWithPosition
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
//=============================================================================
|
||||
Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeDividedDisk (double theR, double theRatio,
|
||||
int theOrientation, int thePattern)
|
||||
Handle(GEOM_Object) AdvancedEngine_IOperations::MakeDividedDisk (double theR, double theRatio,
|
||||
int theOrientation, int thePattern)
|
||||
{
|
||||
SetErrorCode(KO);
|
||||
|
||||
@ -3254,13 +3230,13 @@ Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeDividedDisk (double theR,
|
||||
Handle(GEOM_Object) aShape = GetEngine()->AddObject(GetDocID(), GEOM_DIVIDEDDISK);
|
||||
|
||||
//Add a new shape function with parameters
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(GEOMImpl_DividedDiskDriver::GetID(), DIVIDEDDISK_R_RATIO);
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(AdvancedEngine_DividedDiskDriver::GetID(), DIVIDEDDISK_R_RATIO);
|
||||
if (aFunction.IsNull()) return NULL;
|
||||
|
||||
//Check if the function is set correctly
|
||||
if (aFunction->GetDriverGUID() != GEOMImpl_DividedDiskDriver::GetID()) return NULL;
|
||||
if (aFunction->GetDriverGUID() != AdvancedEngine_DividedDiskDriver::GetID()) return NULL;
|
||||
|
||||
GEOMImpl_IDividedDisk aData (aFunction);
|
||||
AdvancedEngine_IDividedDisk aData (aFunction);
|
||||
|
||||
aData.SetR(theR);
|
||||
aData.SetRatio(theRatio);
|
||||
@ -3269,9 +3245,7 @@ Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeDividedDisk (double theR,
|
||||
|
||||
//Compute the resulting value
|
||||
try {
|
||||
#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (!GetSolver()->ComputeFunction(aFunction)) {
|
||||
SetErrorCode("DividedDisk driver failed");
|
||||
return NULL;
|
||||
@ -3312,11 +3286,11 @@ Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeDividedDisk (double theR,
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
//=============================================================================
|
||||
Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeDividedDiskPntVecR (Handle(GEOM_Object) thePnt,
|
||||
Handle(GEOM_Object) theVec,
|
||||
double theR,
|
||||
double theRatio,
|
||||
int thePattern)
|
||||
Handle(GEOM_Object) AdvancedEngine_IOperations::MakeDividedDiskPntVecR (Handle(GEOM_Object) thePnt,
|
||||
Handle(GEOM_Object) theVec,
|
||||
double theR,
|
||||
double theRatio,
|
||||
int thePattern)
|
||||
{
|
||||
SetErrorCode(KO);
|
||||
|
||||
@ -3324,13 +3298,13 @@ Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeDividedDiskPntVecR (Handle
|
||||
Handle(GEOM_Object) aShape = GetEngine()->AddObject(GetDocID(), GEOM_DIVIDEDDISK);
|
||||
|
||||
//Add a new shape function with parameters
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(GEOMImpl_DividedDiskDriver::GetID(), DIVIDEDDISK_R_VECTOR_PNT);
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(AdvancedEngine_DividedDiskDriver::GetID(), DIVIDEDDISK_R_VECTOR_PNT);
|
||||
if (aFunction.IsNull()) return NULL;
|
||||
|
||||
//Check if the function is set correctly
|
||||
if (aFunction->GetDriverGUID() != GEOMImpl_DividedDiskDriver::GetID()) return NULL;
|
||||
if (aFunction->GetDriverGUID() != AdvancedEngine_DividedDiskDriver::GetID()) return NULL;
|
||||
|
||||
GEOMImpl_IDividedDisk aData (aFunction);
|
||||
AdvancedEngine_IDividedDisk aData (aFunction);
|
||||
|
||||
Handle(GEOM_Function) aRefPnt = thePnt->GetLastFunction();
|
||||
Handle(GEOM_Function) aRefVec = theVec->GetLastFunction();
|
||||
@ -3346,9 +3320,7 @@ Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeDividedDiskPntVecR (Handle
|
||||
|
||||
//Compute the resulting value
|
||||
try {
|
||||
#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (!GetSolver()->ComputeFunction(aFunction)) {
|
||||
SetErrorCode("DividedDisk driver failed");
|
||||
return NULL;
|
||||
@ -3389,9 +3361,9 @@ Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeDividedDiskPntVecR (Handle
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
//=============================================================================
|
||||
Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeDividedCylinder (double theR,
|
||||
double theH,
|
||||
int thePattern)
|
||||
Handle(GEOM_Object) AdvancedEngine_IOperations::MakeDividedCylinder (double theR,
|
||||
double theH,
|
||||
int thePattern)
|
||||
{
|
||||
SetErrorCode(KO);
|
||||
|
||||
@ -3436,10 +3408,10 @@ Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeDividedCylinder (double th
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
//=============================================================================
|
||||
Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeSmoothingSurface (std::list<Handle(GEOM_Object)> thelPoints,
|
||||
int theNbMax,
|
||||
int theDegMax,
|
||||
double theDMax)
|
||||
Handle(GEOM_Object) AdvancedEngine_IOperations::MakeSmoothingSurface (std::list<Handle(GEOM_Object)> thelPoints,
|
||||
int theNbMax,
|
||||
int theDegMax,
|
||||
double theDMax)
|
||||
{
|
||||
SetErrorCode(KO);
|
||||
|
||||
@ -3447,13 +3419,13 @@ Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeSmoothingSurface (std::lis
|
||||
Handle(GEOM_Object) aShape = GetEngine()->AddObject(GetDocID(), GEOM_SMOOTHINGSURFACE);
|
||||
|
||||
//Add a new shape function with parameters
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(GEOMImpl_SmoothingSurfaceDriver::GetID(), SMOOTHINGSURFACE_LPOINTS);
|
||||
Handle(GEOM_Function) aFunction = aShape->AddFunction(AdvancedEngine_SmoothingSurfaceDriver::GetID(), SMOOTHINGSURFACE_LPOINTS);
|
||||
if (aFunction.IsNull()) return NULL;
|
||||
|
||||
//Check if the function is set correctly
|
||||
if (aFunction->GetDriverGUID() != GEOMImpl_SmoothingSurfaceDriver::GetID()) return NULL;
|
||||
if (aFunction->GetDriverGUID() != AdvancedEngine_SmoothingSurfaceDriver::GetID()) return NULL;
|
||||
|
||||
GEOMImpl_ISmoothingSurface aData (aFunction);
|
||||
AdvancedEngine_ISmoothingSurface aData (aFunction);
|
||||
|
||||
int aLen = thelPoints.size();
|
||||
aData.SetLength(aLen);
|
||||
@ -3474,9 +3446,7 @@ Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeSmoothingSurface (std::lis
|
||||
|
||||
//Compute the resulting value
|
||||
try {
|
||||
#if (OCC_VERSION_MAJOR << 16 | OCC_VERSION_MINOR << 8 | OCC_VERSION_MAINTENANCE) > 0x060100
|
||||
OCC_CATCH_SIGNALS;
|
||||
#endif
|
||||
if (!GetSolver()->ComputeFunction(aFunction)) {
|
||||
SetErrorCode("SmoothingSurface driver failed");
|
||||
return NULL;
|
||||
@ -3505,4 +3475,3 @@ Handle(GEOM_Object) GEOMImpl_IAdvancedOperations::MakeSmoothingSurface (std::lis
|
||||
|
||||
return aShape;
|
||||
}
|
||||
/*@@ insert new functions before this line @@ do not remove this line @@ do not remove this line @@*/
|
@ -16,13 +16,14 @@
|
||||
//
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
// File : GEOMImpl_IAdvancedOperations.hxx
|
||||
// File : AdvancedEngine_IOperations.hxx
|
||||
// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
|
||||
|
||||
#ifndef _GEOMImpl_IAdvancedOperations_HXX_
|
||||
#define _GEOMImpl_IAdvancedOperations_HXX_
|
||||
#ifndef _AdvancedEngine_IOperations_HXX_
|
||||
#define _AdvancedEngine_IOperations_HXX_
|
||||
|
||||
#include "AdvancedEngine.hxx"
|
||||
|
||||
#include <Utils_SALOME_Exception.hxx>
|
||||
#include "GEOM_IOperations.hxx"
|
||||
#include "GEOM_Engine.hxx"
|
||||
#include "GEOM_Object.hxx"
|
||||
@ -42,7 +43,8 @@ class GEOMImpl_IGroupOperations;
|
||||
class Handle_Geom_Surface;
|
||||
class TopTools_ListOfShape;
|
||||
|
||||
class GEOMImpl_IAdvancedOperations: public GEOM_IOperations {
|
||||
class ADVANCEDENGINE_EXPORT AdvancedEngine_IOperations: public GEOM_IOperations
|
||||
{
|
||||
private:
|
||||
bool MakePipeTShapePartition(Handle(GEOM_Object) theShape,
|
||||
double theR1, double theW1, double theL1,
|
||||
@ -129,7 +131,7 @@ public:
|
||||
* false to obtain parts, useful for hexameshing)
|
||||
* \retval TopoDS_Shape - Resulting shape
|
||||
*/
|
||||
Standard_EXPORT static TopoDS_Shape MakePipeTShapeThicknessReduction
|
||||
static TopoDS_Shape MakePipeTShapeThicknessReduction
|
||||
(TopoDS_Shape theShape,
|
||||
double r1, double w1, double l1,
|
||||
double r2, double w2, double l2,
|
||||
@ -155,17 +157,17 @@ public:
|
||||
* false to obtain parts, useful for hexameshing)
|
||||
* \retval TopoDS_Shape - Resulting shape
|
||||
*/
|
||||
Standard_EXPORT static TopoDS_Shape MakeThicknessReduction (gp_Ax2 theAxes,
|
||||
const double R, const double W,
|
||||
const double Rthin, const double Wthin,
|
||||
const double Ltrans, const double Lthin,
|
||||
bool fuse);
|
||||
|
||||
static TopoDS_Shape MakeThicknessReduction (gp_Ax2 theAxes,
|
||||
const double R, const double W,
|
||||
const double Rthin, const double Wthin,
|
||||
const double Ltrans, const double Lthin,
|
||||
bool fuse);
|
||||
|
||||
public:
|
||||
Standard_EXPORT GEOMImpl_IAdvancedOperations(GEOM_Engine* theEngine, int theDocID);
|
||||
Standard_EXPORT ~GEOMImpl_IAdvancedOperations();
|
||||
AdvancedEngine_IOperations(GEOM_Engine* theEngine, int theDocID);
|
||||
~AdvancedEngine_IOperations();
|
||||
|
||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
MakePipeTShape(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
@ -173,7 +175,7 @@ public:
|
||||
double theRI, double theWI, double theLtransI, double theLthinI,
|
||||
bool theHexMesh = true);
|
||||
|
||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
MakePipeTShapeWithPosition(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
@ -184,7 +186,7 @@ public:
|
||||
Handle(GEOM_Object) P2 = 0,
|
||||
Handle(GEOM_Object) P3 = 0);
|
||||
|
||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
MakePipeTShapeChamfer(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
@ -193,7 +195,7 @@ public:
|
||||
double theH, double theW,
|
||||
bool theHexMesh = true);
|
||||
|
||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
MakePipeTShapeChamferWithPosition(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theH, double theW,
|
||||
@ -205,7 +207,7 @@ public:
|
||||
Handle(GEOM_Object) P2 = 0,
|
||||
Handle(GEOM_Object) P3 = 0);
|
||||
|
||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
MakePipeTShapeFillet(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
@ -213,7 +215,7 @@ public:
|
||||
double theRI, double theWI, double theLtransI, double theLthinI,
|
||||
double theRF, bool theHexMesh = true);
|
||||
|
||||
Standard_EXPORT Handle(TColStd_HSequenceOfTransient)
|
||||
Handle(TColStd_HSequenceOfTransient)
|
||||
MakePipeTShapeFilletWithPosition(double theR1, double theW1, double theL1,
|
||||
double theR2, double theW2, double theL2,
|
||||
double theRL, double theWL, double theLtransL, double theLthinL,
|
||||
@ -224,22 +226,22 @@ public:
|
||||
Handle(GEOM_Object) P2 = 0,
|
||||
Handle(GEOM_Object) P3 = 0);
|
||||
|
||||
Standard_EXPORT Handle(GEOM_Object) MakeDividedDisk (double theR, double theRatio,
|
||||
int theOrientation, int thePattern);
|
||||
Standard_EXPORT Handle(GEOM_Object) MakeDividedDiskPntVecR (Handle(GEOM_Object) thePnt,
|
||||
Handle(GEOM_Object) theVec,
|
||||
double theR,
|
||||
double theRatio,
|
||||
int thePattern);
|
||||
Handle(GEOM_Object) MakeDividedDisk (double theR, double theRatio,
|
||||
int theOrientation, int thePattern);
|
||||
Handle(GEOM_Object) MakeDividedDiskPntVecR (Handle(GEOM_Object) thePnt,
|
||||
Handle(GEOM_Object) theVec,
|
||||
double theR,
|
||||
double theRatio,
|
||||
int thePattern);
|
||||
|
||||
Standard_EXPORT Handle(GEOM_Object) MakeDividedCylinder (double theR,
|
||||
double theH,
|
||||
int thePattern);
|
||||
Handle(GEOM_Object) MakeDividedCylinder (double theR,
|
||||
double theH,
|
||||
int thePattern);
|
||||
|
||||
Standard_EXPORT Handle(GEOM_Object) MakeSmoothingSurface (std::list<Handle(GEOM_Object)> thelPoints,
|
||||
int theNbMax,
|
||||
int theDegMax,
|
||||
double theDMax);
|
||||
/*@@ insert new functions before this line @@ do not remove this line @@*/
|
||||
Handle(GEOM_Object) MakeSmoothingSurface (std::list<Handle(GEOM_Object)> thelPoints,
|
||||
int theNbMax,
|
||||
int theDegMax,
|
||||
double theDMax);
|
||||
};
|
||||
|
||||
#endif
|
@ -22,7 +22,8 @@
|
||||
|
||||
#include <Standard_Stream.hxx>
|
||||
|
||||
#include "GEOM_IAdvancedOperations_i.hh"
|
||||
#include "AdvancedEngine_IOperations_i.hh"
|
||||
#include "AdvancedEngine_IOperations.hxx"
|
||||
|
||||
#include <utilities.h>
|
||||
#include <OpUtil.hxx>
|
||||
@ -36,10 +37,10 @@
|
||||
* constructor:
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM_IAdvancedOperations_i::GEOM_IAdvancedOperations_i(PortableServer::POA_ptr thePOA, GEOM::GEOM_Gen_ptr theEngine, ::GEOMImpl_IAdvancedOperations* theImpl)
|
||||
AdvancedEngine_IOperations_i::AdvancedEngine_IOperations_i(PortableServer::POA_ptr thePOA, GEOM::GEOM_Gen_ptr theEngine, AdvancedEngine_IOperations* theImpl)
|
||||
:GEOM_IOperations_i(thePOA, theEngine, theImpl)
|
||||
{
|
||||
MESSAGE("GEOM_IAdvancedOperations_i::GEOM_IAdvancedOperations_i");
|
||||
MESSAGE("AdvancedEngine_IOperations_i::AdvancedEngine_IOperations_i");
|
||||
}
|
||||
|
||||
//=============================================================================
|
||||
@ -47,9 +48,9 @@ GEOM_IAdvancedOperations_i::GEOM_IAdvancedOperations_i(PortableServer::POA_ptr t
|
||||
* destructor
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM_IAdvancedOperations_i::~GEOM_IAdvancedOperations_i()
|
||||
AdvancedEngine_IOperations_i::~AdvancedEngine_IOperations_i()
|
||||
{
|
||||
MESSAGE("GEOM_IAdvancedOperations_i::~GEOM_IAdvancedOperations_i");
|
||||
MESSAGE("AdvancedEngine_IOperations_i::~AdvancedEngine_IOperations_i");
|
||||
}
|
||||
|
||||
//=============================================================================
|
||||
@ -68,7 +69,7 @@ GEOM_IAdvancedOperations_i::~GEOM_IAdvancedOperations_i()
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShape
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShape
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Boolean theHexMesh)
|
||||
@ -114,7 +115,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShape
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeWithPosition
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeWithPosition
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Boolean theHexMesh,
|
||||
@ -166,7 +167,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeWithPosition
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeChamfer
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeChamfer
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh)
|
||||
@ -215,7 +216,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeChamfer
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeChamferWithPosition
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeChamferWithPosition
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh,
|
||||
@ -265,7 +266,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeChamferWithPosition
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeFillet
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeFillet
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Double theRF, CORBA::Boolean theHexMesh)
|
||||
@ -313,7 +314,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeFillet
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeFilletWithPosition
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeFilletWithPosition
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Double theRF, CORBA::Boolean theHexMesh,
|
||||
@ -361,7 +362,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeFilletWithPosition
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTR
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeTR
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Double theRL, CORBA::Double theWL, CORBA::Double theLtransL, CORBA::Double theLthinL,
|
||||
@ -412,7 +413,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTR
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTRWithPosition
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeTRWithPosition
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Double theRL, CORBA::Double theWL, CORBA::Double theLtransL, CORBA::Double theLthinL,
|
||||
@ -469,7 +470,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTRWithPosition
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTRChamfer
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeTRChamfer
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Double theRL, CORBA::Double theWL, CORBA::Double theLtransL, CORBA::Double theLthinL,
|
||||
@ -523,7 +524,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTRChamfer
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTRChamferWithPosition
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeTRChamferWithPosition
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Double theRL, CORBA::Double theWL, CORBA::Double theLtransL, CORBA::Double theLthinL,
|
||||
@ -578,7 +579,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTRChamferWithPosition
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTRFillet
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeTRFillet
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Double theRL, CORBA::Double theWL, CORBA::Double theLtransL, CORBA::Double theLthinL,
|
||||
@ -631,7 +632,7 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTRFillet
|
||||
* \return List of GEOM_Objects, containing the created shape and propagation groups.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTRFilletWithPosition
|
||||
GEOM::ListOfGO* AdvancedEngine_IOperations_i::MakePipeTShapeTRFilletWithPosition
|
||||
(CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
|
||||
CORBA::Double theRL, CORBA::Double theWL, CORBA::Double theLtransL, CORBA::Double theLthinL,
|
||||
@ -677,10 +678,10 @@ GEOM::ListOfGO* GEOM_IAdvancedOperations_i::MakePipeTShapeTRFilletWithPosition
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::GEOM_Object_ptr GEOM_IAdvancedOperations_i::MakeDividedDisk (CORBA::Double theR,
|
||||
CORBA::Double theRatio,
|
||||
CORBA::Short theOrientation,
|
||||
GEOM::pattern thePattern)
|
||||
GEOM::GEOM_Object_ptr AdvancedEngine_IOperations_i::MakeDividedDisk (CORBA::Double theR,
|
||||
CORBA::Double theRatio,
|
||||
CORBA::Short theOrientation,
|
||||
GEOM::pattern thePattern)
|
||||
{
|
||||
GEOM::GEOM_Object_var aGEOMObject;
|
||||
|
||||
@ -700,11 +701,11 @@ GEOM::GEOM_Object_ptr GEOM_IAdvancedOperations_i::MakeDividedDisk (CORBA::Double
|
||||
* MakeDividedDiskPntVecR
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::GEOM_Object_ptr GEOM_IAdvancedOperations_i::MakeDividedDiskPntVecR (GEOM::GEOM_Object_ptr thePnt,
|
||||
GEOM::GEOM_Object_ptr theVec,
|
||||
CORBA::Double theR,
|
||||
CORBA::Double theRatio,
|
||||
GEOM::pattern thePattern)
|
||||
GEOM::GEOM_Object_ptr AdvancedEngine_IOperations_i::MakeDividedDiskPntVecR (GEOM::GEOM_Object_ptr thePnt,
|
||||
GEOM::GEOM_Object_ptr theVec,
|
||||
CORBA::Double theR,
|
||||
CORBA::Double theRatio,
|
||||
GEOM::pattern thePattern)
|
||||
{
|
||||
GEOM::GEOM_Object_var aGEOMObject;
|
||||
|
||||
@ -734,9 +735,9 @@ GEOM::GEOM_Object_ptr GEOM_IAdvancedOperations_i::MakeDividedDiskPntVecR (GEOM::
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::GEOM_Object_ptr GEOM_IAdvancedOperations_i::MakeDividedCylinder (CORBA::Double theR,
|
||||
CORBA::Double theH,
|
||||
GEOM::pattern thePattern)
|
||||
GEOM::GEOM_Object_ptr AdvancedEngine_IOperations_i::MakeDividedCylinder (CORBA::Double theR,
|
||||
CORBA::Double theH,
|
||||
GEOM::pattern thePattern)
|
||||
{
|
||||
GEOM::GEOM_Object_var aGEOMObject;
|
||||
|
||||
@ -761,10 +762,10 @@ GEOM::GEOM_Object_ptr GEOM_IAdvancedOperations_i::MakeDividedCylinder (CORBA::Do
|
||||
* \return New GEOM_Object, containing the created shape.
|
||||
*/
|
||||
//=============================================================================
|
||||
GEOM::GEOM_Object_ptr GEOM_IAdvancedOperations_i::MakeSmoothingSurface (const GEOM::ListOfGO& thelPoints,
|
||||
CORBA::Long theNbMax,
|
||||
CORBA::Long theDegMax,
|
||||
CORBA::Double theDMax)
|
||||
GEOM::GEOM_Object_ptr AdvancedEngine_IOperations_i::MakeSmoothingSurface (const GEOM::ListOfGO& thelPoints,
|
||||
CORBA::Long theNbMax,
|
||||
CORBA::Long theDegMax,
|
||||
CORBA::Double theDMax)
|
||||
{
|
||||
GEOM::GEOM_Object_var aGEOMObject;
|
||||
|
||||
@ -789,4 +790,8 @@ GEOM::GEOM_Object_ptr GEOM_IAdvancedOperations_i::MakeSmoothingSurface (const GE
|
||||
return GetObject(anObject);
|
||||
}
|
||||
|
||||
/*@@ insert new functions before this line @@ do not remove this line @@*/
|
||||
AdvancedEngine_IOperations* AdvancedEngine_IOperations_i::GetOperations()
|
||||
{
|
||||
return (AdvancedEngine_IOperations*)GetImpl();
|
||||
}
|
||||
|
@ -17,31 +17,31 @@
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
// File : GEOM_IAdvancedOperations.hh
|
||||
// File : AdvancedEngine_IOperations_i.hh
|
||||
// Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
|
||||
|
||||
#ifndef _GEOM_IAdvancedOperations_i_HeaderFile
|
||||
#define _GEOM_IAdvancedOperations_i_HeaderFile
|
||||
#ifndef _AdvancedEngine_IOperations_i_HeaderFile
|
||||
#define _AdvancedEngine_IOperations_i_HeaderFile
|
||||
|
||||
#include "GEOMImpl_Gen.hxx"
|
||||
#include "AdvancedEngine.hxx"
|
||||
|
||||
#include <SALOMEconfig.h>
|
||||
|
||||
#include CORBA_SERVER_HEADER(GEOM_Gen)
|
||||
#include "GEOM_IOperations_i.hh"
|
||||
#include "GEOM_Object_i.hh"
|
||||
#include "GEOM_AdvancedEngine.hxx"
|
||||
|
||||
#include "GEOMImpl_IAdvancedOperations.hxx"
|
||||
#include <SALOMEconfig.h>
|
||||
#include CORBA_SERVER_HEADER(GEOM_Gen)
|
||||
#include CORBA_SERVER_HEADER(AdvancedGEOM)
|
||||
|
||||
class ADVANCEDENGINE_EXPORT GEOM_IAdvancedOperations_i :
|
||||
public virtual POA_GEOM::GEOM_IAdvancedOperations,
|
||||
class AdvancedEngine_IOperations;
|
||||
|
||||
class ADVANCEDENGINE_EXPORT AdvancedEngine_IOperations_i :
|
||||
public virtual POA_GEOM::IAdvancedOperations,
|
||||
public virtual GEOM_IOperations_i
|
||||
{
|
||||
public:
|
||||
GEOM_IAdvancedOperations_i (PortableServer::POA_ptr thePOA, GEOM::GEOM_Gen_ptr theEngine,
|
||||
::GEOMImpl_IAdvancedOperations* theImpl);
|
||||
~GEOM_IAdvancedOperations_i();
|
||||
AdvancedEngine_IOperations_i (PortableServer::POA_ptr thePOA, GEOM::GEOM_Gen_ptr theEngine,
|
||||
AdvancedEngine_IOperations* theImpl);
|
||||
~AdvancedEngine_IOperations_i();
|
||||
|
||||
// PipeTShape without thickness reduction
|
||||
GEOM::ListOfGO* MakePipeTShape (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
|
||||
@ -131,10 +131,8 @@ class ADVANCEDENGINE_EXPORT GEOM_IAdvancedOperations_i :
|
||||
CORBA::Long theNbMax,
|
||||
CORBA::Long theDegMax,
|
||||
CORBA::Double theDMax);
|
||||
/*@@ insert new functions before this line @@ do not remove this line @@*/
|
||||
|
||||
::GEOMImpl_IAdvancedOperations* GetOperations()
|
||||
{ return (::GEOMImpl_IAdvancedOperations*)GetImpl(); }
|
||||
AdvancedEngine_IOperations* GetOperations();
|
||||
};
|
||||
|
||||
#endif
|
@ -17,17 +17,17 @@
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#ifndef _GEOMImpl_IPipeTShape_HXX_
|
||||
#define _GEOMImpl_IPipeTShape_HXX_
|
||||
#ifndef _AdvancedEngine_IPipeTShape_HXX_
|
||||
#define _AdvancedEngine_IPipeTShape_HXX_
|
||||
|
||||
#include "GEOM_Function.hxx"
|
||||
|
||||
#include <TColStd_HArray1OfReal.hxx>
|
||||
|
||||
class GEOMImpl_IPipeTShape
|
||||
class AdvancedEngine_IPipeTShape
|
||||
{
|
||||
public:
|
||||
GEOMImpl_IPipeTShape(Handle(GEOM_Function) theFunction): _func(theFunction) {}
|
||||
AdvancedEngine_IPipeTShape(Handle(GEOM_Function) theFunction): _func(theFunction) {}
|
||||
|
||||
void SetR1(double theR1) { _func->SetReal(TSHAPE_ARG_R1, theR1); }
|
||||
double GetR1() { return _func->GetReal(TSHAPE_ARG_R1); }
|
||||
@ -100,4 +100,4 @@ private:
|
||||
Handle(GEOM_Function) _func;
|
||||
};
|
||||
|
||||
#endif // _GEOMImpl_IPipeTShape_HXX_
|
||||
#endif // _AdvancedEngine_IPipeTShape_HXX_
|
@ -20,8 +20,8 @@
|
||||
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
||||
//
|
||||
|
||||
#ifndef _GEOMImpl_ISmoothingSurface_HXX_
|
||||
#define _GEOMImpl_ISmoothingSurface_HXX_
|
||||
#ifndef _AdvancedEngine_ISmoothingSurface_HXX_
|
||||
#define _AdvancedEngine_ISmoothingSurface_HXX_
|
||||
|
||||
#include "GEOM_Function.hxx"
|
||||
|
||||
@ -31,10 +31,10 @@
|
||||
#define SMOOTHINGSURFACE_ARG_DEG_MAX 4
|
||||
#define SMOOTHINGSURFACE_ARG_D_MAX 5
|
||||
|
||||
class GEOMImpl_ISmoothingSurface
|
||||
class AdvancedEngine_ISmoothingSurface
|
||||
{
|
||||
public:
|
||||
GEOMImpl_ISmoothingSurface(Handle(GEOM_Function) theFunction): _func(theFunction) {}
|
||||
AdvancedEngine_ISmoothingSurface(Handle(GEOM_Function) theFunction): _func(theFunction) {}
|
||||
|
||||
void SetLength(int theLen) { _func->SetInteger(SMOOTHINGSURFACE_ARG_LENG, theLen); }
|
||||
int GetLength() { return _func->GetInteger(SMOOTHINGSURFACE_ARG_LENG); }
|
||||
@ -55,4 +55,4 @@ private:
|
||||
Handle(GEOM_Function) _func;
|
||||
};
|
||||
|
||||
#endif // _GEOMImpl_ISmoothingSurface_HXX_
|
||||
#endif // _AdvancedEngine_ISmoothingSurface_HXX_
|