--- /dev/null
+# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+#
+# 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.
+#
+# 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 : Makefile.am
+# Author : Alexey Petrov
+# Module : VISU
+
+include $(top_srcdir)/adm_local/unix/make_common_starter.am
+
+# Libraries targets
+lib_LTLIBRARIES= libVISUEngineImpl.la
+
+salomeinclude_HEADERS = \
+ VISU_I.hxx \
+ VISUConfig.hh \
+ VISU_Gen_i.hh \
+ VISU_Result_i.hh \
+ VISU_PrsObject_i.hh \
+ VISU_Table_i.hh \
+ VISU_Prs3d_i.hh \
+ VISU_Mesh_i.hh \
+ VISU_ColoredPrs3d_i.hh \
+ VISU_ScalarMap_i.hh \
+ VISU_IsoSurfaces_i.hh \
+ VISU_DeformedShape_i.hh \
+ VISU_Plot3D_i.hh \
+ VISU_CutPlanes_i.hh \
+ VISU_CutLines_i.hh \
+ VISU_Vectors_i.hh \
+ VISU_StreamLines_i.hh \
+ VISU_GaussPoints_i.hh \
+ VISU_ViewManager_i.hh \
+ VISU_View_i.hh \
+ VISU_TimeAnimation.h \
+ VISU_ScalarMapOnDeformedShape_i.hh \
+ VISU_ColoredPrs3dFactory.hh \
+ SALOME_GenericObjPointer.hh
+
+libVISUEngineImpl_la_SOURCES = \
+ VISU_Result_i.cc \
+ VISUConfig.cc \
+ VISU_PrsObject_i.cc \
+ VISU_Prs3d_i.cc \
+ VISU_ColoredPrs3d_i.cc \
+ VISU_ScalarMap_i.cc \
+ VISU_GaussPoints_i.cc \
+ VISU_IsoSurfaces_i.cc \
+ VISU_DeformedShape_i.cc \
+ VISU_Plot3D_i.cc \
+ VISU_CutPlanes_i.cc \
+ VISU_CutLines_i.cc \
+ VISU_Vectors_i.cc \
+ VISU_StreamLines_i.cc \
+ VISU_ScalarMapOnDeformedShape_i.cc \
+ VISU_ColoredPrs3dCache_i.cc \
+ VISU_ColoredPrs3dHolder_i.cc \
+ VISU_ColoredPrs3dFactory.cc \
+ VISU_Mesh_i.cc \
+ VISU_ViewManager_i.cc \
+ VISU_TimeAnimation.cxx \
+ VISU_View_i.cc \
+ VISU_Table_i.cc \
+ VISU_Gen_i.cc \
+ VISU_CorbaMedConvertor.cxx \
+ VISU_DumpPython.cc \
+ SALOME_GenericObjPointer.cc
+
+MOC_FILES = VISU_TimeAnimation_moc.cxx
+nodist_libVISUEngineImpl_la_SOURCES= $(MOC_FILES)
+
+# additionnal information to compil and link file
+libVISUEngineImpl_la_CPPFLAGS= \
+ -ftemplate-depth-32 \
+ $(QT_INCLUDES) \
+ $(PYTHON_INCLUDES) \
+ @CAS_CPPFLAGS@ @CAS_CXXFLAGS@ \
+ $(VTK_INCLUDES) \
+ $(HDF5_INCLUDES) \
+ $(QWT_INCLUDES) \
+ $(BOOST_CPPFLAGS)\
+ $(KERNEL_CXXFLAGS) \
+ $(MED_CXXFLAGS) \
+ $(GUI_CXXFLAGS) \
+ $(CORBA_CXXFLAGS) $(CORBA_INCLUDES) \
+ -I$(srcdir)/../CONVERTOR -I$(srcdir)/../PIPELINE -I$(srcdir)/../OBJECT -I$(srcdir)/../VVTK -I$(srcdir)/../GUITOOLS \
+ -I$(top_builddir)/idl \
+ -I$(top_builddir)/salome_adm/unix
+
+libVISUEngineImpl_la_LDFLAGS= \
+ $(PYTHON_LIBS) \
+ $(QT_MT_LIBS) \
+ $(VTK_LIBS) \
+ $(QWT_LIBS) \
+ @BOOST_LIBS@ \
+ $(KERNEL_LDFLAGS) \
+ $(GUI_LDFLAGS) \
+ $(MED_LDFLAGS) \
+ ../../idl/libSalomeIDLVISU.la
+
+libVISUEngineImpl_la_LIBADD= -lboost_signals@BOOST_LIBSUFFIX@ -lboost_thread@BOOST_LIBSUFFIX@ \
+ -lSalomeHDFPersist \
+ -lSalomeGenericObj \
+ -lSalomeContainer \
+ -lSalomeNS \
+ -lTOOLSDS \
+ -lOpUtil \
+ -lEvent \
+ -lSalomeApp \
+ -lSalomeSession \
+ -lVTKViewer \
+ -lSVTK \
+ -lSPlot2d \
+ ../CONVERTOR/libVisuConvertor.la \
+ ../PIPELINE/libVisuPipeLine.la \
+ ../OBJECT/libVisuObject.la \
+ ../VVTK/libVVTK.la \
+ ../GUITOOLS/libVISUGUITOOLS.la
+
+# Executables targets
+bin_PROGRAMS = VISU_I
+dist_VISU_I_SOURCES=VISU_I.cxx
+VISU_I_CPPFLAGS=$(libVISUEngineImpl_la_CPPFLAGS)
+VISU_I_LDADD=$(libVISUEngineImpl_la_LIBADD) $(libVISUEngineImpl_la_LDFLAGS) \
+ $(KERNEL_LDFLAGS) \
+ -lSALOMEBasics \
+ -lSalomeCatalog \
+ -lwith_loggerTraceCollector \
+ -lSalomeLifeCycleCORBA \
+ -lRegistry \
+ -lSalomeNotification \
+ -lSALOMELocalTrace \
+ -lSalomeResourcesManager \
+ -lSalomeDSClient \
+ -lSalomeObject \
+ -lqtx \
+ -lsuit \
+ -lstd \
+ -lCAM \
+ -lLightApp \
+ -lObjBrowser \
+ -lSalomePrs \
+ -lPyInterp \
+ -lPythonConsole \
+ -lLogWindow \
+ -lToolsGUI \
+ -lGLViewer \
+ -lOCCViewer \
+ -lSUPERVGraph \
+ -lSOCC \
+ -lPlot2d \
+ -lMEDWrapper \
+ -lMEDWrapperBase \
+ -lMEDWrapper_V2_2 \
+ -lMEDWrapper_V2_1 \
+ -lmed_V2_1
+# Makefile.in generated by automake 1.9.5 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
# Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
#
#
# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
-# File : Makefile.in
+# File : Makefile.am
# Author : Alexey Petrov
# Module : VISU
-top_srcdir=@top_srcdir@
-top_builddir=../..
-srcdir=@srcdir@
-VPATH=.:@srcdir@:@top_srcdir@/idl
-BOOST_LIBSUFFIX=@BOOST_LIBSUFFIX@
+#
+# ============================================================
+# This file defines the common definitions used in several
+# Makefile. This file must be included, if needed, by the file
+# Makefile.am.
+# ============================================================
+#
-@COMMENCE@
-# Libraries targets
-LIB = libVISUEngineImpl.la
-LIB_SRC = \
- VISU_Result_i.cc \
- VISUConfig.cc \
- VISU_PrsObject_i.cc \
- VISU_Prs3d_i.cc \
- VISU_ColoredPrs3d_i.cc \
- VISU_ScalarMap_i.cc \
- VISU_GaussPoints_i.cc \
- VISU_IsoSurfaces_i.cc \
- VISU_DeformedShape_i.cc \
- VISU_Plot3D_i.cc \
- VISU_CutPlanes_i.cc \
- VISU_CutLines_i.cc \
- VISU_Vectors_i.cc \
- VISU_StreamLines_i.cc \
- VISU_ScalarMapOnDeformedShape_i.cc \
- VISU_ColoredPrs3dCache_i.cc \
- VISU_ColoredPrs3dHolder_i.cc \
- VISU_ColoredPrs3dFactory.cc \
- VISU_Mesh_i.cc \
- VISU_ViewManager_i.cc \
- VISU_TimeAnimation.cxx \
- VISU_View_i.cc \
- VISU_Table_i.cc \
- VISU_Gen_i.cc \
- VISU_CorbaMedConvertor.cxx \
- VISU_DumpPython.cc \
- SALOME_GenericObjPointer.cc
+SOURCES = $(libVISUEngineImpl_la_SOURCES) $(nodist_libVISUEngineImpl_la_SOURCES) $(dist_VISU_I_SOURCES)
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+target_triplet = @target@
+DIST_COMMON = $(salomeinclude_HEADERS) $(srcdir)/Makefile.am \
+ $(srcdir)/Makefile.in \
+ $(top_srcdir)/adm_local/unix/make_common_starter.am
+bin_PROGRAMS = VISU_I$(EXEEXT)
+subdir = ./src/VISU_I
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/salome_adm/unix/config_files/ac_cxx_depend_flag.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/ac_cxx_have_sstream.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/ac_cxx_namespaces.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/ac_cxx_option.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/ac_cxx_use_std_iostream.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/ac_linker_options.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/acx_pthread.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_Kernel.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_boost.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_cas.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_corba.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_hdf5.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_htmlgen.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_mpich.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_omniorb.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_opengl.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_qt.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/check_swig.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/enable_pthreads.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/production.m4 \
+ $(top_srcdir)/salome_adm/unix/config_files/python.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \
+ "$(DESTDIR)$(salomeincludedir)"
+libLTLIBRARIES_INSTALL = $(INSTALL)
+LTLIBRARIES = $(lib_LTLIBRARIES)
+libVISUEngineImpl_la_DEPENDENCIES = ../CONVERTOR/libVisuConvertor.la \
+ ../PIPELINE/libVisuPipeLine.la ../OBJECT/libVisuObject.la \
+ ../VVTK/libVVTK.la ../GUITOOLS/libVISUGUITOOLS.la
+am_libVISUEngineImpl_la_OBJECTS = \
+ libVISUEngineImpl_la-VISU_Result_i.lo \
+ libVISUEngineImpl_la-VISUConfig.lo \
+ libVISUEngineImpl_la-VISU_PrsObject_i.lo \
+ libVISUEngineImpl_la-VISU_Prs3d_i.lo \
+ libVISUEngineImpl_la-VISU_ColoredPrs3d_i.lo \
+ libVISUEngineImpl_la-VISU_ScalarMap_i.lo \
+ libVISUEngineImpl_la-VISU_GaussPoints_i.lo \
+ libVISUEngineImpl_la-VISU_IsoSurfaces_i.lo \
+ libVISUEngineImpl_la-VISU_DeformedShape_i.lo \
+ libVISUEngineImpl_la-VISU_Plot3D_i.lo \
+ libVISUEngineImpl_la-VISU_CutPlanes_i.lo \
+ libVISUEngineImpl_la-VISU_CutLines_i.lo \
+ libVISUEngineImpl_la-VISU_Vectors_i.lo \
+ libVISUEngineImpl_la-VISU_StreamLines_i.lo \
+ libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.lo \
+ libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.lo \
+ libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.lo \
+ libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.lo \
+ libVISUEngineImpl_la-VISU_Mesh_i.lo \
+ libVISUEngineImpl_la-VISU_ViewManager_i.lo \
+ libVISUEngineImpl_la-VISU_TimeAnimation.lo \
+ libVISUEngineImpl_la-VISU_View_i.lo \
+ libVISUEngineImpl_la-VISU_Table_i.lo \
+ libVISUEngineImpl_la-VISU_Gen_i.lo \
+ libVISUEngineImpl_la-VISU_CorbaMedConvertor.lo \
+ libVISUEngineImpl_la-VISU_DumpPython.lo \
+ libVISUEngineImpl_la-SALOME_GenericObjPointer.lo
+am__objects_1 = libVISUEngineImpl_la-VISU_TimeAnimation_moc.lo
+nodist_libVISUEngineImpl_la_OBJECTS = $(am__objects_1)
+libVISUEngineImpl_la_OBJECTS = $(am_libVISUEngineImpl_la_OBJECTS) \
+ $(nodist_libVISUEngineImpl_la_OBJECTS)
+binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(bin_PROGRAMS)
+dist_VISU_I_OBJECTS = VISU_I-VISU_I.$(OBJEXT)
+VISU_I_OBJECTS = $(dist_VISU_I_OBJECTS)
+am__DEPENDENCIES_1 = ../CONVERTOR/libVisuConvertor.la \
+ ../PIPELINE/libVisuPipeLine.la ../OBJECT/libVisuObject.la \
+ ../VVTK/libVVTK.la ../GUITOOLS/libVISUGUITOOLS.la
+am__DEPENDENCIES_2 =
+am__DEPENDENCIES_3 = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \
+ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \
+ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \
+ $(am__DEPENDENCIES_2) ../../idl/libSalomeIDLVISU.la
+VISU_I_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_3) \
+ $(am__DEPENDENCIES_2)
+DEFAULT_INCLUDES = -I. -I$(srcdir)
+depcomp = $(SHELL) $(top_srcdir)/salome_adm/unix/config_files/depcomp
+am__depfiles_maybe = depfiles
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) \
+ $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+ $(AM_CXXFLAGS) $(CXXFLAGS)
+CXXLD = $(CXX)
+CXXLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+ $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libVISUEngineImpl_la_SOURCES) \
+ $(nodist_libVISUEngineImpl_la_SOURCES) $(dist_VISU_I_SOURCES)
+DIST_SOURCES = $(libVISUEngineImpl_la_SOURCES) $(dist_VISU_I_SOURCES)
+salomeincludeHEADERS_INSTALL = $(INSTALL_HEADER)
+HEADERS = $(salomeinclude_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BOOST_CPPFLAGS = @BOOST_CPPFLAGS@
+BOOST_LIBS = @BOOST_LIBS@
+BOOST_LIBSUFFIX = @BOOST_LIBSUFFIX@
+BOOST_PROGRAM_OPTIONS_LIB = @BOOST_PROGRAM_OPTIONS_LIB@
+CAS_CPPFLAGS = @CAS_CPPFLAGS@
+CAS_CXXFLAGS = @CAS_CXXFLAGS@
+CAS_DATAEXCHANGE = @CAS_DATAEXCHANGE@
+CAS_KERNEL = @CAS_KERNEL@
+CAS_LDFLAGS = @CAS_LDFLAGS@
+CAS_LDPATH = @CAS_LDPATH@
+CAS_MATH = @CAS_MATH@
+CAS_MODELER = @CAS_MODELER@
+CAS_OCAF = @CAS_OCAF@
+CAS_OCAFVIS = @CAS_OCAFVIS@
+CAS_STDPLUGIN = @CAS_STDPLUGIN@
+CAS_TKTopAlgo = @CAS_TKTopAlgo@
+CAS_VIEWER = @CAS_VIEWER@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CORBA_CXXFLAGS = @CORBA_CXXFLAGS@
+CORBA_INCLUDES = @CORBA_INCLUDES@
+CORBA_IN_GUI = @CORBA_IN_GUI@
+CORBA_LIBS = @CORBA_LIBS@
+CORBA_ROOT = @CORBA_ROOT@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CXX_DEPEND_FLAG = @CXX_DEPEND_FLAG@
+CYGPATH_W = @CYGPATH_W@
+C_DEPEND_FLAG = @C_DEPEND_FLAG@
+DEFS = @DEFS@
+DEPCC = @DEPCC@
+DEPCXX = @DEPCXX@
+DEPCXXFLAGS = @DEPCXXFLAGS@
+DEPDIR = @DEPDIR@
+DOT = @DOT@
+DOXYGEN = @DOXYGEN@
+DOXYGEN_WITH_PYTHON = @DOXYGEN_WITH_PYTHON@
+DOXYGEN_WITH_STL = @DOXYGEN_WITH_STL@
+DVIPS = @DVIPS@
+ECHO = @ECHO@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+F77 = @F77@
+FFLAGS = @FFLAGS@
+GUI_CXXFLAGS = @GUI_CXXFLAGS@
+GUI_LDFLAGS = @GUI_LDFLAGS@
+GUI_ROOT_DIR = @GUI_ROOT_DIR@
+HAVE_SSTREAM = @HAVE_SSTREAM@
+HDF5_INCLUDES = @HDF5_INCLUDES@
+HDF5_LIBS = @HDF5_LIBS@
+HDF5_MT_LIBS = @HDF5_MT_LIBS@
+IDL = @IDL@
+IDLCXXFLAGS = @IDLCXXFLAGS@
+IDLPYFLAGS = @IDLPYFLAGS@
+IDL_CLN_CXX = @IDL_CLN_CXX@
+IDL_CLN_H = @IDL_CLN_H@
+IDL_CLN_OBJ = @IDL_CLN_OBJ@
+IDL_SRV_CXX = @IDL_SRV_CXX@
+IDL_SRV_H = @IDL_SRV_H@
+IDL_SRV_OBJ = @IDL_SRV_OBJ@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+KERNEL_CXXFLAGS = @KERNEL_CXXFLAGS@
+KERNEL_LDFLAGS = @KERNEL_LDFLAGS@
+KERNEL_ROOT_DIR = @KERNEL_ROOT_DIR@
+KERNEL_SITE_DIR = @KERNEL_SITE_DIR@
+LATEX = @LATEX@
+LDEXPDYNFLAGS = @LDEXPDYNFLAGS@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LIB_LOCATION_SUFFIX = @LIB_LOCATION_SUFFIX@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MACHINE = @MACHINE@
+MAKEINFO = @MAKEINFO@
+MED_CXXFLAGS = @MED_CXXFLAGS@
+MED_LDFLAGS = @MED_LDFLAGS@
+MED_ROOT_DIR = @MED_ROOT_DIR@
+MOC = @MOC@
+MODULE_NAME = @MODULE_NAME@
+MSG2QM = @MSG2QM@
+OBJEXT = @OBJEXT@
+OGL_INCLUDES = @OGL_INCLUDES@
+OGL_LIBS = @OGL_LIBS@
+OMNIORB_CXXFLAGS = @OMNIORB_CXXFLAGS@
+OMNIORB_IDL = @OMNIORB_IDL@
+OMNIORB_IDLCXXFLAGS = @OMNIORB_IDLCXXFLAGS@
+OMNIORB_IDLPYFLAGS = @OMNIORB_IDLPYFLAGS@
+OMNIORB_IDL_CLN_CXX = @OMNIORB_IDL_CLN_CXX@
+OMNIORB_IDL_CLN_H = @OMNIORB_IDL_CLN_H@
+OMNIORB_IDL_CLN_OBJ = @OMNIORB_IDL_CLN_OBJ@
+OMNIORB_IDL_SRV_CXX = @OMNIORB_IDL_SRV_CXX@
+OMNIORB_IDL_SRV_H = @OMNIORB_IDL_SRV_H@
+OMNIORB_IDL_SRV_OBJ = @OMNIORB_IDL_SRV_OBJ@
+OMNIORB_IDL_TIE_CXX = @OMNIORB_IDL_TIE_CXX@
+OMNIORB_IDL_TIE_H = @OMNIORB_IDL_TIE_H@
+OMNIORB_INCLUDES = @OMNIORB_INCLUDES@
+OMNIORB_LIBS = @OMNIORB_LIBS@
+OMNIORB_ROOT = @OMNIORB_ROOT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PDFLATEX = @PDFLATEX@
+PTHREAD_CC = @PTHREAD_CC@
+PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
+PTHREAD_LIBS = @PTHREAD_LIBS@
+PYTHON = @PYTHON@
+PYTHONHOME = @PYTHONHOME@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_INCLUDES = @PYTHON_INCLUDES@
+PYTHON_LIBS = @PYTHON_LIBS@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_SITE = @PYTHON_SITE@
+PYTHON_SITE_EXEC = @PYTHON_SITE_EXEC@
+PYTHON_SITE_INSTALL = @PYTHON_SITE_INSTALL@
+PYTHON_SITE_PACKAGE = @PYTHON_SITE_PACKAGE@
+PYTHON_VERSION = @PYTHON_VERSION@
+QTDIR = @QTDIR@
+QT_INCLUDES = @QT_INCLUDES@
+QT_LIBS = @QT_LIBS@
+QT_MT_INCLUDES = @QT_MT_INCLUDES@
+QT_MT_LIBS = @QT_MT_LIBS@
+QT_ROOT = @QT_ROOT@
+QT_VERS = @QT_VERS@
+QWT_INCLUDES = @QWT_INCLUDES@
+QWT_LIBS = @QWT_LIBS@
+RANLIB = @RANLIB@
+ROOT_BUILDDIR = @ROOT_BUILDDIR@
+ROOT_SRCDIR = @ROOT_SRCDIR@
+RST2HTML = @RST2HTML@
+RST2HTML_IS_OK_FALSE = @RST2HTML_IS_OK_FALSE@
+RST2HTML_IS_OK_TRUE = @RST2HTML_IS_OK_TRUE@
+SETX = @SETX@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STDLIB = @STDLIB@
+STRIP = @STRIP@
+SWIG = @SWIG@
+SWIG_FLAGS = @SWIG_FLAGS@
+TEMP = @TEMP@
+UIC = @UIC@
+VERSION = @VERSION@
+VTKPY_MODULES = @VTKPY_MODULES@
+VTK_INCLUDES = @VTK_INCLUDES@
+VTK_LIBS = @VTK_LIBS@
+XVERSION = @XVERSION@
+YACC = @YACC@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_F77 = @ac_ct_F77@
+ac_ct_RANLIB = @ac_ct_RANLIB@
+ac_ct_STRIP = @ac_ct_STRIP@
+acx_pthread_config = @acx_pthread_config@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = $(prefix)/bin/@PACKAGE@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = $(prefix)/lib@LIB_LOCATION_SUFFIX@/@PACKAGE@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pkgpyexecdir = @pkgpyexecdir@
+pkgpythondir = @pkgpythondir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+pyexecdir = @pyexecdir@
+pythondir = @pythondir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target = @target@
+target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
-LIB_MOC = \
- VISU_TimeAnimation.h
+# Standard directory for installation
+salomeincludedir = $(includedir)/@PACKAGE@
+purebindir = $(prefix)/bin
+salomescriptdir = $(bindir)
-LIB_SERVER_IDL = \
- MED.idl \
- VISU_Gen.idl \
- SALOME_Component.idl \
- SALOME_Exception.idl \
- SALOME_GenericObj.idl
+# Tests environment folders
+testsenvirondir = $(prefix)/Tests/environ
+testsenvironcshdir = $(prefix)/Tests/environ/csh
-LIB_CLIENT_IDL = \
- SALOMEDS.idl \
- SALOMEDS_Attributes.idl \
- SALOME_Comm.idl
+# Directory for installing idl files
+salomeidldir = $(prefix)/idl/@PACKAGE@
-# Executables targets
-BIN = VISU_I
-BIN_SRC =
+# Directory for installing resource files
+salomeresdir = $(prefix)/share/@PACKAGE@/resources/@MODULE_NAME@
-BIN_CLIENT_IDL =
-BIN_SERVER_IDL =
+# Directories for installing admin files
+admlocaldir = $(prefix)/adm_local
+admlocalunixdir = $(admlocaldir)/unix
+admlocalm4dir = $(admlocaldir)/unix/config_files
-EXPORT_HEADERS = \
+# Shared modules installation directory
+sharedpkgpythondir = $(pkgpythondir)/shared_modules
+
+# Documentation directory
+docdir = $(datadir)/doc/@PACKAGE@
+EXTRA_DIST = $(MOC_FILES:%_moc.cxx=%.h) $(nodist_salomeres_DATA:%.qm=%.po)
+
+# Libraries targets
+lib_LTLIBRARIES = libVISUEngineImpl.la
+salomeinclude_HEADERS = \
+ VISU_I.hxx \
VISUConfig.hh \
VISU_Gen_i.hh \
VISU_Result_i.hh \
VISU_ColoredPrs3dFactory.hh \
SALOME_GenericObjPointer.hh
+libVISUEngineImpl_la_SOURCES = \
+ VISU_Result_i.cc \
+ VISUConfig.cc \
+ VISU_PrsObject_i.cc \
+ VISU_Prs3d_i.cc \
+ VISU_ColoredPrs3d_i.cc \
+ VISU_ScalarMap_i.cc \
+ VISU_GaussPoints_i.cc \
+ VISU_IsoSurfaces_i.cc \
+ VISU_DeformedShape_i.cc \
+ VISU_Plot3D_i.cc \
+ VISU_CutPlanes_i.cc \
+ VISU_CutLines_i.cc \
+ VISU_Vectors_i.cc \
+ VISU_StreamLines_i.cc \
+ VISU_ScalarMapOnDeformedShape_i.cc \
+ VISU_ColoredPrs3dCache_i.cc \
+ VISU_ColoredPrs3dHolder_i.cc \
+ VISU_ColoredPrs3dFactory.cc \
+ VISU_Mesh_i.cc \
+ VISU_ViewManager_i.cc \
+ VISU_TimeAnimation.cxx \
+ VISU_View_i.cc \
+ VISU_Table_i.cc \
+ VISU_Gen_i.cc \
+ VISU_CorbaMedConvertor.cxx \
+ VISU_DumpPython.cc \
+ SALOME_GenericObjPointer.cc
+
+MOC_FILES = VISU_TimeAnimation_moc.cxx
+nodist_libVISUEngineImpl_la_SOURCES = $(MOC_FILES)
+
# additionnal information to compil and link file
-CPPFLAGS += \
+libVISUEngineImpl_la_CPPFLAGS = \
-ftemplate-depth-32 \
$(QT_INCLUDES) \
$(PYTHON_INCLUDES) \
- $(OCC_INCLUDES) \
+ @CAS_CPPFLAGS@ @CAS_CXXFLAGS@ \
$(VTK_INCLUDES) \
$(HDF5_INCLUDES) \
$(QWT_INCLUDES) \
$(BOOST_CPPFLAGS)\
$(KERNEL_CXXFLAGS) \
$(MED_CXXFLAGS) \
- $(GUI_CXXFLAGS)
+ $(GUI_CXXFLAGS) \
+ $(CORBA_CXXFLAGS) $(CORBA_INCLUDES) \
+ -I$(srcdir)/../CONVERTOR -I$(srcdir)/../PIPELINE -I$(srcdir)/../OBJECT -I$(srcdir)/../VVTK -I$(srcdir)/../GUITOOLS \
+ -I$(top_builddir)/idl \
+ -I$(top_builddir)/salome_adm/unix
-LDFLAGS += \
+libVISUEngineImpl_la_LDFLAGS = \
$(PYTHON_LIBS) \
$(QT_MT_LIBS) \
$(VTK_LIBS) \
$(QWT_LIBS) \
- $(BOOST_LIBS) \
+ @BOOST_LIBS@ \
$(KERNEL_LDFLAGS) \
$(GUI_LDFLAGS) \
- $(MED_LDFLAGS)
+ $(MED_LDFLAGS) \
+ ../../idl/libSalomeIDLVISU.la
-LIBS+= -lboost_signals${BOOST_LIBSUFFIX} \
+libVISUEngineImpl_la_LIBADD = -lboost_signals@BOOST_LIBSUFFIX@ -lboost_thread@BOOST_LIBSUFFIX@ \
-lSalomeHDFPersist \
-lSalomeGenericObj \
-lSalomeContainer \
-lVTKViewer \
-lSVTK \
-lSPlot2d \
- -lVisuConvertor \
- -lVisuPipeLine \
- -lVisuObject \
- -lVVTK \
- -lVISUGUITOOLS
+ ../CONVERTOR/libVisuConvertor.la \
+ ../PIPELINE/libVisuPipeLine.la \
+ ../OBJECT/libVisuObject.la \
+ ../VVTK/libVVTK.la \
+ ../GUITOOLS/libVISUGUITOOLS.la
-LDFLAGSFORBIN=$(LDFLAGS) $(LIBS) \
+dist_VISU_I_SOURCES = VISU_I.cxx
+VISU_I_CPPFLAGS = $(libVISUEngineImpl_la_CPPFLAGS)
+VISU_I_LDADD = $(libVISUEngineImpl_la_LIBADD) $(libVISUEngineImpl_la_LDFLAGS) \
$(KERNEL_LDFLAGS) \
-lSALOMEBasics \
-lSalomeCatalog \
-lOCCViewer \
-lSUPERVGraph \
-lSOCC \
- -lVVTK \
-lPlot2d \
-lMEDWrapper \
-lMEDWrapperBase \
-lMEDWrapper_V2_1 \
-lmed_V2_1
-# additional file to be cleaned
-MOSTLYCLEAN =
-CLEAN =
-DISTCLEAN =
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .cc .cxx .lo .o .obj
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/adm_local/unix/make_common_starter.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu ./src/VISU_I/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu ./src/VISU_I/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-libLTLIBRARIES: $(lib_LTLIBRARIES)
+ @$(NORMAL_INSTALL)
+ test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ if test -f $$p; then \
+ f=$(am__strip_dir) \
+ echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+ $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+ else :; fi; \
+ done
+
+uninstall-libLTLIBRARIES:
+ @$(NORMAL_UNINSTALL)
+ @set -x; list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ p=$(am__strip_dir) \
+ echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+ $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
+ done
+
+clean-libLTLIBRARIES:
+ -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
+ @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
+ test "$$dir" != "$$p" || dir=.; \
+ echo "rm -f \"$${dir}/so_locations\""; \
+ rm -f "$${dir}/so_locations"; \
+ done
+libVISUEngineImpl.la: $(libVISUEngineImpl_la_OBJECTS) $(libVISUEngineImpl_la_DEPENDENCIES)
+ $(CXXLINK) -rpath $(libdir) $(libVISUEngineImpl_la_LDFLAGS) $(libVISUEngineImpl_la_OBJECTS) $(libVISUEngineImpl_la_LIBADD) $(LIBS)
+install-binPROGRAMS: $(bin_PROGRAMS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+ if test -f $$p \
+ || test -f $$p1 \
+ ; then \
+ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+ echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
+ $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
+ else :; fi; \
+ done
+
+uninstall-binPROGRAMS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(bindir)/$$f"; \
+ done
+
+clean-binPROGRAMS:
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+ echo " rm -f $$p $$f"; \
+ rm -f $$p $$f ; \
+ done
+VISU_I$(EXEEXT): $(VISU_I_OBJECTS) $(VISU_I_DEPENDENCIES)
+ @rm -f VISU_I$(EXEEXT)
+ $(CXXLINK) $(VISU_I_LDFLAGS) $(VISU_I_OBJECTS) $(VISU_I_LDADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/VISU_I-VISU_I.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-SALOME_GenericObjPointer.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISUConfig.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3d_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_CorbaMedConvertor.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_CutLines_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_CutPlanes_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_DeformedShape_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_DumpPython.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_GaussPoints_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_Gen_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_IsoSurfaces_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_Mesh_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_Plot3D_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_Prs3d_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_PrsObject_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_Result_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_ScalarMap_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_StreamLines_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_Table_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_TimeAnimation.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_TimeAnimation_moc.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_Vectors_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_ViewManager_i.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libVISUEngineImpl_la-VISU_View_i.Plo@am__quote@
+
+.cc.o:
+@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
+
+.cc.obj:
+@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.cc.lo:
+@am__fastdepCXX_TRUE@ if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
+
+libVISUEngineImpl_la-VISU_Result_i.lo: VISU_Result_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_Result_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_Result_i.Tpo" -c -o libVISUEngineImpl_la-VISU_Result_i.lo `test -f 'VISU_Result_i.cc' || echo '$(srcdir)/'`VISU_Result_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Result_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_Result_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Result_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_Result_i.cc' object='libVISUEngineImpl_la-VISU_Result_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_Result_i.lo `test -f 'VISU_Result_i.cc' || echo '$(srcdir)/'`VISU_Result_i.cc
+
+libVISUEngineImpl_la-VISUConfig.lo: VISUConfig.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISUConfig.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISUConfig.Tpo" -c -o libVISUEngineImpl_la-VISUConfig.lo `test -f 'VISUConfig.cc' || echo '$(srcdir)/'`VISUConfig.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISUConfig.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISUConfig.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISUConfig.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISUConfig.cc' object='libVISUEngineImpl_la-VISUConfig.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISUConfig.lo `test -f 'VISUConfig.cc' || echo '$(srcdir)/'`VISUConfig.cc
+
+libVISUEngineImpl_la-VISU_PrsObject_i.lo: VISU_PrsObject_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_PrsObject_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_PrsObject_i.Tpo" -c -o libVISUEngineImpl_la-VISU_PrsObject_i.lo `test -f 'VISU_PrsObject_i.cc' || echo '$(srcdir)/'`VISU_PrsObject_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_PrsObject_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_PrsObject_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_PrsObject_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_PrsObject_i.cc' object='libVISUEngineImpl_la-VISU_PrsObject_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_PrsObject_i.lo `test -f 'VISU_PrsObject_i.cc' || echo '$(srcdir)/'`VISU_PrsObject_i.cc
+
+libVISUEngineImpl_la-VISU_Prs3d_i.lo: VISU_Prs3d_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_Prs3d_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_Prs3d_i.Tpo" -c -o libVISUEngineImpl_la-VISU_Prs3d_i.lo `test -f 'VISU_Prs3d_i.cc' || echo '$(srcdir)/'`VISU_Prs3d_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Prs3d_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_Prs3d_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Prs3d_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_Prs3d_i.cc' object='libVISUEngineImpl_la-VISU_Prs3d_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_Prs3d_i.lo `test -f 'VISU_Prs3d_i.cc' || echo '$(srcdir)/'`VISU_Prs3d_i.cc
+
+libVISUEngineImpl_la-VISU_ColoredPrs3d_i.lo: VISU_ColoredPrs3d_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_ColoredPrs3d_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3d_i.Tpo" -c -o libVISUEngineImpl_la-VISU_ColoredPrs3d_i.lo `test -f 'VISU_ColoredPrs3d_i.cc' || echo '$(srcdir)/'`VISU_ColoredPrs3d_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3d_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3d_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3d_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_ColoredPrs3d_i.cc' object='libVISUEngineImpl_la-VISU_ColoredPrs3d_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_ColoredPrs3d_i.lo `test -f 'VISU_ColoredPrs3d_i.cc' || echo '$(srcdir)/'`VISU_ColoredPrs3d_i.cc
+
+libVISUEngineImpl_la-VISU_ScalarMap_i.lo: VISU_ScalarMap_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_ScalarMap_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_ScalarMap_i.Tpo" -c -o libVISUEngineImpl_la-VISU_ScalarMap_i.lo `test -f 'VISU_ScalarMap_i.cc' || echo '$(srcdir)/'`VISU_ScalarMap_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ScalarMap_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_ScalarMap_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ScalarMap_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_ScalarMap_i.cc' object='libVISUEngineImpl_la-VISU_ScalarMap_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_ScalarMap_i.lo `test -f 'VISU_ScalarMap_i.cc' || echo '$(srcdir)/'`VISU_ScalarMap_i.cc
+
+libVISUEngineImpl_la-VISU_GaussPoints_i.lo: VISU_GaussPoints_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_GaussPoints_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_GaussPoints_i.Tpo" -c -o libVISUEngineImpl_la-VISU_GaussPoints_i.lo `test -f 'VISU_GaussPoints_i.cc' || echo '$(srcdir)/'`VISU_GaussPoints_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_GaussPoints_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_GaussPoints_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_GaussPoints_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_GaussPoints_i.cc' object='libVISUEngineImpl_la-VISU_GaussPoints_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_GaussPoints_i.lo `test -f 'VISU_GaussPoints_i.cc' || echo '$(srcdir)/'`VISU_GaussPoints_i.cc
+
+libVISUEngineImpl_la-VISU_IsoSurfaces_i.lo: VISU_IsoSurfaces_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_IsoSurfaces_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_IsoSurfaces_i.Tpo" -c -o libVISUEngineImpl_la-VISU_IsoSurfaces_i.lo `test -f 'VISU_IsoSurfaces_i.cc' || echo '$(srcdir)/'`VISU_IsoSurfaces_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_IsoSurfaces_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_IsoSurfaces_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_IsoSurfaces_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_IsoSurfaces_i.cc' object='libVISUEngineImpl_la-VISU_IsoSurfaces_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_IsoSurfaces_i.lo `test -f 'VISU_IsoSurfaces_i.cc' || echo '$(srcdir)/'`VISU_IsoSurfaces_i.cc
+
+libVISUEngineImpl_la-VISU_DeformedShape_i.lo: VISU_DeformedShape_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_DeformedShape_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_DeformedShape_i.Tpo" -c -o libVISUEngineImpl_la-VISU_DeformedShape_i.lo `test -f 'VISU_DeformedShape_i.cc' || echo '$(srcdir)/'`VISU_DeformedShape_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_DeformedShape_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_DeformedShape_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_DeformedShape_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_DeformedShape_i.cc' object='libVISUEngineImpl_la-VISU_DeformedShape_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_DeformedShape_i.lo `test -f 'VISU_DeformedShape_i.cc' || echo '$(srcdir)/'`VISU_DeformedShape_i.cc
+
+libVISUEngineImpl_la-VISU_Plot3D_i.lo: VISU_Plot3D_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_Plot3D_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_Plot3D_i.Tpo" -c -o libVISUEngineImpl_la-VISU_Plot3D_i.lo `test -f 'VISU_Plot3D_i.cc' || echo '$(srcdir)/'`VISU_Plot3D_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Plot3D_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_Plot3D_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Plot3D_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_Plot3D_i.cc' object='libVISUEngineImpl_la-VISU_Plot3D_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_Plot3D_i.lo `test -f 'VISU_Plot3D_i.cc' || echo '$(srcdir)/'`VISU_Plot3D_i.cc
+
+libVISUEngineImpl_la-VISU_CutPlanes_i.lo: VISU_CutPlanes_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_CutPlanes_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_CutPlanes_i.Tpo" -c -o libVISUEngineImpl_la-VISU_CutPlanes_i.lo `test -f 'VISU_CutPlanes_i.cc' || echo '$(srcdir)/'`VISU_CutPlanes_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_CutPlanes_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_CutPlanes_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_CutPlanes_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_CutPlanes_i.cc' object='libVISUEngineImpl_la-VISU_CutPlanes_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_CutPlanes_i.lo `test -f 'VISU_CutPlanes_i.cc' || echo '$(srcdir)/'`VISU_CutPlanes_i.cc
+
+libVISUEngineImpl_la-VISU_CutLines_i.lo: VISU_CutLines_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_CutLines_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_CutLines_i.Tpo" -c -o libVISUEngineImpl_la-VISU_CutLines_i.lo `test -f 'VISU_CutLines_i.cc' || echo '$(srcdir)/'`VISU_CutLines_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_CutLines_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_CutLines_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_CutLines_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_CutLines_i.cc' object='libVISUEngineImpl_la-VISU_CutLines_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_CutLines_i.lo `test -f 'VISU_CutLines_i.cc' || echo '$(srcdir)/'`VISU_CutLines_i.cc
+
+libVISUEngineImpl_la-VISU_Vectors_i.lo: VISU_Vectors_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_Vectors_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_Vectors_i.Tpo" -c -o libVISUEngineImpl_la-VISU_Vectors_i.lo `test -f 'VISU_Vectors_i.cc' || echo '$(srcdir)/'`VISU_Vectors_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Vectors_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_Vectors_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Vectors_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_Vectors_i.cc' object='libVISUEngineImpl_la-VISU_Vectors_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_Vectors_i.lo `test -f 'VISU_Vectors_i.cc' || echo '$(srcdir)/'`VISU_Vectors_i.cc
+
+libVISUEngineImpl_la-VISU_StreamLines_i.lo: VISU_StreamLines_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_StreamLines_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_StreamLines_i.Tpo" -c -o libVISUEngineImpl_la-VISU_StreamLines_i.lo `test -f 'VISU_StreamLines_i.cc' || echo '$(srcdir)/'`VISU_StreamLines_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_StreamLines_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_StreamLines_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_StreamLines_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_StreamLines_i.cc' object='libVISUEngineImpl_la-VISU_StreamLines_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_StreamLines_i.lo `test -f 'VISU_StreamLines_i.cc' || echo '$(srcdir)/'`VISU_StreamLines_i.cc
+
+libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.lo: VISU_ScalarMapOnDeformedShape_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.Tpo" -c -o libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.lo `test -f 'VISU_ScalarMapOnDeformedShape_i.cc' || echo '$(srcdir)/'`VISU_ScalarMapOnDeformedShape_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_ScalarMapOnDeformedShape_i.cc' object='libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_ScalarMapOnDeformedShape_i.lo `test -f 'VISU_ScalarMapOnDeformedShape_i.cc' || echo '$(srcdir)/'`VISU_ScalarMapOnDeformedShape_i.cc
+
+libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.lo: VISU_ColoredPrs3dCache_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.Tpo" -c -o libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.lo `test -f 'VISU_ColoredPrs3dCache_i.cc' || echo '$(srcdir)/'`VISU_ColoredPrs3dCache_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_ColoredPrs3dCache_i.cc' object='libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_ColoredPrs3dCache_i.lo `test -f 'VISU_ColoredPrs3dCache_i.cc' || echo '$(srcdir)/'`VISU_ColoredPrs3dCache_i.cc
+
+libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.lo: VISU_ColoredPrs3dHolder_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.Tpo" -c -o libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.lo `test -f 'VISU_ColoredPrs3dHolder_i.cc' || echo '$(srcdir)/'`VISU_ColoredPrs3dHolder_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_ColoredPrs3dHolder_i.cc' object='libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_ColoredPrs3dHolder_i.lo `test -f 'VISU_ColoredPrs3dHolder_i.cc' || echo '$(srcdir)/'`VISU_ColoredPrs3dHolder_i.cc
+
+libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.lo: VISU_ColoredPrs3dFactory.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.Tpo" -c -o libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.lo `test -f 'VISU_ColoredPrs3dFactory.cc' || echo '$(srcdir)/'`VISU_ColoredPrs3dFactory.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_ColoredPrs3dFactory.cc' object='libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_ColoredPrs3dFactory.lo `test -f 'VISU_ColoredPrs3dFactory.cc' || echo '$(srcdir)/'`VISU_ColoredPrs3dFactory.cc
+
+libVISUEngineImpl_la-VISU_Mesh_i.lo: VISU_Mesh_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_Mesh_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_Mesh_i.Tpo" -c -o libVISUEngineImpl_la-VISU_Mesh_i.lo `test -f 'VISU_Mesh_i.cc' || echo '$(srcdir)/'`VISU_Mesh_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Mesh_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_Mesh_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Mesh_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_Mesh_i.cc' object='libVISUEngineImpl_la-VISU_Mesh_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_Mesh_i.lo `test -f 'VISU_Mesh_i.cc' || echo '$(srcdir)/'`VISU_Mesh_i.cc
+
+libVISUEngineImpl_la-VISU_ViewManager_i.lo: VISU_ViewManager_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_ViewManager_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_ViewManager_i.Tpo" -c -o libVISUEngineImpl_la-VISU_ViewManager_i.lo `test -f 'VISU_ViewManager_i.cc' || echo '$(srcdir)/'`VISU_ViewManager_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ViewManager_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_ViewManager_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_ViewManager_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_ViewManager_i.cc' object='libVISUEngineImpl_la-VISU_ViewManager_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_ViewManager_i.lo `test -f 'VISU_ViewManager_i.cc' || echo '$(srcdir)/'`VISU_ViewManager_i.cc
+
+libVISUEngineImpl_la-VISU_TimeAnimation.lo: VISU_TimeAnimation.cxx
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_TimeAnimation.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_TimeAnimation.Tpo" -c -o libVISUEngineImpl_la-VISU_TimeAnimation.lo `test -f 'VISU_TimeAnimation.cxx' || echo '$(srcdir)/'`VISU_TimeAnimation.cxx; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_TimeAnimation.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_TimeAnimation.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_TimeAnimation.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_TimeAnimation.cxx' object='libVISUEngineImpl_la-VISU_TimeAnimation.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_TimeAnimation.lo `test -f 'VISU_TimeAnimation.cxx' || echo '$(srcdir)/'`VISU_TimeAnimation.cxx
+
+libVISUEngineImpl_la-VISU_View_i.lo: VISU_View_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_View_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_View_i.Tpo" -c -o libVISUEngineImpl_la-VISU_View_i.lo `test -f 'VISU_View_i.cc' || echo '$(srcdir)/'`VISU_View_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_View_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_View_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_View_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_View_i.cc' object='libVISUEngineImpl_la-VISU_View_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_View_i.lo `test -f 'VISU_View_i.cc' || echo '$(srcdir)/'`VISU_View_i.cc
+
+libVISUEngineImpl_la-VISU_Table_i.lo: VISU_Table_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_Table_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_Table_i.Tpo" -c -o libVISUEngineImpl_la-VISU_Table_i.lo `test -f 'VISU_Table_i.cc' || echo '$(srcdir)/'`VISU_Table_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Table_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_Table_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Table_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_Table_i.cc' object='libVISUEngineImpl_la-VISU_Table_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_Table_i.lo `test -f 'VISU_Table_i.cc' || echo '$(srcdir)/'`VISU_Table_i.cc
+
+libVISUEngineImpl_la-VISU_Gen_i.lo: VISU_Gen_i.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_Gen_i.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_Gen_i.Tpo" -c -o libVISUEngineImpl_la-VISU_Gen_i.lo `test -f 'VISU_Gen_i.cc' || echo '$(srcdir)/'`VISU_Gen_i.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Gen_i.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_Gen_i.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_Gen_i.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_Gen_i.cc' object='libVISUEngineImpl_la-VISU_Gen_i.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_Gen_i.lo `test -f 'VISU_Gen_i.cc' || echo '$(srcdir)/'`VISU_Gen_i.cc
+
+libVISUEngineImpl_la-VISU_CorbaMedConvertor.lo: VISU_CorbaMedConvertor.cxx
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_CorbaMedConvertor.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_CorbaMedConvertor.Tpo" -c -o libVISUEngineImpl_la-VISU_CorbaMedConvertor.lo `test -f 'VISU_CorbaMedConvertor.cxx' || echo '$(srcdir)/'`VISU_CorbaMedConvertor.cxx; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_CorbaMedConvertor.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_CorbaMedConvertor.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_CorbaMedConvertor.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_CorbaMedConvertor.cxx' object='libVISUEngineImpl_la-VISU_CorbaMedConvertor.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_CorbaMedConvertor.lo `test -f 'VISU_CorbaMedConvertor.cxx' || echo '$(srcdir)/'`VISU_CorbaMedConvertor.cxx
+
+libVISUEngineImpl_la-VISU_DumpPython.lo: VISU_DumpPython.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_DumpPython.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_DumpPython.Tpo" -c -o libVISUEngineImpl_la-VISU_DumpPython.lo `test -f 'VISU_DumpPython.cc' || echo '$(srcdir)/'`VISU_DumpPython.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_DumpPython.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_DumpPython.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_DumpPython.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_DumpPython.cc' object='libVISUEngineImpl_la-VISU_DumpPython.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_DumpPython.lo `test -f 'VISU_DumpPython.cc' || echo '$(srcdir)/'`VISU_DumpPython.cc
+
+libVISUEngineImpl_la-SALOME_GenericObjPointer.lo: SALOME_GenericObjPointer.cc
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-SALOME_GenericObjPointer.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-SALOME_GenericObjPointer.Tpo" -c -o libVISUEngineImpl_la-SALOME_GenericObjPointer.lo `test -f 'SALOME_GenericObjPointer.cc' || echo '$(srcdir)/'`SALOME_GenericObjPointer.cc; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-SALOME_GenericObjPointer.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-SALOME_GenericObjPointer.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-SALOME_GenericObjPointer.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='SALOME_GenericObjPointer.cc' object='libVISUEngineImpl_la-SALOME_GenericObjPointer.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-SALOME_GenericObjPointer.lo `test -f 'SALOME_GenericObjPointer.cc' || echo '$(srcdir)/'`SALOME_GenericObjPointer.cc
+
+libVISUEngineImpl_la-VISU_TimeAnimation_moc.lo: VISU_TimeAnimation_moc.cxx
+@am__fastdepCXX_TRUE@ if $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT libVISUEngineImpl_la-VISU_TimeAnimation_moc.lo -MD -MP -MF "$(DEPDIR)/libVISUEngineImpl_la-VISU_TimeAnimation_moc.Tpo" -c -o libVISUEngineImpl_la-VISU_TimeAnimation_moc.lo `test -f 'VISU_TimeAnimation_moc.cxx' || echo '$(srcdir)/'`VISU_TimeAnimation_moc.cxx; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_TimeAnimation_moc.Tpo" "$(DEPDIR)/libVISUEngineImpl_la-VISU_TimeAnimation_moc.Plo"; else rm -f "$(DEPDIR)/libVISUEngineImpl_la-VISU_TimeAnimation_moc.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_TimeAnimation_moc.cxx' object='libVISUEngineImpl_la-VISU_TimeAnimation_moc.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libVISUEngineImpl_la_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o libVISUEngineImpl_la-VISU_TimeAnimation_moc.lo `test -f 'VISU_TimeAnimation_moc.cxx' || echo '$(srcdir)/'`VISU_TimeAnimation_moc.cxx
+
+VISU_I-VISU_I.o: VISU_I.cxx
+@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(VISU_I_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT VISU_I-VISU_I.o -MD -MP -MF "$(DEPDIR)/VISU_I-VISU_I.Tpo" -c -o VISU_I-VISU_I.o `test -f 'VISU_I.cxx' || echo '$(srcdir)/'`VISU_I.cxx; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/VISU_I-VISU_I.Tpo" "$(DEPDIR)/VISU_I-VISU_I.Po"; else rm -f "$(DEPDIR)/VISU_I-VISU_I.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_I.cxx' object='VISU_I-VISU_I.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(VISU_I_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o VISU_I-VISU_I.o `test -f 'VISU_I.cxx' || echo '$(srcdir)/'`VISU_I.cxx
+
+VISU_I-VISU_I.obj: VISU_I.cxx
+@am__fastdepCXX_TRUE@ if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(VISU_I_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT VISU_I-VISU_I.obj -MD -MP -MF "$(DEPDIR)/VISU_I-VISU_I.Tpo" -c -o VISU_I-VISU_I.obj `if test -f 'VISU_I.cxx'; then $(CYGPATH_W) 'VISU_I.cxx'; else $(CYGPATH_W) '$(srcdir)/VISU_I.cxx'; fi`; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/VISU_I-VISU_I.Tpo" "$(DEPDIR)/VISU_I-VISU_I.Po"; else rm -f "$(DEPDIR)/VISU_I-VISU_I.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='VISU_I.cxx' object='VISU_I-VISU_I.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(VISU_I_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o VISU_I-VISU_I.obj `if test -f 'VISU_I.cxx'; then $(CYGPATH_W) 'VISU_I.cxx'; else $(CYGPATH_W) '$(srcdir)/VISU_I.cxx'; fi`
+
+.cxx.o:
+@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
+
+.cxx.obj:
+@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
+
+.cxx.lo:
+@am__fastdepCXX_TRUE@ if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $<
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+
+distclean-libtool:
+ -rm -f libtool
+uninstall-info-am:
+install-salomeincludeHEADERS: $(salomeinclude_HEADERS)
+ @$(NORMAL_INSTALL)
+ test -z "$(salomeincludedir)" || $(mkdir_p) "$(DESTDIR)$(salomeincludedir)"
+ @list='$(salomeinclude_HEADERS)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(salomeincludeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(salomeincludedir)/$$f'"; \
+ $(salomeincludeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(salomeincludedir)/$$f"; \
+ done
+
+uninstall-salomeincludeHEADERS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(salomeinclude_HEADERS)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(salomeincludedir)/$$f'"; \
+ rm -f "$(DESTDIR)$(salomeincludedir)/$$f"; \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+distdir: $(DISTFILES)
+ $(mkdir_p) $(distdir)/../../adm_local/unix
+ @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
+ list='$(DISTFILES)'; for file in $$list; do \
+ case $$file in \
+ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+ esac; \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+ dir="/$$dir"; \
+ $(mkdir_p) "$(distdir)$$dir"; \
+ else \
+ dir=''; \
+ fi; \
+ if test -d $$d/$$file; then \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(HEADERS)
+install-binPROGRAMS: install-libLTLIBRARIES
+
+installdirs:
+ for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(salomeincludedir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \
+ clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-libtool distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-salomeincludeHEADERS
+
+install-exec-am: install-binPROGRAMS install-libLTLIBRARIES
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+ mostlyclean-libtool mostlyclean-local
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-binPROGRAMS uninstall-info-am \
+ uninstall-libLTLIBRARIES uninstall-salomeincludeHEADERS
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+ clean-generic clean-libLTLIBRARIES clean-libtool ctags \
+ distclean distclean-compile distclean-generic \
+ distclean-libtool distclean-tags distdir dvi dvi-am html \
+ html-am info info-am install install-am install-binPROGRAMS \
+ install-data install-data-am install-exec install-exec-am \
+ install-info install-info-am install-libLTLIBRARIES \
+ install-man install-salomeincludeHEADERS install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic mostlyclean-libtool mostlyclean-local pdf \
+ pdf-am ps ps-am tags uninstall uninstall-am \
+ uninstall-binPROGRAMS uninstall-info-am \
+ uninstall-libLTLIBRARIES uninstall-salomeincludeHEADERS
+
+
+# common rules
+
+# moc-files generation
+%_moc.cxx: %.h
+ $(MOC) $< -o $@
+
+# qm-files generation
+%.qm: %.po
+ $(MSG2QM) $< $@
+
+mostlyclean-local:
+ rm -f @builddir@/*_moc.cxx
+ rm -f @builddir@/*.qm
+
+# tests
+tests: unittest
-@CONCLUDE@
+unittest: $(UNIT_TEST_PROG)
+ @if test "x$(UNIT_TEST_PROG)" != "x"; then \
+ $(UNIT_TEST_PROG); \
+ fi;
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
SALOMEDS::SObject_var aFieldSO;
for(;anIter->More();anIter->Next()) {
SALOMEDS::GenericAttribute_var anAttr;
- if (anIter->Value()->FindAttribute(anAttr,"AttributeComment")) {
- SALOMEDS::AttributeComment_var aCmnt = SALOMEDS::AttributeComment::_narrow(anAttr);
+ if (anIter->Value()->FindAttribute(anAttr,"AttributeString")) {
+ SALOMEDS::AttributeString_var aCmnt = SALOMEDS::AttributeString::_narrow(anAttr);
CORBA::String_var aString = aCmnt->Value();
string aValue(aString);
if (aValue == theComment) {
aPRef->SetValue(thePersistentRef.c_str());
}
if(theComment != ""){
- anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributeComment");
- SALOMEDS::AttributeComment_var aCmnt = SALOMEDS::AttributeComment::_narrow(anAttr);
+ anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributeString");
+ SALOMEDS::AttributeString_var aCmnt = SALOMEDS::AttributeString::_narrow(anAttr);
aCmnt->SetValue(theComment.c_str());
if(MYDEBUG) INFOS("CreateAttributes - Comment = "<<theComment);
}
aPRef->SetValue(thePersistentRef);
}
if (theComment != "") {
- anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributeComment");
- _PTR(AttributeComment) aCmnt (anAttr);
+ anAttr = aStudyBuilder->FindOrCreateAttribute(newObj, "AttributeString");
+ _PTR(AttributeString) aCmnt (anAttr);
aCmnt->SetValue(theComment);
if (MYDEBUG) INFOS("CreateAttributes - Comment = " << theComment);
}
#ifndef __VISU_CONFIG_H__
#define __VISU_CONFIG_H__
+#include "VISU_I.hxx"
+
// IDL headers
#include "SALOMEconfig.h"
#include CORBA_SERVER_HEADER(VISU_Gen)
namespace VISU
{
- SUIT_Session *GetSession();
- SUIT_ResourceMgr *GetResourceMgr();
+ VISU_I_EXPORT SUIT_Session *GetSession();
+ VISU_I_EXPORT SUIT_ResourceMgr *GetResourceMgr();
//===========================================================================
class VISU_Gen_i;
- class Base_i : public virtual POA_VISU::Base,
+ class VISU_I_EXPORT Base_i : public virtual POA_VISU::Base,
public virtual PortableServer::RefCountServantBase
{
public:
//===========================================================================
- class Mutex{
+ class VISU_I_EXPORT Mutex{
QMutex* myMutex;
int isQAppLocked;
public:
//===========================================================================
- class Storable : public virtual Base_i {
+ class VISU_I_EXPORT Storable : public virtual Base_i {
protected:
virtual void ToStream(std::ostringstream& theStr) = 0;
public:
};
//===========================================================================
- const CORBA::Boolean IsMultifile();
- QString GenerateName(const std::string& theFmt, int theId);
+ VISU_I_EXPORT
+ const CORBA::Boolean
+ IsMultifile();
+
+ VISU_I_EXPORT
+ QString
+ GenerateName(const std::string& theFmt, int theId);
+
+ VISU_I_EXPORT
+ PortableServer::ServantBase_var
+ GetServant(CORBA::Object_ptr theObject);
+
+ VISU_I_EXPORT
+ CORBA::Object_var
+ ClientSObjectToObject(_PTR(SObject) theSObject);
+
+ VISU_I_EXPORT
+ CORBA::Object_var
+ SObjectToObject(SALOMEDS::SObject_ptr);
- PortableServer::ServantBase_var GetServant(CORBA::Object_ptr theObject);
- CORBA::Object_var ClientSObjectToObject(_PTR(SObject) theSObject);
- CORBA::Object_var SObjectToObject(SALOMEDS::SObject_ptr);
+ VISU_I_EXPORT
+ _PTR(SComponent)
+ ClientFindOrCreateVisuComponent(_PTR(Study) theStudyDocument);
- _PTR(SComponent) ClientFindOrCreateVisuComponent(_PTR(Study) theStudyDocument);
- SALOMEDS::SComponent_var FindOrCreateVisuComponent(SALOMEDS::Study_ptr theStudyDocument);
+ VISU_I_EXPORT
+ SALOMEDS::SComponent_var
+ FindOrCreateVisuComponent(SALOMEDS::Study_ptr theStudyDocument);
+ VISU_I_EXPORT
std::string
CreateAttributes(SALOMEDS::Study_ptr theStudyDocument,
const std::string& theFatherEntry,
const std::string& theComment,
CORBA::Boolean theCreateNew = true);
+ VISU_I_EXPORT
std::string
CreateAttributes(_PTR(Study) theStudyDocument,
const std::string& theFatherEntry,
const std::string& theComment,
CORBA::Boolean theCreateNew = true);
+ VISU_I_EXPORT
std::string
FindEntryWithComment(SALOMEDS::Study_ptr theStudyDocument,
const std::string& theStartEntry,
const std::string& theComment,
int IsAllLevels = true);
+ VISU_I_EXPORT
SALOMEDS::SObject_var
GetSObject(_PTR(SObject));
+ VISU_I_EXPORT
_PTR(SObject)
GetClientSObject(SALOMEDS::SObject_var, _PTR(Study));
+ VISU_I_EXPORT
SALOMEDS::Study_var
GetDSStudy(_PTR(Study));
+ VISU_I_EXPORT
void
RemoveFromStudy(SALOMEDS::SObject_ptr theSObject,
bool theIsAttrOnly = true,
bool theDestroySubObjects = false);
+ VISU_I_EXPORT
void
RemoveFromStudy(_PTR(SObject) theSObject,
bool theIsAttrOnly = true,
#endif
-//============================================================================
+//---------------------------------------------------------------
+namespace
+{
+ std::string
+ FindOrCreate3DPresentationsFolder(SALOMEDS::Study_ptr theStudy)
+ {
+ static char aFolderName[] = "3D Presentations";
+ CORBA::String_var anEntry;
+ SALOMEDS::SObject_var aSObject = theStudy->FindObject(aFolderName);
+ if(!CORBA::is_nil(aSObject) && aSObject->Depth() == 3){
+ anEntry = aSObject->GetID();
+ return anEntry.in();
+ }
+ SALOMEDS::SComponent_var aSComponent = VISU::FindOrCreateVisuComponent(theStudy);
+ CORBA::String_var aFatherEntry = aSComponent->GetID();
+ anEntry = VISU::CreateAttributes(theStudy,
+ aFatherEntry.in(),
+ "",
+ "",
+ aFolderName,
+ "",
+ "",
+ true).c_str();
+ return anEntry.in();
+ }
+}
+
+//---------------------------------------------------------------
VISU::ColoredPrs3d_i::
ColoredPrs3d_i(EPublishInStudyMode thePublishInStudyMode) :
myPublishInStudyMode(thePublishInStudyMode),
}
//----------------------------------------------------------------------------
-std::string
-VISU::FindOrCreate3DPresentationsFolder(SALOMEDS::Study_ptr theStudy)
-{
- static char aFolderName[] = "3D Presentations";
- CORBA::String_var anEntry;
- SALOMEDS::SObject_var aSObject = theStudy->FindObject(aFolderName);
- if(!CORBA::is_nil(aSObject) && aSObject->Depth() == 3){
- anEntry = aSObject->GetID();
- return anEntry.in();
- }
- SALOMEDS::SComponent_var aSComponent = VISU::FindOrCreateVisuComponent(theStudy);
- CORBA::String_var aFatherEntry = aSComponent->GetID();
- anEntry = VISU::CreateAttributes(theStudy,
- aFatherEntry.in(),
- "",
- "",
- aFolderName,
- "",
- "",
- true).c_str();
- return anEntry.in();
-}
-//----------------------------------------------------------------------------
+
VISU::Storable*
VISU::ColoredPrs3d_i
::Build(EBuildMode theBuildMode)
}else if(myPublishInStudyMode == EPublishIndependently){
SetName(GenerateName().latin1(), false);
CORBA::String_var anIOR = GetID();
- std::string aFatherEntry = VISU::FindOrCreate3DPresentationsFolder(GetStudyDocument());
+ std::string aFatherEntry = ::FindOrCreate3DPresentationsFolder(GetStudyDocument());
aComment.sprintf("myComment=%s",
GetComment());
CreateAttributes(GetStudyDocument(),
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
//
-// File : VISU_PrsObject_i.hxx
+// File : VISU_ColoredPrs3d_i.hh
// Author : Alexey PETROV
// Module : VISU
namespace VISU
{
- std::string
- FindOrCreate3DPresentationsFolder(SALOMEDS::Study_ptr theStudy);
-
- //============================================================================
- class ColoredPrs3d_i : public virtual POA_VISU::ColoredPrs3d,
- public virtual Prs3d_i
+ //----------------------------------------------------------------------------
+ class VISU_I_EXPORT ColoredPrs3d_i : public virtual POA_VISU::ColoredPrs3d,
+ public virtual Prs3d_i
{
- ColoredPrs3d_i();
ColoredPrs3d_i(const ColoredPrs3d_i&);
+
public:
//----------------------------------------------------------------------------
typedef Prs3d_i TSuperClass;
bool
CheckIsPossible() = 0;
+ virtual
+ const char*
+ GetIconName() = 0;
+
/*!
Creates proper instance of VTK pipeline.
*/
#include <boost/tuple/tuple.hpp>
-using namespace std;
-using namespace VISU;
+#include "ReceiverFactory.hxx"
+#include "MED_SliceArray.hxx"
#define USER_INTERLACE MED_FULL_INTERLACE
namespace
{
- using namespace SALOME_MED;
+ const int MED_NBR_GEOMETRIE_MAILLE = 17;
- const int MED_NBR_GEOMETRIE_MAILLE = 15;
-
- medGeometryElement
+ SALOME_MED::medGeometryElement
CELLGEOM[MED_NBR_GEOMETRIE_MAILLE] = {
- MED_POINT1,
- MED_SEG2,
- MED_SEG3,
- MED_TRIA3,
- MED_QUAD4,
- MED_TRIA6,
- MED_QUAD8,
- MED_TETRA4,
- MED_PYRA5,
- MED_PENTA6,
- MED_HEXA8,
- MED_TETRA10,
- MED_PYRA13,
- MED_PENTA15,
- MED_HEXA20
+ SALOME_MED::MED_POINT1,
+ SALOME_MED::MED_SEG2,
+ SALOME_MED::MED_SEG3,
+ SALOME_MED::MED_TRIA3,
+ SALOME_MED::MED_QUAD4,
+ SALOME_MED::MED_TRIA6,
+ SALOME_MED::MED_QUAD8,
+ SALOME_MED::MED_TETRA4,
+ SALOME_MED::MED_PYRA5,
+ SALOME_MED::MED_PENTA6,
+ SALOME_MED::MED_HEXA8,
+ SALOME_MED::MED_TETRA10,
+ SALOME_MED::MED_PYRA13,
+ SALOME_MED::MED_PENTA15,
+ SALOME_MED::MED_HEXA20,
+ SALOME_MED::MED_POLYGON,
+ SALOME_MED::MED_POLYHEDRA
};
- const int MED_NBR_GEOMETRIE_FACE = 4;
+ const int MED_NBR_GEOMETRIE_FACE = 5;
- medGeometryElement
+ SALOME_MED::medGeometryElement
FACEGEOM[MED_NBR_GEOMETRIE_FACE] = {
- MED_TRIA3,
- MED_QUAD4,
- MED_TRIA6,
- MED_QUAD8
+ SALOME_MED::MED_TRIA3,
+ SALOME_MED::MED_QUAD4,
+ SALOME_MED::MED_TRIA6,
+ SALOME_MED::MED_QUAD8,
+ SALOME_MED::MED_POLYGON
};
const int MED_NBR_GEOMETRIE_ARETE = 2;
- medGeometryElement
+ SALOME_MED::medGeometryElement
EDGEGEOM[MED_NBR_GEOMETRIE_ARETE] = {
- MED_SEG2,
- MED_SEG3
+ SALOME_MED::MED_SEG2,
+ SALOME_MED::MED_SEG3
};
const int MED_NBR_GEOMETRIE_NODE = 1;
- medGeometryElement
+ SALOME_MED::medGeometryElement
NODEGEOM[MED_NBR_GEOMETRIE_NODE] = {
- MED_POINT1,
+ SALOME_MED::MED_POINT1,
};
//---------------------------------------------------------------
int
- GetEntity2Geom(const VISU::TEntity& theEntity, medGeometryElement*& theVector)
+ GetEntity2Geom(const VISU::TEntity& theEntity,
+ SALOME_MED::medGeometryElement*& theVector)
{
switch(theEntity){
- case CELL_ENTITY: theVector = CELLGEOM; return MED_NBR_GEOMETRIE_MAILLE; break;
- case FACE_ENTITY: theVector = FACEGEOM; return MED_NBR_GEOMETRIE_FACE; break;
- case EDGE_ENTITY: theVector = EDGEGEOM; return MED_NBR_GEOMETRIE_ARETE; break;
- case NODE_ENTITY: theVector = NODEGEOM; return MED_NBR_GEOMETRIE_NODE; break;
+ case VISU::CELL_ENTITY:
+ theVector = CELLGEOM;
+ return MED_NBR_GEOMETRIE_MAILLE;
+ case VISU::FACE_ENTITY:
+ theVector = FACEGEOM;
+ return MED_NBR_GEOMETRIE_FACE;
+ case VISU::EDGE_ENTITY:
+ theVector = EDGEGEOM;
+ return MED_NBR_GEOMETRIE_ARETE;
+ case VISU::NODE_ENTITY:
+ theVector = NODEGEOM;
+ return MED_NBR_GEOMETRIE_NODE;
}
return -1;
}
MEDGeom2NbNodes(int theMEDGeomType)
{
switch(theMEDGeomType){
- case MED_NONE: return 0;
- case MED_POINT1: return 1;
- case MED_SEG2: return 2;
- case MED_SEG3: return 3;
- case MED_TRIA3: return 3;
- case MED_TRIA6: return 6;
- case MED_QUAD4: return 4;
- case MED_QUAD8: return 8;
- case MED_TETRA4: return 4;
- case MED_TETRA10: return 10;
- case MED_HEXA8: return 8;
- case MED_HEXA20: return 20;
- case MED_PENTA6: return 6;
- case MED_PENTA15: return 15;
- case MED_PYRA5: return 5;
- case MED_PYRA13: return 13;
+ case SALOME_MED::MED_NONE:
+ return 0;
+ case SALOME_MED::MED_POINT1:
+ return 1;
+ case SALOME_MED::MED_SEG2:
+ return 2;
+ case SALOME_MED::MED_SEG3:
+ return 3;
+ case SALOME_MED::MED_TRIA3:
+ return 3;
+ case SALOME_MED::MED_TRIA6:
+ return 6;
+ case SALOME_MED::MED_QUAD4:
+ return 4;
+ case SALOME_MED::MED_QUAD8:
+ return 8;
+ case SALOME_MED::MED_TETRA4:
+ return 4;
+ case SALOME_MED::MED_TETRA10:
+ return 10;
+ case SALOME_MED::MED_HEXA8:
+ return 8;
+ case SALOME_MED::MED_HEXA20:
+ return 20;
+ case SALOME_MED::MED_PENTA6:
+ return 6;
+ case SALOME_MED::MED_PENTA15:
+ return 15;
+ case SALOME_MED::MED_PYRA5:
+ return 5;
+ case SALOME_MED::MED_PYRA13:
+ return 13;
}
return -1;
}
//---------------------------------------------------------------
VISU::EGeometry
- MEDGeom2VISU(medGeometryElement theGeom)
+ MEDGeom2VISU(SALOME_MED::medGeometryElement theGeom)
{
switch(theGeom){
- case MED_POINT1: return VISU::ePOINT1;
- case MED_SEG2: return VISU::eSEG2;
- case MED_SEG3: return VISU::eSEG3;
- case MED_TRIA3: return VISU::eTRIA3;
- case MED_TRIA6: return VISU::eTRIA6;
- case MED_QUAD4: return VISU::eQUAD4;
- case MED_QUAD8: return VISU::eQUAD8;
- case MED_TETRA4: return VISU::eTETRA4;
- case MED_TETRA10: return VISU::eTETRA10;
- case MED_HEXA8: return VISU::eHEXA8;
- case MED_HEXA20: return VISU::eHEXA20;
- case MED_PENTA6: return VISU::ePENTA6;
- case MED_PENTA15: return VISU::ePENTA15;
- case MED_PYRA5: return VISU::ePYRA5;
- case MED_PYRA13: return VISU::ePYRA13;
+ case SALOME_MED::MED_POINT1:
+ return VISU::ePOINT1;
+ case SALOME_MED::MED_SEG2:
+ return VISU::eSEG2;
+ case SALOME_MED::MED_SEG3:
+ return VISU::eSEG3;
+ case SALOME_MED::MED_TRIA3:
+ return VISU::eTRIA3;
+ case SALOME_MED::MED_TRIA6:
+ return VISU::eTRIA6;
+ case SALOME_MED::MED_QUAD4:
+ return VISU::eQUAD4;
+ case SALOME_MED::MED_QUAD8:
+ return VISU::eQUAD8;
+ case SALOME_MED::MED_TETRA4:
+ return VISU::eTETRA4;
+ case SALOME_MED::MED_TETRA10:
+ return VISU::eTETRA10;
+ case SALOME_MED::MED_HEXA8:
+ return VISU::eHEXA8;
+ case SALOME_MED::MED_HEXA20:
+ return VISU::eHEXA20;
+ case SALOME_MED::MED_PENTA6:
+ return VISU::ePENTA6;
+ case SALOME_MED::MED_PENTA15:
+ return VISU::ePENTA15;
+ case SALOME_MED::MED_PYRA5:
+ return VISU::ePYRA5;
+ case SALOME_MED::MED_PYRA13:
+ return VISU::ePYRA13;
+ case SALOME_MED::MED_POLYGON:
+ return VISU::ePOLYGONE;
+ case SALOME_MED::MED_POLYHEDRA:
+ return VISU::ePOLYEDRE;
}
return VISU::eNONE;
}
+ //---------------------------------------------------------------
+ SALOME_MED::medGeometryElement
+ VISUGeomToMED(int theGeom)
+ {
+ switch(theGeom){
+ case VISU::ePOINT1:
+ return SALOME_MED::MED_POINT1;
+ case VISU::eSEG2:
+ return SALOME_MED::MED_SEG2;
+ case VISU::eTRIA3:
+ return SALOME_MED::MED_TRIA3;
+ case VISU::eQUAD4:
+ return SALOME_MED::MED_QUAD4;
+ case VISU::eTETRA4:
+ return SALOME_MED::MED_TETRA4;
+ case VISU::eHEXA8:
+ return SALOME_MED::MED_HEXA8;
+ case VISU::ePENTA6:
+ return SALOME_MED::MED_PENTA6;
+ case VISU::ePYRA5:
+ return SALOME_MED::MED_PYRA5;
+
+ case VISU::eSEG3:
+ return SALOME_MED::MED_SEG3;
+ case VISU::eTRIA6:
+ return SALOME_MED::MED_TRIA6;
+ case VISU::eQUAD8:
+ return SALOME_MED::MED_QUAD8;
+ case VISU::eTETRA10:
+ return SALOME_MED::MED_TETRA10;
+ case VISU::eHEXA20:
+ return SALOME_MED::MED_HEXA20;
+ case VISU::ePENTA15:
+ return SALOME_MED::MED_PENTA15;
+ case VISU::ePYRA13:
+ return SALOME_MED::MED_PYRA13;
+ case VISU::ePOLYGONE:
+ return SALOME_MED::MED_POLYGON;
+ case VISU::ePOLYEDRE:
+ return SALOME_MED::MED_POLYHEDRA;
+ }
+ return SALOME_MED::medGeometryElement(-1);
+ }
//---------------------------------------------------------------
- medGeometryElement
+ SALOME_MED::medGeometryElement
VTKGeomToMED(int theVTKGeomType)
{
switch(theVTKGeomType){
- case VTK_VERTEX: return MED_POINT1;
- case VTK_LINE: return MED_SEG2;
- case VTK_TRIANGLE: return MED_TRIA3;
- case VTK_QUAD: return MED_QUAD4;
- case VTK_TETRA: return MED_TETRA4;
- case VTK_HEXAHEDRON: return MED_HEXA8;
- case VTK_WEDGE: return MED_PENTA6;
- case VTK_PYRAMID: return MED_PYRA5;
+ case VTK_VERTEX:
+ return SALOME_MED::MED_POINT1;
+ case VTK_LINE:
+ return SALOME_MED::MED_SEG2;
+ case VTK_TRIANGLE:
+ return SALOME_MED::MED_TRIA3;
+ case VTK_QUAD:
+ return SALOME_MED::MED_QUAD4;
+ case VTK_TETRA:
+ return SALOME_MED::MED_TETRA4;
+ case VTK_HEXAHEDRON:
+ return SALOME_MED::MED_HEXA8;
+ case VTK_WEDGE:
+ return SALOME_MED::MED_PENTA6;
+ case VTK_PYRAMID:
+ return SALOME_MED::MED_PYRA5;
+ case VTK_POLYGON:
+ return SALOME_MED::MED_POLYGON;
}
- return medGeometryElement(-1);
+ return SALOME_MED::medGeometryElement(-1);
}
//---------------------------------------------------------------
VISU::TEntity
- MEDEntityToVTK(medEntityMesh theMEDEntity)
+ MEDEntityToVTK(SALOME_MED::medEntityMesh theMEDEntity)
{
switch(theMEDEntity){
- case MED_NODE: return NODE_ENTITY;
- case MED_EDGE: return EDGE_ENTITY;
- case MED_FACE: return FACE_ENTITY;
- case MED_CELL: return CELL_ENTITY;
+ case SALOME_MED::MED_NODE:
+ return VISU::NODE_ENTITY;
+ case SALOME_MED::MED_EDGE:
+ return VISU::EDGE_ENTITY;
+ case SALOME_MED::MED_FACE:
+ return VISU::FACE_ENTITY;
+ case SALOME_MED::MED_CELL:
+ return VISU::CELL_ENTITY;
}
return VISU::TEntity(-1);
}
//---------------------------------------------------------------
- medEntityMesh
+ SALOME_MED::medEntityMesh
VTKEntityToMED(VISU::TEntity theVTKEntity)
{
switch(theVTKEntity){
- case NODE_ENTITY: return MED_NODE;
- case EDGE_ENTITY: return MED_EDGE;
- case FACE_ENTITY: return MED_FACE;
- case CELL_ENTITY: return MED_CELL;
+ case VISU::NODE_ENTITY:
+ return SALOME_MED::MED_NODE;
+ case VISU::EDGE_ENTITY:
+ return SALOME_MED::MED_EDGE;
+ case VISU::FACE_ENTITY:
+ return SALOME_MED::MED_FACE;
+ case VISU::CELL_ENTITY:
+ return SALOME_MED::MED_CELL;
}
- return medEntityMesh(-1);
+ return SALOME_MED::medEntityMesh(-1);
}
SALOME_MED::MESH_ptr theMEDMesh,
const VISU::TEntity& theVEntity)
{
- medGeometryElement* aGeomElems;
theNbCells = theCellsSize = 0;
- int iGeomEnd = GetEntity2Geom(theVEntity,aGeomElems);
- const medEntityMesh& aMEntity = VTKEntityToMED(theVEntity);
if(MYDEBUG) MESSAGE("GetCellsSize - theVEntity = "<<theVEntity);
+ const SALOME_MED::medEntityMesh& aMEntity = VTKEntityToMED(theVEntity);
+ SALOME_MED::MESH::connectivityInfos_var connInfo=theMEDMesh->getConnectGlobal(aMEntity);
+ int iGeomEnd = connInfo->meshTypes.length();
for(int iGeom = 0; iGeom < iGeomEnd; iGeom++){
- medGeometryElement aMEDGeom = aGeomElems[iGeom];
- int iNumElemEnd = theMEDMesh->getNumberOfElements(aMEntity,aMEDGeom);
+ int iNumElemEnd = connInfo->numberOfElements[iGeom];
if(iNumElemEnd > 0){
if(MYDEBUG) MESSAGE("GetCellsSize - iNumElemEnd = "<<iNumElemEnd);
- theCellsSize += iNumElemEnd*(MEDGeom2NbNodes(aMEDGeom) + 1);
+ theCellsSize += iNumElemEnd + connInfo->nodalConnectivityLength[iGeom];
theNbCells += iNumElemEnd;
}
}
vtkIdType& theCellsSize,
SALOME_MED::FAMILY_ptr theMEDFamily)
{
- medGeometryElement_array_var aGeom = theMEDFamily->getTypes();
- int iGeomEnd = aGeom->length();
theNbCells = theCellsSize = 0;
+ SALOME_MED::SUPPORT::supportInfos_var suppInfo=theMEDFamily->getSupportGlobal();
+ int iGeomEnd = suppInfo->types.length();
if(MYDEBUG) MESSAGE("GetCellsSize - iGeomEnd = "<<iGeomEnd);
for(int iGeom = 0; iGeom < iGeomEnd; iGeom++) {
- medGeometryElement aMEDGeom = aGeom[iGeom];
- long_array_var aCellNumForType = theMEDFamily->getNumber(aMEDGeom);
- int iNumElemEnd = aCellNumForType->length();
+ int iNumElemEnd = suppInfo->nbEltTypes[iGeom];
if(iNumElemEnd > 0){
if(MYDEBUG) MESSAGE("GetCellsSize - iNumElemEnd = "<<iNumElemEnd);
theNbCells += iNumElemEnd;
- theCellsSize += iNumElemEnd*(MEDGeom2NbNodes(aMEDGeom) + 1);
+ theCellsSize += iNumElemEnd + suppInfo->nodalConnectivityLength[iGeom];
}
}
}
SALOME_MED::MESH_ptr theMEDMesh,
const VISU::TEntity& theEntity)
{
- TMeshOnEntityMap& aMeshOnEntityMap = theMesh->myMeshOnEntityMap;
+ VISU::TMeshOnEntityMap& aMeshOnEntityMap = theMesh->myMeshOnEntityMap;
VISU::PCMeshOnEntity aMeshOnEntity = aMeshOnEntityMap[theEntity];
- if(theEntity == NODE_ENTITY){
+ if(theEntity == VISU::NODE_ENTITY){
aMeshOnEntity->myNbCells = theMesh->myNbPoints;
aMeshOnEntity->myCellsSize = 2*theMesh->myNbPoints;
}else{
//---------------------------------------------------------------
- PCMeshOnEntity
+ VISU::PCMeshOnEntity
InitMeshOnEntity(const VISU::PCMesh& theMesh,
const VISU::TEntity& theEntity,
const VISU::PCMeshOnEntity& theMeshOnEntity)
{
- PCMeshOnEntity aMeshOnEntity;
- TMeshOnEntityMap& aMeshOnEntityMap = theMesh->myMeshOnEntityMap;
- TMeshOnEntityMap::const_iterator anIter = aMeshOnEntityMap.find(theEntity);
+ VISU::PCMeshOnEntity aMeshOnEntity;
+ VISU::TMeshOnEntityMap& aMeshOnEntityMap = theMesh->myMeshOnEntityMap;
+ VISU::TMeshOnEntityMap::const_iterator anIter = aMeshOnEntityMap.find(theEntity);
if(anIter == aMeshOnEntityMap.end()){
- aMeshOnEntity.reset(new TCMeshOnEntity());
+ aMeshOnEntity.reset(new VISU::TCMeshOnEntity());
*aMeshOnEntity = *theMeshOnEntity;
aMeshOnEntity->myEntity = theEntity;
aMeshOnEntityMap[theEntity] = aMeshOnEntity;
return aMeshOnEntity;
}
-
+
+
+ VISU::PCSubProfile
+ CrSubProfile(const VISU::PCMesh theMesh,
+ const VISU::PCField theField,
+ const VISU::TCMeshOnEntity& theMeshOnEntity,
+ SALOME_MED::medGeometryElement theMGeom,
+ int theNbElems)
+ {
+ if (MYDEBUG) MESSAGE("CrSubProfile");
+ VISU::EGeometry aEGeom = MEDGeom2VISU(theMGeom);
+ vtkIdType aVNbNodes = VISUGeom2NbNodes(aEGeom);
+
+ VISU::PCSubProfile aSubProfile(new VISU::TCSubProfile());
+ aSubProfile->myGeom = aEGeom;
+ aSubProfile->myMGeom = theMGeom;
+ aSubProfile->myStatus = VISU::eAddAll;
+ if(MYDEBUG) MESSAGE("theMGeom = "<<theMGeom);
+ const VISU::TCellsFirstIndex& aCellsFirstIndex = theMeshOnEntity.myCellsFirstIndex;
+ VISU::TCellsFirstIndex::const_iterator aTimeStampIter = aCellsFirstIndex.find(theMGeom);
+ if(aTimeStampIter == (theMeshOnEntity.myCellsFirstIndex).end() &&
+ theMGeom != SALOME_MED::MED_POINT1)
+ aSubProfile->myStatus = VISU::eRemoveAll;
+ else if(aTimeStampIter == aCellsFirstIndex.end() && theMGeom == SALOME_MED::MED_POINT1){
+ if(theNbElems > 0){
+ aSubProfile->myName = "";
+ aSubProfile->myStatus = VISU::eAddPart;
+
+ aSubProfile->myNbCells = theNbElems;
+ aSubProfile->myCellsSize = aSubProfile->myNbCells;
+ }
+ }else{
+ if(theNbElems > 0){
+ aSubProfile->myName = "";
+ aSubProfile->myStatus = VISU::eAddPart;
+
+ aSubProfile->myNbCells = theNbElems;
+ aSubProfile->myCellsSize = aSubProfile->myNbCells*aVNbNodes;
+ }
+ }
+
+ if (MYDEBUG) MESSAGE("CrSubProfile done");
+ return aSubProfile;
+ }
+
+ VISU::TProfileKey
+ GetProfileKey(const VISU::PCMesh theMesh,
+ const VISU::PCField theField,
+ const VISU::PCValForTime theValForTime,
+ const VISU::TCMeshOnEntity& theMeshOnEntity)
+ {
+ if (MYDEBUG) MESSAGE("GetProfileKey");
+
+ VISU::TProfileKey aProfileKey;
+
+ const VISU::TCellsFirstIndex& aFirstIndex = theMeshOnEntity.myCellsFirstIndex;
+ VISU::TCellsFirstIndex::const_iterator anIter = aFirstIndex.begin();
+ SALOME_MED::SUPPORT_var aSupport = theValForTime->myField->getSupport();
+ int aNbElems = 0;
+ if(anIter == aFirstIndex.end() && aSupport->getEntity() == SALOME_MED::MED_NODE){
+ SALOME_MED::medGeometryElement aMGeom = SALOME_MED::MED_POINT1;
+ try{
+ aNbElems = aSupport->getNumberOfElements(SALOME_MED::MED_NONE);
+ if(MYDEBUG)MESSAGE("aMGeom="<<aMGeom<<" aNbElems="<<aNbElems);
+ }catch(...){
+ MESSAGE("Error in theValForTime->myField->getSupport()->getNumberOfElements(aMGeom);");
+ }
+
+ VISU::PCSubProfile aSubProfile = CrSubProfile(theMesh,
+ theField,
+ theMeshOnEntity,
+ aMGeom,
+ aNbElems);
+ aProfileKey.insert(aSubProfile);
+ }
+
+ for(; anIter != aFirstIndex.end(); anIter++){
+ SALOME_MED::medGeometryElement aMGeom = anIter->first;
+ try{
+ aNbElems = aSupport->getNumberOfElements(aMGeom);
+ if(MYDEBUG)MESSAGE("aMGeom="<<aMGeom<<" aNbElems="<<aNbElems);
+ } catch(...){
+ MESSAGE("Error in theValForTime->myField->getSupport()->getNumberOfElements(aMGeom);");
+ continue;
+ }
+ VISU::PCSubProfile aSubProfile = CrSubProfile(theMesh,
+ theField,
+ theMeshOnEntity,
+ aMGeom,
+ aNbElems);
+ aProfileKey.insert(aSubProfile);
+ }
+
+ if (MYDEBUG) MESSAGE("GetProfileKey done");
+ return aProfileKey;
+ }
+
+ void
+ InitProfile(VISU::PCMesh theMesh,
+ VISU::PCField theField,
+ VISU::PCValForTime theValForTime,
+ VISU::TCMeshOnEntity& theMeshOnEntity)
+ {
+ if (MYDEBUG) MESSAGE("InitProfile");
+
+ VISU::TProfileMap& aProfileMap = theMeshOnEntity.myProfileMap;
+
+ VISU::TProfileKey aProfileKey = GetProfileKey(theMesh,
+ theField,
+ theValForTime,
+ theMeshOnEntity);
+
+ VISU::TProfileMap::const_iterator anIter = aProfileMap.find(aProfileKey);
+ if(anIter != aProfileMap.end()){
+ theValForTime->myProfile = anIter->second;
+ if(MYDEBUG) MESSAGE("aProfileMap.find(aProfileKey) aProfile->myGeom=");
+ }else{
+ VISU::PCProfile aProfile(new VISU::TCProfile());
+ VISU::TGeom2SubProfile& aGeom2SubProfile = aProfile->myGeom2SubProfile;
+
+ VISU::TProfileKey::const_iterator anIter = aProfileKey.begin();
+ for(; anIter != aProfileKey.end(); anIter++){
+ VISU::PCSubProfile aSubProfile(*anIter);
+
+ if(aProfile->myIsAll && aSubProfile->myStatus != VISU::eAddAll)
+ aProfile->myIsAll = false;
+
+ VISU::EGeometry aEGeom = aSubProfile->myGeom;
+ aGeom2SubProfile[aEGeom] = aSubProfile;
+ }
+
+ aProfileMap[aProfileKey] = aProfile;
+ theValForTime->myProfile = aProfile;
+ }
+ if (MYDEBUG) MESSAGE("InitProfile done");
+ }
+
+ void
+ LoadProfile(VISU::PCMesh theMesh,
+ VISU::PCField theField,
+ VISU::PCValForTime theValForTime,
+ VISU::PCMeshOnEntity theMeshOnEntity)
+ {
+ VISU::PCProfile aProfile = theValForTime->myProfile;
+ if (MYDEBUG) MESSAGE("LoadProfile aProfile->myIsDone="<<aProfile->myIsDone);
+ if(aProfile->myIsDone)
+ return;
+
+ const VISU::TGeom2SubProfile& aGeom2SubProfile = aProfile->myGeom2SubProfile;
+ VISU::TGeom2SubProfile::const_iterator aGeom2SubProfileIter = aGeom2SubProfile.begin();
+ if(aGeom2SubProfileIter == aGeom2SubProfile.end()){
+ MESSAGE("Warning! No geom 2 sub profile");
+ }
+ SALOME_MED::SUPPORT_var aSupport = theValForTime->myField->getSupport();
+ for(; aGeom2SubProfileIter != aGeom2SubProfile.end(); aGeom2SubProfileIter++){
+ VISU::EGeometry aEGeom = aGeom2SubProfileIter->first;
+ SALOME_MED::medGeometryElement aMGeom = VISUGeomToMED(aEGeom);
+ VISU::PCSubProfile aSubProfile = aGeom2SubProfileIter->second;
+ SALOME_MED::long_array_var aGeom2ProfileIds;
+ std::vector<int> aGeom2Profile;
+ if(!aSupport->isOnAllElements()){
+ try{
+ if(aMGeom == SALOME_MED::MED_POINT1)
+ aGeom2ProfileIds = aSupport->getNumberFromFile(SALOME_MED::MED_NONE);
+ else
+ aGeom2ProfileIds = aSupport->getNumberFromFile(aMGeom);
+ int aLen = aGeom2ProfileIds->length();
+ if(MYDEBUG) MESSAGE(" - aMGeom="<<aMGeom<<"; aNbCells="<<aLen);
+ for(int i = 0; i < aLen; i++){
+ int anId = aGeom2ProfileIds[i];
+ aGeom2Profile.push_back(anId);
+ if(MYDEBUG) cout << "------------------------------->" << anId << endl;
+ }
+ if(MYDEBUG) cout << endl;
+ } catch(...) {
+ continue;
+ }
+ } else {
+ SALOME_MED::medEntityMesh aMEntity = aSupport->getEntity();
+ int aNbElems = theMesh->myMesh->getNumberOfElements(aMEntity,aMGeom);
+ for(int i = 0; i < aNbElems; i++)
+ aGeom2Profile.push_back(i+1);
+ }
+ if(aGeom2Profile.size()>0){
+ VISU::TSubMeshID& aSubMeshID = aSubProfile->mySubMeshID;
+ int aSize = aGeom2Profile.size();
+ aSubMeshID.resize(aSize);
+ for(int anId = 0; anId < aSize; anId++){
+ aSubMeshID[anId] = aGeom2Profile[anId] - 1;
+ }
+ }
+ }
+
+ aProfile->myIsDone = true;
+ if (MYDEBUG) MESSAGE("LoadProfile done");
+ }
}
//---------------------------------------------------------------
VISU_Convertor*
-VISU_MEDFieldConvertor::Build()
+VISU_MEDFieldConvertor
+::Build()
{
if(myField->_is_nil())
throw std::runtime_error("VISU_MEDFieldConvertor::Build >> myField->_is_nil() !!!");
throw std::runtime_error("VISU_MEDFieldConvertor::Build >> aMEDSupport->_is_nil() !!!");
SALOME_MED::medEntityMesh aMEntity = aMEDSupport->getEntity();
- TEntity aVEntity = MEDEntityToVTK(aMEntity);
+ VISU::TEntity aVEntity = MEDEntityToVTK(aMEntity);
SALOME_MED::MESH_var aMEDMesh = aMEDSupport->getMesh();
if(aMEDMesh->_is_nil())
throw std::runtime_error("VISU_MEDFieldConvertor::Build >> aMEDMesh->_is_nil() !!!");
CORBA::String_var aMeshName = aMEDMesh->getName();
CORBA::String_var aFieldName = myField->getName();
- PCMesh aMesh = myMeshMap[aMeshName.in()](new TCMesh());
- aMesh->myNamedPointCoords(new TNamedPointCoords());
+ VISU::PCMesh aMesh = myMeshMap[aMeshName.in()](new VISU::TCMesh());
+ aMesh->myNamedPointCoords(new VISU::TNamedPointCoords());
aMesh->myNbPoints = aMEDMesh->getNumberOfNodes();
aMesh->myDim = aMEDMesh->getSpaceDimension();
aMesh->myName = aMeshName.in();
if(MYDEBUG) MESSAGE("VISU_MEDFieldConvertor::Build - aMeshName = "<<aMeshName<<"; myDim = "<<aMesh->myDim);
- TMeshOnEntityMap& aMeshOnEntityMap = aMesh->myMeshOnEntityMap;
- PCMeshOnEntity aMeshOnEntity = aMeshOnEntityMap[aVEntity](new TCMeshOnEntity());
+ VISU::TMeshOnEntityMap& aMeshOnEntityMap = aMesh->myMeshOnEntityMap;
+ VISU::PCMeshOnEntity aMeshOnEntity = aMeshOnEntityMap[aVEntity](new VISU::TCMeshOnEntity());
aMeshOnEntity->myEntity = aVEntity;
aMeshOnEntity->myMeshName = aMeshName.in();
aMeshOnEntity->mySupport = aMEDSupport;
- if(aVEntity == NODE_ENTITY)
- ::InitMeshOnEntity(aMesh, CELL_ENTITY, aMeshOnEntity);
+ if(aVEntity == VISU::NODE_ENTITY)
+ ::InitMeshOnEntity(aMesh, VISU::CELL_ENTITY, aMeshOnEntity);
else
- ::InitMeshOnEntity(aMesh, NODE_ENTITY, aMeshOnEntity);
+ ::InitMeshOnEntity(aMesh, VISU::NODE_ENTITY, aMeshOnEntity);
::GetCellsSize(aMesh, aMEDMesh, aVEntity);
- TFieldMap& aFieldMap = aMeshOnEntity->myFieldMap;
- PCField aField = aFieldMap[aFieldName.in()](new TCField());
+ VISU::TFieldMap& aFieldMap = aMeshOnEntity->myFieldMap;
+ VISU::PCField aField = aFieldMap[aFieldName.in()](new VISU::TCField());
aField->myId = myField->getOrderNumber();
aField->myName = aFieldName.in();
aField->myEntity = aVEntity;
if(MYDEBUG) MESSAGE("VISU_MEDFieldConvertor::Build - aMeshName = "<<aMeshName<<"; myDim = "<<aMesh->myDim);
- TValField& aValField = aField->myValField;
+ VISU::TValField& aValField = aField->myValField;
int anId = myField->getIterationNumber();
- PCValForTime aValForTime = aValField[anId](new TCValForTime());
+ VISU::PCValForTime aValForTime = aValField[anId](new VISU::TCValForTime());
aValForTime->myId = anId;
CORBA::Double aDT = myField->getTime();
- aValForTime->myTime = TTime(aDT,"");
+ aValForTime->myTime = VISU::TTime(aDT,"");
aValForTime->myField = myField;
if(MYDEBUG)
//---------------------------------------------------------------
VISU_Convertor*
-VISU_MEDConvertor::Build()
+VISU_MEDConvertor
+::Build()
{
if(mySObject->_is_nil())
throw std::runtime_error("VISU_MEDConvertor::Build >> mySObject->_is_nil() !!!");
}
-namespace{
-
+namespace
+{
using namespace boost;
//---------------------------------------------------------------
//---------------------------------------------------------------
VISU_Convertor*
-VISU_MEDConvertor::Build(SALOME_MED::MED_ptr theMED)
+VISU_MEDConvertor
+::Build(SALOME_MED::MED_ptr theMED)
{
if(CORBA::is_nil(theMED))
return NULL;
if(!anIsSuccess)
continue;
- PCMesh aMesh = myMeshMap[aMeshName.in()](new TCMesh());
+ VISU::PCMesh aMesh = myMeshMap[aMeshName.in()](new VISU::TCMesh());
SALOME_MED::MESH_var aMEDMesh = boost::get<0>(aMeshByNameRet);
- aMesh->myNamedPointCoords(new TNamedPointCoords());
+ aMesh->myNamedPointCoords(new VISU::TNamedPointCoords());
aMesh->myNbPoints = aMEDMesh->getNumberOfNodes();
aMesh->myDim = aMEDMesh->getSpaceDimension();
aMesh->myName = aMeshName.in();
if(!anIsSuccess)
continue;
- TMeshOnEntityMap& aMeshOnEntityMap = aMesh->myMeshOnEntityMap;
+ VISU::TMeshOnEntityMap& aMeshOnEntityMap = aMesh->myMeshOnEntityMap;
SALOMEDS::SObject_var aSupportsSObj = boost::get<0>(aSObjectByNameRet);
SALOMEDS::ChildIterator_var aSupportIterator = aStudy->NewChildIterator(aSupportsSObj);
"' aVEntity = "<<aVEntity);
int aNbCells, aCellsSize;
//Check, if there is any data on the support?
- if(aVEntity == NODE_ENTITY){
+ if(aVEntity == VISU::NODE_ENTITY){
aMesh->myNbPoints = aMeshOnSupport->getNumberOfNodes();
aNbCells = aMesh->myNbPoints;
aCellsSize = 2*aMesh->myNbPoints;
::GetCellsSize(aNbCells,aCellsSize,aMeshOnSupport,aVEntity);
if(aNbCells > 0){
- TMeshOnEntityMap::const_iterator aMeshOnEntityMapIter = aMeshOnEntityMap.find(aVEntity);
- if(aMeshOnEntityMapIter == aMeshOnEntityMap.end()){
- PCMeshOnEntity aMeshOnEntity(new TCMeshOnEntity());
+ if(aMeshOnEntityMap.find(aVEntity) == aMeshOnEntityMap.end()){
+ VISU::PCMeshOnEntity aMeshOnEntity(new VISU::TCMeshOnEntity());
aMeshOnEntity->myMeshName = aMeshName.in();
aMeshOnEntity->myEntity = aVEntity;
aMeshOnEntity->myNbCells = aNbCells;
SALOME_MED::FAMILY_var aMEDFamily = SALOME_MED::FAMILY::_narrow(aMedSupport);
if(!aMEDFamily->_is_nil()) {
- TMeshOnEntityMap::iterator aMeshOnEntityMapIter = aMeshOnEntityMap.find(aVEntity);
+ VISU::TMeshOnEntityMap::iterator aMeshOnEntityMapIter = aMeshOnEntityMap.find(aVEntity);
if(aMeshOnEntityMapIter == aMeshOnEntityMap.end())
continue;
- PCMeshOnEntity aMeshOnEntity = aMeshOnEntityMapIter->second;
+ VISU::PCMeshOnEntity aMeshOnEntity = aMeshOnEntityMapIter->second;
int aNbCells = aMeshOnEntity->myNbCells, aCellsSize = aMeshOnEntity->myCellsSize;
CORBA::Boolean anIsOnAllElements = aMEDSupport->isOnAllElements();
"; aNbCells = "<<aNbCells);
if(aNbCells > 0){
- TFamilyMap& aFamilyMap = aMeshOnEntity->myFamilyMap;
- TFamilyMap::const_iterator aFamilyMapIter = aFamilyMap.find(aSupportName.in());
+ VISU::TFamilyMap& aFamilyMap = aMeshOnEntity->myFamilyMap;
+ VISU::TFamilyMap::const_iterator aFamilyMapIter = aFamilyMap.find(aSupportName.in());
if(aFamilyMapIter == aFamilyMap.end()){
- PCFamily aFamily(new TCFamily());
+ VISU::PCFamily aFamily(new VISU::TCFamily());
aFamily->myEntity = aVEntity;
aFamily->myNbCells = aNbCells;
aFamily->myCellsSize = aCellsSize;
"; anIsOnAllElements = "<<anIsOnAllElements<<
"; aVEntity = "<<aVEntity);
- PCGroup aGroup(new TCGroup());
+ VISU::PCGroup aGroup(new VISU::TCGroup());
aGroup->myGroup = aMEDGroup;
VISU::TFamilySet& aFamilySet = aGroup->myFamilySet;
SALOME_MED::FAMILY_var aMEDFamily = aFamilies[iFamaily];
CORBA::String_var aFamilyName = aMEDFamily->getName();
TFindFamilyOnEntity aFindFamilyOnEntity =
- FindFamilyOnEntity(aMeshName.in(),aVEntity,aFamilyName.in());
- PCFamily aFamily = boost::get<2>(aFindFamilyOnEntity);
+ FindFamilyOnEntity(aMeshName.in(), aVEntity, aFamilyName.in());
+ VISU::PCFamily aFamily = boost::get<2>(aFindFamilyOnEntity);
if(MYDEBUG) MESSAGE("VISU_MEDConvertor::Build - aGroup - aFamilyName = '"<<aFamilyName.in()<<"' = "<<bool(aFamily));
if(aFamily){
aFamilySet.insert(aFamily);
}
if(!aFamilySet.empty()){
- TGroupMap& aGroupMap = aMesh->myGroupMap;
+ VISU::TGroupMap& aGroupMap = aMesh->myGroupMap;
aGroupMap[aSupportName.in()] = aGroup;
}
CORBA::String_var aMeshName = aMEDMesh->getName();
CORBA::String_var aFieldName = aMEDField->getName();
- TMeshMap::iterator aMeshMapIter = myMeshMap.find(aMeshName.in());
+ VISU::TMeshMap::iterator aMeshMapIter = myMeshMap.find(aMeshName.in());
if(aMeshMapIter == myMeshMap.end())
continue;
- PCMesh aMesh = aMeshMapIter->second;
- TMeshOnEntityMap& aMeshOnEntityMap = aMesh->myMeshOnEntityMap;
- TMeshOnEntityMap::iterator aMeshOnEntityMapIter = aMeshOnEntityMap.find(anEntity);
+ VISU::PCMesh aMesh = aMeshMapIter->second;
+ VISU::TMeshOnEntityMap& aMeshOnEntityMap = aMesh->myMeshOnEntityMap;
+ VISU::TMeshOnEntityMap::iterator aMeshOnEntityMapIter = aMeshOnEntityMap.find(anEntity);
if(aMeshOnEntityMapIter == aMeshOnEntityMap.end())
continue;
- PCMeshOnEntity aMeshOnEntity = aMeshOnEntityMapIter->second;
- TFieldMap& aFieldMap = aMeshOnEntity->myFieldMap;
- TFieldMap::iterator aFieldMapIter = aFieldMap.find(aFieldName.in());
- PCField aField;
+ VISU::PCMeshOnEntity aMeshOnEntity = aMeshOnEntityMapIter->second;
+ VISU::TFieldMap& aFieldMap = aMeshOnEntity->myFieldMap;
+ VISU::TFieldMap::iterator aFieldMapIter = aFieldMap.find(aFieldName.in());
+ VISU::PCField aField;
if(aFieldMapIter == aFieldMap.end()){
- aField = aFieldMap[aFieldName.in()](new TCField());
+ aField = aFieldMap[aFieldName.in()](new VISU::TCField());
aField->myId = iField;
aField->myName = aFieldName.in();
aField->myEntity = anEntity;
}else
aField = aFieldMapIter->second;
- TValField& aValField = aField->myValField;
+ VISU::TValField& aValField = aField->myValField;
int anId = aMEDField->getIterationNumber();
- PCValForTime aValForTime = aValField[anId](new TCValForTime());
+ VISU::PCValForTime aValForTime = aValField[anId](new VISU::TCValForTime());
aValForTime->myId = anId;
CORBA::Double aDT = aMEDField->getTime();
- aValForTime->myTime = TTime(aDT,"");
+ aValForTime->myTime = VISU::TTime(aDT,"");
aValForTime->myField = aMEDField;
if(MYDEBUG)
MESSAGE("VISU_MEDConvertor::Build - aMeshName = '"<<aMeshName<<
//---------------------------------------------------------------
VISU_Convertor*
-VISU_MEDConvertor::Build(SALOMEDS::ChildIterator_ptr theTimeStampIterator)
+VISU_MEDConvertor
+::Build(SALOMEDS::ChildIterator_ptr theTimeStampIterator)
{
if(theTimeStampIterator->_is_nil()) return NULL;
for(; theTimeStampIterator->More(); theTimeStampIterator->Next()){
continue;
SALOME_MED::medEntityMesh aMEntity = aMEDSupport->getEntity();
- TEntity aVEntity = MEDEntityToVTK(aMEntity);
+ VISU::TEntity aVEntity = MEDEntityToVTK(aMEntity);
SALOME_MED::MESH_var aMEDMesh = aMEDSupport->getMesh();
if(aMEDMesh->_is_nil()) continue;
CORBA::String_var aMeshName = aMEDMesh->getName();
CORBA::String_var aFieldName = aMEDField->getName();
- PCMesh aMesh;
- TMeshMap::const_iterator aMeshMapIter = myMeshMap.find(aMeshName.in());
+ VISU::PCMesh aMesh;
+ VISU::TMeshMap::const_iterator aMeshMapIter = myMeshMap.find(aMeshName.in());
if(aMeshMapIter == myMeshMap.end()){
- aMesh.reset(new TCMesh());
- aMesh->myNamedPointCoords(new TNamedPointCoords());
+ aMesh.reset(new VISU::TCMesh());
+ aMesh->myNamedPointCoords(new VISU::TNamedPointCoords());
aMesh->myNbPoints = aMEDMesh->getNumberOfNodes();
aMesh->myDim = aMEDMesh->getSpaceDimension();
aMesh->myName = aMeshName.in();
}else
aMesh = aMeshMapIter->second;
- PCMeshOnEntity aMeshOnEntity;
- TMeshOnEntityMap& aMeshOnEntityMap = aMesh->myMeshOnEntityMap;
- TMeshOnEntityMap::const_iterator aMeshOnEntityMapIter = aMeshOnEntityMap.find(aVEntity);
+ VISU::PCMeshOnEntity aMeshOnEntity;
+ VISU::TMeshOnEntityMap& aMeshOnEntityMap = aMesh->myMeshOnEntityMap;
+ VISU::TMeshOnEntityMap::const_iterator aMeshOnEntityMapIter = aMeshOnEntityMap.find(aVEntity);
if(aMeshOnEntityMapIter == aMeshOnEntityMap.end()){
- aMeshOnEntity.reset(new TCMeshOnEntity());
+ aMeshOnEntity.reset(new VISU::TCMeshOnEntity());
aMeshOnEntity->myEntity = aVEntity;
aMeshOnEntity->myMeshName = aMeshName.in();
aMeshOnEntity->mySupport = aMEDSupport;
}else
aMeshOnEntity = aMeshOnEntityMapIter->second;
- if(aVEntity == NODE_ENTITY)
- ::InitMeshOnEntity(aMesh,CELL_ENTITY,aMeshOnEntity);
+ if(aVEntity == VISU::NODE_ENTITY)
+ ::InitMeshOnEntity(aMesh,VISU::CELL_ENTITY,aMeshOnEntity);
else
- ::InitMeshOnEntity(aMesh,NODE_ENTITY,aMeshOnEntity);
+ ::InitMeshOnEntity(aMesh,VISU::NODE_ENTITY,aMeshOnEntity);
::GetCellsSize(aMesh,aMEDMesh,aVEntity);
- PCField aField;
- TFieldMap& aFieldMap = aMeshOnEntity->myFieldMap;
- TFieldMap::const_iterator aFieldMapIter = aFieldMap.find(aFieldName.in());
+ VISU::PCField aField;
+ VISU::TFieldMap& aFieldMap = aMeshOnEntity->myFieldMap;
+ VISU::TFieldMap::const_iterator aFieldMapIter = aFieldMap.find(aFieldName.in());
if(aFieldMapIter == aFieldMap.end()){
- aField.reset(new TCField());
+ aField.reset(new VISU::TCField());
aField->myId = mySObject->Tag();
aField->myName = aFieldName.in();
aField->myEntity = aVEntity;
}else
aField = aFieldMapIter->second;
- TValField& aValField = aField->myValField;
+ VISU::TValField& aValField = aField->myValField;
int anId = aMEDField->getIterationNumber();
- PCValForTime aValForTime = aValField[anId](new TCValForTime());
+ VISU::PCValForTime aValForTime = aValField[anId](new VISU::TCValForTime());
aValForTime->myId = anId;
CORBA::Double aDT = aMEDField->getTime();
- aValForTime->myTime = TTime(aDT,"");
+ aValForTime->myTime = VISU::TTime(aDT,"");
aValForTime->myField = aMEDField;
if(MYDEBUG)
MESSAGE("VISU_MEDConvertor::Build "<<
VISU::PMeshOnEntityImpl theMeshOnEntity)
{
int anIsUpdated = LoadPoints(theMesh);
- const TEntity& aVEntity = theMeshOnEntity->myEntity;
- if(aVEntity != NODE_ENTITY)
+ const VISU::TEntity& aVEntity = theMeshOnEntity->myEntity;
+ if(aVEntity != VISU::NODE_ENTITY)
anIsUpdated |= LoadCellsOnEntity(theMesh,theMeshOnEntity);
return anIsUpdated;
VISU::PFamilyImpl theFamily)
{
int anIsUpdated = LoadPoints(theMesh);
- const TEntity& anEntity = theMeshOnEntity->myEntity;
- if(anEntity == NODE_ENTITY){
+ const VISU::TEntity& anEntity = theMeshOnEntity->myEntity;
+ if(anEntity == VISU::NODE_ENTITY){
anIsUpdated |= LoadPointsOnFamily(theMesh,theFamily);
}else{
anIsUpdated |= LoadCellsOnEntity(theMesh,theMeshOnEntity);
{
//Main part of code
int anIsUpdated = LoadPoints(theMesh);
- TFamilySet::const_iterator aFamilyIter = theFamilySet.begin();
+ VISU::TFamilySet::const_iterator aFamilyIter = theFamilySet.begin();
for(; aFamilyIter != theFamilySet.end(); aFamilyIter++){
- PCFamily aFamily = *aFamilyIter;
+ VISU::PCFamily aFamily = *aFamilyIter;
const VISU::TEntity& aVEntity = aFamily->myEntity;
- PCMeshOnEntity aMeshOnEntity = theMesh->myMeshOnEntityMap[aVEntity];
+ VISU::PCMeshOnEntity aMeshOnEntity = theMesh->myMeshOnEntityMap[aVEntity];
if(aVEntity == VISU::NODE_ENTITY){
anIsUpdated |= LoadPointsOnFamily(theMesh,aFamily);
}else{
{
//Main part of code
int anIsUpdated = LoadPoints(theMesh);
- const TEntity& aVEntity = theMeshOnEntity->myEntity;
- if(aVEntity != NODE_ENTITY)
+ const VISU::TEntity& aVEntity = theMeshOnEntity->myEntity;
+ if(aVEntity != VISU::NODE_ENTITY)
anIsUpdated |= LoadCellsOnEntity(theMesh,theMeshOnEntity);
anIsUpdated |= LoadField(theMesh,theMeshOnEntity,theField,theValForTime);
::LoadPoints(VISU::PCMesh theMesh)
{
//Check on existing family
- PCMeshOnEntity aMeshOnEntity = theMesh->myMeshOnEntityMap[VISU::NODE_ENTITY];
+ VISU::PCMeshOnEntity aMeshOnEntity = theMesh->myMeshOnEntityMap[VISU::NODE_ENTITY];
//Check on loading already done
if(theMesh->myIsDone)
throw std::runtime_error("LoadPoints >> There is no points in the mesh !!!");
SALOME_MED::double_array_var aCCoord = aMedMesh->getCoordinates(SALOME_MED::MED_FULL_INTERLACE);
- TCMEDCoordHolder* aCoordHolder = new TCMEDCoordHolder();
+ VISU::TCMEDCoordHolder* aCoordHolder = new VISU::TCMEDCoordHolder();
aCoordHolder->Init(aNbElem, aDim, aCCoord);
- TNamedPointCoords& aCoords = theMesh->myNamedPointCoords;
- aCoords.Init(PCoordHolder(aCoordHolder));
+ VISU::TNamedPointCoords& aCoords = theMesh->myNamedPointCoords;
+ aCoords.Init(VISU::PCoordHolder(aCoordHolder));
if(MYDEBUG) MESSAGE("LoadPoints - Filling aMeshOnEntity with type NODE_ENTITY");
- TGeom2SubMesh& aGeom2SubMesh = aMeshOnEntity->myGeom2SubMesh;
- PSubMeshImpl aSubMesh = aGeom2SubMesh[VISU::ePOINT1](new TCSubMesh());
+ VISU::TGeom2SubMesh& aGeom2SubMesh = aMeshOnEntity->myGeom2SubMesh;
+ VISU::PSubMeshImpl aSubMesh = aGeom2SubMesh[VISU::ePOINT1](new VISU::TCSubMesh());
aSubMesh->myNbCells = theMesh->myNbPoints;
aSubMesh->myCellsSize = 2*theMesh->myNbPoints;
- TCell2Connect& aCell2Connect = aSubMesh->myCell2Connect;
+ VISU::TCell2Connect& aCell2Connect = aSubMesh->myCell2Connect;
aCell2Connect.resize(aNbElem);
+ if(MYDEBUG) MESSAGE("LoadPoints - aNbElem="<<aNbElem);
for(int iElem = 0; iElem < aNbElem; iElem++)
- aCell2Connect[iElem] = TConnect(1,iElem);
+ aCell2Connect[iElem] = VISU::TConnect(1,iElem);
theMesh->myIsDone = true;
::LoadPointsOnFamily(VISU::PCMesh theMesh,
VISU::PCFamily theFamily)
{
- PCMeshOnEntity aMeshOnEntity = theMesh->myMeshOnEntityMap[VISU::NODE_ENTITY];
+ VISU::PCMeshOnEntity aMeshOnEntity = theMesh->myMeshOnEntityMap[VISU::NODE_ENTITY];
if(theFamily->myIsDone)
return 0;
vtkIdType aNbElem = theMesh->GetNbPoints();
SALOME_MED::FAMILY_var aMedFamily = theFamily->myFamily;
CORBA::Boolean anIsOnAllElements = aMedFamily->isOnAllElements();
- TSubMeshID& aSubMeshID = theFamily->myGeom2SubMeshID[VISU::ePOINT1];
+ VISU::TSubMeshID& aSubMeshID = theFamily->myGeom2SubMeshID[VISU::ePOINT1];
if(!anIsOnAllElements){
SALOME_MED::medGeometryElement_array_var aGeom = aMedFamily->getTypes();
}
theFamily->myIsDone = true;
-
+
return 1;
}
+//---------------------------------------------------------------
+namespace
+{
+ typedef MED::TCSlice<int> TA;
+ //---------------------------------------------------------------
+ typedef std::set<int> TConnSet;
+ typedef std::vector<int> TIntArray;
+ typedef MED::TCSlice<int> TConnSlice;
+
+ //---------------------------------------------------------------
+ class MEDPolygonConnectivity //! retriver of polygon connectivity
+ {
+ TIntArray myConn;
+ TIntArray myConnIndex;
+ public:
+
+ MEDPolygonConnectivity(SALOME_MED::MESH_var theMesh,
+ SALOME_MED::medEntityMesh theEntity)
+ {
+ {
+ SALOME::SenderInt_var aSender =
+ theMesh->getSenderForPolygonsConnectivity(SALOME_MED::MED_NODAL, theEntity);
+ long int aSize;
+ int* aValuePtr = ReceiverFactory::getValue(aSender.in(), aSize);
+ myConn.assign(aValuePtr, aValuePtr + aSize);
+ }
+ {
+ SALOME::SenderInt_var aSender =
+ theMesh->getSenderForPolygonsConnectivityIndex(SALOME_MED::MED_NODAL, theEntity);
+ long int aSize;
+ int* aValuePtr = ReceiverFactory::getValue(aSender, aSize);
+ myConnIndex.assign(aValuePtr, aValuePtr + aSize);
+ }
+ }
+
+ TConnSlice
+ GetConn(int theId) const
+ {
+ int anOffSet = myConnIndex[theId] - 1;
+ int aSize = myConnIndex[theId + 1] - myConnIndex[ theId ];
+ return TConnSlice(&myConn[0], myConn.size(), std::slice(anOffSet, aSize, 1));
+ }
+
+ int
+ GetNbElem() const
+ {
+ return myConnIndex.size() - 1;
+ }
+
+ int
+ GetCellSize() const
+ {
+ return myConn.size() + GetNbElem();
+ }
+ };
+
+
+ //---------------------------------------------------------------
+ class MEDPolyhedraConnectivity //! retriver of polyhedron connectivity
+ {
+ TIntArray myConn;
+ TIntArray myConnIndex;
+ TIntArray myFaceIndex;
+ public:
+
+ MEDPolyhedraConnectivity(SALOME_MED::MESH_var theMesh)
+ {
+ {
+ SALOME::SenderInt_var aSender =
+ theMesh->getSenderForPolyhedronConnectivity(SALOME_MED::MED_NODAL);
+ long int aSize;
+ int* aValuePtr = ReceiverFactory::getValue(aSender, aSize);
+ myConn.assign(aValuePtr, aValuePtr + aSize);
+ }
+ {
+ SALOME::SenderInt_var aSender =
+ theMesh->getSenderForPolyhedronIndex(SALOME_MED::MED_NODAL);
+ long int aSize;
+ int* aValuePtr = ReceiverFactory::getValue(aSender, aSize);
+ myConnIndex.assign(aValuePtr, aValuePtr + aSize);
+ }
+ {
+ SALOME::SenderInt_var aSender =
+ theMesh->getSenderForPolyhedronFacesIndex();
+ long int aSize;
+ int* aValuePtr = ReceiverFactory::getValue(aSender, aSize);
+ myFaceIndex.assign(aValuePtr, aValuePtr + aSize);
+ }
+ }
+
+ int
+ GetUniqueConn(int theId,
+ TConnSet& theConnSet) const
+ {
+ theConnSet.clear();
+ int aStartFaceId = myConnIndex[theId] - 1;
+ int anEndFaceId = myConnIndex[theId + 1] - 2;
+ int aStartConnId = myFaceIndex[aStartFaceId] - 1;
+ int anEndConnId = myFaceIndex[anEndFaceId + 1] - 1;
+ for(int aConnId = aStartConnId; aConnId < anEndConnId; aConnId++)
+ theConnSet.insert(myConn[aConnId]);
+ return theConnSet.size();
+ }
+
+ int
+ GetNbElem() const
+ {
+ return myConnIndex.size() - 1;
+ }
+
+ int
+ GetCellSize() const
+ {
+ TConnSet aConnSet;
+ int aCellSize = 0;
+ for(int anElemId = 0; anElemId < GetNbElem(); anElemId++)
+ aCellSize += GetUniqueConn(anElemId, aConnSet);
+ return aCellSize;
+ }
+ };
+}
//---------------------------------------------------------------
int
SALOME_MED::MESH_var aMedMesh = aMedSupport->getMesh();
//Main part of code
- SALOME_MED::medGeometryElement* aGeomElems;
- const TEntity& aVEntity = theMeshOnEntity->myEntity;
- int iGeomEnd = GetEntity2Geom(aVEntity,aGeomElems);
+ const VISU::TEntity& aVEntity = theMeshOnEntity->myEntity;
const SALOME_MED::medEntityMesh& aMEntity = VTKEntityToMED(aVEntity);
- TGeom2SubMesh& aGeom2SubMesh = theMeshOnEntity->myGeom2SubMesh;
- vtkIdType aNbPoints = theMesh->GetNbPoints();
+ VISU::TCellsFirstIndex& aFirstIndex = theMeshOnEntity->myCellsFirstIndex;
- for(int iGeom = 0, aCounter = 0; iGeom < iGeomEnd; iGeom++){
- SALOME_MED::medGeometryElement aMGeom = aGeomElems[iGeom];
- int aMNbNodes = MEDGeom2NbNodes(aMGeom);
- VISU::EGeometry aEGeom = MEDGeom2VISU(aMGeom);
- int aVNbNodes = VISUGeom2NbNodes(aEGeom);
- int aNbElem = aMedMesh->getNumberOfElements(aMEntity,aMGeom);
- if (aNbElem > 0) {
- using namespace SALOME_MED;
- SALOME_MED::long_array_var conn =
- aMedMesh->getConnectivity(MED_FULL_INTERLACE,MED_NODAL,aMEntity,aMGeom);
- PSubMeshImpl aSubMesh = aGeom2SubMesh[aEGeom](new TCSubMesh());
-
- aSubMesh->myNbCells = aNbElem;
- aSubMesh->myCellsSize = aNbElem*(aVNbNodes+1);
-
- TCell2Connect& aCell2Connect = aSubMesh->myCell2Connect;
- std::vector<int> aConnect(aMNbNodes);
- int aNbConnForElem = conn->length()/aNbElem;
-
- if(MYDEBUG) MESSAGE("LoadCellsOnEntity - aMGeom = "<<aMGeom<<
- "; aNbElem = "<<aNbElem<<
- "; aMNbNodes = "<<aMNbNodes<<
- "; aVNbNodes = "<<aVNbNodes<<
- "; aNbConnForElem = "<<aNbConnForElem);
+ SALOME_MED::MESH::connectivityInfos_var anInfo = aMedMesh->getConnectGlobal(aMEntity);
+ int iGeomEnd = anInfo->meshTypes.length();
- for(int iElem = 0; iElem < aNbElem; iElem++){
- VISU::TConnect anArray(aVNbNodes);
- for(int k = 0, kj = iElem*aNbConnForElem; k < aMNbNodes; k++)
- aConnect[k] = conn[kj+k] - 1;
+ VISU::TGeom2SubMesh& aGeom2SubMesh = theMeshOnEntity->myGeom2SubMesh;
+ vtkIdType aNbPoints = theMesh->GetNbPoints();
- switch(aMGeom){
+ for(int iGeom = 0, aCounter = 0; iGeom < iGeomEnd; iGeom++) {
+ SALOME_MED::medGeometryElement aMGeom = anInfo->meshTypes[iGeom];
+ VISU::EGeometry aEGeom = MEDGeom2VISU(aMGeom);
+ switch (aMGeom) {
+ case SALOME_MED::MED_POLYGON:
+ {
+ MEDPolygonConnectivity aConn(aMedMesh, aMEntity);
+ int aNbElem = aConn.GetNbElem();
+ if (aNbElem > 0) {
+ VISU::PSubMeshImpl aSubMesh = aGeom2SubMesh[aEGeom](new VISU::TCSubMesh());
+ aSubMesh->myNbCells = aNbElem;
+ aSubMesh->myCellsSize = aConn.GetCellSize();
+
+ VISU::TCell2Connect& aCell2Connect = aSubMesh->myCell2Connect;
+ aCell2Connect.resize(aNbElem);
+
+ for(int iElem = 0; iElem < aNbElem; iElem++) {
+ TConnSlice aConnSlice = aConn.GetConn(iElem);
+ VISU::TConnect& anArray = aCell2Connect[iElem];
+ anArray.resize(aConnSlice.size());
+ for(int iConn = 0; iConn < aConnSlice.size(); iConn++)
+ anArray[iConn] = aConnSlice[iConn] - 1;
+ }
+ }
+ }
+ break;
+ case SALOME_MED::MED_POLYHEDRA:
+ {
+ MEDPolyhedraConnectivity aConn( aMedMesh );
+ int aNbElem = aConn.GetNbElem();
+ if (aNbElem > 0) {
+ VISU::PSubMeshImpl aSubMesh = aGeom2SubMesh[aEGeom](new VISU::TCSubMesh());
+ aSubMesh->myNbCells = aNbElem;
+ aSubMesh->myCellsSize = aConn.GetCellSize();
+
+ VISU::TCell2Connect& aCell2Connect = aSubMesh->myCell2Connect;
+ aCell2Connect.resize(aNbElem);
+
+ TConnSet aConnectSet;
+ for(int iElem = 0; iElem < aNbElem; iElem++){
+ if(aConn.GetUniqueConn(iElem, aConnectSet)){
+ int aNbConn = aConnectSet.size();
+ VISU::TConnect& anArray = aCell2Connect[iElem];
+ anArray.resize(aNbConn);
+ std::set<int>::iterator anIter = aConnectSet.begin();
+ for(int i = 0; anIter != aConnectSet.end(); anIter++, i++)
+ anArray[i] = *anIter - 1;
+ }
+ }
+ }
+ }
+ break;
+ default:
+ {
+ int aMNbNodes = MEDGeom2NbNodes(aMGeom);
+ int aVNbNodes = VISUGeom2NbNodes(aEGeom);
+ int aNbElem = anInfo->numberOfElements[iGeom];
+ if (aNbElem > 0) {
+ SALOME_MED::long_array_var aConn =
+ aMedMesh->getConnectivity(SALOME_MED::MED_FULL_INTERLACE,
+ SALOME_MED::MED_NODAL,
+ aMEntity,
+ aMGeom);
+ VISU::PSubMeshImpl aSubMesh = aGeom2SubMesh[aEGeom](new VISU::TCSubMesh());
+
+ aSubMesh->myNbCells = aNbElem;
+ aSubMesh->myCellsSize = aNbElem*(aVNbNodes+1);
+
+ VISU::TCell2Connect& aCell2Connect = aSubMesh->myCell2Connect;
+ std::vector<int> aConnect(aMNbNodes);
+ int aNbConnForElem = aConn->length() / aNbElem;
+
+ if(MYDEBUG) MESSAGE("LoadCellsOnEntity - aMGeom = "<<aMGeom<<
+ "; aNbElem = "<<aNbElem<<
+ "; aMNbNodes = "<<aMNbNodes<<
+ "; aVNbNodes = "<<aVNbNodes<<
+ "; aNbConnForElem = "<<aNbConnForElem);
+
+ for(int iElem = 0; iElem < aNbElem; iElem++) {
+ VISU::TConnect anArray(aVNbNodes);
+ for(int k = 0, kj = iElem*aNbConnForElem; k < aMNbNodes; k++)
+ aConnect[k] = aConn[kj+k] - 1;
+
+ switch(aMGeom){
#if !(defined(VTK_QUADRATIC_EDGE) && defined(VISU_USE_VTK_QUADRATIC)) && defined(VISU_ENABLE_QUADRATIC)
- case SALOME_MED::MED_SEG3:
- anArray[0] = aConnect[0];
- anArray[2] = aConnect[1];
-
- anArray[1] = aConnect[2];
- break;
+ case SALOME_MED::MED_SEG3:
+ anArray[0] = aConnect[0];
+ anArray[2] = aConnect[1];
+
+ anArray[1] = aConnect[2];
+ break;
#endif
#if !(defined(VTK_QUADRATIC_TRIANGLE) && defined(VISU_USE_VTK_QUADRATIC)) && defined(VISU_ENABLE_QUADRATIC)
- case SALOME_MED::MED_TRIA6:
- anArray[0] = aConnect[0];
- anArray[2] = aConnect[1];
- anArray[4] = aConnect[2];
-
- anArray[1] = aConnect[3];
- anArray[3] = aConnect[4];
- anArray[5] = aConnect[5];
- break;
+ case SALOME_MED::MED_TRIA6:
+ anArray[0] = aConnect[0];
+ anArray[2] = aConnect[1];
+ anArray[4] = aConnect[2];
+
+ anArray[1] = aConnect[3];
+ anArray[3] = aConnect[4];
+ anArray[5] = aConnect[5];
+ break;
#endif
#if !(defined(VTK_QUADRATIC_QUAD) && defined(VISU_USE_VTK_QUADRATIC)) && defined(VISU_ENABLE_QUADRATIC)
- case SALOME_MED::MED_QUAD8:
- anArray[0] = aConnect[0];
- anArray[2] = aConnect[1];
- anArray[4] = aConnect[2];
- anArray[6] = aConnect[3];
-
- anArray[1] = aConnect[4];
- anArray[3] = aConnect[5];
- anArray[5] = aConnect[6];
- anArray[7] = aConnect[7];
- break;
+ case SALOME_MED::MED_QUAD8:
+ anArray[0] = aConnect[0];
+ anArray[2] = aConnect[1];
+ anArray[4] = aConnect[2];
+ anArray[6] = aConnect[3];
+
+ anArray[1] = aConnect[4];
+ anArray[3] = aConnect[5];
+ anArray[5] = aConnect[6];
+ anArray[7] = aConnect[7];
+ break;
#endif
#if (defined(VTK_QUADRATIC_TETRA) && defined(VISU_USE_VTK_QUADRATIC)) && defined(VISU_ENABLE_QUADRATIC)
- case SALOME_MED::MED_TETRA10 :
+ case SALOME_MED::MED_TETRA10 :
#endif
- case SALOME_MED::MED_TETRA4 :
- anArray[0] = aConnect[0];
- anArray[1] = aConnect[1];
- anArray[2] = aConnect[3];
- anArray[3] = aConnect[2];
- break;
+ case SALOME_MED::MED_TETRA4 :
+ anArray[0] = aConnect[0];
+ anArray[1] = aConnect[1];
+ anArray[2] = aConnect[3];
+ anArray[3] = aConnect[2];
+ break;
#if (defined(VTK_QUADRATIC_PYRAMID) && defined(VISU_USE_VTK_QUADRATIC)) && defined(VISU_ENABLE_QUADRATIC)
- case SALOME_MED::MED_PYRA13:
+ case SALOME_MED::MED_PYRA13:
#endif
- case SALOME_MED::MED_PYRA5 :
- anArray[0] = aConnect[0];
- anArray[1] = aConnect[3];
- anArray[2] = aConnect[2];
- anArray[3] = aConnect[1];
- anArray[4] = aConnect[4];
- break;
- default:
- for (int k = 0; k < aVNbNodes; k++)
- anArray[k] = aConnect[k];
- }
- for (int k = 0; k < aVNbNodes; k++)
- if(anArray[k] < 0 || aNbPoints <= anArray[k]){
- static QString aString;
- aString.sprintf("LoadCellsOnEntity >> aNbPoints(%d) <= anArray[%d][%d]=%d < 0 !!!",aNbPoints,iElem,k,anArray[k]);
- throw std::runtime_error(aString.latin1());
- }
- aCell2Connect.push_back(anArray);
+ case SALOME_MED::MED_PYRA5 :
+ anArray[0] = aConnect[0];
+ anArray[1] = aConnect[3];
+ anArray[2] = aConnect[2];
+ anArray[3] = aConnect[1];
+ anArray[4] = aConnect[4];
+ break;
+ default:
+ for (int k = 0; k < aVNbNodes; k++)
+ anArray[k] = aConnect[k];
+ }
+ for (int k = 0; k < aVNbNodes; k++)
+ if(anArray[k] < 0 || aNbPoints <= anArray[k]){
+ static QString aString;
+ aString.sprintf("LoadCellsOnEntity >> aNbPoints(%d) <= anArray[%d][%d]=%d < 0 !!!",aNbPoints,iElem,k,anArray[k]);
+ throw std::runtime_error(aString.latin1());
+ }
+ aCell2Connect.push_back(anArray);
+ } // loop on elements
}
- //Workaround for MED Component data structure
+ }} // switch( aMGeom )
+ VISU::TGeom2SubMesh::iterator anIter = aGeom2SubMesh.find(aEGeom);
+ if(anIter != aGeom2SubMesh.end()){
+ const VISU::PSubMeshImpl& aSubMesh = anIter->second;
+ const VISU::TCell2Connect& aCell2Connect = aSubMesh->myCell2Connect;
int aSize = aCell2Connect.size();
- if(MYDEBUG) MESSAGE("LoadCellsOnEntity - aCounter = "<<aCounter<<"; aSize = "<<aSize);
- theMeshOnEntity->myCellsFirstIndex[aMGeom] = TCMeshOnEntity::TIndexAndSize(aCounter,aSize);
+ if(MYDEBUG) MESSAGE("LoadCellsOnEntity - aCounter = "<<aCounter<<"; aSize = "<<aSize<<"; aMGeom = "<<aMGeom);
+ aFirstIndex[aMGeom] = VISU::TIndexAndSize(aCounter, aSize);
aCounter += aSize;
}
- }
+ } //loop on types
+
+ // Dump result connectivity
+// #ifdef _DEBUG_
+// TGeom2SubMesh::iterator geom_sm = aGeom2SubMesh.begin();
+// for ( ; geom_sm!=aGeom2SubMesh.end(); ++geom_sm ) {
+// cout << "TYPE: " << geom_sm->first << endl;
+// PSubMeshImpl aSubMesh = geom_sm->second;
+// TCell2Connect& aCell2Connect = aSubMesh->myCell2Connect;
+// TCell2Connect::iterator id_conn = aCell2Connect.begin();
+// for ( int i = 0; id_conn !=aCell2Connect.end(); ++id_conn ) {
+// cout << "\t" << i++ << ": [";
+// TConnect& anArray = *id_conn;
+// TConnect::iterator n = anArray.begin();
+// for ( ; n != anArray.end(); ++n )
+// cout << " " << *n + 1;
+// cout << " ]"<< endl;
+// }
+// }
+// #endif
theMeshOnEntity->myIsDone = true;
int aNbElem = aCellNumForType->length();
int aCounter = theMeshOnEntity->myCellsFirstIndex[aMGeom].first;
int aSize = theMeshOnEntity->myCellsFirstIndex[aMGeom].second;
- TSubMeshID& aSubMeshID = theFamily->myGeom2SubMeshID[aEGeom];
+ VISU::TSubMeshID& aSubMeshID = theFamily->myGeom2SubMeshID[aEGeom];
if(MYDEBUG)
MESSAGE("LoadCellsOnFamily "<<
VISU::EGeometry aEGeom = anIter->first;
const VISU::TSubMeshImpl& aSubMesh = anIter->second;
const VISU::TCell2Connect& aCell2Connect = aSubMesh.myCell2Connect;
- TSubMeshID& aSubMeshID = theFamily->myGeom2SubMeshID[aEGeom];
+ VISU::TSubMeshID& aSubMeshID = theFamily->myGeom2SubMeshID[aEGeom];
int iNumElemEnd = aCell2Connect.size();
for(int iNumElem = 0; iNumElem < iNumElemEnd; iNumElem++)
aSubMeshID.push_back(iNumElem);
VISU::PCValForTime theValForTime,
VISU::PCMeshOnEntity theMeshOnEntity)
{
- typedef TTCMEDMeshValue<TValueType, TContainerType> TVMeshValue;
+ typedef VISU::TTCMEDMeshValue<TValueType, TContainerType> TVMeshValue;
vtkIdType aNbComp = theField->myNbComp;
- if(theField->myEntity == NODE_ENTITY){
+ if(theField->myEntity == VISU::NODE_ENTITY){
VISU::EGeometry aEGeom = VISU::ePOINT1;
vtkIdType aNbGauss = theValForTime->GetNbGauss(aEGeom);
vtkIdType aNbElem = theMesh->GetNbPoints();
if(MYDEBUG) MESSAGE("ImportField - aNbElem = "<<aNbElem);
- PMeshValue& aVMeshValue = theValForTime->GetMeshValue(VISU::ePOINT1);
+ VISU::PMeshValue& aVMeshValue = theValForTime->GetMeshValue(VISU::ePOINT1);
TVMeshValue* aMeshValue = new TVMeshValue();
aMeshValue->Init(aNbElem, aNbGauss, aNbComp, theContainer, 0);
aVMeshValue.reset(aMeshValue);
}else{
SALOME_MED::medGeometryElement* aGeomElems;
- const TEntity& aVEntity = theField->myEntity;
+ const VISU::TEntity& aVEntity = theField->myEntity;
int iGeomEnd = GetEntity2Geom(aVEntity,aGeomElems);
for(int iGeom = 0; iGeom < iGeomEnd; iGeom++){
SALOME_MED::medGeometryElement aMGeom = aGeomElems[iGeom];
VISU::EGeometry aEGeom = MEDGeom2VISU(aMGeom);
vtkIdType aNbGauss = theValForTime->GetNbGauss(aEGeom);
- const TCMeshOnEntity::TCellsFirstIndex& aCellsFirstIndex = theMeshOnEntity->myCellsFirstIndex;
- TCMeshOnEntity::TCellsFirstIndex::const_iterator aCellsFirstIndexIter = aCellsFirstIndex.find(aMGeom);
+ const VISU::TCellsFirstIndex& aCellsFirstIndex = theMeshOnEntity->myCellsFirstIndex;
+ VISU::TCellsFirstIndex::const_iterator aCellsFirstIndexIter = aCellsFirstIndex.find(aMGeom);
if(aCellsFirstIndexIter != aCellsFirstIndex.end()){
- const TCMeshOnEntity::TIndexAndSize& aIndexAndSize = aCellsFirstIndexIter->second;
+ const VISU::TIndexAndSize& aIndexAndSize = aCellsFirstIndexIter->second;
if(MYDEBUG)
MESSAGE("ImportField - aMGeom = "<<aMGeom<<
"; aIndexAndSize = {"<<aIndexAndSize.first<<
vtkIdType aNbElem = aIndexAndSize.second;
vtkIdType aStart = aIndexAndSize.first * aNbComp;
- PMeshValue& aVMeshValue = theValForTime->GetMeshValue(aEGeom);
+ VISU::PMeshValue& aVMeshValue = theValForTime->GetMeshValue(aEGeom);
TVMeshValue* aMeshValue = new TVMeshValue();
aMeshValue->Init(aNbElem, aNbGauss, aNbComp, theContainer, aStart);
aVMeshValue.reset(aMeshValue);
VISU::PField theField,
VISU::PCValForTime theValForTime)
{
+ MESSAGE("VISU_MEDConvertor::LoadField");
//Check on loading already done
- PUnstructuredGridIDMapperImpl anUnstructuredGridIDMapper = theValForTime->myUnstructuredGridIDMapper;
+ VISU::PUnstructuredGridIDMapperImpl anUnstructuredGridIDMapper = theValForTime->myUnstructuredGridIDMapper;
if(anUnstructuredGridIDMapper->myIsVTKDone)
return 0;
- PCProfile aProfile(new TCProfile());
+ VISU::PCProfile aProfile(new VISU::TCProfile());
aProfile->myIsAll = true;
theValForTime->myProfile = aProfile;
SALOME_MED::FIELD_var aMEDField = theValForTime->myField;
+
+ SALOME_MED::SUPPORT_var aMEDSupport = aMEDField->getSupport();
+
+ if(aMEDSupport->isOnAllElements()) aProfile->myIsDone = true;
+
SALOME_MED::FIELDDOUBLE_ptr aFieldDouble = SALOME_MED::FIELDDOUBLE::_narrow(aMEDField);
if(!aFieldDouble->_is_nil()){
SALOME_MED::double_array_var anArray = aFieldDouble->getValue(SALOME_MED::MED_FULL_INTERLACE);
anUnstructuredGridIDMapper->myIsVTKDone = true;
+ MESSAGE("VISU_MEDConvertor::LoadField done");
return 1;
}
namespace VISU
{
+ //---------------------------------------------------------------
+ typedef std::pair<int, int> TIndexAndSize; //
+ typedef std::map<SALOME_MED::medGeometryElement, TIndexAndSize> TCellsFirstIndex; // key: SALOME_MED::medGeometryElement
+
//---------------------------------------------------------------
struct TCMEDCoordHolder: TCoordHolder<SALOME_MED::double_array_var>
{
};
typedef MED::SharedPtr<TCMesh> PCMesh;
+ //---------------------------------------------------------------
+ struct TCSubProfile: virtual TSubProfileImpl
+ {
+ SALOME_MED::medGeometryElement myMGeom;
+ };
+ typedef SharedPtr<TCSubProfile> PCSubProfile;
//---------------------------------------------------------------
struct TCProfile: virtual TProfileImpl
{};
typedef MED::SharedPtr<TCProfile> PCProfile;
+ //---------------------------------------------------------------
+ struct TCGauss: virtual TGaussImpl
+ {
+ };
+ typedef SharedPtr<TCGauss> PCGauss;
+
+ struct TCGaussSubMesh: virtual TGaussSubMeshImpl
+ {
+ };
+ typedef SharedPtr<TCGaussSubMesh> PCGaussSubMesh;
+
+
+ //---------------------------------------------------------------
+ struct TCGaussMesh: virtual TGaussMeshImpl
+ {};
+ typedef SharedPtr<TCGaussMesh> PCGaussMesh;
+
//---------------------------------------------------------------
struct TCSubMesh: virtual TSubMeshImpl
struct TCMeshOnEntity: virtual TMeshOnEntityImpl
{
SALOME_MED::SUPPORT_var mySupport;
- typedef std::pair<int,int> TIndexAndSize;
- typedef std::map<int,TIndexAndSize> TCellsFirstIndex;
TCellsFirstIndex myCellsFirstIndex;
};
typedef MED::SharedPtr<TCMeshOnEntity> PCMeshOnEntity;
#include "VISU_PipeLineUtils.hxx"
#include "SUIT_ResourceMgr.h"
+#include "SALOME_Event.hxx"
#include <vtkAppendPolyData.h>
SetOrientation2(CutPlanes::Orientation(VISU::Storable::FindValue(theMap,"myBasePlane[1]").toInt()),
Storable::FindValue(theMap,"aRot[1][0]").toDouble(),
Storable::FindValue(theMap,"aRot[1][1]").toDouble());
+ SetUseAbsoluteLength(VISU::Storable::FindValue(theMap,"myUseAbsLength").toInt());
+
if (VISU::Storable::FindValue(theMap,"myBasePlaneCondition").toInt())
SetDefault();
else
aStrPos.append(QString::number(GetLinePosition(i)) + "|");
aStrCon.append(QString::number(IsDefaultPosition(i)) + "|");
}
+
Storable::DataToStream( theStr, "myLinePosition", aStrPos.latin1());
Storable::DataToStream( theStr, "myLineCondition", aStrCon.latin1());
+ Storable::DataToStream( theStr,"myUseAbsLength", IsUseAbsoluteLength());
// Storing the map - \a myMapCurvesInverted
QString aStrCurvesInverted;
CORBA::Double theXAngle,
CORBA::Double theYAngle)
{
- myCutLinesPL->SetOrientation(VISU_CutPlanesPL::PlaneOrientation(theOrient),
- theXAngle,
- theYAngle);
+ struct TEvent: public SALOME_Event
+ {
+ VISU_CutLinesPL* myCutLinesPL;
+ CORBA::Double myXAngle, myYAngle;
+ VISU::CutPlanes::Orientation myOrient;
+ TEvent(VISU_CutLinesPL* theCutLines,
+ VISU::CutPlanes::Orientation theOrient,
+ CORBA::Double theXAngle,
+ CORBA::Double theYAngle):
+ myCutLinesPL(theCutLines),
+ myOrient(theOrient),
+ myXAngle(theXAngle),
+ myYAngle(theYAngle)
+ {}
+
+ virtual
+ void
+ Execute()
+ {
+ myCutLinesPL->SetOrientation(VISU_CutPlanesPL::PlaneOrientation(myOrient),
+ myXAngle,
+ myYAngle);
+ }
+ };
+
+ ProcessVoidEvent(new TEvent(myCutLinesPL, theOrient, theXAngle, theYAngle));
+
}
//---------------------------------------------------------------
CORBA::Double theXAngle,
CORBA::Double theYAngle)
{
- myCutLinesPL->SetOrientation(VISU_CutPlanesPL::PlaneOrientation(theOrient),
- theXAngle,
- theYAngle,
- 1);
+ struct TEvent: public SALOME_Event
+ {
+ VISU_CutLinesPL* myCutLinesPL;
+ CORBA::Double myXAngle, myYAngle;
+ VISU::CutPlanes::Orientation myOrient;
+ TEvent(VISU_CutLinesPL* theCutLines,
+ VISU::CutPlanes::Orientation theOrient,
+ CORBA::Double theXAngle,
+ CORBA::Double theYAngle):
+ myCutLinesPL(theCutLines),
+ myOrient(theOrient),
+ myXAngle(theXAngle),
+ myYAngle(theYAngle)
+ {}
+
+ virtual
+ void
+ Execute()
+ {
+ myCutLinesPL->SetOrientation(VISU_CutPlanesPL::PlaneOrientation(myOrient),
+ myXAngle,
+ myYAngle,
+ 1);
+ }
+ };
+
+ ProcessVoidEvent(new TEvent(myCutLinesPL, theOrient, theXAngle, theYAngle));
}
//---------------------------------------------------------------
return myCutLinesPL->IsPartDefault(thePlaneNumber);
}
+//---------------------------------------------------------------
/*! Invert all curves of corresponding table
* see void VISU::CutLines_i::SetCurveInverted(CORBA::Long theCurveNumber,CORBA::Boolean theInvert)
* \param theInvert - Invert all curves, if value is TRUE, else not.
VISU::CutLines_i
::SetAllCurvesInverted(CORBA::Boolean theInvert)
{
- for (int i=0; i<GetNbLines(); i++) SetCurveInverted(i,theInvert);
+ for(int i=0; i<GetNbLines(); i++)
+ SetCurveInverted(i, theInvert);
}
+//---------------------------------------------------------------
/*! Checks the orientation of all curves
* \retval TRUE - if all curves are inverted, else FALSE
*/
return true;
}
+//---------------------------------------------------------------
/*! Sets orientation of curve
* \param theCurveNumber - integer value, number of cut line.
* \param theInvert - boolean value, TRUE or false.
myMapCurvesInverted[theCurveNumber] = theInvert;
}
+//---------------------------------------------------------------
/*! Checks orientation of curve.
* \param theCurveNumber - integer value, number of cut line.
* \retval TRUE - if line in the table is inverted, else FALSE.
return myMapCurvesInverted[theCurveNumber];
}
+//---------------------------------------------------------------
+/*! It control the way the length of cutlines is shown: using aboslute or relative values
+* \param theAbsLength - boolean value, TRUE or false.
+*/
+void
+VISU::CutLines_i
+::SetUseAbsoluteLength(CORBA::Boolean theAbsLength)
+{
+ myUseAbsLength = theAbsLength;
+}
+
+//---------------------------------------------------------------
+CORBA::Boolean
+VISU::CutLines_i
+::IsUseAbsoluteLength()
+{
+ return myUseAbsLength;
+}
+
//---------------------------------------------------------------
void
VISU::CutLines_i
aTitle = aTitle.simplifyWhiteSpace();
aTableOfReal->SetTitle(aTitle.latin1());
- int iLineEnd = myCutLinesPL->GetAppendPolyData()->GetNumberOfInputs();
+ int iLineEnd = myCutLinesPL->GetAppendPolyData()->GetNumberOfInputConnections(0);
if(MYDEBUG) MESSAGE("CutPlanes_i::BuildTableOfReal iLineEnd = "<<iLineEnd);
TXCont aXCont;
TXYMapCont aXYMapCont;
if(MYDEBUG) MESSAGE("CutPlanes_i::BuildTableOfReal iLine = "<<iLine<<"; aNbPoints = "<<aNbPoints);
aLineIdCont[iLine] = jLine++;
TXYMap& aXYMap = aXYMapCont[iLine];
- vtkFloatingPointType aPnt[3], aVect[3], aDist;
+ vtkFloatingPointType aPnt[3], aVect[3], aDist, aTopBnd, aDivide;
+ aTopBnd = aBoundPrjLn[2];
+ aDivide = aBoundPrjLn[2];
+ if( !IsUseAbsoluteLength() ){
+ aTopBnd = 1.0;
+ }
+ else aDivide = 1.0;
+
for(int i = 0; i < aNbPoints; i++){
aDataSet->GetPoint(i,aPnt);
- Sub(aPnt,aBasePnt,aVect);
+ for(int j = 0; j < 3; j++)
+ aVect[j] = aPnt[j] - aBasePnt[j];
+ //VISU::Sub(aPnt,aBasePnt,aVect);
if ( fabs(aBoundPrjLn[2]) < EPS_machine )
aDist = 0.5;
else
{
- aDist = vtkMath::Dot(aVect,aDirLn) / aBoundPrjLn[2];
+ aDist = vtkMath::Dot(aVect,aDirLn)/aDivide;
// the workaround
if(aDist < 0.0) aDist = 0.0;
- if(aDist > 1.0) aDist = 1.0;
+ if(aDist > aTopBnd) aDist = aTopBnd;
}
aXYMap[aDist] = aScalars->GetTuple1(i);
}
- if(aFilter){
- aFilter->UnRegisterAllOutputs();
+ if(aFilter)
aFilter->Delete();
- }
}
if(aXYMapCont.size() == 0)
throw std::runtime_error("CutPlanes_i::BuildTableOfReal aXYMapCont.size() == 0 !!!");
a_last_indx = tmp;
}
std::list<vtkFloatingPointType>::const_iterator aIter = XKeys.begin();
- for (int k=0;k<XKeys.size() and aIter != XKeys.end();k++,aIter++){
+ for (int k=0;k<XKeys.size() && aIter != XKeys.end();k++,aIter++){
// Warning: value '1.0' come from workaround:
// see also aDist = vtkMath::Dot(aVect,aDirLn) / aBoundPrjLn[2];
// aDist >= 0 and aDist<=1.0
- aNewXYMap[1.0 - *aIter] = aXYMap[*aIter];
+ vtkFloatingPointType aTopBnd = aBoundPrjLn[2];
+ if( !IsUseAbsoluteLength() ){
+ aTopBnd = 1.0;
+ }
+ aNewXYMap[aTopBnd - *aIter] = aXYMap[*aIter];
}
TXYMap::const_iterator aNewXYMapIter = aNewXYMap.begin();
aXYMap.clear();
namespace VISU
{
+ //----------------------------------------------------------------------------
class CutLines_i : public virtual POA_VISU::CutLines,
public virtual ScalarMap_i
{
static int myNbPresent;
- CutLines_i();
CutLines_i(const CutLines_i&);
public:
+ //----------------------------------------------------------------------------
typedef ScalarMap_i TSuperClass;
+ typedef VISU::CutLines TInterface;
explicit
CutLines_i(EPublishInStudyMode thePublishInStudyModep);
CORBA::Boolean
IsCurveInverted(CORBA::Long theCurveNumber);
+ virtual
+ void
+ SetUseAbsoluteLength(CORBA::Boolean theAbsLength);
+
+ virtual
+ CORBA::Boolean
+ IsUseAbsoluteLength();
+
virtual
void
SetNbLines(CORBA::Long theNb);
void
CopyCurvesInverted(const TCurvesInv& theCurves);
- typedef VISU::CutLines TInterface;
-
VISU_CutLinesPL*
GetSpecificPL() const
{
bool
CheckIsPossible();
+ virtual
+ const char*
+ GetIconName();
+
VISU_CutLinesPL *myCutLinesPL;
TCurvesInv myMapCurvesInverted;
+ CORBA::Boolean myUseAbsLength;
public:
//! Extends VISU_ColoredPrs3d_i::IsPossible
#include "VISU_Actor.h"
#include "SUIT_ResourceMgr.h"
+#include "SALOME_Event.hxx"
#ifdef _DEBUG_
static int MYDEBUG = 0;
}
+//----------------------------------------------------------------------------
+const char*
+VISU::CutPlanes_i
+::GetIconName()
+{
+ if (!IsGroupsUsed())
+ return "ICON_TREE_CUT_PLANES";
+ else
+ return "ICON_TREE_CUT_PLANES_GROUPS";
+}
+
+
//----------------------------------------------------------------------------
VISU::CutPlanes_i
::CutPlanes_i(EPublishInStudyMode thePublishInStudyMode):
//----------------------------------------------------------------------------
void VISU::CutPlanes_i::ToStream(std::ostringstream& theStr){
- ScalarMap_i::ToStream(theStr);
+ TSuperClass::ToStream(theStr);
Storable::DataToStream( theStr, "myNbPlanes", int(GetNbPlanes()));
Storable::DataToStream( theStr, "myDisplacement", GetDisplacement());
namespace VISU
{
- class CutPlanes_i : public virtual POA_VISU::CutPlanes,
- public virtual ScalarMap_i
+ //----------------------------------------------------------------------------
+ class VISU_I_EXPORT CutPlanes_i : public virtual POA_VISU::CutPlanes,
+ public virtual ScalarMap_i
{
static int myNbPresent;
- CutPlanes_i();
CutPlanes_i(const CutPlanes_i&);
public:
+ //----------------------------------------------------------------------------
typedef ScalarMap_i TSuperClass;
+ typedef VISU::CutPlanes TInterface;
explicit
CutPlanes_i(EPublishInStudyMode thePublishInStudyModep);
CORBA::Long
GetNbPlanes();
- typedef VISU::CutPlanes TInterface;
-
VISU_CutPlanesPL*
GetSpecificPL() const
{
virtual
QString
GenerateName();
+
+ virtual
+ const char*
+ GetIconName();
};
}
}
+//---------------------------------------------------------------
+const char*
+VISU::DeformedShape_i
+::GetIconName()
+{
+ if (!IsGroupsUsed())
+ return "ICON_TREE_DEFORMED_SHAPE";
+ else
+ return "ICON_TREE_DEFORMED_SHAPE_GROUPS";
+}
+
+
//---------------------------------------------------------------
VISU::DeformedShape_i
::DeformedShape_i(EPublishInStudyMode thePublishInStudyMode):
}
}
-
//---------------------------------------------------------------
VISU::Storable*
VISU::DeformedShape_i
}
-//---------------------------------------------------------------
-void
-VISU::DeformedShape_i
-::SetMapScale(double theMapScale)
-{
- myDeformedShapePL->SetMapScale(theMapScale);
-}
-
-
//---------------------------------------------------------------
VISU_Actor*
VISU::DeformedShape_i
namespace VISU
{
+ //----------------------------------------------------------------------------
class DeformedShape_i : public virtual POA_VISU::DeformedShape,
public virtual ScalarMap_i
{
static int myNbPresent;
- DeformedShape_i();
DeformedShape_i(const DeformedShape_i&);
public:
+ //----------------------------------------------------------------------------
typedef ScalarMap_i TSuperClass;
+ typedef VISU::DeformedShape TInterface;
explicit
DeformedShape_i(EPublishInStudyMode thePublishInStudyModep);
void
SetColor(const SALOMEDS::Color& theColor);
- typedef VISU::DeformedShape TInterface;
-
VISU_DeformedShapePL*
GetSpecificPL() const
{
QString
GenerateName();
+ virtual
+ const char*
+ GetIconName();
+
virtual
void
ToStream(std::ostringstream& theStr);
return thePrefix;
}
-
+ //===========================================================================
std::string
ScalarMapToPython(SALOMEDS::SObject_ptr theSObject,
VISU::ScalarMap_i* theServant,
}
theStr<<thePrefix<<theName<<".SetBarOrientation("<<aParam<<")"<<endl;
+
+ std::string aMeshName = theServant->GetCMeshName();
+ const VISU::ScalarMap_i::TGroupNames aGroupNames = theServant->GetGroupNames();
+ VISU::ScalarMap_i::TGroupNames::const_iterator anIter = aGroupNames.begin();
+ for(; anIter != aGroupNames.end(); anIter++){
+ const std::string& aGroupName = *anIter;
+ theStr<<thePrefix<<theName<<".AddMeshOnGroup('"<<aMeshName<<"','"<<aGroupName<<"')"<<endl;
+ }
return thePrefix;
}
-
//===========================================================================
std::string
DeformedShapeToPython(SALOMEDS::SObject_ptr theSObject,
{
SALOMEDS::GenericAttribute_var anAttr;
SALOMEDS::SObject_var aFatherSObject = theSObject->GetFather();
- if(aFatherSObject->FindAttribute(anAttr,"AttributeComment")){
- SALOMEDS::AttributeComment_var aComment =
- SALOMEDS::AttributeComment::_narrow(anAttr);
+ if(aFatherSObject->FindAttribute(anAttr,"AttributeString")){
+ SALOMEDS::AttributeString_var aComment =
+ SALOMEDS::AttributeString::_narrow(anAttr);
CORBA::String_var aValue = aComment->Value();
Storable::TRestoringMap aMap;
Storable::StrToMap(aValue.in(),aMap);
theStr<<thePrefix<<"if "<<aSObjectName<<":"<<endl;
thePrefix += PREFIX;
+ theStr<<thePrefix<<"aBuilder.SetName("<<aSObjectName<<", \""<<theSObject->GetName()<<"\")"<<endl; // Fix for IPAL13165
std::string aName = "aTableAttr";
theStr<<thePrefix<<aName<<" = aBuilder.FindOrCreateAttribute("<<
aSObjectName<<",'"<<theAttrName<<"')"<<endl;
}
break;
case VISU::TSCALARMAP:
+ case VISU::TPRSMERGER:
if(ScalarMap_i* aServant = dynamic_cast<ScalarMap_i*>(GetServant(anObj).in())){
thePrefix = ScalarMapToPython(theSObject,aServant,theStr,aName,"ScalarMapOnField",theArgumentName,thePrefix);
theStr<<thePrefix<<"pass"<<endl<<endl;
break;
}
+ CORBA::String_var aMeshName = aServant->GetScalarCMeshName();
+ CORBA::String_var aFieldName = aServant->GetScalarCFieldName();
+ CORBA::Long aTimeStampNumber = aServant->GetScalarLIteration();
+
theStr<<thePrefix<<aName<<".SetScalarField("<<
- "'"<<aServant->GetScalarMeshName()<<"',"<<
- "'"<<aServant->GetScalarFieldName()<<"',"<<
- aServant->GetScalarIteration()<<","<<
+ "'"<<aMeshName<<"',"<<
+ "'"<<aFieldName<<"',"<<
+ aTimeStampNumber<<","<<
aParam<<
")"<<endl;
if(!aServant->IsDefault())
theStr<<thePrefix<<aName<<".SetBasePlanePosition("<<aServant->GetBasePlanePosition()<<")"<<endl;
+ CORBA::Boolean aUseAbsLength = aServant->IsUseAbsoluteLength();
+ theStr<<thePrefix<<aName<<".SetUseAbsoluteLength("<<aUseAbsLength<<")"<<endl;
+
CORBA::Long aNbLines = aServant->GetNbLines();
theStr<<thePrefix<<aName<<".SetNbLines("<<aNbLines<<")"<<endl;
for(CORBA::Long anId = 0; anId < aNbLines; anId++){
case VISU::TTABLE:
if(dynamic_cast<Table_i*>(GetServant(anObj).in())){
SALOMEDS::GenericAttribute_var anAttr;
- if(theSObject->FindAttribute(anAttr,"AttributeComment")){
+ if(theSObject->FindAttribute(anAttr,"AttributeString")){
using namespace SALOMEDS;
- AttributeComment_var aComment = AttributeComment::_narrow(anAttr);
+ AttributeString_var aComment = AttributeString::_narrow(anAttr);
CORBA::String_var aValue = aComment->Value();
Storable::TRestoringMap aMap;
Storable::StrToMap(aValue.in(),aMap);
}
} else { /*if(!CORBA::is_nil(anObj))*/
SALOMEDS::GenericAttribute_var anAttr;
- if (theSObject->FindAttribute(anAttr,"AttributeComment")) {
- SALOMEDS::AttributeComment_var aComment =
- SALOMEDS::AttributeComment::_narrow(anAttr);
+ if (theSObject->FindAttribute(anAttr,"AttributeString")) {
+ SALOMEDS::AttributeString_var aComment =
+ SALOMEDS::AttributeString::_narrow(anAttr);
CORBA::String_var aValue = aComment->Value();
Storable::TRestoringMap aMap;
Storable::StrToMap(aValue.in(),aMap);
theStr<<thePrefix<<"anAttr = aBuilder.FindOrCreateAttribute("<<aName<<",'AttributeName')"<<endl;
theStr<<thePrefix<<"anAttr.SetValue('"<<aName<<"')"<<endl;
- theStr<<thePrefix<<"anAttr = aBuilder.FindOrCreateAttribute("<<aName<<",'AttributeComment')"<<endl;
+ theStr<<thePrefix<<"anAttr = aBuilder.FindOrCreateAttribute("<<aName<<",'AttributeString')"<<endl;
theStr<<thePrefix<<"anAttr.SetValue('"<<aValue.in()<<"')"<<endl;
theStr<<thePrefix<<"pass"<<endl<<endl;
}
}
+ //===========================================================================
+ void
+ DumpAnimationsToPython(SALOMEDS::Study_ptr theStudy,
+ CORBA::Boolean theIsPublished,
+ CORBA::Boolean& theIsValidScript,
+ SALOMEDS::SObject_ptr theSObject,
+ std::ostream& theStr,
+ std::string thePrefix)
+ {
+
+ if(!theIsPublished) return;
+
+ SALOMEDS::ChildIterator_var aChildItet = theStudy->NewChildIterator(theSObject);
+ for(aChildItet->InitEx(false); aChildItet->More(); aChildItet->Next()){
+ SALOMEDS::SObject_var aSObject = aChildItet->Value();
+
+ SALOMEDS::GenericAttribute_var anAttr;
+ if (!aSObject->FindAttribute(anAttr, "AttributeString")) continue;
+
+ SALOMEDS::AttributeString_var aStringAttr = SALOMEDS::AttributeString::_narrow(anAttr);
+ QString value (aStringAttr->Value());
+ if(value.isEmpty()) continue;
+
+ VISU::Storable::TRestoringMap aMap;
+ VISU::Storable::StrToMap(value, aMap);
+ bool isExist;
+
+ QString aTypeName = VISU::Storable::FindValue(aMap,"myComment",&isExist);
+ if(!isExist || aTypeName != "ANIMATION") continue;
+
+ //ANIMATION
+ theStr<<endl;
+ QString animName = aSObject->GetName();
+ theStr<<thePrefix<<"#Animation: "<<animName<<endl;
+ theStr<<endl;
+ theStr<<thePrefix<<"animSO = aBuilder.NewObject(aSComponent)"<<endl;
+ theStr<<thePrefix<<"aBuilder.SetName(animSO, '"<<animName<<"')"<< endl;
+ theStr<<thePrefix<<"strAttr = aBuilder.FindOrCreateAttribute(animSO, 'AttributeString')"<< endl;
+ theStr<<thePrefix<<"strAttr.SetValue('"<<value<<"')"<< endl;
+
+
+
+ SALOMEDS::ChildIterator_var anIter = theStudy->NewChildIterator(aSObject);
+ for (anIter->Init(); anIter->More(); anIter->Next()) {
+ SALOMEDS::SObject_var anObj = anIter->Value();
+
+ //FIELD
+ theStr<<thePrefix<<"fieldSO = aBuilder.NewObject(animSO)"<<endl;
+ if (anObj->FindAttribute(anAttr, "AttributeString")) {
+ aStringAttr = SALOMEDS::AttributeString::_narrow(anAttr);
+ theStr<<thePrefix<<"strAttr = aBuilder.FindOrCreateAttribute(fieldSO, 'AttributeString')"<< endl;
+ theStr<<thePrefix<<"strAttr.SetValue('"<<aStringAttr->Value()<<"')"<< endl;
+ }
+
+ SALOMEDS::SObject_var refObj;
+ if(anObj->ReferencedObject(refObj)) {
+ SALOMEDS::SObject_var father = refObj->GetFather();
+ value = refObj->GetName();
+ QString path(theStudy->GetObjectPath(father));
+ //The following code requierd as a field name can contain '/' character
+ theStr<<thePrefix<<"aBuilder.Addreference(fieldSO,getSObjectByFatherPathAndName(theStudy,'"<<path<<"','"<<value<<"'))"<<endl;
+ }
+ value = anObj->GetName();
+ if(!value.isEmpty()) theStr<<thePrefix<<"aBuilder.SetName(fieldSO, '"<<value<<"')"<< endl;
+
+ //SCALARMAP,...
+ SALOMEDS::ChildIterator_var aSubIter = theStudy->NewChildIterator(anObj);
+ for (aSubIter->Init(); aSubIter->More(); aSubIter->Next()) {
+ SALOMEDS::SObject_var aSubObj = aSubIter->Value();
+
+ theStr<<thePrefix<<"subSO = aBuilder.NewObject(fieldSO)"<<endl;
+ value = aSubObj->GetName();
+ if(!value.isEmpty()) theStr<<thePrefix<<"aBuilder.SetName(subSO, '"<<value<<"')"<< endl;
+ if (aSubObj->FindAttribute(anAttr, "AttributeString")) {
+ aStringAttr = SALOMEDS::AttributeString::_narrow(anAttr);
+ theStr<<thePrefix<<"strAttr = aBuilder.FindOrCreateAttribute(subSO, 'AttributeString')"<< endl;
+ theStr<<thePrefix<<"strAttr.SetValue('"<<aStringAttr->Value()<<"')"<< endl;
+ }
+ }
+
+ }
+
+ }
+
+ theStr<<endl;
+ }
//===========================================================================
Engines::TMPFile*
CORBA::Boolean theIsPublished,
CORBA::Boolean& theIsValidScript)
{
+ theIsValidScript = false;
+
SALOMEDS::Study_var aStudy = SALOMEDS::Study::_narrow(theStudy);
if(CORBA::is_nil(aStudy))
return new Engines::TMPFile(0);
SALOMEDS::SComponent_var aComponent = FindOrCreateVisuComponent(aStudy);
VISU::DumpChildrenToPython(aStudy,theIsPublished,theIsValidScript,aComponent.in(),aStr,aName2EntryMap,aEntry2NameMap,"",aPrefix);
VISU::DumpContainersToPython(aStudy,theIsPublished,theIsValidScript,aComponent.in(),aStr,aName2EntryMap,aEntry2NameMap,"",aPrefix);
+ VISU::DumpAnimationsToPython(aStudy,theIsPublished,theIsValidScript,aComponent.in(),aStr,aPrefix);
//Output the script that sets up the visul parameters.
if(theIsPublished) {
aStr<<aPrefix<<"pass"<<endl;
+ if(theIsPublished) { //SRN: define function for Animation
+
+ //Define a function that find a SObject by its father's path and its name
+ aStr<<endl;
+ aStr<<endl;
+
+ aStr<<"def getSObjectByFatherPathAndName(theStudy, thePath, theName):"<<endl;
+ aStr<<aPrefix<<"father = theStudy.FindObjectByPath(thePath)"<<endl;
+ aStr<<aPrefix<<"itr = theStudy.NewChildIterator(father)"<<endl;
+ aStr<<aPrefix<<"while itr.More():"<<endl;
+ aStr<<aPrefix<<aPrefix<<"so = itr.Value()"<<endl;
+ aStr<<aPrefix<<aPrefix<<"if so.GetName()==theName: return so"<<endl;
+ aStr<<aPrefix<<aPrefix<<"itr.Next()"<<endl;
+ aStr<<aPrefix<<aPrefix<<"pass"<<endl;
+ aStr<<aPrefix<<"return None"<<endl;
+
+ aStr<<endl;
+ }
+
+ // theIsValidScript currently is not used by internal dump methods (DumpChildrenToPython(), etc.)
+ // If the situation changes, then the following line should be removed, and theIsValidScript
+ // should be set properly by those internal methods
+ theIsValidScript = true;
+
#ifndef COUT
std::string aResult = aStr.str();
//ofstream anFStream("/tmp/dump.py");
namespace VISU
{
//! Class of the Gauss Points presentation.
- class GaussPoints_i : public virtual POA_VISU::GaussPoints,
+ class VISU_I_EXPORT GaussPoints_i : public virtual POA_VISU::GaussPoints,
public virtual VISU::TGaussPtsActorFactory,
public virtual MinMaxCunsomer,
public virtual ColoredPrs3d_i
{
static int myNbPresent;
- GaussPoints_i();
GaussPoints_i(const GaussPoints_i&);
public:
bool
CheckIsPossible();
+ virtual
+ const char*
+ GetIconName() {return "ICON_TREE_GAUSS_POINTS";}
+
virtual
VISU_PipeLine*
GetActorPipeLine();
#include <omnithread.h>
#include CORBA_SERVER_HEADER(SALOME_Session)
#include CORBA_SERVER_HEADER(SALOME_ModuleCatalog)
+#include CORBA_SERVER_HEADER(MED_Gen)
// QT Includes
-#include <qstring.h>
+#include <qdir.h>
#include <qfileinfo.h>
#include <qregexp.h>
//----------------------------------------------------------------------------
void
- CorrectSObjectType(SALOMEDS::SObject_ptr theSObject)
+ CorrectSObjectType(SALOMEDS::SObject_ptr theSObject,
+ SALOMEDS::StudyBuilder_ptr theBuilder)
{
SALOMEDS::GenericAttribute_var anAttr;
- if ( theSObject->FindAttribute(anAttr, "AttributeComment") ) {
- SALOMEDS::AttributeComment_var aAttComment = SALOMEDS::AttributeComment::_narrow(anAttr);
+ bool isAttrStringFound = false;
+
+ if( theSObject->FindAttribute(anAttr, "AttributeComment") ) {
+ //SRN: Replace an AttributeComment with AttributeString
+ SALOMEDS::AttributeComment_var aComment = SALOMEDS::AttributeComment::_narrow(anAttr);
+ string aValue = aComment->Value();
+ theBuilder->RemoveAttribute(theSObject, "AttributeComment");
+ anAttr = theBuilder->FindOrCreateAttribute(theSObject, "AttributeString");
+ SALOMEDS::AttributeString_var aStringAttr = SALOMEDS::AttributeString::_narrow(anAttr);
+ aStringAttr->SetValue(aValue.c_str());
+ isAttrStringFound = true;
+ }
+
+ if ( isAttrStringFound || theSObject->FindAttribute(anAttr, "AttributeString") ) {
+ SALOMEDS::AttributeString_var aAttComment = SALOMEDS::AttributeString::_narrow(anAttr);
if ( aAttComment ) {
string aValue = aAttComment->Value();
if ( aValue.compare("") ) {
else if ( !aComment.compare(QString("CONTAINER")) ) aVISUType = VISU::TCONTAINER;
else if ( !aComment.compare(QString("MESH")) ) aVISUType = VISU::TMESH;
else if ( !aComment.compare(QString("SCALARMAP")) ) aVISUType = VISU::TSCALARMAP;
+ else if ( !aComment.compare(QString("PRSMERGER")) ) aVISUType = VISU::TPRSMERGER;
else if ( !aComment.compare(QString("ISOSURFACE")) ) aVISUType = VISU::TISOSURFACE;
else if ( !aComment.compare(QString("DEFORMEDSHAPE")) ) aVISUType = VISU::TDEFORMEDSHAPE;
else if ( !aComment.compare(QString("SCALARMAPONDEFORMEDSHAPE")) ) aVISUType = VISU::TSCALARMAPONDEFORMEDSHAPE;
SALOMEDS::Study_var aStudy = theComponent->GetStudy();
SALOMEDS::ChildIterator_var anIter = aStudy->NewChildIterator(theComponent);
+ SALOMEDS::StudyBuilder_var aStudyBuilder = aStudy->NewBuilder();
+
for (anIter->InitEx(true); anIter->More(); anIter->Next()) {
SALOMEDS::SObject_var aSObject = anIter->Value();
- CorrectSObjectType(aSObject);
+ CorrectSObjectType(aSObject, aStudyBuilder);
}
- SALOMEDS::StudyBuilder_var aStudyBuilder = aStudy->NewBuilder();
+
string aDir = isMultiFile ? theURL : SALOMEDS_Tool::GetTmpDir();
TCollection_AsciiString aTmpDir (const_cast<char*>(aDir.c_str()));
VisuTmpDir = aTmpDir.ToCString();
QString aPrefix("");
if (isMultiFile) aPrefix = SALOMEDS_Tool::GetNameFromPath(aStudy->URL()).c_str();
QString aFileName = aPrefix + "_" + (pResult->GetName()).c_str();
+ QString tmpDir = QDir::convertSeparators( QString(aTmpDir.ToCString()) );;
static QString aCommand;
- aCommand.sprintf("cp %s %s%s",aFileInfo.filePath().latin1(),aTmpDir.ToCString(),aFileName.latin1());
+ aCommand.sprintf(" %s %s%s",aFileInfo.filePath().latin1(),tmpDir.latin1(),aFileName.latin1());
+ aCommand = QDir::convertSeparators( aCommand );
+ aCommand.prepend( COPY_COMMAND );
- int aRes = system(aCommand);
- if(aRes){
+ if(system(aCommand.latin1())){
if(MYDEBUG) MESSAGE("VISU_Gen_i::Save - Can't execute the command :"<<aCommand);
continue;
}else
if(MYDEBUG) MESSAGE("VISU_Gen_i::Save - "<<aCommand);
- TCollection_AsciiString aString(strdup(aFileName.latin1()));
+ QString studyPath = tmpDir.append(aFileName);
+ TCollection_AsciiString aString((char *)(aFileName.latin1()));
- HDFascii::ConvertFromHDFToASCII(strdup((aTmpDir + aString).ToCString()), true);
+ HDFascii::ConvertFromHDFToASCII(strdup(studyPath.latin1()), true);
aFileNames.Append(aString);
}}
myStudyDocument = SALOMEDS::Study::_duplicate(theStudy);
ProcessVoidEvent(new TEvent(aStudyName));
+
+ // Load MED component if necessary
+ if(!myStudyDocument->FindComponent("MED")->_is_nil())
+ {
+ SALOME_LifeCycleCORBA aLCC(SalomeApp_Application::namingService());
+ Engines::Component_var aComponent = aLCC.FindOrLoad_Component("FactoryServer","MED");
+ SALOME_MED::MED_Gen_var aMedEngine = SALOME_MED::MED_Gen::_narrow(aComponent);
+
+ if(!CORBA::is_nil(aMedEngine))
+ {
+ SALOMEDS::StudyBuilder_var aStudyBuilder = myStudyDocument->NewBuilder();
+ try {
+ aStudyBuilder->LoadWith( myStudyDocument->FindComponent( "MED" ), aMedEngine );
+ }
+ catch( const SALOME::SALOME_Exception& ) {
+ // Oops, something went wrong while loading
+ // See also SalomeApp_Study::openDataModel()
+ }
+ }
+ }
} else {
INFOS("CORBA::is_nil(theStudy)");
}
theIteration)._retn();
}
- Table_ptr VISU_Gen_i::CreateTable(const char* theTableEntry){
+ struct CreateTableEvent: public SALOME_Event
+ {
+ SALOMEDS::Study_var myStudyDocument;
+ const char* myTableEntry;
+ typedef Table_ptr TResult;
+ TResult myResult;
+
+ CreateTableEvent(const SALOMEDS::Study_var& theStudy, const char* theTableEntry)
+ {
+ myStudyDocument = theStudy;
+ myTableEntry = theTableEntry;
+ myResult = Table::_nil();
+ }
+
+ virtual
+ void
+ Execute()
+ {
+ Table_i* pPresent = new Table_i(myStudyDocument,myTableEntry);
+ if(pPresent->Create() != NULL)
+ myResult = pPresent->_this();
+ else{
+ pPresent->_remove_ref();
+ myResult = VISU::Table::_nil();
+ }
+ }
+ };
+
+
+ Table_ptr VISU_Gen_i::CreateTable(const char* theTableEntry)
+ {
if(myStudyDocument->GetProperties()->IsLocked())
return Table::_nil();
Mutex mt(myMutex);
- Table_i* pPresent = new Table_i(myStudyDocument,theTableEntry);
- if(pPresent->Create() != NULL)
- return pPresent->_this();
- else{
- pPresent->_remove_ref();
- return VISU::Table::_nil();
- }
+ return ProcessEvent(new CreateTableEvent(myStudyDocument, theTableEntry));
}
Curve_ptr VISU_Gen_i::CreateCurve(Table_ptr theTable,
aFileName += aFileInfo.fileName().latin1();
static QString aCommand;
string aFullFileName = aTmpDir + aFileName;
- aCommand.sprintf("cp %s %s",
- aFileInfo.filePath().latin1(),
- aFullFileName.c_str());
- if(system(aCommand) == -1) {
+ aCommand.sprintf(" %s %s",aFileInfo.filePath().latin1(), aFullFileName.c_str() );
+ aCommand = QDir::convertSeparators( aCommand );
+ aCommand.prepend( COPY_COMMAND );
+
+ if(system(aCommand.latin1()) == -1) {
if(MYDEBUG) MESSAGE("VISU_Gen_i::Copy - Cann't execute the command :"<<aCommand);
return NULL;
}
stmIn.seekg(0, ios::beg);
char* aString = new char[aLength+1];
stmIn.read(aString, aLength);
+ stmIn.close();
aString[aLength] = 0;
myIsMultiFile = false;
aResultSO = SALOMEDS::SObject::_duplicate(theObject);
//Just for Result::Restore to find the Comment attribute :(
- SALOMEDS::GenericAttribute_var anAttr = aStudyBuilder->FindOrCreateAttribute(aResultSO, "AttributeComment");
+ SALOMEDS::GenericAttribute_var anAttr = aStudyBuilder->FindOrCreateAttribute(aResultSO, "AttributeString");
Storable* aStorable = Storable::Create(aResultSO,aFileName,aString);
public virtual Base_i
{
SALOMEDS::Study_var myStudyDocument;
- VISU_Gen_i();
VISU_Gen_i(const VISU::VISU_Gen_i &);
public:
VISU_Gen_i(CORBA::ORB_ptr theORB,
--- /dev/null
+// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// 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.
+//
+// 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
+//
+//
+//
+// File : VISU_I.hxx
+// Author : Oleg UVAROV
+// Module : VISU
+
+#ifndef _VISU_I_HXX_
+#define _VISU_I_HXX_
+
+#ifdef WNT
+# if defined VISU_I_EXPORTS
+# define VISU_I_EXPORT __declspec( dllexport )
+# else
+# define VISU_I_EXPORT __declspec( dllimport )
+# endif
+# define COPY_COMMAND "copy /Y"
+# define MOVE_COMMAND "move /Y"
+# define DELETE_COMMAND "del /F"
+#else
+# define VISU_I_EXPORT
+# define COPY_COMMAND "cp"
+# define MOVE_COMMAND "mv"
+# define DELETE_COMMAND "rm -f"
+#endif
+
+
+
+#endif
\ No newline at end of file
#include "VISU_Actor.h"
#include "SUIT_ResourceMgr.h"
+#include "SALOME_Event.hxx"
#ifdef _DEBUG_
static int MYDEBUG = 0;
return myComment.c_str();
}
+//---------------------------------------------------------------
+const char*
+VISU::IsoSurfaces_i
+::GetIconName()
+{
+ if (!IsGroupsUsed())
+ return "ICON_TREE_ISO_SURFACES";
+ else
+ return "ICON_TREE_ISO_SURFACES_GROUPS";
+}
//---------------------------------------------------------------
VISU::IsoSurfaces_i
VISU::IsoSurfaces_i
::SetNbSurfaces(CORBA::Long theNb)
{
- myIsoSurfacesPL->SetNbParts(theNb);
+
+ struct TEvent: public SALOME_Event
+ {
+ VISU_IsoSurfacesPL* myIsoSurfacesPL;
+ CORBA::Long myNb;
+
+ TEvent(VISU_IsoSurfacesPL* theIsoSurfacesPL,
+ CORBA::Long theNb):
+ myIsoSurfacesPL(theIsoSurfacesPL),
+ myNb(theNb)
+ {}
+
+ virtual
+ void
+ Execute()
+ {
+ myIsoSurfacesPL->SetNbParts(myNb);
+ }
+ };
+
+ ProcessVoidEvent(new TEvent(myIsoSurfacesPL, theNb));
}
//---------------------------------------------------------------
SetSubRange(GetSourceMin(), GetSourceMax());
}
-
//---------------------------------------------------------------
bool
VISU::IsoSurfaces_i
namespace VISU
{
+ //----------------------------------------------------------------------------
class IsoSurfaces_i : public virtual POA_VISU::IsoSurfaces,
public virtual ScalarMap_i
{
static int myNbPresent;
- IsoSurfaces_i();
IsoSurfaces_i(const IsoSurfaces_i&);
public:
+ //----------------------------------------------------------------------------
typedef ScalarMap_i TSuperClass;
+ typedef VISU::IsoSurfaces TInterface;
explicit
IsoSurfaces_i(EPublishInStudyMode thePublishInStudyModep);
CORBA::Double
GetSubMax();
- typedef VISU::IsoSurfaces TInterface;
-
VISU_IsoSurfacesPL*
GetSpecificPL() const
{
QString
GenerateName();
+ virtual
+ const char*
+ GetIconName();
+
virtual
void
ToStream(std::ostringstream& theStr);
CORBA::String_var aString = GetID();
anIOR->SetValue(aString);
}
+
+ // Set icon
+ SALOMEDS::GenericAttribute_var anAttr;
+ SALOMEDS::AttributePixMap_var aPixmap;
+
+ anAttr = aStudyBuilder->FindOrCreateAttribute(GetSObject(), "AttributePixMap");
+ aPixmap = SALOMEDS::AttributePixMap::_narrow( anAttr );
+ aPixmap->SetPixMap("ICON_TREE_MESH");
+
}catch(std::exception& exc){
INFOS("Follow exception was occured :\n"<<exc.what());
return NULL;
namespace VISU
{
- class Mesh_i : public virtual POA_VISU::Mesh,
+ class VISU_I_EXPORT Mesh_i : public virtual POA_VISU::Mesh,
public virtual Prs3d_i
{
static int myNbPresent;
return myComment.c_str();
}
+//---------------------------------------------------------------
+const char*
+VISU::Plot3D_i
+::GetIconName()
+{
+ if (!IsGroupsUsed())
+ return "ICON_TREE_PLOT_3D";
+ else
+ return "ICON_TREE_PLOT_3D_GROUPS";
+}
//---------------------------------------------------------------
VISU::Plot3D_i
namespace VISU
{
- class Plot3D_i : public virtual POA_VISU::Plot3D,
- public virtual ScalarMap_i
+ //----------------------------------------------------------------------------
+ class VISU_I_EXPORT Plot3D_i : public virtual POA_VISU::Plot3D,
+ public virtual ScalarMap_i
{
static int myNbPresent;
- Plot3D_i();
Plot3D_i(const Plot3D_i&);
public:
+ //----------------------------------------------------------------------------
typedef ScalarMap_i TSuperClass;
+ typedef VISU::Plot3D TInterface;
explicit
Plot3D_i(EPublishInStudyMode thePublishInStudyModep);
CORBA::Long
GetNbOfContours();
- typedef VISU::Plot3D TInterface;
-
VISU_Plot3DPL*
GetSpecificPL() const
{
virtual
QString
GenerateName();
+
+ virtual
+ const char*
+ GetIconName();
void
SetMapScale(double theMapScale);
}
+//----------------------------------------------------------------------------
+namespace VISU
+{
+ struct TInvokeSignalEvent: public SALOME_Event
+ {
+ typedef boost::signal0<void> TSignal;
+ const TSignal& mySignal;
+
+ TInvokeSignalEvent(const TSignal& theSignal):
+ mySignal(theSignal)
+ {}
+
+ virtual
+ void
+ Execute()
+ {
+ mySignal();
+ }
+ };
+}
+
//----------------------------------------------------------------------------
VISU::Prs3d_i
-::~Prs3d_i()
+::~Prs3d_i()
{
if(MYDEBUG) MESSAGE("Prs3d_i::~Prs3d_i - this = "<<this);
- myRemoveActorsFromRendererSignal();
+ ProcessVoidEvent(new TInvokeSignalEvent(myRemoveActorsFromRendererSignal));
}
//----------------------------------------------------------------------------
-SALOMEDS::SObject_var
+SALOMEDS::SObject_var
VISU::Prs3d_i
::GetSObject()
{
//----------------------------------------------------------------------------
void
VISU::Prs3d_i
-::Update()
+::Update()
{
if(GetMTime() < myUpdateTime.GetMTime())
return;
//----------------------------------------------------------------------------
void
VISU::Prs3d_i
-::CheckDataSet()
+::CheckDataSet()
{
vtkMapper *aMapper = GetPipeLine()->GetMapper();
vtkDataSet *aDataSet = aMapper->GetInput();
//----------------------------------------------------------------------------
-struct TRemoveFromStudy: public SALOME_Event
+void
+VISU::Prs3d_i
+::RemoveFromStudy()
{
- VISU::Prs3d_i* myRemovable;
- typedef boost::signal0<void> TRemoveFromStudySignal;
- const TRemoveFromStudySignal& myRemoveFromStudySignal;
+ struct TEvent: public TInvokeSignalEvent
+ {
+ VISU::Prs3d_i* myRemovable;
- TRemoveFromStudy(VISU::Prs3d_i* theRemovable,
- const TRemoveFromStudySignal& theRemoveFromStudySignal):
- myRemovable(theRemovable),
- myRemoveFromStudySignal(theRemoveFromStudySignal)
+ TEvent(const TSignal& theSignal,
+ VISU::Prs3d_i* theRemovable):
+ TInvokeSignalEvent(theSignal),
+ myRemovable(theRemovable)
{}
virtual
void
Execute()
{
- myRemoveFromStudySignal();
+ TInvokeSignalEvent::Execute();
myRemovable->Destroy();
}
};
-//----------------------------------------------------------------------------
-void
-VISU::Prs3d_i
-::RemoveFromStudy()
-{
- ProcessVoidEvent(new TRemoveFromStudy(this,myRemoveActorsFromRendererSignal));
+
+ ProcessVoidEvent(new TEvent(myRemoveActorsFromRendererSignal, this));
}
//----------------------------------------------------------------------------
-VISU_PipeLine*
+VISU_PipeLine*
VISU::Prs3d_i
::GetPipeLine() const
{
//----------------------------------------------------------------------------
void
VISU::Prs3d_i
-::RemoveActor(VISU_Actor* theActor)
+::RemoveActor(VISU_Actor* theActor)
{
if(MYDEBUG) MESSAGE("Prs3d_i::RemoveActor - this = "<<this<<"; theActor = "<<theActor<<"; "<<theActor->GetReferenceCount());
myActorCollection->RemoveItem(theActor);
::RemoveActors()
{
if(MYDEBUG) MESSAGE("Prs3d_i::RemoveActors - this = "<<this);
- myRemoveActorsFromRendererSignal();
+ ProcessVoidEvent(new TInvokeSignalEvent(myRemoveActorsFromRendererSignal));
myActorCollection->RemoveAllItems();
}
//----------------------------------------------------------------------------
void
VISU::Prs3d_i
-::UpdateActor(VISU_Actor* theActor)
+::UpdateActor(VISU_Actor* theActor)
{
if(MYDEBUG) MESSAGE("Prs3d_i::UpdateActor - this = "<<this<<"; theActor = "<<theActor);
theActor->SetPosition(myOffset[0],myOffset[1],myOffset[2]);
if(MYDEBUG) MESSAGE("Prs3d_i::UpdateActors - this = "<<this);
Update();
CheckDataSet();
- myUpdateActorsSignal();
+ ProcessVoidEvent(new TInvokeSignalEvent(myUpdateActorsSignal));
}
//----------------------------------------------------------------------------
void
VISU::Prs3d_i
-::SetOffset(CORBA::Float theDx,
- CORBA::Float theDy,
+::SetOffset(CORBA::Float theDx,
+ CORBA::Float theDy,
CORBA::Float theDz)
{
myOffset[0] = theDx;
//----------------------------------------------------------------------------
void
VISU::Prs3d_i
-::GetOffset(CORBA::Float& theDx,
- CORBA::Float& theDy,
+::GetOffset(CORBA::Float& theDx,
+ CORBA::Float& theDy,
CORBA::Float& theDz)
{
theDx = myOffset[0];
- implement basic actor management (CreateActor, UpdateActor, UpdateActors, RemoveActor and RemoveActors);
- implement common 3D functionality like "clipping planes" and offset.
*/
- class Prs3d_i :
+ class VISU_I_EXPORT Prs3d_i :
public virtual POA_VISU::Prs3d,
public virtual SALOME::GenericObj_i,
public virtual TActorFactory,
--- /dev/null
+// VISU OBJECT : interactive object for VISU entities implementation
+//
+// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// 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.
+//
+// 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 : VISU_PrsMerger_i.cc
+// Author : Eugeny Nikolaev
+// Module : VISU
+
+#include "VISU_PrsMerger_i.hh"
+#include "VISU_PrsMergerPL.hxx"
+#include "VISU_MeshPL.hxx"
+#include "VISU_ScalarMapPL.hxx"
+#include "VISU_Convertor.hxx"
+
+#include "VISU_Result_i.hh"
+#include "VISU_ScalarMapAct.h"
+#include "VISU_ScalarMap_i.hh"
+#include "SUIT_ResourceMgr.h"
+
+#include "SUIT_Session.h"
+#include "SALOME_Event.hxx"
+#include "SalomeApp_Study.h"
+#include "SalomeApp_Application.h"
+
+#include <vtkUnstructuredGrid.h>
+#include <vtkCellType.h>
+#include <vtkProperty.h>
+#include <vtkMapper.h>
+
+using namespace VISU;
+using namespace std;
+
+#ifdef _DEBUG_
+static int MYDEBUG = 0;
+#else
+static int MYDEBUG = 0;
+#endif
+
+static int INCMEMORY = 4;
+
+int VISU::PrsMerger_i::IsPossible(Result_i* theResult, const char* theMeshName, VISU::Entity theEntity,
+ const char* theFieldName, int theIteration, int isMemoryCheck)
+{
+ try{
+ float aSize = INCMEMORY*
+ theResult->GetInput()->GetTimeStampSize(theMeshName,(VISU::TEntity)theEntity,theFieldName,theIteration);
+ bool aResult = true;
+ if(isMemoryCheck){
+ aResult = VISU_PipeLine::CheckAvailableMemory(aSize);
+ MESSAGE("PrsMerger_i::IsPossible - CheckAvailableMemory = "<<float(aSize)<<"; aResult = "<<aResult);
+ }
+ return aResult;
+ }catch(std::exception& exc){
+ INFOS("Follow exception was occured :\n"<<exc.what());
+ }catch(...){
+ INFOS("Unknown exception was occured!");
+ }
+ return 0;
+}
+
+int VISU::PrsMerger_i::myNbPresent = 0;
+QString VISU::PrsMerger_i::GenerateName() { return VISU::GenerateName("ScalarMap",myNbPresent++);}
+
+const string VISU::PrsMerger_i::myComment = "PRSMERGER";
+const char* VISU::PrsMerger_i::GetComment() const { return myComment.c_str();}
+
+VISU::PrsMerger_i::
+PrsMerger_i(Result_i* theResult,
+ bool theAddToStudy) :
+ PrsObject_i(theResult->GetStudyDocument()),
+ Prs3d_i(theResult,theAddToStudy),
+ ColoredPrs3d_i(theResult,theAddToStudy),
+ ScalarMap_i(theResult,theAddToStudy),
+ myPrsMergerPL(NULL),
+ myScalarsPL(VISU_ScalarMapPL::New())
+{
+}
+
+VISU::PrsMerger_i::
+PrsMerger_i(Result_i* theResult,
+ SALOMEDS::SObject_ptr theSObject):
+ PrsObject_i(theResult->GetStudyDocument()),
+ Prs3d_i(theResult,theSObject),
+ ColoredPrs3d_i(theResult,theSObject),
+ ScalarMap_i(theResult,theSObject),
+ myPrsMergerPL(NULL),
+ myScalarsPL(VISU_ScalarMapPL::New())
+{
+}
+
+VISU::Storable* VISU::PrsMerger_i::Create(const char* theMeshName, VISU::Entity theEntity,
+ const char* theFieldName, int theIteration)
+{
+ if (MYDEBUG) MESSAGE("PrsMerger_i::Create");
+ myIsColored = true;
+ myColor.R = myColor.G = myColor.B = 0.5;
+ VISU::Storable* aRes = TSuperClass::Create(theMeshName,theEntity,theFieldName,theIteration);
+ this->SetScalarMap(theMeshName,theEntity,theFieldName,theIteration);
+
+ return aRes;
+}
+
+VISU::Storable* VISU::PrsMerger_i::Restore(const Storable::TRestoringMap& theMap)
+{
+ if (MYDEBUG) MESSAGE("VISU::PrsMerger_i::Restore");
+
+ TSuperClass::Restore(theMap);
+
+ SetScalarMap(myMeshName.c_str(),
+ VISU::Entity(myEntity),
+ myFieldName.c_str(),
+ myIteration);
+ // myMeshName = VISU::Storable::FindValue(theMap,"myMeshName").latin1();
+ QStringList aStrSubMeshName = QStringList::split("|",VISU::Storable::FindValue(theMap,"myGeomNameList") );
+ QStringList aStrEntity = QStringList::split("|",VISU::Storable::FindValue(theMap,"myGeomEntityList") );
+ int aC1 = aStrSubMeshName.count();
+ int aC2 = aStrEntity.count();
+ if(aC1 != aC2){
+ // warning situation
+ return this;
+ }
+ if(aC1 == 1)
+ if(aStrSubMeshName[0] == QString("NULL"))
+ return this;
+
+ for(int i=0;i < aC2;i++){
+ std::string aSubMeshName = aStrSubMeshName[i];
+ int aEntity = aStrEntity[i].toInt();
+ if(aEntity == -1){
+ // add group
+ AddMeshOnGroup(myMeshName.c_str(),
+ aSubMeshName.c_str());
+ } else if (aEntity >= 0){
+ // entity and family
+ if(aSubMeshName == ""){
+ // entity
+ SetMeshOnEntity(myMeshName.c_str(),
+ VISU::Entity(aEntity));
+ } else {
+ // family
+ SetFamilyOnEntity(myMeshName.c_str(),
+ VISU::Entity(aEntity),
+ aSubMeshName.c_str());
+ }
+
+ }
+ }
+
+ return this;
+}
+
+void
+VISU::PrsMerger_i
+::SetMapScale(double theMapScale)
+{
+ myPrsMergerPL->SetMapScale(theMapScale);
+}
+
+void VISU::PrsMerger_i::ToStream(std::ostringstream& theStr)
+{
+ if (MYDEBUG) MESSAGE("VISU::PrsMerger_i::ToStream:");
+ TSuperClass::ToStream(theStr);
+
+ QString aStrSubMeshName,aStrEntity;
+ TNameAndEntityList::iterator aIter = myGeomNameEntityList.begin();
+ for(;aIter!=myGeomNameEntityList.end();aIter++){
+ std::string aStr = aIter->first + "|";
+ aStrSubMeshName.append(aStr.c_str());
+ aStrEntity.append(QString::number(aIter->second) + "|");
+ }
+
+ Storable::DataToStream( theStr, "myMeshName", myMeshName.c_str() );
+ Storable::DataToStream( theStr, "myGeomNameList", aStrSubMeshName.latin1());
+ Storable::DataToStream( theStr, "myGeomEntityList", aStrEntity.latin1());
+
+}
+
+void VISU::PrsMerger_i::clearMeshList()
+{
+ VISU_PrsMergerPL::TPipeLines::const_iterator aIter = myMeshPLList.begin();
+ for(int i=0;aIter != myMeshPLList.end();aIter++,i++){
+ ((*aIter).GetPointer())->Delete();
+ }
+ myMeshPLList.clear();
+ myGeomNameEntityList.clear();
+}
+
+void VISU::PrsMerger_i::RemoveAllGeom()
+{
+ clearMeshList();
+ myPrsMergerPL->RemoveAllGeom();
+
+ UpdateIcon();
+}
+
+
+VISU::PrsMerger_i::~PrsMerger_i(){
+ if(MYDEBUG) if (MYDEBUG) MESSAGE("PrsMerger_i::~PrsMerger_i()");
+ this->clearMeshList();
+}
+
+void
+VISU::PrsMerger_i
+::SameAs(const Prs3d_i* theOrigin)
+{
+ if (MYDEBUG) MESSAGE("VISU::PrsMerger_i::SameAs: this="<<this);
+
+ TSuperClass::SameAs(theOrigin);
+
+ if(const PrsMerger_i* aPrs3d = dynamic_cast<const PrsMerger_i*>(theOrigin)){
+ PrsMerger_i* anOrigin = const_cast<PrsMerger_i*>(aPrs3d);
+ if (MYDEBUG) MESSAGE("VISU::PrsMerger_i::SameAs: theOrigin="<<anOrigin);
+ this->SetScalarMap(myMeshName.c_str(),VISU::Entity(myEntity),myFieldName.c_str(),myIteration);
+ string_array_var aGroupNames = anOrigin->getGroupNames();
+ RemoveAllGeom();
+ for(int i=0;i<aGroupNames->length();i++){
+ this->AddMeshOnGroup(myMeshName.c_str(),aGroupNames[i]);
+ }
+ Update();
+ }
+}
+
+void VISU::PrsMerger_i::Update()
+{
+ TSuperClass::Update();
+}
+
+VISU_Actor*
+VISU::PrsMerger_i
+::CreateActor(const Handle(SALOME_InteractiveObject)& theIO, bool toSupressShrinking)
+{
+ if (MYDEBUG) MESSAGE("VISU::PrsMerger_i::CreateActor this="<<this);
+ return VISU::ScalarMap_i::CreateActor(theIO, toSupressShrinking);
+}
+
+VISU_Actor* VISU::PrsMerger_i::CreateActor(const Handle(SALOME_InteractiveObject)& theIO)
+{
+ return CreateActor(theIO, false);
+}
+
+void VISU::PrsMerger_i::UpdateActor(VISU_Actor* theActor) {
+ if (MYDEBUG) MESSAGE("VISU::PrsMerger_i::UpdateActor this="<<this);
+
+ TSuperClass::UpdateActor(theActor);
+}
+
+void
+VISU::PrsMerger_i::
+SetMeshOnGroup(const char* theMeshName,
+ const char* theGroupName)
+{
+ if (MYDEBUG) MESSAGE("VISU::PrsMerger_i::SetMeshOnGroup:");
+ VISU::PIDMapper anIDMapper;
+ anIDMapper = myResult->GetInput()->GetMeshOnGroup(theMeshName,theGroupName);
+
+ VISU_MeshPL* aTmpMesh = VISU_MeshPL::New();
+ aTmpMesh->SetIDMapper(anIDMapper);
+
+ if(myPrsMergerPL->SetGeometry(aTmpMesh)){
+ this->clearMeshList();
+ myMeshPLList.push_back(aTmpMesh);
+ TPairStringAndInt aPair((std::string)theGroupName,-1);
+ myGeomNameEntityList.push_back(aPair);
+ }
+ else
+ aTmpMesh->Delete();
+
+ UpdateIcon();
+}
+
+CORBA::Long
+VISU::PrsMerger_i::
+AddMeshOnGroup(const char* theMeshName,
+ const char* theGroupName)
+{
+ if (MYDEBUG) MESSAGE("VISU::PrsMerger_i::AddMeshOnGroup |"<< theGroupName <<"| this="<<this);
+ CORBA::Long aRetVal = -1;
+ VISU::PIDMapper anIDMapper;
+ anIDMapper = myResult->GetInput()->GetMeshOnGroup(theMeshName,theGroupName);
+ if(!anIDMapper)
+ MESSAGE("Warning: There are no mesh with group=|"<<theGroupName<<"|");
+ if (MYDEBUG) MESSAGE("AddMeshOnGroup nbGeoms defore ="<<myPrsMergerPL->GetNbGeometry());
+
+ bool isGroupInList = false;
+ TNameAndEntityList::const_iterator aIter = myGeomNameEntityList.begin();
+ for(;aIter!=myGeomNameEntityList.end();aIter++){
+ if(aIter->first == std::string(theGroupName))
+ {
+ isGroupInList = true;
+ break;
+ }
+ }
+
+ if(!isGroupInList){
+ VISU_MeshPL* aTmpMesh = VISU_MeshPL::New();
+ aTmpMesh->SetIDMapper(anIDMapper);
+
+ aRetVal = myPrsMergerPL->AddBackGeometry(aTmpMesh);
+
+ if(aRetVal >-1 ){
+ myMeshPLList.push_back(aTmpMesh);
+ TPairStringAndInt aPair((std::string)theGroupName,-1);
+ myGeomNameEntityList.push_back(aPair);
+ }
+ else
+ aTmpMesh->Delete();
+
+ UpdateIcon();
+
+ }
+
+ if (MYDEBUG) MESSAGE("AddMeshOnGroup nbGeoms after ="<<myPrsMergerPL->GetNbGeometry());
+
+ return aRetVal;
+}
+
+void
+VISU::PrsMerger_i::
+SetFamilyOnEntity(const char* theMeshName,
+ const VISU::Entity theEntity,
+ const char* theFamilyName)
+{
+ VISU::PIDMapper anIDMapper;
+ anIDMapper = myResult->GetInput()->GetFamilyOnEntity(theMeshName,(VISU::TEntity)theEntity,theFamilyName);
+
+
+ VISU_MeshPL* aTmpMesh = VISU_MeshPL::New();
+ aTmpMesh->SetIDMapper(anIDMapper);
+
+ if(myPrsMergerPL->SetGeometry(aTmpMesh)){
+ myMeshPLList.push_back(aTmpMesh);
+ TPairStringAndInt aPair((std::string)theFamilyName,(int)theEntity);
+ myGeomNameEntityList.push_back(aPair);
+ }
+ else
+ aTmpMesh->Delete();
+}
+
+void
+VISU::PrsMerger_i::
+SetMeshOnEntity(const char* theMeshName,
+ const VISU::Entity theEntity)
+{
+ VISU::PIDMapper anIDMapper;
+ anIDMapper = myResult->GetInput()->GetMeshOnEntity(theMeshName,(VISU::TEntity)theEntity);
+ VISU_MeshPL* aTmpMesh = VISU_MeshPL::New();
+ aTmpMesh->SetIDMapper(anIDMapper);
+
+ if(myPrsMergerPL->SetGeometry(aTmpMesh)){
+ myMeshPLList.push_back(aTmpMesh);
+ TPairStringAndInt aPair("",(int)theEntity);
+ myGeomNameEntityList.push_back(aPair);
+ }
+ else
+ aTmpMesh->Delete();
+}
+
+void
+VISU::PrsMerger_i::
+SetScalarMap(const char* theMeshName,
+ const VISU::Entity theEntity,
+ const char* theFieldName,
+ CORBA::Long theStampsNum)
+{
+ if (MYDEBUG) MESSAGE("VISU::PrsMerger_i::SetScalarMap this="<<this);
+ VISU::PIDMapper anIDMapper;
+ anIDMapper = myResult->GetInput()->GetTimeStampOnMesh(theMeshName,(VISU::TEntity)theEntity,theFieldName,int(theStampsNum));
+
+ myEntity = (VISU::TEntity)theEntity;
+ myFieldName = theFieldName;
+ myIteration = theStampsNum;
+
+ myScalarsPL->SetIDMapper(anIDMapper);
+ myPrsMergerPL->SetScalars(myScalarsPL);
+}
+
+void
+VISU::PrsMerger_i::
+SetScalarMap(VISU_PipeLine* thePipeLine)
+{
+ if (MYDEBUG) MESSAGE("VISU::PrsMerger_i::SetScalarMap");
+ VISU_ScalarMapPL* aInputScalars = dynamic_cast<VISU_ScalarMapPL*>(thePipeLine);
+ VISU::PIDMapper anIDMapper = aInputScalars->GetIDMapper();
+ myScalarsPL->SetIDMapper(anIDMapper);
+ if(aInputScalars)
+ myPrsMergerPL->SetScalars(myScalarsPL);
+}
+
+void
+VISU::PrsMerger_i::
+RemoveGeometryByName(const char* theName)
+{
+ // not implemented yet.
+}
+
+void
+VISU::PrsMerger_i::
+RemoveGeometryById(CORBA::Long theId)
+{
+ if(myGeomNameEntityList.size() != myMeshPLList.size()){
+ // warning situation. Some information lost
+ // check myGeomNameEntityList and myMeshPLList
+ }
+
+ if(theId >=0 && (int)theId < myMeshPLList.size()){
+ VISU_PrsMergerPL::TPipeLines::iterator aIter = myMeshPLList.begin();
+ for(;aIter != myMeshPLList.end();aIter++){
+ if( myMeshPLList[theId] == (*aIter)){
+ myMeshPLList.erase(aIter);
+ break;
+ }
+ }
+ }
+ if(theId >=0 && (int)theId < myGeomNameEntityList.size()){
+ TNameAndEntityList::iterator aIter = myGeomNameEntityList.begin();
+ for(;aIter != myGeomNameEntityList.end();aIter++){
+ if( myGeomNameEntityList[theId] == (*aIter) ){
+ myGeomNameEntityList.erase(aIter);
+ break;
+ }
+ }
+ }
+ myPrsMergerPL->RemoveGeometryById((int)theId);
+}
+
+void
+VISU::PrsMerger_i
+::DoHook(){
+ if(!myPipeLine) myPipeLine = VISU_PrsMergerPL::New();
+ myPrsMergerPL = dynamic_cast<VISU_PrsMergerPL*>(myPipeLine);
+ myPipeLine->GetMapper()->SetScalarVisibility(IsColored());
+ TSuperClass::DoHook();
+}
+
+const char*
+VISU::PrsMerger_i
+::GetIconName()
+{
+ if (!IsGroupsUsed())
+ return "ICON_TREE_SCALAR_MAP";
+ else
+ return "ICON_TREE_SCALAR_MAP_GROUPS";
+}
+
+void VISU::PrsMerger_i
+::UpdateIcon()
+{
+ if (mySObject->_is_nil())
+ return;
+
+ SALOMEDS::StudyBuilder_var aStudyBuilder = myStudy->NewBuilder();
+
+ // Check if the icon needs to be updated, update if necessary
+ SALOMEDS::GenericAttribute_var anAttr;
+ SALOMEDS::AttributePixMap_var aPixmap;
+
+ anAttr = aStudyBuilder->FindOrCreateAttribute( mySObject, "AttributePixMap" );
+ aPixmap = SALOMEDS::AttributePixMap::_narrow( anAttr );
+
+ if ( aPixmap->GetPixMap() != (std::string)GetIconName() )
+ aPixmap->SetPixMap(GetIconName());
+
+ // Update Object Browser
+ SUIT_Session* aSession = SUIT_Session::session();
+ QPtrList<SUIT_Application> anApplications = aSession->applications();
+ QPtrListIterator<SUIT_Application> anIter (anApplications);
+ while (SUIT_Application* aSApp = anIter.current()) {
+ SalomeApp_Application* anApp = dynamic_cast<SalomeApp_Application*>(aSApp);
+ if (!anApp) return;
+ SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(anApp->activeStudy());
+ if (!aStudy) return;
+ if (_PTR(Study) aCStudy = aStudy->studyDS()) {
+ if (myStudy->StudyId() == aCStudy->StudyId()) {
+ anApp->updateObjectBrowser();
+ break;
+ }
+ }
+ ++anIter;
+ }
+}
+
+CORBA::Long
+VISU::PrsMerger_i
+::GetNumberOfGeom()
+{
+ if(myPrsMergerPL)
+ return myPrsMergerPL->GetNbGeometry();
+ else
+ return 0;
+}
+
+string_array*
+VISU::PrsMerger_i
+::getGroupNames()
+{
+ string_array_var myseq = new string_array;
+ if(myPrsMergerPL){
+ vector<string> aGroupNames;
+ TNameAndEntityList::const_iterator aIter = myGeomNameEntityList.begin();
+ for(;aIter!=myGeomNameEntityList.end();aIter++){
+ TPairStringAndInt aPair = (*aIter);
+ if(aPair.second == -1)
+ aGroupNames.push_back(aPair.first);
+ }
+ myseq->length(aGroupNames.size());
+ vector<string>::const_iterator aNamesIter = aGroupNames.begin();
+ for(int i=0;aNamesIter!=aGroupNames.end();i++,aNamesIter++){
+ myseq[i] = CORBA::string_dup((*aNamesIter).c_str());
+ }
+ }
+ return myseq._retn();
+}
+
+bool
+VISU::PrsMerger_i
+::CheckGroup(const char* theGroupName)
+{
+ if (MYDEBUG) MESSAGE("PrsMerger_i::CheckGroup :|"<<theGroupName<<"|");
+ string aMeshName = myMeshName;
+ string aGroupName = theGroupName;
+
+ VISU::PIDMapper anIDMapper;
+ anIDMapper = myResult->GetInput()->GetMeshOnGroup(aMeshName,theGroupName);
+ if (MYDEBUG) MESSAGE("anIDMapper="<<anIDMapper);
+ if(!anIDMapper) return false;
+
+ bool aAllPoints = true;
+ int aNbCellsInGeom = anIDMapper->GetVTKOutput()->GetNumberOfCells();
+ if(aNbCellsInGeom>0){
+ int aVtkCellType = anIDMapper->GetVTKOutput()->GetCellType(0);
+ if (MYDEBUG) MESSAGE("CellType="<<aVtkCellType);
+ switch(myEntity){
+ case NODE_ENTITY:
+ // Warning. May be unstable. Created for NPAL15200
+ aAllPoints = false;
+ break;
+ case CELL_ENTITY:
+ if(aVtkCellType != VTK_LINE &&
+ aVtkCellType != VTK_POLY_LINE &&
+ aVtkCellType != VTK_VERTEX &&
+ aVtkCellType != VTK_PIXEL)
+ aAllPoints = false;
+ break;
+ case EDGE_ENTITY:
+ if(aVtkCellType == VTK_LINE ||
+ aVtkCellType == VTK_POLY_LINE)
+ aAllPoints = false;
+ break;
+ case FACE_ENTITY:
+ if(aVtkCellType == VTK_TRIANGLE ||
+ aVtkCellType == VTK_TRIANGLE_STRIP ||
+ aVtkCellType == VTK_POLYGON ||
+ aVtkCellType == VTK_QUAD)
+ aAllPoints = false;
+ break;
+ }
+ }
+
+ if (MYDEBUG) MESSAGE("return="<<!aAllPoints);
+ return (!aAllPoints);
+}
+
--- /dev/null
+// VISU OBJECT : interactive object for VISU entities implementation
+//
+// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// 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.
+//
+// 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 : VISU_PrsMerger_i.hh
+// Author : Eugeny Nikolaev
+// Module : VISU
+
+#ifndef VISU_PrsMerger_i_HeaderFile
+#define VISU_PrsMerger_i_HeaderFile
+
+#include "VISU_I.hxx"
+
+#include "VISU_ScalarMap_i.hh"
+#include "VISU_PrsMergerPL.hxx"
+
+#include "VISUConfig.hh"
+
+class VISU_MeshPL;
+
+namespace VISU{
+
+ class VISU_I_EXPORT PrsMerger_i : public virtual POA_VISU::ScalarMap,
+ public virtual ScalarMap_i
+ {
+
+ /*!
+ * eON_GROUP - mesh created on group
+ * eFAMILY_ON_ENTITY - mesh created on family on entity
+ * eON_ENTITY - mesh created on entity (default value)
+ */
+ enum EMeshGeomPlace {eON_GROUP=1,eFAMILY_ON_ENTITY=2,eON_ENTITY=3};
+
+ static int myNbPresent;
+
+ public:
+ PrsMerger_i();
+ PrsMerger_i(const PrsMerger_i&);
+
+ typedef ScalarMap_i TSuperClass;
+ typedef std::pair<std::string,int> TPairStringAndInt;
+ typedef std::vector<TPairStringAndInt> TNameAndEntityList;
+
+ explicit
+ PrsMerger_i(Result_i* theResult,
+ bool theAddToStudy);
+ explicit
+ PrsMerger_i(Result_i* theResult,
+ SALOMEDS::SObject_ptr theSObject);
+ virtual void SameAs(const Prs3d_i* theOrigin);
+ virtual ~PrsMerger_i();
+
+ virtual VISU::VISUType GetType() { return VISU::TPRSMERGER;};
+
+ virtual CORBA::Boolean IsColored() { return myIsColored; }
+ virtual void ShowColored(CORBA::Boolean theColored) { myIsColored = theColored; }
+
+ virtual SALOMEDS::Color GetColor() { return myColor;}
+ virtual void SetColor(const SALOMEDS::Color& theColor) { myColor = theColor;}
+
+ VISU_PrsMergerPL* GetPrsMergerPL(){ return myPrsMergerPL;}
+
+ virtual void Update();
+
+ protected:
+ virtual void DoHook();
+ virtual const char* GetIconName();
+ void UpdateIcon();
+ void clearMeshList();
+
+ VISU_PrsMergerPL* myPrsMergerPL;
+ VISU_PrsMergerPL::TPipeLines myMeshPLList;
+ VISU_ScalarMapPL* myScalarsPL;
+
+ SALOMEDS::Color myColor;
+ bool myIsColored;
+
+ /*! Warning! This variable must be maked as list, if
+ * you we will need in different mesh entities (ENTITY,FAMILY,GROUP) as geometries.
+ */
+ TNameAndEntityList myGeomNameEntityList;
+
+ public:
+ static int IsPossible(Result_i* theResult, const char* theMeshName, VISU::Entity theEntity,
+ const char* theFieldName, int theIteration, int isMemoryCheck = true);
+
+ virtual Storable* Create(const char* theMeshName, VISU::Entity theEntity,
+ const char* theFieldName, int theIteration);
+
+ virtual void ToStream(std::ostringstream& theStr);
+
+ virtual Storable* Restore(const Storable::TRestoringMap& theMap);
+
+ virtual
+ void
+ SetMapScale(double theMapScale = 1.0);
+
+ static const std::string myComment;
+ virtual const char* GetComment() const;
+ virtual QString GenerateName();
+
+ virtual
+ VISU_Actor*
+ CreateActor(const Handle(SALOME_InteractiveObject)& theIO = NULL);
+
+ virtual
+ VISU_Actor*
+ CreateActor(const Handle(SALOME_InteractiveObject)& theIO, bool toSupressShrinking);
+
+ virtual void UpdateActor(VISU_Actor* theActor) ;
+
+ /*!
+ * Sets geometry of mesh as group
+ */
+ virtual void SetMeshOnGroup(const char* theMeshName,
+ const char* theGroupName);
+
+ /*!
+ * Add geometry of mesh as group
+ * \retval the id of added group.
+ */
+ virtual CORBA::Long AddMeshOnGroup(const char* theMeshName,
+ const char* theGroupName);
+
+ /*!
+ * Remove geometry from list by Name
+ */
+ virtual void RemoveGeometryByName(const char* theName);
+
+ /*!
+ * Removes geometry from list by id
+ * Note: theId number in [0,...]
+ *
+ * Waring: if you delete not 0 element, others indexes will be increased.
+ * Example:
+ * 0,1,2,3,4 - indexes
+ * remove 2 index
+ * new sequence:
+ * 0,1,2,3,4 , where are 0 = 0, 1 = 1, 3 = 2, 4 = 3.
+ */
+ virtual void RemoveGeometryById(CORBA::Long theId);
+
+
+ /*!
+ * Sets geometry of mesh as family on entity
+ */
+ virtual void SetFamilyOnEntity(const char* theMeshName,
+ const VISU::Entity theEntity,
+ const char* theFamilyName);
+
+ /*!
+ * Sets geometry of mesh as mesh on entity
+ */
+ virtual void SetMeshOnEntity(const char* theMeshName,
+ const VISU::Entity theEntity);
+
+
+ /*!
+ * Sets scalars as scalar map
+ */
+ virtual void SetScalarMap(const char* theMeshName,
+ VISU::Entity theEntity,
+ const char* theFieldName,
+ CORBA::Long theStampsNum);
+
+ /*!
+ * Get number of geometries.
+ */
+ CORBA::Long GetNumberOfGeom();
+
+
+ /*!
+ * Get group names.
+ */
+ string_array* getGroupNames();
+
+ /*!
+ * Sets scalars as scalar map
+ */
+ void SetScalarMap(VISU_PipeLine* thePipeLine);
+
+ /*!
+ * Removes all geometries.
+ */
+ virtual void RemoveAllGeom();
+
+
+ /*! Warning!
+ * see \a myGeomNameEntityList
+ */
+ virtual CORBA::Long GetMeshGeometryPlace(CORBA::Long theId){return CORBA::Long(1);};// must bee filled
+
+ /*!
+ * Return true, if group is good, esle false.
+ * May be used, if SetScalarMap(...) olready .
+ */
+ bool CheckGroup(const char* theGroupName);
+
+ };
+
+}
+
+#endif
#include <qfileinfo.h>
#include <qsemaphore.h>
#include <qthread.h>
+#include <qdir.h>
// VTK Includes
#include <vtkCell.h>
using namespace std;
#ifdef _DEBUG_
-static int MYDEBUG = 0;
+static int MYDEBUG = 1;
static int MYTIMEDEBUG = 0;
#else
static int MYDEBUG = 0;
aName->SetValue(theName);
}
if (theComment != "") {
- anAttr = aStudyBuilder->FindOrCreateAttribute(aNewObj, "AttributeComment");
- _PTR(AttributeComment) aCmnt (anAttr);
+ anAttr = aStudyBuilder->FindOrCreateAttribute(aNewObj, "AttributeString");
+ _PTR(AttributeString) aCmnt (anAttr);
aCmnt->SetValue(theComment);
}
return aNewObj->GetID();
aName->SetValue(theName);
}
if (theComment != "") {
- anAttr = aStudyBuilder->FindOrCreateAttribute(aSObject, "AttributeComment");
- _PTR(AttributeComment) aCmnt (anAttr);
+ anAttr = aStudyBuilder->FindOrCreateAttribute(aSObject, "AttributeString");
+ _PTR(AttributeString) aCmnt (anAttr);
aCmnt->SetValue(theComment);
}
}
theIsAtOnce = true;
if(Build(SALOMEDS::SObject::_nil(),theIsAtOnce)){
+
+ // Set icon
+ SALOMEDS::StudyBuilder_var aStudyBuilder = myStudyDocument->NewBuilder();
+
+ SALOMEDS::GenericAttribute_var anAttr;
+ SALOMEDS::AttributePixMap_var aPixmap;
+
+ anAttr = aStudyBuilder->FindOrCreateAttribute( mySObject, "AttributePixMap" );
+ aPixmap = SALOMEDS::AttributePixMap::_narrow( anAttr );
+ aPixmap ->SetPixMap("ICON_TREE_RESULT");
+
if(theIsBuildAll)
return BuildAll();
return true;
}
-
+
return false;
}
if(mySourceId == eRestoredFile){
std::string aTmpDir(SALOMEDS_Tool::GetTmpDir());
static QString aCommand;
- aCommand.sprintf("cp %s %s",myFileInfo.absFilePath().latin1(),aTmpDir.c_str());
- if(system(aCommand) == -1){
+ aCommand.sprintf(" %s %s", myFileInfo.absFilePath().latin1(), aTmpDir.c_str() );
+ aCommand = QDir::convertSeparators( aCommand );
+ aCommand.prepend( COPY_COMMAND );
+
+ if(system(aCommand.latin1()) == -1){
MESSAGE("Create - Can't execute the command :"<<aCommand);
return NULL;
}
SALOMEDS::StudyBuilder_var aStudyBuilder = myStudyDocument->NewBuilder();
SALOMEDS::Driver_var aDriver = SALOMEDS::Driver::_narrow(aEngComp);
aStudyBuilder->LoadWith(aCompRefSObj, aDriver);
+ /*
if (strcmp(aDataType, "MED") == 0){
// create field or MED converter
CORBA::Object_var aMedObject = VISU::SObjectToObject(aTargetRefSObj);
myInput->Build();
}else
throw std::runtime_error("GetInput - There is no convertor for the aDataType !!!");
+ //*/
+
+ // create field or MED converter
+ CORBA::Object_var aMedObject = VISU::SObjectToObject(aTargetRefSObj);
+ SALOME_MED::FIELD_var aField = SALOME_MED::FIELD::_narrow(aMedObject);
+ if (!CORBA::is_nil(aField)) {
+ // create field converter
+ myInput = CreateMEDFieldConvertor(aField);
+ myInput->Build();
+ }
+ else if (strcmp(aDataType, "MED") == 0) {
+ // create MED converter
+ myInput = CreateMEDConvertor(aTargetRefSObj);
+ myInput->Build();
+ }
+ else {
+ throw std::runtime_error("GetInput - There is no convertor for the aDataType !!!");
+ }
} else {
myFileInfo.setFile(thePrefix.c_str());
if (IsMultifile()) { // set this file as new - temporary
static QString aCommand;
- aCommand.sprintf("mv %s %s%s",aHDFFileName, aResultPath, myFileInfo.baseName().latin1());
- if (system(aCommand) == -1) {
+ aCommand.sprintf(" %s %s%s",aHDFFileName, aResultPath, myFileInfo.baseName().latin1());
+ aCommand = QDir::convertSeparators( aCommand );
+ aCommand.prepend( MOVE_COMMAND );
+
+ if (system(aCommand.latin1()) == -1) {
if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - Can't execute the command :" << aCommand);
return NULL;
} else {
myFileInfo.setFile(QString(aResultPath) + QString(myFileInfo.baseName().latin1()));
} else { // change current temporary file to the new: with hdf-format
static QString aCommand;
- aCommand.sprintf("mv %s %s\0",aHDFFileName, myFileInfo.filePath().latin1());
- if (system(aCommand.latin1()) == -1) {
+ aCommand.sprintf(" %s %s\0",aHDFFileName, myFileInfo.filePath().latin1());
+ aCommand = QDir::convertSeparators( aCommand );
+ aCommand.prepend( MOVE_COMMAND );
+
+ if (system(aCommand.latin1()) == -1) {
if(MYDEBUG) MESSAGE("VISU::Result_i::Restore - Can't execute the command :" << aCommand);
return NULL;
} else {
GetComment(), VISU::TRESULT, myFileInfo.filePath().latin1(),
myInitFileName.c_str()); // Restoring of Python dump
SALOMEDS::GenericAttribute_var anAttr;
- if (!theSObject->FindAttribute(anAttr, "AttributeComment"))
- throw std::runtime_error("Build - There is no AttributeComment for the SObject !!!");
- SALOMEDS::AttributeComment_var aCmnt = SALOMEDS::AttributeComment::_narrow(anAttr);
+ if (!theSObject->FindAttribute(anAttr, "AttributeString"))
+ throw std::runtime_error("Build - There is no AttributeString for the SObject !!!");
+ SALOMEDS::AttributeString_var aCmnt = SALOMEDS::AttributeString::_narrow(anAttr);
aCmnt->SetValue(aComment.latin1());
}
bool anIsBuildAll = VISU::GetResourceMgr()->booleanValue("VISU", "full_med_loading", false);
MESSAGE("Result_i::~Result_i() - this = "<<this);
if (mySourceId == eRestoredFile) {
static QString aCommand;
+#ifndef WNT
aCommand.sprintf("rm %s",myFileInfo.filePath().latin1());
+#else
+ aCommand.sprintf("del /F %s",myFileInfo.filePath().latin1());
+#endif
int res = system(aCommand);
MESSAGE("Result_i::~Result_i - system("<<aCommand<<") = "<<res);
+
+#ifndef WNT
aCommand.sprintf("rmdir --ignore-fail-on-non-empty %s",myFileInfo.dirPath().latin1());
+#else
+ aCommand.sprintf("del /F %s",myFileInfo.dirPath().latin1());
+#endif
+
res = system(aCommand);
MESSAGE("Result_i::~Result_i - system("<<aCommand<<") = "<<res);
}
{
// check presence of theMeshName
const VISU::TMeshMap& meshMap = myInput->GetMeshMap();
- if ( meshMap.find( theMeshName ) == meshMap.end() ) {
+ PMesh theMesh;
+ VISU::TMeshMap::const_iterator aIter = meshMap.find( theMeshName );
+ if ( aIter == meshMap.end() ) {
MESSAGE("No mesh named " << theMeshName );
return components;
- }
+ } else
+ theMesh = aIter->second;
VISU::PUnstructuredGridIDMapper anIDMapper = myInput->GetMeshOnEntity(theMeshName,
CELL_ENTITY);
vtkUnstructuredGrid* aMesh = anIDMapper->GetUnstructuredGridOutput();
-
+
if ( !aMesh || aMesh->GetNumberOfCells() == 0 ) {
MESSAGE( "No cells in the mesh: " << theMeshName );
return components;
}
-
- // define axis directions and min cell size in each direction
- const int nbAxes = 3;
- int iAx;
- gp_Vec axDirs[ nbAxes ];
- float minSize[3] = { FLT_MAX, FLT_MAX, FLT_MAX };
- bool axesComputed = false;
- for ( vtkIdType iCell = 0; iCell < aMesh->GetNumberOfCells(); ++iCell )
- {
- vtkCell* cell = aMesh->GetCell( iCell );
- int nbPnt = cell->GetNumberOfPoints();
- if ( nbPnt != 8 )
- continue;
- vtkPoints * points = cell->GetPoints();
- vtkFloatingPointType* coords[ 4 ];
- coords[0] = points->GetPoint( 0 );
- coords[1] = points->GetPoint( 1 );
- coords[2] = points->GetPoint( 3 );
- coords[3] = points->GetPoint( 4 );
- gp_Pnt p0( coords[0][0], coords[0][1], coords[0][2] );
- for ( iAx = 0; iAx < nbAxes; ++iAx )
- {
- vtkFloatingPointType* coo = coords[ iAx + 1 ];
- gp_Pnt p( coo[0], coo[1], coo[2] );
- // min size
- vtkFloatingPointType size = p0.SquareDistance( p );
- if ( size > FLT_MIN && size < minSize[ iAx ] )
- minSize[ iAx ] = size;
- // axis direction
- if ( !axesComputed ) {
- gp_Vec dir( p0, p );
- if ( dir.SquareMagnitude() <= DBL_MIN )
- break;
- axDirs[ iAx ] = dir;
- }
+
+ if(!theMesh->IsStructured() || theMesh->myType){
+ // define axis directions and min cell size in each direction
+ const int nbAxes = 3;
+ int iAx;
+ gp_Vec axDirs[ nbAxes ];
+ float minSize[3] = { FLT_MAX, FLT_MAX, FLT_MAX };
+ bool axesComputed = false;
+ for ( vtkIdType iCell = 0; iCell < aMesh->GetNumberOfCells(); ++iCell )
+ {
+ vtkCell* cell = aMesh->GetCell( iCell );
+ int nbPnt = cell->GetNumberOfPoints();
+ if ( nbPnt != 8 )
+ continue;
+ vtkPoints * points = cell->GetPoints();
+ vtkFloatingPointType* coords[ 4 ];
+ coords[0] = points->GetPoint( 0 );
+ coords[1] = points->GetPoint( 1 );
+ coords[2] = points->GetPoint( 3 );
+ coords[3] = points->GetPoint( 4 );
+ gp_Pnt p0( coords[0][0], coords[0][1], coords[0][2] );
+ for ( iAx = 0; iAx < nbAxes; ++iAx )
+ {
+ vtkFloatingPointType* coo = coords[ iAx + 1 ];
+ gp_Pnt p( coo[0], coo[1], coo[2] );
+ // min size
+ vtkFloatingPointType size = p0.SquareDistance( p );
+ if ( size > FLT_MIN && size < minSize[ iAx ] )
+ minSize[ iAx ] = size;
+ // axis direction
+ if ( !axesComputed ) {
+ gp_Vec dir( p0, p );
+ if ( dir.SquareMagnitude() <= DBL_MIN )
+ break;
+ axDirs[ iAx ] = dir;
+ }
+ }
+ if ( iAx == nbAxes )
+ axesComputed = true;
+ }
+ if ( !axesComputed ) {
+ MESSAGE("No good hexahedrons in the mesh: " << theMeshName );
+ return components;
}
- if ( iAx == nbAxes )
- axesComputed = true;
- }
- if ( !axesComputed ) {
- MESSAGE("No good hexahedrons in the mesh: " << theMeshName );
- return components;
- }
-
- // compute axes dirs
- gInfo = & myMeshName2GridInfoMap[ theMeshName ];
- for ( iAx = 0; iAx < nbAxes; ++iAx )
- {
- int iPrev = ( iAx == 0 ) ? 2 : iAx - 1;
- int iNext = ( iAx == 2 ) ? 0 : iAx + 1;
- gInfo->myAxis[ iAx ] = axDirs[ iPrev ] ^ axDirs[ iNext ];
- }
-
- // get and sort intermediate component values - projections of nodes
- // on axis direction; define bnd box
- set< vtkFloatingPointType > comps[ 3 ];
- Bnd_Box box;
- vtkPoints * points = aMesh->GetPoints();
- vtkIdType iP, nbP = aMesh->GetNumberOfPoints();
- for ( iP = 0; iP < nbP; ++iP )
- {
- vtkFloatingPointType* coo = points->GetPoint( iP );
- gp_Pnt p( coo[0], coo[1], coo[2] );
- box.Add( p );
+
+ // compute axes dirs
+ gInfo = & myMeshName2GridInfoMap[ theMeshName ];
+ for ( iAx = 0; iAx < nbAxes; ++iAx )
+ {
+ int iPrev = ( iAx == 0 ) ? 2 : iAx - 1;
+ int iNext = ( iAx == 2 ) ? 0 : iAx + 1;
+ gInfo->myAxis[ iAx ] = axDirs[ iPrev ] ^ axDirs[ iNext ];
+ }
+
+ // get and sort intermediate component values - projections of nodes
+ // on axis direction; define bnd box
+ set< vtkFloatingPointType > comps[ 3 ];
+ Bnd_Box box;
+ vtkPoints * points = aMesh->GetPoints();
+ vtkIdType iP, nbP = aMesh->GetNumberOfPoints();
+ for ( iP = 0; iP < nbP; ++iP )
+ {
+ vtkFloatingPointType* coo = points->GetPoint( iP );
+ gp_Pnt p( coo[0], coo[1], coo[2] );
+ box.Add( p );
+ for ( iAx = 0; iAx < nbAxes; ++iAx ) {
+ const gp_Dir& dir = gInfo->myAxis[ iAx ];
+ vtkFloatingPointType dot = dir.XYZ() * p.XYZ();
+ comps[ iAx ].insert( dot );
+ }
+ }
+
+ // find a range of projections of bnd box corners on each axis
+ vtkFloatingPointType range[3], firstValue[3];
+ double x[2],y[2],z[2];
+ box.Get(x[0],y[0],z[0],x[1],y[1],z[1]);
for ( iAx = 0; iAx < nbAxes; ++iAx ) {
- const gp_Dir& dir = gInfo->myAxis[ iAx ];
- vtkFloatingPointType dot = dir.XYZ() * p.XYZ();
- comps[ iAx ].insert( dot );
+ set< vtkFloatingPointType > bndComps;
+ const gp_Dir& dir = gInfo->myAxis[ iAx ];
+ for ( int iX = 0; iX < 2; ++iX ) {
+ for ( int iY = 0; iY < 2; ++iY ) {
+ for ( int iZ = 0; iZ < 2; ++iZ ) {
+ gp_Pnt p( x[ iX ], y[ iY ], z[ iZ ] );
+ vtkFloatingPointType dot = dir.XYZ() * p.XYZ();
+ bndComps.insert( dot );
+ }
+ }
+ }
+ firstValue[ iAx ] = *bndComps.begin();
+ range[ iAx ] = *bndComps.rbegin() - *bndComps.begin();
}
+
+ // compute component values
+ for ( iAx = 0; iAx < nbAxes; ++iAx )
+ {
+ list< vtkFloatingPointType > values;
+ int nbVals = 0;
+ set< vtkFloatingPointType >& comp = comps[ iAx ];
+ set< vtkFloatingPointType >::iterator val = comp.begin();
+ vtkFloatingPointType bnd = -1., rng = range[ iAx ], first = firstValue[ iAx ];
+ vtkFloatingPointType tol = 0.1 * sqrt( minSize[ iAx ]) / rng;
+ for ( ; val != comp.end(); ++val ) {
+ vtkFloatingPointType value = ( *val - first ) / rng;
+ if ( value > bnd ) {
+ values.push_back( value );
+ bnd = value + tol;
+ nbVals++;
+ }
+ }
+ // store values in gInfo
+ vector< vtkFloatingPointType >& myComp = gInfo->myComponets[ iAx ];
+ myComp.resize( nbVals );
+ list< vtkFloatingPointType >::iterator v = values.begin();
+ for ( int i = 0; v != values.end(); ++v ){
+ myComp[ i++ ] = *v;
+ }
+ }
}
-
- // find a range of projections of bnd box corners on each axis
- vtkFloatingPointType range[3], firstValue[3];
- double x[2],y[2],z[2];
- box.Get(x[0],y[0],z[0],x[1],y[1],z[1]);
- for ( iAx = 0; iAx < nbAxes; ++iAx ) {
- set< vtkFloatingPointType > bndComps;
- const gp_Dir& dir = gInfo->myAxis[ iAx ];
- for ( int iX = 0; iX < 2; ++iX ) {
- for ( int iY = 0; iY < 2; ++iY ) {
- for ( int iZ = 0; iZ < 2; ++iZ ) {
- gp_Pnt p( x[ iX ], y[ iY ], z[ iZ ] );
- vtkFloatingPointType dot = dir.XYZ() * p.XYZ();
- bndComps.insert( dot );
- }
- }
+ else {
+ //ENK: 23.11.2006 - PAL13176 - EDF228 VISU : Enhancement of structured datas processing
+ TIdTypeVector aIndexes = theMesh->GetStructure();
+
+ gInfo = & myMeshName2GridInfoMap[ theMeshName ];
+ switch(aIndexes.size()){
+ case 3:
+ {
+ gp_Dir aDir(0.0,0.0,1.0);
+ gInfo->myAxis[ 2 ] = aDir;
+ }
+ case 2:
+ {
+ gp_Dir aDir(0.0,1.0,0.0);
+ gInfo->myAxis[ 1 ] = aDir;
+ }
+ case 1:
+ {
+ gp_Dir aDir(1.0,0.0,0.0);
+ gInfo->myAxis[ 0 ] = aDir;
+ }
}
- firstValue[ iAx ] = *bndComps.begin();
- range[ iAx ] = *bndComps.rbegin() - *bndComps.begin();
- }
-
- // compute component values
- for ( iAx = 0; iAx < nbAxes; ++iAx )
- {
- list< vtkFloatingPointType > values;
- int nbVals = 0;
- set< vtkFloatingPointType >& comp = comps[ iAx ];
- set< vtkFloatingPointType >::iterator val = comp.begin();
- vtkFloatingPointType bnd = -1., rng = range[ iAx ], first = firstValue[ iAx ];
- vtkFloatingPointType tol = 0.1 * sqrt( minSize[ iAx ]) / rng;
- for ( ; val != comp.end(); ++val ) {
- vtkFloatingPointType value = ( *val - first ) / rng;
- if ( value > bnd ) {
- values.push_back( value );
- bnd = value + tol;
- nbVals++;
- }
+
+ int nbPoints = aMesh->GetNumberOfPoints();
+ vtkFloatingPointType* coords[ 2 ];
+ if(nbPoints>1){
+ coords[0] = aMesh->GetPoints()->GetPoint(0);
+ coords[1] = aMesh->GetPoints()->GetPoint(nbPoints-1);
}
- // store values in gInfo
- vector< vtkFloatingPointType >& myComp = gInfo->myComponets[ iAx ];
- myComp.resize( nbVals );
- list< vtkFloatingPointType >::iterator v = values.begin();
- for ( int i = 0; v != values.end(); ++v )
- myComp[ i++ ] = *v;
+
+ vector<vtkFloatingPointType> PointsCoords[3];
+ TIdTypeVector aCoordIJK;
+ switch(aIndexes.size()){
+ case 3:
+ {
+ vtkIdType nbZ = aIndexes[2];
+ aCoordIJK.clear();
+ aCoordIJK.resize(aIndexes.size(),1);
+ for(int i=0;i<nbZ;i++){
+ aCoordIJK[2]=i+1;
+ vtkIdType aObjID = anIDMapper->GetObjectIDByIndexes(aCoordIJK);
+ vtkIdType aVTKID = anIDMapper->GetNodeVTKID(aObjID);
+ vtkFloatingPointType* aPCoord = aMesh->GetPoints()->GetPoint(aVTKID);
+ PointsCoords[2].push_back(aPCoord[2]);
+ }
+ }
+ case 2:
+ {
+ vtkIdType nbJ = aIndexes[1];
+ aCoordIJK.clear();
+ aCoordIJK.resize(aIndexes.size(),1);
+ for(int i=0;i<nbJ;i++){
+ aCoordIJK[1]=i+1;
+ vtkIdType aObjID = anIDMapper->GetObjectIDByIndexes(aCoordIJK);
+ vtkIdType aVTKID = anIDMapper->GetNodeVTKID(aObjID);
+ vtkFloatingPointType* aPCoord = aMesh->GetPoints()->GetPoint(aVTKID);
+ PointsCoords[1].push_back(aPCoord[1]);
+ }
+ }
+ case 1:
+ {
+ vtkIdType nbI = aIndexes[0];
+ aCoordIJK.clear();
+ aCoordIJK.resize(aIndexes.size(),1);
+ for(int i=0;i<nbI;i++){
+ aCoordIJK[0]=i+1;
+ vtkIdType aObjID = anIDMapper->GetObjectIDByIndexes(aCoordIJK);
+ vtkIdType aVTKID = anIDMapper->GetNodeVTKID(aObjID);
+ vtkFloatingPointType* aPCoord = aMesh->GetPoints()->GetPoint(aVTKID);
+ PointsCoords[0].push_back(aPCoord[0]);
+ }
+ }
+ }
+ for(int i=0;i<aIndexes.size();i++){
+ vector< vtkFloatingPointType >& myComp = gInfo->myComponets[ i ];
+ int aSize = PointsCoords[i].size();
+ if(aSize>0){
+ vtkFloatingPointType aLen = PointsCoords[i][aSize-1] - PointsCoords[i][0];
+ myComp.resize(aSize);
+ myComp[0] = 0;
+ for(int k=1;k<aSize;k++){
+ myComp[k]=myComp[k-1] + (PointsCoords[i][k]-PointsCoords[i][k-1])/aLen;
+ }
+ }
+ }
+
+ //ENK: 23.11.2006
}
}
namespace VISU
{
//----------------------------------------------------------------------------
- class MinMaxCunsomer: public virtual boost::signalslib::trackable
+ class VISU_I_EXPORT MinMaxCunsomer: public virtual
+#ifdef WNT
+ boost::bsignals::trackable
+#else
+ boost::signalslib::trackable
+#endif
{
protected:
bool myMinMaxIsInitilized;
//----------------------------------------------------------------------------
- class Result_i : public virtual POA_VISU::Result,
+ class VISU_I_EXPORT Result_i : public virtual POA_VISU::Result,
public virtual RemovableObject_i,
public virtual SALOME::GenericObj_i
{
- Result_i();
Result_i(const Result_i &);
public:
// Author : Eugeny Nikolaev
// Module : VISU
-#include "VISU_ScalarMapOnDeformedShapePL.hxx"
-#include "VISU_Result_i.hh"
-#include "VISU_ScalarMap_i.hh"
#include "VISU_ScalarMapOnDeformedShape_i.hh"
-#include "VISU_Convertor.hxx"
#include "VISU_ScalarMapAct.h"
+#include "VISU_ScalarMapOnDeformedShapePL.hxx"
+#include "VISU_Convertor.hxx"
+#include "VISU_Result_i.hh"
#include "SUIT_ResourceMgr.h"
#include <vtkProperty.h>
#include <vtkMapper.h>
-using namespace VISU;
-using namespace std;
-
#ifdef _DEBUG_
static int MYDEBUG = 0;
#else
{
myIsColored = true;
myColor.R = myColor.G = myColor.B = 0.5;
- VISU::Storable* aRes = TSuperClass::Create(theMeshName,theEntity,theFieldName,theTimeStampNumber);
- SetScalarFieldName(theFieldName);
- SetScalarIteration(theTimeStampNumber);
- SetScalarMeshName(theMeshName);
- int anEntity = theEntity;
- SetScalarEntity(VISU::TEntity(anEntity));
- SetCScalarField(myScalarMeshName,myScalarFieldName,myScalarIteration,myScalarEntity);
+ VISU::Storable* aRes = TSuperClass::Create(theMeshName,
+ theEntity,
+ theFieldName,
+ theTimeStampNumber);
+ SetScalarField(theMeshName.c_str(),
+ theFieldName.c_str(),
+ theTimeStampNumber,
+ theEntity);
return aRes;
}
if(!TSuperClass::Restore(theStudy, theMap))
return NULL;
- SetScalarFieldName(VISU::Storable::FindValue(theMap,"myScalarFieldName"));
- SetScalarMeshName(VISU::Storable::FindValue(theMap,"myScalarMeshName"));
- SetScalarIteration(VISU::Storable::FindValue(theMap,"myScalarIteration").toInt());
- SetScalarEntity(VISU::TEntity(VISU::Storable::FindValue(theMap,"myScalarEntity").toInt()));
- SetCScalarField(GetScalarMeshName(),
- GetScalarFieldName(),
- GetScalarIteration(),
- GetScalarEntity());
+ QString aMeshName = VISU::Storable::FindValue(theMap,"myScalarMeshName");
+ VISU::Entity anEntity = VISU::Entity(VISU::Storable::FindValue(theMap,"myScalarFieldName").toInt());
+
+ QString aFieldName = VISU::Storable::FindValue(theMap,"myScalarFieldName");
+ int aTimeStampNumber = VISU::Storable::FindValue(theMap,"myScalarFieldName").toInt();
+
+ SetScalarField(aMeshName,
+ aFieldName,
+ aTimeStampNumber,
+ anEntity);
SetScale(VISU::Storable::FindValue(theMap,"myFactor").toDouble());
myIsColored = VISU::Storable::FindValue(theMap,"myIsColored").toInt();
Storable::DataToStream( theStr, "myScalarFieldName", myScalarFieldName.c_str());
Storable::DataToStream( theStr, "myScalarMeshName", myScalarMeshName.c_str());
- Storable::DataToStream( theStr, "myScalarIteration", myScalarIteration);
+ Storable::DataToStream( theStr, "myScalarIteration", int(myScalarIteration));
Storable::DataToStream( theStr, "myScalarEntity", int(myScalarEntity));
Storable::DataToStream( theStr, "myFactor", GetScale() );
VISU::ScalarMapOnDeformedShape_i
::SameAs(const Prs3d_i* theOrigin)
{
- int theScalarIter = this->GetScalarIteration();
- string theScalarMeshName = this->GetScalarMeshName();
- string theScalarFieldName = this->GetScalarFieldName();
-
TSuperClass::SameAs(theOrigin);
if(const ScalarMapOnDeformedShape_i* aPrs3d = dynamic_cast<const ScalarMapOnDeformedShape_i*>(theOrigin)){
ScalarMapOnDeformedShape_i* anOrigin = const_cast<ScalarMapOnDeformedShape_i*>(aPrs3d);
+ CORBA::String_var aMeshName = anOrigin->GetScalarCMeshName();
+ CORBA::String_var aFieldName = anOrigin->GetScalarCFieldName();
- this->SetCScalarField(anOrigin->GetScalarMeshName(),
- anOrigin->GetScalarFieldName(),
- theScalarIter,
- anOrigin->GetScalarEntity());
+ SetScalarField(aMeshName,
+ aFieldName,
+ anOrigin->GetScalarLIteration(),
+ anOrigin->GetScalarEEntity());
Update();
}
}
//---------------------------------------------------------------
void
VISU::ScalarMapOnDeformedShape_i
-::SetCScalarField(const std::string& theMeshName,
- const std::string& theFieldName,
- int theIteration,
- VISU::TEntity theEntity)
+::SetScalarField(const char* theMeshName,
+ const char* theFieldName,
+ CORBA::Long theTimeStampNumber,
+ VISU::Entity theEntity)
{
+ bool anIsModified = false;
+
+ if(!anIsModified)
+ anIsModified |= myScalarMeshName != theMeshName;
+
+ if(!anIsModified)
+ anIsModified |= myScalarEntity != theEntity;
+
+ if(!anIsModified)
+ anIsModified |= myScalarFieldName != theFieldName;
+
+ if(!anIsModified)
+ anIsModified |= myScalarIteration != theTimeStampNumber;
+
+ if(!anIsModified)
+ return;
+
+ VISU::TEntity aEntity = VISU::TEntity(theEntity);
VISU::Result_i::TInput* anInput = GetCResult()->GetInput();
- SetField(anInput->GetField(theMeshName,theEntity,theFieldName));
+ SetField(anInput->GetField(theMeshName, aEntity, theFieldName));
VISU::PUnstructuredGridIDMapper anIDMapper =
anInput->GetTimeStampOnMesh(theMeshName,
- theEntity,
+ aEntity,
theFieldName,
- theIteration);
+ theTimeStampNumber);
vtkUnstructuredGrid* anOutput = anIDMapper->GetUnstructuredGridOutput();
if(myScalarMapOnDeformedShapePL && anOutput)
myScalarMapOnDeformedShapePL->SetScalars(anOutput);
- this->SetScalarMeshName(theMeshName);
- this->SetScalarFieldName(theFieldName);
- this->SetScalarIteration(theIteration);
- this->SetScalarEntity(theEntity);
+ myScalarMeshName = theMeshName;
+ myScalarEntity = theEntity;
+ myScalarFieldName = theFieldName;
+ myScalarIteration = theTimeStampNumber;
+ myParamsTime.Modified();
}
//---------------------------------------------------------------
-void
+char*
VISU::ScalarMapOnDeformedShape_i
-::SetScalarField(const char* theMeshName,
- const char* theFieldName,
- CORBA::Long theIteration,
- VISU::Entity theEntity)
+::GetScalarCMeshName()
{
- this->SetCScalarField(theMeshName,theFieldName,(int)theIteration,VISU::TEntity(theEntity));
+ return CORBA::string_dup(myScalarMeshName.c_str());
}
//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::SetScalarMeshName(const std::string& theName)
-{
- if(myScalarMeshName != theName){
- myScalarMeshName = theName;
- myParamsTime.Modified();
- }
-}
-
-//---------------------------------------------------------------
-std::string
+VISU::Entity
VISU::ScalarMapOnDeformedShape_i
-::GetScalarMeshName()
-{
- return myScalarMeshName;
-}
-
-//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::SetScalarFieldName(const std::string& theName)
+::GetScalarEEntity()
{
- if(myScalarFieldName != theName){
- myScalarFieldName = theName;
- myParamsTime.Modified();
- }
+ return myScalarEntity;
}
-//---------------------------------------------------------------
-std::string
-VISU::ScalarMapOnDeformedShape_i
-::GetScalarFieldName()
-{
- return myScalarFieldName;
-}
//---------------------------------------------------------------
-void
+char*
VISU::ScalarMapOnDeformedShape_i
-::SetScalarIteration(const int theValue)
+::GetScalarCFieldName()
{
- if(myScalarIteration != theValue){
- myScalarIteration = theValue;
- myParamsTime.Modified();
- }
+ return CORBA::string_dup(myScalarFieldName.c_str());
}
//---------------------------------------------------------------
-int
+CORBA::Long
VISU::ScalarMapOnDeformedShape_i
-::GetScalarIteration()
+::GetScalarLIteration()
{
return myScalarIteration;
}
-//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::SetScalarEntity(const VISU::TEntity theValue)
-{
- if(myScalarEntity != theValue){
- myScalarEntity = theValue;
- myParamsTime.Modified();
- }
-}
-
-//---------------------------------------------------------------
-VISU::TEntity
-VISU::ScalarMapOnDeformedShape_i
-::GetScalarEntity()
-{
- return myScalarEntity;
-}
-
-//---------------------------------------------------------------
-void
-VISU::ScalarMapOnDeformedShape_i
-::SetScalarEEntity(const VISU::Entity theValue)
-{
- VISU::TEntity anEntity = VISU::TEntity(theValue);
- if(myScalarEntity != anEntity){
- myScalarEntity = anEntity;
- myParamsTime.Modified();
- }
-}
//---------------------------------------------------------------
-VISU::Entity
-VISU::ScalarMapOnDeformedShape_i
-::GetScalarEEntity()
-{
- return VISU::Entity(myScalarEntity);
-}
namespace VISU
{
-
+ //----------------------------------------------------------------------------
//! Class of Scalar Map on Deformed Shape presentation.
- class ScalarMapOnDeformedShape_i : public virtual POA_VISU::ScalarMapOnDeformedShape,
- public virtual ScalarMap_i
+ class VISU_I_EXPORT ScalarMapOnDeformedShape_i : public virtual POA_VISU::ScalarMapOnDeformedShape,
+ public virtual ScalarMap_i
{
static int myNbPresent;
- ScalarMapOnDeformedShape_i();
ScalarMapOnDeformedShape_i(const ScalarMapOnDeformedShape_i&);
public:
-
+ //----------------------------------------------------------------------------
typedef ScalarMap_i TSuperClass;
-
+ typedef VISU::ScalarMapOnDeformedShape TInterface;
+
explicit
ScalarMapOnDeformedShape_i(EPublishInStudyMode thePublishInStudyModep);
void
SameAs(const Prs3d_i* theOrigin);
- typedef VISU::ScalarMapOnDeformedShape TInterface;
-
VISU_ScalarMapOnDeformedShapePL*
GetSpecificPL()
{
bool myIsColored;
std::string myScalarMeshName;
std::string myScalarFieldName;
- VISU::TEntity myScalarEntity;
- int myScalarIteration;
+ VISU::Entity myScalarEntity;
+ CORBA::Long myScalarIteration;
public:
//! Redefines VISU_ColoredPrs3d_i::IsPossible
QString
GenerateName();
+ virtual
+ const char*
+ GetIconName();
+
virtual
VISU_Actor*
CreateActor();
void
UpdateActor(VISU_Actor* theActor) ;
- virtual
- void
- SetCScalarField(const std::string& theMeshName,
- const std::string& theFieldName,
- int theIteration,
- VISU::TEntity theEntity);
-
virtual
void
SetScalarField(const char* theMeshName,
const char* theFieldName,
- CORBA::Long theIteration,
- VISU::Entity theEntity);
-
- virtual
- void
- SetScalarFieldName(const std::string& theName);
-
- virtual
- std::string
- GetScalarFieldName();
+ CORBA::Long theTimeStampNumber,
+ VISU::Entity theEntity);
virtual
- void
- SetScalarIteration(const int theValue);
+ char*
+ GetScalarCMeshName();
virtual
- int
- GetScalarIteration();
-
- virtual
- void
- SetScalarMeshName(const std::string& theName);
-
- virtual
- std::string
- GetScalarMeshName();
-
- virtual
- void
- SetScalarEntity(const VISU::TEntity theValue);
+ VISU::Entity
+ GetScalarEEntity();
virtual
- VISU::TEntity
- GetScalarEntity();
+ char*
+ GetScalarCFieldName();
virtual
- void
- SetScalarEEntity(const VISU::Entity theValue);
-
- virtual
- VISU::Entity
- GetScalarEEntity();
+ CORBA::Long
+ GetScalarLIteration();
};
}
#endif
#include "SUIT_ResourceMgr.h"
+#include "SUIT_Session.h"
+#include "SALOME_Event.hxx"
+#include "SalomeApp_Study.h"
+#include "SalomeApp_Application.h"
+
#include <vtkDataSetMapper.h>
#include <vtkTextProperty.h>
return myComment.c_str();
}
+//----------------------------------------------------------------------------
+const char*
+VISU::ScalarMap_i
+::GetIconName()
+{
+ if (!IsGroupsUsed())
+ return "ICON_TREE_SCALAR_MAP";
+ else
+ return "ICON_TREE_SCALAR_MAP_GROUPS";
+}
+
+//----------------------------------------------------------------------------
+void
+VISU::ScalarMap_i
+::UpdateIcon()
+{
+ SALOMEDS::Study_var aStudyDocument = GetStudyDocument();
+ SALOMEDS::StudyBuilder_var aStudyBuilder = aStudyDocument->NewBuilder();
+
+ // Check if the icon needs to be updated, update if necessary
+ SALOMEDS::SObject_var aSObject = GetSObject();
+
+ SALOMEDS::GenericAttribute_var anAttr =
+ aStudyBuilder->FindOrCreateAttribute(aSObject, "AttributePixMap");
+ SALOMEDS::AttributePixMap_var aPixmap = SALOMEDS::AttributePixMap::_narrow( anAttr );
+
+ CORBA::String_var aPixMapName = aPixmap->GetPixMap();
+ if(strcmp(GetIconName(), aPixMapName.in()) != 0)
+ aPixmap->SetPixMap(GetIconName());
+
+ // Update Object Browser
+ SUIT_Session* aSession = SUIT_Session::session();
+ QPtrList<SUIT_Application> anApplications = aSession->applications();
+ QPtrListIterator<SUIT_Application> anIter(anApplications);
+ while(SUIT_Application* aSApp = anIter.current()){
+ if(SalomeApp_Application* anApp = dynamic_cast<SalomeApp_Application*>(aSApp)){
+ if(SalomeApp_Study* aStudy = dynamic_cast<SalomeApp_Study*>(anApp->activeStudy())){
+ if(_PTR(Study) aCStudy = aStudy->studyDS()){
+ if(aStudyDocument->StudyId() == aCStudy->StudyId()){
+ anApp->updateObjectBrowser();
+ break;
+ }
+ }
+ }
+ }
+ ++anIter;
+ }
+}
//----------------------------------------------------------------------------
VISU::ScalarMap_i::
TSuperClass::SetSourceRange();
}
+//----------------------------------------------------------------------------
+const VISU::ScalarMap_i::TGroupNames&
+VISU::ScalarMap_i
+::GetGroupNames()
+{
+ return myGroupNames;
+}
+
+//----------------------------------------------------------------------------
+bool
+VISU::ScalarMap_i
+::IsGroupsUsed()
+{
+ return !myGroupNames.empty();
+}
+
+//----------------------------------------------------------------------------
+void
+VISU::ScalarMap_i::
+AddMeshOnGroup(const char* theMeshName,
+ const char* theGroupName)
+{
+ VISU::Result_i::TInput* anInput = GetCResult()->GetInput();
+ VISU::PUnstructuredGridIDMapper anIDMapper = anInput->GetMeshOnGroup(theMeshName, theGroupName);
+ if(anIDMapper){
+ int aNbGroups = myGroupNames.size();
+ if(myGroupNames.find(theGroupName) != myGroupNames.end()){
+ GetSpecificPL()->AddGeometry(anIDMapper->GetOutput());
+ myGroupNames.insert(theGroupName);
+ if(aNbGroups == 0)
+ UpdateIcon();
+ }
+ }
+}
+
+
+//----------------------------------------------------------------------------
+void
+VISU::ScalarMap_i
+::RemoveAllGeom()
+{
+ int aNbGroups = myGroupNames.size();
+ if(aNbGroups != 0){
+ GetSpecificPL()->ClearGeometry();
+ myGroupNames.clear();
+ UpdateIcon();
+ }
+}
+
+
//----------------------------------------------------------------------------
void
VISU::ScalarMap_i
#include "VISU_ColoredPrs3d_i.hh"
+#include <string>
+#include <set>
+
class VISU_ScalarMapPL;
namespace VISU
{
//============================================================================
- class ScalarMap_i : public virtual POA_VISU::ScalarMap,
+ class VISU_I_EXPORT ScalarMap_i : public virtual POA_VISU::ScalarMap,
public virtual ColoredPrs3d_i
{
static int myNbPresent;
- ScalarMap_i();
ScalarMap_i(const ScalarMap_i&);
public:
- //----------------------------------------------------------------------------
+ //----------------------------------------------------------------------------
typedef ColoredPrs3d_i TSuperClass;
typedef VISU::ScalarMap TInterface;
VISU::ScalarMap::Orientation
GetBarOrientation();
+ //----------------------------------------------------------------------------
+ //! Sets geometry of mesh as group
+ virtual
+ void
+ SetMeshOnGroup(const char* theMeshName,
+ const char* theGroupName);
+
+ //! Add geometry of mesh as group. \retval the id of added group.
+ virtual
+ void
+ AddMeshOnGroup(const char* theMeshName,
+ const char* theGroupName);
+
+ //! Removes all geometries.
+ virtual
+ void
+ RemoveAllGeom();
+
//----------------------------------------------------------------------------
VISU_ScalarMapPL*
GetSpecificPL() const
QString
GenerateName();
+ virtual
+ const char*
+ GetIconName();
+
+ void
+ UpdateIcon();
+
virtual
Storable*
Restore(SALOMEDS::Study_ptr theStudy,
void
UpdateActor(VISU_Actor* theActor);
+ typedef std::string TGroupName;
+ typedef std::set<TGroupName> TGroupNames;
+
+ const TGroupNames&
+ GetGroupNames();
+
+ //! Gets number of geometries
+ bool
+ IsGroupsUsed();
+
private:
VISU_ScalarMapPL* myScalarMapPL;
+ TGroupNames myGroupNames;
};
}
return myComment.c_str();
}
+//---------------------------------------------------------------
+const char*
+VISU::StreamLines_i
+::GetIconName()
+{
+ if (!IsGroupsUsed())
+ return "ICON_TREE_STREAM_LINES";
+ else
+ return "ICON_TREE_STREAM_LINES_GROUPS";
+}
//---------------------------------------------------------------
VISU::StreamLines_i
::~StreamLines_i()
{
if(MYDEBUG) MESSAGE("StreamLines_i::~StreamLines_i()");
- myAppendFilter->UnRegisterAllOutputs();
myAppendFilter->Delete();
}
vtkPointSet* aSource = NULL;
if(!thePrs3d->_is_nil())
if((aPrs3d = dynamic_cast<VISU::Prs3d_i*>(VISU::GetServant(thePrs3d).in()))){
- for(int i = myAppendFilter->GetNumberOfInputs()-1; i >= 0; i--)
- myAppendFilter->RemoveInput(myAppendFilter->GetInput(i));
+ myAppendFilter->RemoveAllInputs();
myAppendFilter->AddInput(aPrs3d->GetPipeLine()->GetMapper()->GetInput());
aSource = myAppendFilter->GetOutput();
}
return IsPossible(GetCResult(),GetCMeshName(),GetEntity(),GetCFieldName(),GetTimeStampNumber(),true);
}
-
//---------------------------------------------------------------
void
VISU::StreamLines_i
namespace VISU
{
- class StreamLines_i : public virtual POA_VISU::StreamLines,
- public virtual DeformedShape_i
+ //----------------------------------------------------------------------------
+ class VISU_I_EXPORT StreamLines_i : public virtual POA_VISU::StreamLines,
+ public virtual DeformedShape_i
{
static int myNbPresent;
- StreamLines_i();
StreamLines_i(const StreamLines_i&);
public:
+ //----------------------------------------------------------------------------
typedef DeformedShape_i TSuperClass;
+ typedef VISU::StreamLines TInterface;
explicit
StreamLines_i(EPublishInStudyMode thePublishInStudyModep);
VISU::StreamLines::Direction
GetDirection();
- typedef VISU::StreamLines TInterface;
-
VISU_StreamLinesPL*
GetSpecificPL() const
{
QString
GenerateName();
+ virtual
+ const char*
+ GetIconName();
+
//! Extends VISU_ColoredPrs3d_i::Restore
virtual
Storable*
else{
aComment.sprintf("myComment=%s;myType=%d;mySourceId=TableAttr",GetComment(),VISU::TTABLE);
SALOMEDS::SObject_var aFatherSObject = SO->GetFather();
- if(aFatherSObject->FindAttribute(anAttr,"AttributeComment")){
- SALOMEDS::AttributeComment_var aCommentAttr =
- SALOMEDS::AttributeComment::_narrow(anAttr);
+ if(aFatherSObject->FindAttribute(anAttr,"AttributeString")){
+ SALOMEDS::AttributeString_var aCommentAttr =
+ SALOMEDS::AttributeString::_narrow(anAttr);
CORBA::String_var aValue = aCommentAttr->Value();
Storable::TRestoringMap aMap;
Storable::StrToMap(aValue.in(),aMap);
// mpv (PAL5357): reference attributes are unnecessary now
//SALOMEDS::SObject_var refSO = Builder->NewObject( mySObj );
//Builder->Addreference( refSO, SO );
- }
+ }
+
+ // Set icon
+ SALOMEDS::AttributePixMap_var aPixmap;
+
+ anAttr = Builder->FindOrCreateAttribute( mySObj, "AttributePixMap" );
+ aPixmap = SALOMEDS::AttributePixMap::_narrow( anAttr );
+ aPixmap->SetPixMap("ICON_TREE_TABLE");
+
return this;
}
return NULL;
SALOMEDS::AttributeName_var aName = SALOMEDS::AttributeName::_narrow(anAttr);
QFileInfo aFileInfo(theFileName);
aName->SetValue(aFileInfo.fileName().latin1());
- anAttr = aStudyBuilder->FindOrCreateAttribute(aFileObject, "AttributeComment");
- SALOMEDS::AttributeComment_var aComment = SALOMEDS::AttributeComment::_narrow(anAttr);
+ anAttr = aStudyBuilder->FindOrCreateAttribute(aFileObject, "AttributeString");
+ SALOMEDS::AttributeString_var aComment = SALOMEDS::AttributeString::_narrow(anAttr);
QString aString;
aString.sprintf("myComment=ImportTables;myFileName=%s",
aFileInfo.absFilePath().latin1());
namespace VISU{
//==============================================================================
- class Table_i : public virtual POA_VISU::Table,
+ class VISU_I_EXPORT Table_i : public virtual POA_VISU::Table,
public virtual PrsObject_i
{
static int myNbPresent;
- Table_i();
Table_i( const Table_i& );
public:
Table_i( SALOMEDS::Study_ptr theStudy, const char* theObject );
SALOMEDS::SObject_var ImportTables(const char* theFileName, SALOMEDS::Study_ptr theStudy);
bool ExportTableToFile(SALOMEDS::SObject_ptr theTable, const char* theFileName);
//==============================================================================
- class Curve_i : public virtual POA_VISU::Curve,
+ class VISU_I_EXPORT Curve_i : public virtual POA_VISU::Curve,
public virtual PrsObject_i
{
static int myNbPresent;
};
//==============================================================================
- class Container_i : public virtual POA_VISU::Container,
+ class VISU_I_EXPORT Container_i : public virtual POA_VISU::Container,
public virtual PrsObject_i
{
static int myNbPresent;
#include "VISU_TimeAnimation.h"
+#ifdef WNT
+#include <windows.h>
+#include <vfw.h>
+#include <qmessagebox.h>
+#endif
+
#include "VISUConfig.hh"
#include "VISU_Result_i.hh"
#include "VISU_Prs3d_i.hh"
#include "VISU_Mesh_i.hh"
-#include "VISU_ScalarMap_i.hh"
#include "VISU_IsoSurfaces_i.hh"
#include "VISU_DeformedShape_i.hh"
#include "VISU_ScalarMapOnDeformedShape_i.hh"
#include "SUIT_Session.h"
#include "SUIT_Study.h"
-#include "SALOMEDSClient_AttributeComment.hxx"
+#include "SALOMEDSClient_AttributeString.hxx"
#include "SALOMEDSClient_AttributeName.hxx"
+#include "CASCatch.hxx"
#include <qpixmap.h>
#include <qimage.h>
using namespace std;
+namespace VISU {
+ class ExecutionState {
+ bool myIsActive;
+ QMutex myIsActiveMutex;
+ public:
+ ExecutionState(bool isActive = false)
+ : myIsActive(isActive) {}
+
+ bool IsActive() {
+ bool state;
+ myIsActiveMutex.lock();
+ state = myIsActive;
+ myIsActiveMutex.unlock();
+ return state;
+ }
+ bool SetActive(bool isActive) {
+ bool state;
+ myIsActiveMutex.lock();
+ state = myIsActive;
+ myIsActive = isActive;
+ myIsActiveMutex.unlock();
+ return state;
+ }
+ };
+}
//------------------------------------------------------------------------
VISU_TimeAnimation::VISU_TimeAnimation (_PTR(Study) theStudy,
VISU::View3D_ptr theView3D)
{
myStudy = theStudy;
- myIsActive = false;
+ myExecutionState = new VISU::ExecutionState(false);
myFrame = 0;
- mySpeed = 1;
- myProportional = false;
+ mySpeed = VISU::GetResourceMgr()->integerValue("VISU", "speed", 1);
+ myProportional = VISU::GetResourceMgr()->booleanValue("VISU", "use_proportional_timing", false);
myView = 0;
if (!CORBA::is_nil(theView3D)) {
connect( myView, SIGNAL( destroyed() ), this, SLOT( onViewDeleted() ) );
}
+ myAnimationMode = 0;
myTimeMinVal = 0;
myTimeMaxVal = 0;
myTimeMin = 0;
myTimeMax = 0;
myLastError = "";
- myCycling = false;
+ myCycling = VISU::GetResourceMgr()->booleanValue("VISU", "cycled_animation", false);
+ myCleaningMemoryAtEachFrame = VISU::GetResourceMgr()->booleanValue("VISU", "clean_memory_at_each_frame", false);
myAnimEntry = "";
return;
}
+ if (QThread::running() && !QThread::finished()) {
+ //myExecutionState->SetActive(false);
+ stopAnimation();
+ QThread::wait(500);
+ if (QThread::running() && !QThread::finished()) {
+ QThread::terminate();
+ }
+ }
+
for (int i = 0; i < getNbFields(); i++) {
clearData(myFieldsLst[i]);
}
+ clearFieldData();
+
+ delete myExecutionState;
+
+ myDumpPath = "";
/* Terminates the execution of the thread.
* The thread may or may not be terminated immediately,
* There is no chance for the thread to cleanup after itself,
* unlock any held mutexes, etc. In short, use this function only if absolutely necessary.
*/
- myDumpPath = "";
- QThread::wait(100);
- QThread::terminate();
- QThread::wait(400);
+ //QThread::wait(100);
+ //QThread::terminate();
+ //QThread::wait(400);
}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::addField (_PTR(SObject) theField)
+bool VISU_TimeAnimation::addField (_PTR(SObject) theField)
{
+ if (!theField) return false;
+
FieldData aNewData;
aNewData.myField = theField;
aNewData.myNbFrames = 0;
- aNewData.myPrsType = VISU::TSCALARMAP;
+ aNewData.myPrsType = VISU::TPRSMERGER;
aNewData.myOffset[0] = aNewData.myOffset[1] = aNewData.myOffset[2] = 0;
VISU::Storable::TRestoringMap aMap = getMapOfValue(aNewData.myField);
+ if(VISU::Storable::FindValue(aMap,"myComment") != QString("FIELD"))
+ return false;
+
aNewData.myNbTimes = VISU::Storable::FindValue(aMap,"myNbTimeStamps").toLong();
- myFieldsLst.append(aNewData);
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ if ( aNewData.myNbTimes < 2 )
+ return false;
+ if ( !myFieldsLst.isEmpty() && myFieldsLst.first().myNbTimes != aNewData.myNbTimes )
+ return false;
+ if ( myFieldsLst.isEmpty() )
+ myFieldsAbsFrames.push_back(aNewData.myNbTimes);
+ }
+ else { // succcessive animation mode
+ if ( aNewData.myNbTimes < 1 )
+ return false;
+
+ long aNumCompCurr = VISU::Storable::FindValue(aMap, "myNumComponent").toLong();
+ if ( !myFieldsLst.isEmpty() ) {
+ VISU::Storable::TRestoringMap aFMap = getMapOfValue(myFieldsLst.first().myField);
+ long aNumComp = VISU::Storable::FindValue(aFMap, "myNumComponent").toLong();
+ if ( aNumCompCurr != aNumComp )
+ return false;
+ }
+
+ if ( !myFieldsLst.isEmpty() )
+ myFieldsAbsFrames.push_back(myFieldsAbsFrames.back() + aNewData.myNbTimes);
+ else
+ myFieldsAbsFrames.push_back(aNewData.myNbTimes);
+ }
+
+ myFieldsLst.append(aNewData);
+
//find Min/Max timestamps
- if ((myTimeMin == 0) && (myTimeMax == 0)) {
- _PTR(ChildIterator) anIter = myStudy->NewChildIterator(theField);
- anIter->Next(); // First is reference on support
+ _PTR(ChildIterator) anIter = myStudy->NewChildIterator(theField);
+ anIter->Next(); // First is reference on support
+ if ( myFieldsLst.size() == 1 ) { // the first field
myTimeMin = getTimeValue(anIter->Value());
- for(; anIter->More(); anIter->Next()) {
+ myTimeMax = getTimeValue(anIter->Value());
+ }
+ for(; anIter->More(); anIter->Next()) {
+ if ( myTimeMin > getTimeValue(anIter->Value()) )
+ myTimeMin = getTimeValue(anIter->Value());
+ if ( myTimeMax < getTimeValue(anIter->Value()) )
myTimeMax = getTimeValue(anIter->Value());
- }
}
+
+ return true;
}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::addField (SALOMEDS::SObject_ptr theField)
+bool VISU_TimeAnimation::addField (SALOMEDS::SObject_ptr theField)
{
SALOMEDS::SObject_var theFieldDup = SALOMEDS::SObject::_duplicate(theField);
_PTR(SObject) aField = VISU::GetClientSObject(theFieldDup, myStudy);
- addField(aField);
+ return addField(aField);
}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::clearData(FieldData& theData) {
+void VISU_TimeAnimation::_clearData(FieldData& theData) {
if (!myView) {
MESSAGE("Viewer is not defined for animation");
return;
myView->update();
}
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::clearData(FieldData& theData) {
+ ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_TimeAnimation,FieldData&>
+ (this,&VISU_TimeAnimation::_clearData,theData));
+}
namespace
{
}
}
}
-
+
+double getMinFieldsValue( QValueList<FieldData>& theFieldsLst )
+{
+ // for succcessive animation mode only
+ double aRes;
+ for (int i = 0; i < theFieldsLst.count(); i++) {
+ if ( theFieldsLst[i].myPrs[0] ) {
+ aRes = theFieldsLst[i].myPrs[0]->GetMin();
+ break;
+ }
+ }
+
+ for (int i = 1; i < theFieldsLst.count() && theFieldsLst[i].myPrs[0]; i++) {
+ if ( aRes > theFieldsLst[i].myPrs[0]->GetMin() )
+ aRes = theFieldsLst[i].myPrs[0]->GetMin();
+ }
+ return aRes;
+}
+
+double getMaxFieldsValue( QValueList<FieldData>& theFieldsLst )
+{
+ // for succcessive animation mode only
+ double aRes;
+ for (int i = 0; i < theFieldsLst.count(); i++) {
+ if ( theFieldsLst[i].myPrs[0] ) {
+ aRes = theFieldsLst[i].myPrs[0]->GetMax();
+ break;
+ }
+ }
+
+ for (int i = 1; i < theFieldsLst.count() && theFieldsLst[i].myPrs[0]; i++) {
+ if ( aRes < theFieldsLst[i].myPrs[0]->GetMax() )
+ aRes = theFieldsLst[i].myPrs[0]->GetMax();
+ }
+ return aRes;
+}
+
void VISU_TimeAnimation::generatePresentations(CORBA::Long theFieldNum) {
FieldData& aData = myFieldsLst[theFieldNum];
using namespace VISU;
switch (aData.myPrsType) {
- case VISU::TSCALARMAP: // ScalarMap
+ case VISU::TSCALARMAP:
+ case VISU::TPRSMERGER: // ScalarMap
GeneratePresentations<ScalarMap_i>(myStudy,
aData,
aResult,
MESSAGE("Not implemented for this presentation type: " << aData.myPrsType);
return;
}
+
+ if ( myAnimationMode == 1 ) { // succcessive animation mode
+ if ( isRangeDefined() ) {
+ if ( myFieldsAbsFrames.size() == getNbFields() )
+ myFieldsAbsFrames.clear();
+ if ( theFieldNum > 0 )
+ myFieldsAbsFrames.push_back(myFieldsAbsFrames.back() + aData.myNbFrames);
+ else
+ myFieldsAbsFrames.push_back(aData.myNbFrames);
+ }
+ if ((theFieldNum == getNbFields() - 1) && aData.myPrsType != VISU::TGAUSSPOINTS){
+ double aMin = getMinFieldsValue(myFieldsLst);
+ double aMax = getMaxFieldsValue(myFieldsLst);
+ for (int i = 0; i < getNbFields(); i++)
+ for(long aFrameId = 0; aFrameId < myFieldsLst[i].myNbFrames; aFrameId++)
+ if (aData.myPrsType == VISU::TISOSURFACE) {
+ if (VISU::IsoSurfaces_i* aPrs = dynamic_cast<VISU::IsoSurfaces_i*>(myFieldsLst[i].myPrs[aFrameId]))
+ aPrs->SetSubRange(aMin, aMax);
+ }
+ else
+ if (VISU::ScalarMap_i* aPrs = dynamic_cast<VISU::ScalarMap_i*>(myFieldsLst[i].myPrs[aFrameId]))
+ aPrs->SetRange(aMin, aMax);
+ }
+ }
}
//------------------------------------------------------------------------
-CORBA::Boolean VISU_TimeAnimation::generateFrames() {
+CORBA::Boolean VISU_TimeAnimation::_generateFrames() {
if (!myView) {
MESSAGE("Viewer is not defined for animation");
return false;
aData.myPrs[j]->SetOffset(aData.myOffset);
aActor = aData.myPrs[j]->CreateActor();
myView->AddActor(aActor);
- if(j == 0)
+ bool condition = ( myAnimationMode == 0 ) ? (j == 0) : (j == 0 && i == 0);
+ if(condition)
aActor->VisibilityOn();
else
aActor->VisibilityOff();
}
myFrame = 0;
myLastError += QString(" timestamp(s) cannot be created.");
- emit frameChanged(myFrame, myFieldsLst[0].myTiming[myFrame]);
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>(this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[0].myTiming[myFrame]));
myView->Repaint();
return aNoError;
}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::clearView() {
+CORBA::Boolean VISU_TimeAnimation::generateFrames()
+{
+ return ProcessEvent(new TMemFunEvent<VISU_TimeAnimation,bool>
+ (this,&VISU_TimeAnimation::_generateFrames));
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::_clearView() {
if (!myView) {
MESSAGE("Viewer is not defined for animation");
return;
}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::stopAnimation() {
- myIsActive = false;
+void VISU_TimeAnimation::clearView()
+{
+ ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ (this,&VISU_TimeAnimation::_clearView));
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::_visibilityOff(int num_field, int num_frame) {
+ if ( num_field < 0 || num_frame < 0 ) return;
+ FieldData& aData = myFieldsLst[num_field];
+ if ( aData.myActors.empty() ) return;
+ VISU_Actor* aActor = aData.myActors[num_frame];
+ if (! myCleaningMemoryAtEachFrame) {
+ //
+ // Usual behaviour : VisibilityOff()
+ // Problem : It don't clean the memory so if there is
+ // a lot of frames, the memory grows dramatically
+ //
+ aActor->VisibilityOff();
+ } else {
+ //
+ // myCleaningMemoryAtEachFrame behaviour:
+ // Delete the actor and re-creation it with VisibilityOff()
+ // since it takes memory only at VisibilityOn()
+ //
+ // Delete the actor
+ aActor->RemoveFromRender(myView->getRenderer());
+ // Re-create the actor
+ aActor = aData.myPrs[num_frame]->CreateActor();
+ myView->AddActor(aActor);
+ aActor->VisibilityOff();
+ aData.myActors[num_frame] = aActor;
+ }
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::visibilityOff(int num_field, int num_frame)
+{
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,int,int>
+ (this,&VISU_TimeAnimation::_visibilityOff,num_field,num_frame));
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::stopAnimation()
+{
+ myExecutionState->SetActive(false);
}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::startAnimation() {
- if (!myIsActive) {
- myIsActive = true;
+void VISU_TimeAnimation::_startAnimation() {
+ if (!myExecutionState->IsActive()) {
+ myExecutionState->SetActive(true);
QThread::start();
}
}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::nextFrame() {
+void VISU_TimeAnimation::startAnimation()
+{
+ ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ (this,&VISU_TimeAnimation::_startAnimation));
+}
+
+//------------------------------------------------------------------------
+CORBA::Boolean VISU_TimeAnimation::isRunning()
+{
+ return myExecutionState->IsActive();
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::_nextFrame() {
if (!myView) {
MESSAGE("Viewer is not defined for animation");
return;
}
stopAnimation();
- if (myFrame < (myFieldsLst[0].myNbFrames-1)) {
+ if (myFrame < getNbFrames() - 1 ) { //(myFieldsLst[0].myNbFrames-1)) {
int i;
- for (i = 0; i < getNbFields(); i++)
- if (myFieldsLst[i].myActors[myFrame] != 0)
- myFieldsLst[i].myActors[myFrame]->VisibilityOff();
+ std::pair<int,long> aPair;
+ int aFieldId;
+ long aFrameId;
+
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ for (i = 0; i < getNbFields(); i++)
+ if (myFieldsLst[i].myActors[myFrame] != 0)
+ visibilityOff(i, myFrame);
+ }
+ else { //succcessive animation mode
+ aPair = getRelativeFrameNumber(myFrame);
+ aFieldId = aPair.first;
+ aFrameId = aPair.second;
+ if (myFieldsLst[aFieldId].myActors[aFrameId] != 0)
+ visibilityOff(aFieldId, aFrameId);
+ }
myFrame++;
- for (i = 0; i < getNbFields(); i++)
- if (myFieldsLst[i].myActors[myFrame] != 0)
- myFieldsLst[i].myActors[myFrame]->VisibilityOn();
- emit frameChanged(myFrame, myFieldsLst[0].myTiming[myFrame]);
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ for (i = 0; i < getNbFields(); i++)
+ if (myFieldsLst[i].myActors[myFrame] != 0)
+ myFieldsLst[i].myActors[myFrame]->VisibilityOn();
+
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>(this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[0].myTiming[myFrame]));
+ }
+ else { //succcessive animation mode
+ aPair = getRelativeFrameNumber(myFrame);
+ aFieldId = aPair.first;
+ aFrameId = aPair.second;
+ if (myFieldsLst[aFieldId].myActors[aFrameId] != 0)
+ myFieldsLst[aFieldId].myActors[aFrameId]->VisibilityOn();
+
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>(this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[aFieldId].myTiming[aFrameId]));
+ }
myView->Repaint();
}
}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::prevFrame() {
+void VISU_TimeAnimation::nextFrame()
+{
+ ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ (this,&VISU_TimeAnimation::_nextFrame));
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::_prevFrame() {
if (!myView) {
MESSAGE("Viewer is not defined for animation");
return;
stopAnimation();
if (myFrame > 0) {
int i;
- for (i = 0; i < getNbFields(); i++)
- if (myFieldsLst[i].myActors[myFrame] != 0)
- myFieldsLst[i].myActors[myFrame]->VisibilityOff();
+ std::pair<int,long> aPair;
+ int aFieldId;
+ long aFrameId;
+
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ for (i = 0; i < getNbFields(); i++)
+ if (myFieldsLst[i].myActors[myFrame] != 0)
+ visibilityOff(i, myFrame);
+ }
+ else { //succcessive animation mode
+ aPair = getRelativeFrameNumber(myFrame);
+ aFieldId = aPair.first;
+ aFrameId = aPair.second;
+ if (myFieldsLst[aFieldId].myActors[aFrameId] != 0)
+ visibilityOff(aFieldId, aFrameId);
+ }
myFrame--;
- for (i = 0; i < getNbFields(); i++)
- if (myFieldsLst[i].myActors[myFrame] != 0)
- myFieldsLst[i].myActors[myFrame]->VisibilityOn();
- emit frameChanged(myFrame, myFieldsLst[0].myTiming[myFrame]);
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ for (i = 0; i < getNbFields(); i++)
+ if (myFieldsLst[i].myActors[myFrame] != 0)
+ myFieldsLst[i].myActors[myFrame]->VisibilityOn();
+
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>(this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[0].myTiming[myFrame]));
+ }
+ else { //succcessive animation mode
+ aPair = getRelativeFrameNumber(myFrame);
+ aFieldId = aPair.first;
+ aFrameId = aPair.second;
+ if (myFieldsLst[aFieldId].myActors[aFrameId] != 0)
+ myFieldsLst[aFieldId].myActors[aFrameId]->VisibilityOn();
+
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>(this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[aFieldId].myTiming[aFrameId]));
+ }
myView->Repaint();
}
}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::firstFrame() {
+void VISU_TimeAnimation::prevFrame()
+{
+ ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ (this,&VISU_TimeAnimation::_prevFrame));
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::_firstFrame() {
if (!myView) {
MESSAGE("Viewer is not defined for animation");
return;
}
stopAnimation();
int i;
- for (i = 0; i < getNbFields(); i++)
- if(!myFieldsLst[i].myActors.empty())
- if (myFieldsLst[i].myActors[myFrame] != 0)
- myFieldsLst[i].myActors[myFrame]->VisibilityOff();
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ for (i = 0; i < getNbFields(); i++)
+ if(!myFieldsLst[i].myActors.empty())
+ if (myFieldsLst[i].myActors[myFrame] != 0)
+ visibilityOff(i, myFrame);
+ }
+ else { //succcessive animation mode
+ std::pair<int,long> aPair = getRelativeFrameNumber(myFrame);
+ int aFieldId = aPair.first;
+ long aFrameId = aPair.second;
+ if(!myFieldsLst[aFieldId].myActors.empty())
+ if (myFieldsLst[aFieldId].myActors[aFrameId] != 0)
+ visibilityOff(aFieldId, aFrameId);
+ }
myFrame = 0;
- for (i = 0; i < getNbFields(); i++)
+
+ int imax;
+ if ( myAnimationMode == 0 ) // parallel animation mode
+ imax = getNbFields();
+ else //succcessive animation mode
+ imax = 1;
+
+ for (i = 0; i < imax; i++)
if(!myFieldsLst[i].myActors.empty())
if (myFieldsLst[i].myActors[myFrame] != 0)
myFieldsLst[i].myActors[myFrame]->VisibilityOn();
+
if(!myFieldsLst[0].myTiming.empty()){
- emit frameChanged(myFrame, myFieldsLst[0].myTiming[myFrame]);
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>(this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[0].myTiming[myFrame]));
myView->Repaint();
}
}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::lastFrame() {
+void VISU_TimeAnimation::firstFrame()
+{
+ ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ (this,&VISU_TimeAnimation::_firstFrame));
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::_lastFrame() {
if (!myView) {
MESSAGE("Viewer is not defined for animation");
return;
}
stopAnimation();
int i;
- for (i = 0; i < getNbFields(); i++)
- if (myFieldsLst[i].myActors[myFrame] != 0)
- myFieldsLst[i].myActors[myFrame]->VisibilityOff();
+ std::pair<int,long> aPair;
+ int aFieldId;
+ long aFrameId;
+
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ for (i = 0; i < getNbFields(); i++)
+ if (myFieldsLst[i].myActors[myFrame] != 0)
+ visibilityOff(i, myFrame);
+ }
+ else { //succcessive animation mode
+ aPair = getRelativeFrameNumber(myFrame);
+ aFieldId = aPair.first;
+ aFrameId = aPair.second;
+ if (myFieldsLst[aFieldId].myActors[aFrameId] != 0)
+ visibilityOff(aFieldId, aFrameId);
+ }
- myFrame = myFieldsLst[0].myNbFrames-1;
- for (i = 0; i < getNbFields(); i++)
- if (myFieldsLst[i].myActors[myFrame] != 0)
- myFieldsLst[i].myActors[myFrame]->VisibilityOn();
+ myFrame = getNbFrames() - 1; //myFieldsLst[0].myNbFrames-1;
+
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ for (i = 0; i < getNbFields(); i++)
+ if (myFieldsLst[i].myActors[myFrame] != 0)
+ myFieldsLst[i].myActors[myFrame]->VisibilityOn();
+
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>(this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[0].myTiming[myFrame]));
+ }
+ else { //succcessive animation mode
+ aPair = getRelativeFrameNumber(myFrame);
+ aFieldId = aPair.first;
+ aFrameId = aPair.second;
+ if (myFieldsLst[aFieldId].myActors[aFrameId] != 0)
+ myFieldsLst[aFieldId].myActors[aFrameId]->VisibilityOn();
+
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>(this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[aFieldId].myTiming[aFrameId]));
+ }
- emit frameChanged(myFrame, myFieldsLst[0].myTiming[myFrame]);
myView->Repaint();
}
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::lastFrame()
+{
+ ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ (this,&VISU_TimeAnimation::_lastFrame));
+}
+
//------------------------------------------------------------------------
// For Batchmode using
-void VISU_TimeAnimation::gotoFrame(CORBA::Long theFrame) {
+void VISU_TimeAnimation::_gotoFrame(CORBA::Long theFrame) {
if (!myView) {
MESSAGE("Viewer is not defined for animation");
return;
if ((theFrame < 0) || (theFrame > (getNbFrames()-1)))
return;
stopAnimation();
- qApp->lock();
- qApp->syncX();
int i;
- for (i = 0; i < getNbFields(); i++)
- if (myFieldsLst[i].myActors[myFrame] != 0)
- myFieldsLst[i].myActors[myFrame]->VisibilityOff();
+ std::pair<int,long> aPair;
+ int aFieldId;
+ long aFrameId;
+
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ for (i = 0; i < getNbFields(); i++)
+ if (myFieldsLst[i].myActors[myFrame] != 0)
+ visibilityOff(i, myFrame);
+ }
+ else { //succcessive animation mode
+ aPair = getRelativeFrameNumber(myFrame);
+ aFieldId = aPair.first;
+ aFrameId = aPair.second;
+ if (myFieldsLst[aFieldId].myActors[aFrameId] != 0)
+ visibilityOff(aFieldId, aFrameId);
+ }
myFrame = theFrame;
- for (i = 0; i < getNbFields(); i++)
- if (myFieldsLst[i].myActors[myFrame] != 0)
- myFieldsLst[i].myActors[myFrame]->VisibilityOn();
- emit frameChanged(myFrame, myFieldsLst[0].myTiming[myFrame]);
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ for (i = 0; i < getNbFields(); i++)
+ if (myFieldsLst[i].myActors[myFrame] != 0)
+ myFieldsLst[i].myActors[myFrame]->VisibilityOn();
+
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>(this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[0].myTiming[myFrame]));
+ }
+ else { //succcessive animation mode
+ aPair = getRelativeFrameNumber(myFrame);
+ aFieldId = aPair.first;
+ aFrameId = aPair.second;
+ if (myFieldsLst[aFieldId].myActors[aFrameId] != 0)
+ myFieldsLst[aFieldId].myActors[aFrameId]->VisibilityOn();
+
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>(this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[aFieldId].myTiming[aFrameId]));
+ }
+
myView->Repaint();
- qApp->flushX();
- qApp->processEvents(3);
- qApp->unlock();
}
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::gotoFrame(CORBA::Long theFrame)
+{
+ ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_TimeAnimation,CORBA::Long>
+ (this,&VISU_TimeAnimation::_gotoFrame,theFrame));
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::_emitFrameChanged(long theNewFrame, double theTime)
+{
+ emit frameChanged(theNewFrame, theTime);
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::_emitStopped()
+{
+ emit stopped();
+}
//------------------------------------------------------------------------
VISU::ColoredPrs3d_ptr VISU_TimeAnimation::getPresentation(CORBA::Long theField, CORBA::Long theFrame) {
//------------------------------------------------------------------------
CORBA::Long VISU_TimeAnimation::getNbFrames() {
- return (getNbFields() > 0)? myFieldsLst[0].myNbFrames : 0;
+ if ( myAnimationMode == 0 ) // parallel animation mode
+ return (getNbFields() > 0)? myFieldsLst[0].myNbFrames : 0;
+ else //succcessive animation mode
+ return (getNbFields() > 0 && !myFieldsAbsFrames.empty()) ? myFieldsAbsFrames[myFieldsAbsFrames.size()-1] : 0;
}
+//------------------------------------------------------------------------
+long VISU_TimeAnimation::getAbsoluteFrameNumber(std::pair<int,long> theFieldTimeStamp)
+{
+ long aRes = -1;
+ if ( getNbFields() > 0 ) {
+ int aFieldId = theFieldTimeStamp.first;
+ long aFrameNum = theFieldTimeStamp.second + 1;
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ if ( aFrameNum <= myFieldsAbsFrames[0] )
+ aRes = aFrameNum;
+ }
+ else { //succcessive animation mode
+ if ( aFieldId == 0 && aFrameNum <= myFieldsAbsFrames[aFieldId] )
+ aRes = aFrameNum;
+ else if ( aFieldId && aFrameNum <= myFieldsAbsFrames[aFieldId] - myFieldsAbsFrames[aFieldId-1] )
+ aRes = myFieldsAbsFrames[aFieldId-1] + aFrameNum;
+ }
+ }
+ return aRes - 1;
+}
//------------------------------------------------------------------------
-void VISU_TimeAnimation::run()
+std::pair<int,long> VISU_TimeAnimation::getRelativeFrameNumber(long theFrame)
{
- if (!myView) {
- MESSAGE("Viewer is not defined for animation");
- return;
+ std::pair<int,long> aRes;
+ if ( getNbFields() > 0 && theFrame < getNbFrames() ) {
+ theFrame = theFrame + 1;
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ aRes.first = 0;
+ aRes.second = theFrame - 1;
+ }
+ else { //succcessive animation mode
+ for (int i = 0, iEnd = myFieldsAbsFrames.size(); i < iEnd; i++)
+ if ( myFieldsAbsFrames[i] >= theFrame ) {
+ aRes.first = i;
+ if ( i == 0 )
+ aRes.second = theFrame - 1;
+ else
+ aRes.second = theFrame-myFieldsAbsFrames[i-1] - 1;
+ break;
+ }
+ }
}
+ return aRes;
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::parallelAnimation( bool& theIsDumping, QValueList<int>& theIndexList )
+{
double k = 1;
- bool isDumping = !myDumpPath.isEmpty();
double aOneVal = 1;
if (myFieldsLst[0].myNbFrames > 2)
- aOneVal = myFieldsLst[0].myTiming[1] - myFieldsLst[0].myTiming[0];
- myFileIndex = 0;
+ aOneVal = ( myTimeMax - myTimeMin ) / getNbFrames();
int aNbFiles = 0;
- QValueList<int> anIndexList;
- qApp->lock();
- while (myIsActive) {
- emit frameChanged(myFrame, myFieldsLst[0].myTiming[myFrame]);
- if(!(myFieldsLst[0].myField))
- break;
- for (int i = 0; i < getNbFields(); i++) {
- FieldData& aData = myFieldsLst[i];
- if (myFrame > 0) {
- if (aData.myActors[myFrame-1] != 0)
- aData.myActors[myFrame-1]->VisibilityOff();
- } else {
- if (aData.myActors[aData.myNbFrames-1] != 0)
- aData.myActors[aData.myNbFrames-1]->VisibilityOff();
- }
- if (aData.myActors[myFrame] != 0) {
- aData.myActors[myFrame]->VisibilityOn();
+ bool hasHextFrame = true;
+ while (hasHextFrame && myExecutionState->IsActive()) {
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>
+ (this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[0].myTiming[myFrame]));
+ if (myExecutionState->IsActive()) {
+ if (!(myFieldsLst[0].myField))
+ break;
+ for (int i = 0; i < getNbFields(); i++) {
+ FieldData& aData = myFieldsLst[i];
+ if (myFrame > 0) {
+ if (aData.myActors[myFrame-1] != 0)
+ visibilityOff(i, myFrame-1);
+ } else {
+ if (aData.myActors[aData.myNbFrames-1] != 0)
+ visibilityOff(i, aData.myNbFrames-1);
+ }
+ if (aData.myActors[myFrame] != 0) {
+ ProcessVoidEvent(new TVoidMemFunEvent<VISU_Actor>(aData.myActors[myFrame],
+ &VISU_Actor::VisibilityOn));
+ }
}
+ bool repainArg = false;
+ ProcessVoidEvent(new TVoidMemFun1ArgEvent<SVTK_ViewWindow,bool>(myView,
+ &SVTK_ViewWindow::Repaint,
+ repainArg));
}
- myView->Repaint(false);
k = 1;
if (myProportional) {
}
}
int delay = (int)(1000. * k / mySpeed);
- isDumping = !myDumpPath.isEmpty();
- if (delay < 1 && isDumping) {
+ theIsDumping = !myDumpPath.isEmpty();
+ if (delay < 1 && theIsDumping) {
// We must unlock mutex for some time before grabbing to allow view updating
delay = 1;
}
- qApp->unlock();
msleep(delay);
- qApp->lock();
+ if (!myExecutionState->IsActive()) return;
- if (isDumping) {
+ if (theIsDumping) {
// We must unlock mutex for some time before grabbing to allow view updating
- qApp->unlock();
msleep(delay);
- qApp->lock();
- if(!(myFieldsLst[0].myField)) // break, if field was deleted.
- break;
- if (myDumpFormat.compare("AVI") != 0) {
- QString aFile(myDumpPath);
- QString aName = QString("%1").arg(myFieldsLst[0].myTiming[myFrame]);
- int aPos = -1;
- while ((aPos = aName.find(".")) > -1 )
- aName.replace(aPos, 1, "_");
- aFile += aName;
- aFile += ".";
- aFile += myDumpFormat.lower();
- myView->dumpViewToFormat(aFile,myDumpFormat);
- } else {
- QFileInfo aFileInfo(myDumpPath);
- QString aDirPath = aFileInfo.dirPath(true);
- QString aBaseName = aFileInfo.fileName();
+ if (!myExecutionState->IsActive()) return;
- switch (myFrame) {
- case 0:
- break;
- case 1:
- myFileIndex += 5;
- break;
- default:
- if (myProportional) {
- double p = (myFieldsLst[0].myTiming[myFrame] -
- myFieldsLst[0].myTiming[myFrame-1]) / aOneVal;
- myFileIndex += (long) (5*p);
- } else {
- myFileIndex += 5;
- }
- }
+ if (!(myFieldsLst[0].myField)) // break, if field was deleted.
+ break;
- QString aFile = aDirPath + QDir::separator() + aBaseName;
- aFile += "_";
- aFile += QString("%1").arg(myFileIndex).rightJustify(8, '0');
- aFile += ".jpeg";
-
- /* check image size is divisable 16
- myView->dumpViewToFormat(aFile,"JPEG");
- */
- SUIT_ViewWindow* aView = myView;
- QImage img = aView->dumpView();
- if (!img.isNull()) {
- int width = img.width(); width = (width/16)*16;
- int height = img.height(); height = (height/16)*16;
- QImage copy = img.copy(0, 0, width, height);
- if (copy.save(aFile, "JPEG")) {
- anIndexList.append(myFileIndex);
- aNbFiles++;
- }
- }
- }
+ saveImages( 0, aOneVal, aNbFiles, theIndexList );
}
- if (!myIsActive) break;
+ if (!myExecutionState->IsActive()) break;
myFrame++;
if (myFrame == myFieldsLst[0].myNbFrames) {
if (!myCycling) {
- myIsActive = false;
+ hasHextFrame = false;
myFrame--;
- break;
- } else
+ }
+ else
myFrame = 0;
}
+ } // while (hasHextFrame && myExecutionState->IsActive())
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::succcessiveAnimation( bool& theIsDumping, QValueList<int>& theIndexList )
+{
+ if (myFrame >= getNbFrames() - 1)
+ {
+ myExecutionState->SetActive(false);
+ return;
+ }
+
+ double k = 1;
+ double aOneVal = 1;
+ if (myFieldsLst[0].myNbFrames > 2)
+ aOneVal = ( myTimeMax - myTimeMin ) / getNbFrames();
+ int aNbFiles = 0;
+ long aFrame = myFrame;
+
+ bool hasHextFrame = true;
+ while (hasHextFrame && myExecutionState->IsActive())
+ {
+ for (int aFieldId = 0;
+ (aFieldId < getNbFields()) && (myFieldsLst[aFieldId].myField);
+ aFieldId++, aFrame = 0)
+ {
+ if (!myExecutionState->IsActive()) break;
+
+ FieldData& aData = myFieldsLst[aFieldId];
+ if ( !aData.myPrs[0] ) continue;
+ for (; aFrame < aData.myNbFrames && myExecutionState->IsActive(); aFrame++, myFrame++)
+ {
+ ProcessVoidEvent(new TVoidMemFun2ArgEvent<VISU_TimeAnimation,long,double>
+ (this, &VISU_TimeAnimation::_emitFrameChanged,
+ myFrame, myFieldsLst[aFieldId].myTiming[aFrame]));
+
+ if (myExecutionState->IsActive()) {
+ if (aFrame > 0) {
+ if (aData.myActors[aFrame-1] != 0)
+ visibilityOff(aFieldId, aFrame-1);
+ } else if ( myFrame > 0) {
+ if (myFieldsLst[aFieldId-1].myActors[myFieldsLst[aFieldId-1].myNbFrames-1] != 0)
+ visibilityOff(aFieldId-1, myFieldsLst[aFieldId-1].myNbFrames-1);
+ } else if ( myCycling ) {
+ if (myFieldsLst[getNbFields()-1].myActors[myFieldsLst[getNbFields()-1].myNbFrames-1] != 0)
+ visibilityOff(getNbFields()-1, myFieldsLst[getNbFields()-1].myNbFrames-1);
+ } else {
+ if (aData.myActors[aData.myNbFrames-1] != 0)
+ visibilityOff(aFieldId, aData.myNbFrames-1);
+ }
+ if (aData.myActors[aFrame] != 0) {
+ ProcessVoidEvent(new TVoidMemFunEvent<VISU_Actor>(aData.myActors[aFrame],
+ &VISU_Actor::VisibilityOn));
+ }
+
+ bool repainArg = false;
+ ProcessVoidEvent(new TVoidMemFun1ArgEvent<SVTK_ViewWindow,bool>(myView,
+ &SVTK_ViewWindow::Repaint,
+ repainArg));
+ }
+
+ k = 1;
+ if (myProportional) {
+ switch (aFrame) {
+ case 0:
+ break;
+ case 1:
+ if (myFieldsLst[0].myNbFrames > 2)
+ k = (myFieldsLst[0].myTiming[aFrame+1] -
+ myFieldsLst[0].myTiming[aFrame]) / aOneVal;
+ break;
+ default:
+ if (aFrame < (myFieldsLst[0].myNbFrames - 1))
+ k = (myFieldsLst[0].myTiming[aFrame+1] -
+ myFieldsLst[0].myTiming[aFrame]) / aOneVal;
+ }
+ }
+ int delay = (int)(1000. * k / mySpeed);
+ theIsDumping = !myDumpPath.isEmpty();
+ if (delay < 1 && theIsDumping) {
+ // We must unlock mutex for some time before grabbing to allow view updating
+ delay = 1;
+ }
+ msleep(delay);
+
+ if (!myExecutionState->IsActive()) return;
+
+ if (theIsDumping) {
+ // We must unlock mutex for some time before grabbing to allow view updating
+ msleep(delay);
+ if (!myExecutionState->IsActive()) return;
+
+ if (!(myFieldsLst[aFieldId].myField)) // break, if field was deleted.
+ break;
+
+ saveImages( aFieldId, aOneVal, aNbFiles, theIndexList );
+ }
+ } // for (; aFrame < aData.myNbFrames && myExecutionState->IsActive(); aFrame++, myFrame++)
+ } // for (int aFieldId = 0;
+
+ if (!myCycling) {
+ hasHextFrame = false;
+ myFrame--;
+ }
+ else {
+ myFrame = 0;
+ aFrame = myFrame;
+ }
+ } // while (hasHextFrame && myExecutionState->IsActive())
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::saveImages( int theFieldId,
+ double& theOneVal, int& theNbFiles,
+ QValueList<int>& theIndexList )
+{
+ if (myDumpFormat.compare("AVI") != 0) {
+ QString aFile(myDumpPath);
+
+ QString aName;
+ if ( myAnimationMode == 0 ) // parallel animation mode
+ aName = QString("%1").arg(myFieldsLst[theFieldId].myTiming[myFrame]);
+ else // successive animation mode
+ aName = QString("%1").arg(myFieldsLst[theFieldId].myTiming[getRelativeFrameNumber(myFrame).second]);
+
+ int aPos = -1;
+ while ((aPos = aName.find(".")) > -1 )
+ aName.replace(aPos, 1, "_");
+ aFile += aName;
+ aFile += ".";
+ aFile += myDumpFormat.lower();
+ ProcessVoidEvent(new TVoidMemFunEvent<SVTK_ViewWindow>
+ (myView,&SVTK_ViewWindow::RefreshDumpImage)); // IPAL13602
+ ProcessEvent(new TMemFun2ArgEvent<SVTK_ViewWindow,bool,const QString&,const QString&>
+ (myView,&SVTK_ViewWindow::dumpViewToFormat,aFile,myDumpFormat));
+ } else {
+ QFileInfo aFileInfo(myDumpPath);
+ QString aDirPath = aFileInfo.dirPath(true);
+ QString aBaseName = aFileInfo.fileName();
+
+ switch (myFrame) {
+ case 0:
+ break;
+ case 1:
+ myFileIndex += 5;
+ break;
+ default:
+ if (myProportional) {
+ double p = (myFieldsLst[0].myTiming[myFrame] -
+ myFieldsLst[0].myTiming[myFrame-1]) / theOneVal;
+ myFileIndex += (long) (5*p);
+ } else {
+ myFileIndex += 5;
+ }
+ }
+
+ QString aFile = aDirPath + QDir::separator() + aBaseName;
+ aFile += "_";
+ aFile += QString("%1").arg(myFileIndex).rightJustify(8, '0');
+ aFile += ".jpeg";
+
+ /* check image size is divisable 16
+ myView->dumpViewToFormat(aFile,"JPEG");
+ */
+ SUIT_ViewWindow* aView = myView;
+ ProcessVoidEvent(new TVoidMemFunEvent<SVTK_ViewWindow>(myView,&SVTK_ViewWindow::RefreshDumpImage)); // IPAL13602
+ QImage img = ProcessEvent(new TMemFunEvent<SUIT_ViewWindow,QImage>(aView,&SUIT_ViewWindow::dumpView));
+ if (!img.isNull()) {
+ int width = img.width(); width = (width/16)*16;
+ int height = img.height(); height = (height/16)*16;
+ QImage copy = img.copy(0, 0, width, height);
+ if (copy.save(aFile, "JPEG")) {
+ theIndexList.append(myFileIndex);
+ theNbFiles++;
+ }
+ }
+ }
+}
+
+//------------------------------------------------------------------------
+void VISU_TimeAnimation::run()
+{
+ if (!myView) {
+ MESSAGE("Viewer is not defined for animation");
+ return;
}
+ bool isDumping = !myDumpPath.isEmpty();
+ myFileIndex = 0;
+ QValueList<int> anIndexList;
+
+ if ( myAnimationMode == 0 ) // parallel animation mode
+ parallelAnimation( isDumping, anIndexList );
+ else //succcessive animation mode
+ succcessiveAnimation( isDumping, anIndexList );
+
// make AVI file if need
- if (isDumping && myDumpFormat.compare("AVI") == 0) {
+ if (isDumping && myDumpFormat.compare("AVI") == 0 && myExecutionState->IsActive()) {
double aFPS = 17.3 * mySpeed;
QFileInfo aFileInfo(myDumpPath);
system(aCmd.latin1());
}
- emit stopped();
- qApp->unlock();
- QThread::exit();
+ if (myExecutionState->IsActive())
+ ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>(this,&VISU_TimeAnimation::_emitStopped));
+ myExecutionState->SetActive(false);
}
//------------------------------------------------------------------------
VISU::Storable::TRestoringMap aMap;
if (theSObject) {
_PTR(GenericAttribute) anAttr;
- if (theSObject->FindAttribute(anAttr, "AttributeComment")) {
- _PTR(AttributeComment) aComment (anAttr);
+ if (theSObject->FindAttribute(anAttr, "AttributeString")) {
+ _PTR(AttributeString) aComment (anAttr);
std::string aString = aComment->Value();
QString strIn (aString.c_str());
VISU::Storable::StrToMap(strIn, aMap);
std::string aPrsCmt;
switch (thePrsType) {
case VISU::TSCALARMAP:
+ case VISU::TPRSMERGER:
aPrsCmt = VISU::ScalarMap_i::myComment;
break;
case VISU::TISOSURFACE:
std::string aSComponentEntry = aSComponent->GetID();
QString aComment;
- aComment.sprintf("myComment=ANIMATION;myType=%d;myTimeMinVal=%g;myTimeMaxVal=%g",
- VISU::TANIMATION,myTimeMinVal,myTimeMaxVal);
+ aComment.sprintf("myComment=ANIMATION;myType=%d;myTimeMinVal=%g;myTimeMaxVal=%g;myMode=%d",
+ VISU::TANIMATION,myTimeMinVal,myTimeMaxVal,myAnimationMode);
string anEntry = VISU::CreateAttributes(myStudy,aSComponentEntry.c_str(),"","",
GenerateName(),"",aComment,true);
for (int i = 0; i < getNbFields(); i++) {
FieldData& aData = myFieldsLst[i];
-
- _PTR(SObject) newObj = aStudyBuilder->NewObject(aAnimSObject);
- aStudyBuilder->Addreference(newObj, aData.myField);
-
- if (aData.myPrs.empty()) {
- generatePresentations(i);
+ if ( aData.myPrs.front() ) {
+ _PTR(SObject) newObj = aStudyBuilder->NewObject(aAnimSObject);
+ aStudyBuilder->Addreference(newObj, aData.myField);
+
+ if (aData.myPrs.empty()) {
+ generatePresentations(i);
+ }
+ ostringstream strOut;
+ aData.myPrs[0]->ToStream(strOut);
+ string aPrsComment = strOut.str();
+ string aPrsMyComment = aData.myPrs[0]->GetComment();
+ if(aPrsMyComment == "PRSMERGER")
+ aPrsMyComment = "SCALARMAP";
+ VISU::CreateAttributes(myStudy, newObj->GetID().c_str(),"","",
+ aPrsMyComment.c_str(),"",aPrsComment.c_str(),true);
}
- ostringstream strOut;
- aData.myPrs[0]->ToStream(strOut);
- string aPrsComment = strOut.str();
- VISU::CreateAttributes(myStudy, newObj->GetID().c_str(),"","",
- aData.myPrs[0]->GetComment(),"",aPrsComment.c_str(),true);
}
aStudyBuilder->CommitCommand();
std::string aSComponentEntry = aSComponent->GetID();
QString aComment;
- aComment.sprintf("myComment=ANIMATION;myType=%d;myTimeMinVal=%g;myTimeMaxVal=%g",
- VISU::TANIMATION,myTimeMinVal,myTimeMaxVal);
+ aComment.sprintf("myComment=ANIMATION;myType=%d;myTimeMinVal=%g;myTimeMaxVal=%g;myMode=%d",
+ VISU::TANIMATION,myTimeMinVal,myTimeMaxVal,myAnimationMode);
_PTR(GenericAttribute) anAttr;
- anAttr = aStudyBuilder->FindOrCreateAttribute(aAnimSObject, "AttributeComment");
- _PTR(AttributeComment) aCmnt (anAttr);
+ anAttr = aStudyBuilder->FindOrCreateAttribute(aAnimSObject, "AttributeString");
+ _PTR(AttributeString) aCmnt (anAttr);
aCmnt->SetValue(aComment.latin1());
_PTR(ChildIterator) anIter = myStudy->NewChildIterator(aAnimSObject);
aData.myPrs[0]->ToStream(strOut);
string aPrsComment = strOut.str();
string aPrsNameTxt = aData.myPrs[0]->GetComment();
-
+ if(aPrsNameTxt == "PRSMERGER")
+ aPrsNameTxt = "SCALARMAP";
// Save in study
_PTR(SObject) aRefObj = anIter->Value();
_PTR(ChildIterator) anPrsIter = myStudy->NewChildIterator(aRefObj);
if (anPrsIter->More()) {
_PTR(SObject) aPrsObj = anPrsIter->Value();
- anAttr = aStudyBuilder->FindOrCreateAttribute(aPrsObj, "AttributeComment");
- aCmnt = _PTR(AttributeComment)(anAttr);
+ anAttr = aStudyBuilder->FindOrCreateAttribute(aPrsObj, "AttributeString");
+ aCmnt = _PTR(AttributeString)(anAttr);
aCmnt->SetValue(aPrsComment.c_str());
anAttr = aStudyBuilder->FindOrCreateAttribute(aPrsObj, "AttributeName");
VISU::Storable::TRestoringMap aMap;
_PTR(GenericAttribute) anAttr;
- if (!aAnimSObject->FindAttribute(anAttr, "AttributeComment")) return;
+ if (!aAnimSObject->FindAttribute(anAttr, "AttributeString")) return;
- _PTR(AttributeComment) aComment (anAttr);
+ _PTR(AttributeString) aComment (anAttr);
string aComm = aComment->Value();
QString strIn (aComm.c_str());
VISU::Storable::StrToMap(strIn,aMap);
myTimeMinVal = VISU::Storable::FindValue(aMap,"myTimeMinVal",&isExist).toDouble();
myTimeMaxVal = VISU::Storable::FindValue(aMap,"myTimeMaxVal",&isExist).toDouble();
+ myAnimationMode = VISU::Storable::FindValue(aMap,"myMode",&isExist).toInt();
_PTR(ChildIterator) anIter = myStudy->NewChildIterator(aAnimSObject);
for (anIter->Init(); anIter->More(); anIter->Next()) {
_PTR(SObject) aRefObj = anIter->Value();
_PTR(SObject) aFieldObj;
if (!aRefObj->ReferencedObject(aFieldObj) ) continue;
+
addField(aFieldObj);
- FieldData& aData = getFieldData(getNbFields()-1);
+ if ( isRangeDefined() ) myFieldsAbsFrames.pop_back();
+ FieldData& aData = getFieldData(getNbFields()-1);
+
// Get Presentation object
_PTR(ChildIterator) anPrsIter = myStudy->NewChildIterator(aRefObj);
anPrsIter->Init();
QString strName (aStr.c_str());
if (strName == VISU::ScalarMap_i::myComment.c_str())
- aData.myPrsType = VISU::TSCALARMAP;
+ aData.myPrsType = VISU::TPRSMERGER;
else if (strName == VISU::IsoSurfaces_i::myComment.c_str())
aData.myPrsType = VISU::TISOSURFACE;
else if (strName == VISU::CutPlanes_i::myComment.c_str())
continue;
generatePresentations(getNbFields()-1);
- if (!aPrsObj->FindAttribute(anAttr, "AttributeComment")) continue;
- _PTR(AttributeComment) aPrsComment (anAttr);
+ if (!aPrsObj->FindAttribute(anAttr, "AttributeString")) continue;
+ _PTR(AttributeString) aPrsComment (anAttr);
string aPrsComm = aPrsComment->Value();
if (aPrsComm.length() > 0) {
QString strPrsIn (aPrsComm.c_str());
}
aData.myPrs[0]->GetOffset(aData.myOffset);
for (int i = 1; i < aData.myNbFrames; i++) {
+ bool anIsFixedRange = false;
+ if (aData.myPrsType != VISU::TGAUSSPOINTS) {
+ if (VISU::ScalarMap_i* aPrs = dynamic_cast<VISU::ScalarMap_i*>(aData.myPrs[i]))
+ anIsFixedRange = aPrs->IsRangeFixed();
+ }
//jfa 03.08.2005:aData.myPrs[i]->SameAs(aData.myPrs[0]);
aData.myPrs[i]->SameAs(aData.myPrs[0]);//jfa 03.08.2005
}
myView = 0;
}
+void VISU_TimeAnimation::ApplyProperties(CORBA::Long theFieldNum, VISU::ColoredPrs3d_ptr thePrs)
+ throw (SALOME::SALOME_Exception)
+{
+ VISU::ColoredPrs3d_i* aPrs_i = dynamic_cast<VISU::ColoredPrs3d_i*>(GetServant(thePrs).in());
+
+ if ( !aPrs_i )
+ throw SALOME_Exception(LOCALIZED("Error : invalid dynamic cast of the given presentation to VISU::ColoredPrs3d_i"));
+
+ if ( myAnimationMode == 0 ) { // parallel animation mode
+ FieldData& aData = myFieldsLst[theFieldNum];
+
+ if ( aData.myPrs.empty() )
+ throw SALOME_Exception(LOCALIZED("Error : presentations for the given field is not yet created!"));
+
+ if ( aPrs_i->GetCResult() != aData.myPrs[0]->GetCResult() )
+ throw SALOME_Exception(LOCALIZED("Error : the MED file is not the same!"));
+
+ for (int i = 0; i < aData.myNbFrames; i++) {
+ bool anIsFixedRange = false;
+ if (aData.myPrsType != VISU::TGAUSSPOINTS) {
+ if (VISU::ScalarMap_i* aPrs = dynamic_cast<VISU::ScalarMap_i*>(aData.myPrs[i]))
+ anIsFixedRange = aPrs->IsRangeFixed();
+ }
+ aData.myPrs[i]->SameAs(aPrs_i);
+ }
+ }
+ else if ( myAnimationMode == 1 ) { // successive animation mode
+ for (int f = 0; f < getNbFields(); f++) {
+ FieldData& aData = myFieldsLst[f];
+
+ if ( aData.myPrs.empty() )
+ throw SALOME_Exception(LOCALIZED("Error : presentations for the given field is not yet created!"));
+
+ for (int i = 0; i < aData.myNbFrames; i++) {
+ aData.myPrs[i]->SameAs(aPrs_i);
+ }
+ }
+ }
+}
//========================================================================
//========================================================================
delete myAnim;
}
-void VISU_TimeAnimation_i::addField (SALOMEDS::SObject_ptr theField)
+bool VISU_TimeAnimation_i::addField (SALOMEDS::SObject_ptr theField)
+{
+ return myAnim->addField(theField);
+}
+
+void VISU_TimeAnimation_i::clearFields ()
{
- myAnim->addField(theField);
+ for (int i = 0; i < myAnim->getNbFields(); i++) {
+ myAnim->clearData(myAnim->getFieldData(i));
+ }
+ myAnim->clearFieldData();
}
CORBA::Boolean VISU_TimeAnimation_i::generateFrames()
{
- return ProcessEvent(new TMemFunEvent<VISU_TimeAnimation,bool>
- (myAnim,&VISU_TimeAnimation::generateFrames));
+ //return ProcessEvent(new TMemFunEvent<VISU_TimeAnimation,bool>
+ // (myAnim,&VISU_TimeAnimation::generateFrames));
+ return myAnim->generateFrames();
}
void VISU_TimeAnimation_i::generatePresentations (CORBA::Long theFieldNum)
void VISU_TimeAnimation_i::clearView()
{
- ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
- (myAnim,&VISU_TimeAnimation::clearView));
+ //ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ // (myAnim,&VISU_TimeAnimation::clearView));
+ myAnim->clearView();
}
void VISU_TimeAnimation_i::stopAnimation()
{
- ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
- (myAnim,&VISU_TimeAnimation::stopAnimation));
+ //ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ // (myAnim,&VISU_TimeAnimation::stopAnimation));
+ myAnim->stopAnimation();
}
void VISU_TimeAnimation_i::startAnimation()
{
- ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
- (myAnim,&VISU_TimeAnimation::startAnimation));
+ //ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ // (myAnim,&VISU_TimeAnimation::startAnimation));
+ myAnim->startAnimation();
}
void VISU_TimeAnimation_i::nextFrame()
{
- ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
- (myAnim,&VISU_TimeAnimation::nextFrame));
+ //ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ // (myAnim,&VISU_TimeAnimation::nextFrame));
+ myAnim->nextFrame();
}
void VISU_TimeAnimation_i::prevFrame()
{
- ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
- (myAnim,&VISU_TimeAnimation::prevFrame));
+ //ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ // (myAnim,&VISU_TimeAnimation::prevFrame));
+ myAnim->prevFrame();
}
void VISU_TimeAnimation_i::firstFrame()
{
- ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
- (myAnim,&VISU_TimeAnimation::firstFrame));
+ //ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ // (myAnim,&VISU_TimeAnimation::firstFrame));
+ myAnim->firstFrame();
}
void VISU_TimeAnimation_i::lastFrame()
{
- ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
- (myAnim,&VISU_TimeAnimation::lastFrame));
+ //ProcessVoidEvent(new TVoidMemFunEvent<VISU_TimeAnimation>
+ // (myAnim,&VISU_TimeAnimation::lastFrame));
+ myAnim->lastFrame();
}
void VISU_TimeAnimation_i::gotoFrame(CORBA::Long theFrame)
{
- ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_TimeAnimation,CORBA::Long>
- (myAnim,&VISU_TimeAnimation::gotoFrame,theFrame));
+ //ProcessVoidEvent(new TVoidMemFun1ArgEvent<VISU_TimeAnimation,CORBA::Long>
+ // (myAnim,&VISU_TimeAnimation::gotoFrame,theFrame));
+ myAnim->gotoFrame(theFrame);
}
CORBA::Long VISU_TimeAnimation_i::getNbFields()
return myAnim->isCycling();
}
+CORBA::Boolean VISU_TimeAnimation_i::isCleaningMemoryAtEachFrame(){
+ return myAnim->isCleaningMemoryAtEachFrame();
+}
+
CORBA::Double VISU_TimeAnimation_i::getMinTime()
{
return myAnim->getMinTime();
myAnim->setCycling(theCycle);
}
+void VISU_TimeAnimation_i::setCleaningMemoryAtEachFrame(CORBA::Boolean theCycle){
+ myAnim->setCleaningMemoryAtEachFrame(theCycle);
+}
+
SALOMEDS::SObject_ptr VISU_TimeAnimation_i::publishInStudy()
{
return myAnim->publishInStudy();
{
myAnim->saveAnimation();
}
+
+void VISU_TimeAnimation_i::setAnimationMode(VISU::Animation::AnimationMode theMode)
+{
+ myAnim->setAnimationMode(theMode);
+}
+
+VISU::Animation::AnimationMode VISU_TimeAnimation_i::getAnimationMode()
+{
+ return VISU::Animation::AnimationMode(myAnim->getAnimationMode());
+}
+
+void VISU_TimeAnimation_i::ApplyProperties(CORBA::Long theFieldNum, VISU::ColoredPrs3d_ptr thePrs)
+ throw (SALOME::SALOME_Exception)
+{
+ myAnim->ApplyProperties(theFieldNum, thePrs);
+}
{
class Result_i;
class ColoredPrs3d_i;
+ class ExecutionState;
}
struct FieldData
};
-class VISU_TimeAnimation: public QObject, public QThread
+class VISU_I_EXPORT VISU_TimeAnimation: public QObject, public QThread
{
Q_OBJECT;
+
+ protected:
+ CORBA::Boolean _generateFrames();
+ void _visibilityOff(int num_field, int num_frame);
+ void _clearView();
+ void _clearData(FieldData& theData);
+ void _startAnimation();
+ void _nextFrame();
+ void _prevFrame();
+ void _firstFrame();
+ void _lastFrame();
+ void _gotoFrame(CORBA::Long theFrame);
+
+ void _emitFrameChanged(long theNewFrame, double theTime);
+ void _emitStopped();
+
+ void parallelAnimation( bool& theIsDumping, QValueList<int>& theIndexList );
+ void succcessiveAnimation( bool& theIsDumping, QValueList<int>& theIndexList );
+ void saveImages( int theFieldId, double& theOneVal, int& theNbFiles, QValueList<int>& theIndexList );
+
public:
//static VISU::Result_i* createPresent (SALOMEDS::SObject_var theField);
//static VISU::Storable::TRestoringMap getMapOfValue (SALOMEDS::SObject_var theSObject);
virtual VISU::VISUType GetType() { return VISU::TNONE;};
- void addField (_PTR(SObject) theField);
- void addField (SALOMEDS::SObject_ptr theField);
+ bool addField (_PTR(SObject) theField);
+ bool addField (SALOMEDS::SObject_ptr theField);
FieldData& getFieldData (int theNum) { return myFieldsLst[theNum]; }
CORBA::Boolean generateFrames();
void clearData(FieldData& theData);
void clearFieldData() { myFieldsLst.clear();};
+ void visibilityOff(int num_field, int num_frame);
void stopAnimation();
void startAnimation();
void nextFrame();
CORBA::Long getNbFields() { return myFieldsLst.size(); }
CORBA::Long getNbFrames();
- CORBA::Boolean isRunning() { return myIsActive; }
+ CORBA::Boolean isRunning();
CORBA::Long getCurrentFrame() { return myFrame; }
+ long getAbsoluteFrameNumber(std::pair<int,long> theFieldTimeStamp);
+ std::pair<int,long> getRelativeFrameNumber(long theFrame);
+
VISU::ColoredPrs3d_ptr getPresentation(CORBA::Long theField, CORBA::Long theFrame);
void setPresentationType(CORBA::Long theFieldNum, VISU::VISUType theType)
QString getLastErrorMsg() { return myLastError; }
CORBA::Boolean isCycling() { return myCycling; }
+ CORBA::Boolean isCleaningMemoryAtEachFrame() { return myCleaningMemoryAtEachFrame; }
CORBA::Double getMinTime() { return myTimeMin;}
CORBA::Double getMaxTime() { return myTimeMax;}
void setProportional(CORBA::Boolean theProp) { myProportional = theProp; }
void setCycling(CORBA::Boolean theCycle) { myCycling = theCycle; }
+ void setCleaningMemoryAtEachFrame(CORBA::Boolean theCycle) { myCleaningMemoryAtEachFrame = theCycle; }
SALOMEDS::SObject_ptr publishInStudy();
void restoreFromStudy(SALOMEDS::SObject_ptr theField);
void saveAnimation();
bool isSavedInStudy() const { return !myAnimEntry.isEmpty(); }
+ void setAnimationMode(int theMode) { myAnimationMode = theMode; }
+ int getAnimationMode() { return myAnimationMode; }
+
+ void ApplyProperties(CORBA::Long theFieldNum, VISU::ColoredPrs3d_ptr thePrs) throw (SALOME::SALOME_Exception);
+
public slots:
void setProportionalSlot(bool theProp) { myProportional = theProp; }
void setCyclingSlot(bool theCycle) { myCycling = theCycle; }
+ void setCleaningMemoryAtEachFrameSlot(bool theCycle) { myCleaningMemoryAtEachFrame = theCycle; }
signals:
void frameChanged(long theNewFrame, double theTime);
QString myLastError;
QValueList<FieldData> myFieldsLst;
- bool myIsActive;
+ VISU::ExecutionState* myExecutionState;
long myFrame;
+ std::vector<long> myFieldsAbsFrames;
int mySpeed;
bool myProportional;
bool myCycling;
+ bool myCleaningMemoryAtEachFrame;
_PTR(Study) myStudy;
+ int myAnimationMode;
double myTimeMinVal, myTimeMaxVal; //!< Range of time stams, set by user
double myTimeMin , myTimeMax ; //!< Range of time stams, available for animation
QString myDumpPath;
};
-class VISU_TimeAnimation_i: public virtual POA_VISU::Animation,
+class VISU_I_EXPORT VISU_TimeAnimation_i: public virtual POA_VISU::Animation,
public virtual VISU::Base_i
{
VISU_TimeAnimation* myAnim;
virtual VISU::VISUType GetType() { return VISU::TANIMATION; }
//virtual VISU::VISUType GetType() { return VISU::TNONE; }
- virtual void addField(SALOMEDS::SObject_ptr theField);
+ virtual bool addField(SALOMEDS::SObject_ptr theField);
+ virtual void clearFields();
virtual CORBA::Boolean generateFrames();
virtual void generatePresentations(CORBA::Long theFieldNum);
virtual char* setDumpFormat(const char* theFormat);
virtual CORBA::Boolean isCycling();
+ virtual CORBA::Boolean isCleaningMemoryAtEachFrame();
virtual CORBA::Double getMinTime();
virtual CORBA::Double getMaxTime();
virtual void setProportional(CORBA::Boolean theProp);
virtual void setCycling(CORBA::Boolean theCycle);
+ virtual void setCleaningMemoryAtEachFrame(CORBA::Boolean theCycle);
virtual SALOMEDS::SObject_ptr publishInStudy();
virtual void restoreFromStudy(SALOMEDS::SObject_ptr theField);
virtual CORBA::Boolean isSavedInStudy();
virtual void saveAnimation();
+
+ virtual void setAnimationMode(VISU::Animation::AnimationMode theMode);
+ virtual VISU::Animation::AnimationMode getAnimationMode();
+
+ virtual void ApplyProperties(CORBA::Long theFieldNum, VISU::ColoredPrs3d_ptr thePrs) throw (SALOME::SALOME_Exception);
};
#endif //VISU_TIMEANIMATION_H
}
+//---------------------------------------------------------------
+const char*
+VISU::Vectors_i
+::GetIconName()
+{
+ if (!IsGroupsUsed())
+ return "ICON_TREE_VECTORS";
+ else
+ return "ICON_TREE_VECTORS_GROUPS";
+}
+
//---------------------------------------------------------------
VISU::Vectors_i
::Vectors_i(EPublishInStudyMode thePublishInStudyMode) :
namespace VISU
{
- class Vectors_i : public virtual POA_VISU::Vectors,
- public virtual DeformedShape_i
+ //----------------------------------------------------------------------------
+ class VISU_I_EXPORT Vectors_i : public virtual POA_VISU::Vectors,
+ public virtual DeformedShape_i
{
static int myNbPresent;
- Vectors_i();
Vectors_i(const Vectors_i&);
public:
+ //----------------------------------------------------------------------------
typedef DeformedShape_i TSuperClass;
+ typedef VISU::Vectors TInterface;
explicit
Vectors_i(EPublishInStudyMode thePublishInStudyModep);
VISU::Vectors::GlyphPos
GetGlyphPos();
- typedef VISU::Vectors TInterface;
-
VISU_VectorsPL*
GetSpecificPL() const
{
QString
GenerateName();
+ virtual
+ const char*
+ GetIconName();
+
//! Redefines VISU_ColoredPrs3d_i::CreateActor
virtual
VISU_Actor*
class Prs3d_i;
class Curve_i;
- class ViewManager_i : public virtual POA_VISU::ViewManager,
+ class VISU_I_EXPORT ViewManager_i : public virtual POA_VISU::ViewManager,
public virtual Base_i
{
public:
VISU_Actor* UpdateViewer (SUIT_ViewWindow* theViewWindow, int theDisplaing, Prs3d_i* thePrs = NULL);
void UpdatePlot2d (Plot2d_ViewFrame *theView, int theDisplaying, Curve_i* theCurve);
- VISU_Actor* FindActor(SVTK_ViewWindow* theViewWindow, VISU::Prs3d_i* thePrs3d);
+ VISU_Actor* VISU_I_EXPORT FindActor(SVTK_ViewWindow* theViewWindow, VISU::Prs3d_i* thePrs3d);
void DeleteActors (VISU::Prs3d_i* thePrs);
void DeleteActors (VISU::Curve_i* thePrs);
break;
case VISU::View::VIEWER:{
ViewManagerList aViewManagerList = myApplication->viewManagers();
- // to do something
- // ...
+ ViewManagerList::const_iterator anIt = aViewManagerList.begin();
+ for( ; anIt != aViewManagerList.end(); anIt++ )
+ {
+ const QPtrVector<SUIT_ViewWindow>& views = (*anIt)->getViews();
+ for( int i=0; i<views.count(); i++ ) {
+ myResult = views[i]->isShown();
+ return;
+ }
+ }
+ myResult = false;
break;
}}
}
CORBA::Boolean theMinor, CORBA::Long theNumMinor)
{
if (GetViewWindow())
- ProcessVoidEvent(new TEnableGridEvent(myView,&Plot2d_ViewFrame::setXGrid,
- theMajor,theNumMajor,theMinor,theNumMinor));
+ myView->setXGrid(theMajor,theNumMajor,theMinor,theNumMinor);
}
void XYPlot_i::EnableYGrid(CORBA::Boolean theMajor, CORBA::Long theNumMajor,
CORBA::Boolean theMinor, CORBA::Long theNumMinor)
{
- //asl: Plot2d_ViewFrame::setYGrid has more parameters
- //if (GetViewWindow())
- // ProcessVoidEvent(new TEnableGridEvent(myView,&Plot2d_ViewFrame::setYGrid,
- // theMajor,theNumMajor,theMinor,theNumMinor));
+ this->EnableYGrid(theMajor,theNumMajor,theMinor,theNumMinor,
+ false,0,false,0);
}
+ void XYPlot_i::EnableYGrid(CORBA::Boolean theMajor, CORBA::Long theNumMajor,
+ CORBA::Boolean theMinor, CORBA::Long theNumMinor,
+ CORBA::Boolean the2Major, CORBA::Long the2NumMajor,
+ CORBA::Boolean the2Minor, CORBA::Long the2NumMinor)
+ {
+ if (GetViewWindow())
+ myView->setYGrid(theMajor,theNumMajor,theMinor,theNumMinor,
+ the2Major,the2NumMajor,the2Minor,the2NumMinor);
+ }
+
class TSetScaleModeEvent: public SALOME_Event
{
public:
_PTR(SObject) anObj = aList[i];
string anEntry = anObj->GetID();
if(MYDEBUG) MESSAGE("View3D_i::SaveViewParams - anEntry = " << anEntry);
- if (anObj->FindAttribute(anAttr, "AttributeComment")) {
- _PTR(AttributeComment) aCmnt (anAttr);
+ if (anObj->FindAttribute(anAttr, "AttributeString")) {
+ _PTR(AttributeString) aCmnt (anAttr);
string aComm (aCmnt->Value());
if (MYDEBUG) MESSAGE("View3D_i::SaveViewPoint - aComm = " << aComm);
if (aComm.compare(View3D_i::myComment) >= 0) {
_PTR(SObject) anObj = aList[i];
string anEntry = anObj->GetID();
if (MYDEBUG) MESSAGE("View3D_i::RestoreViewPoint - anEntry = " << anEntry);
- if (anObj->FindAttribute(anAttr, "AttributeComment")) {
- _PTR(AttributeComment) aCmnt (anAttr);
+ if (anObj->FindAttribute(anAttr, "AttributeString")) {
+ _PTR(AttributeString) aCmnt (anAttr);
QString strIn(aCmnt->Value().c_str());
Storable::TRestoringMap aMap;
Storable::StrToMap(strIn, aMap);
if(MYDEBUG) MESSAGE("View3D_i::SetPointOfView");
SUIT_ViewWindow* aVW = GetViewWindow();
if (aVW)
- ProcessVoidEvent(new TSet3DViewParamEvent(&SetPointOfView,aVW,thePosition));
+ ProcessVoidEvent(new TSet3DViewParamEvent(&View3D_i::SetPointOfView,aVW,thePosition));
}
void View3D_i::GetPointOfView (SUIT_ViewWindow* theViewWindow,
if(MYDEBUG) MESSAGE("View3D_i::SetViewUp");
SUIT_ViewWindow* aVW = GetViewWindow();
if (aVW)
- ProcessVoidEvent(new TSet3DViewParamEvent(&SetViewUp,aVW,theViewUp));
+ ProcessVoidEvent(new TSet3DViewParamEvent(&View3D_i::SetViewUp,aVW,theViewUp));
}
void View3D_i::GetViewUp (SUIT_ViewWindow* theViewWindow,
if(MYDEBUG) MESSAGE("View3D_i::SetFocalPoint");
SUIT_ViewWindow* aVW = GetViewWindow();
if (aVW)
- ProcessVoidEvent(new TSet3DViewParamEvent(&SetFocalPoint,aVW,theCoord));
+ ProcessVoidEvent(new TSet3DViewParamEvent(&View3D_i::SetFocalPoint,aVW,theCoord));
}
if(MYDEBUG) MESSAGE("View3D_i::SetParallelScale");
SUIT_ViewWindow* aVW = GetViewWindow();
if (aVW)
- ProcessVoidEvent(new TSetViewParamEvent(&SetParallelScale,aVW,theScale));
+ ProcessVoidEvent(new TSetViewParamEvent(&View3D_i::SetParallelScale,aVW,theScale));
}
CORBA::Double View3D_i::GetParallelScale (SUIT_ViewWindow* theViewWindow)
{
VISU::VISUType aType = myPrs->GetType();
if (aType != VISU::TSCALARMAP &&
+ aType != VISU::TPRSMERGER &&
aType != VISU::TDEFORMEDSHAPE &&
aType != VISU::TSCALARMAPONDEFORMEDSHAPE) {
myResult = "Insideframe representation is not available for this type of presentations.";
class Prs3d_i;
class Curve_i;
- class View_i : public virtual POA_VISU::View,
+ class VISU_I_EXPORT View_i : public virtual POA_VISU::View,
public virtual Storable
{
public:
//===========================================================================
- class XYPlot_i : public virtual POA_VISU::XYPlot,
+ class VISU_I_EXPORT XYPlot_i : public virtual POA_VISU::XYPlot,
public virtual View_i
{
public:
virtual void EnableYGrid (CORBA::Boolean theMajor, CORBA::Long theNumMajor,
CORBA::Boolean theMinor, CORBA::Long theNumMinor);
+ virtual void EnableYGrid (CORBA::Boolean theMajor, CORBA::Long theNumMajor,
+ CORBA::Boolean theMinor, CORBA::Long theNumMinor,
+ CORBA::Boolean the2Major, CORBA::Long the2NumMajor,
+ CORBA::Boolean the2Minor, CORBA::Long the2NumMinor);
+
virtual void SetHorScaling (VISU::Scaling theScaling);
virtual VISU::Scaling GetHorScaling();
virtual void SetVerScaling (VISU::Scaling theScaling);
virtual void Update();
virtual void FitAll();
- virtual void FitXRange(const CORBA::Double xMin,const CORBA::Double xMax);
- virtual void FitYRange(const CORBA::Double yMin,const CORBA::Double yMax);
- virtual void FitRange(const CORBA::Double xMin,const CORBA::Double xMax,
- const CORBA::Double yMin,const CORBA::Double yMax);
+ virtual void FitXRange(CORBA::Double xMin, CORBA::Double xMax);
+ virtual void FitYRange(CORBA::Double yMin, CORBA::Double yMax);
+ virtual void FitRange(CORBA::Double xMin, CORBA::Double xMax,
+ CORBA::Double yMin, CORBA::Double yMax);
virtual void GetFitRanges(double& xMin, double& xMax, double& yMin, double& yMax);
virtual void Close();
//===========================================================================
- class TableView_i : public virtual POA_VISU::TableView,
+ class VISU_I_EXPORT TableView_i : public virtual POA_VISU::TableView,
public virtual View_i
{
public:
//===========================================================================
- class View3D_i : public virtual POA_VISU::View3D,
+ class VISU_I_EXPORT View3D_i : public virtual POA_VISU::View3D,
public virtual View_i
{
public:
static void SetFocalPoint (SUIT_ViewWindow* theViewWindow, const CORBA::Double theFocalPnt[3]);
virtual void SetFocalPoint (const VISU::View3D::XYZ theCoord);
- static void View3D_i::GetFocalPoint (SUIT_ViewWindow* theViewWindow, CORBA::Double theFocalPnt[3]);
+ static void GetFocalPoint (SUIT_ViewWindow* theViewWindow, CORBA::Double theFocalPnt[3]);
virtual VISU::View3D::XYZ_slice* GetFocalPoint();
static void SetParallelScale (SUIT_ViewWindow* theViewWindow, CORBA::Double theScale);