Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Modules
Visualization
Commits
4841ab1d
Commit
4841ab1d
authored
May 27, 2008
by
Andrew Heather
Browse files
updating PV3FoamReader with Mark's version
- correct wmake options to pick-up the ParaView headers
parent
240811e6
Changes
56
Expand all
Hide whitespace changes
Inline
Side-by-side
src/paraview-plugins/PV3-3FoamReader/Allwmake
deleted
100755 → 0
View file @
240811e6
#!/bin/sh
set
-x
if
[
-d
"
$ParaView_DIR
"
-a
-r
"
$ParaView_DIR
"
]
then
case
"
$ParaView_VERSION
"
in
3
*
)
wmake libso vtkPV3Foam
(
cd
PV3FoamReader
mkdir
-p
Make/
$WM_OPTIONS
>
/dev/null 2>&1
cd
Make/
$WM_OPTIONS
cmake ../..
make
)
;;
esac
fi
src/paraview-plugins/PV3-3FoamReader/PV3FoamReader/CMakeLists.txt
deleted
100644 → 0
View file @
240811e6
# create a plugin that adds a reader to the ParaView GUI
# it is added in the file dialog when doing opens/saves.
# The qrc file is processed by Qt's resource compiler (rcc)
# the qrc file must have a resource prefix of "/ParaViewResources"
# and ParaView will read anything contained under that prefix
# the pqReader.xml file contains xml defining readers with their
# file extensions and descriptions.
FIND_PACKAGE
(
ParaView REQUIRED
)
INCLUDE
(
${
PARAVIEW_USE_FILE
}
)
LINK_DIRECTORIES
(
$ENV{FOAM_LIBBIN}
)
INCLUDE_DIRECTORIES
(
$ENV{FOAM_SRC}/OpenFOAM/lnInclude
$ENV{FOAM_SRC}/finiteVolume/lnInclude
${
PROJECT_SOURCE_DIR
}
/../vtkPV3Foam
)
ADD_DEFINITIONS
(
-D$ENV{WM_PRECISION_OPTION}
)
# Set output library destination to plugin folder
SET
(
LIBRARY_OUTPUT_PATH $ENV{PV_PLUGIN_PATH}
CACHE INTERNAL
"Single output directory for building all libraries."
)
# Build the server-side plugin
ADD_PARAVIEW_PLUGIN
(
PV3FoamReader_SM
"1.0"
SERVER_MANAGER_XML PV3FoamReader_SM.xml
SERVER_MANAGER_SOURCES vtkPV3FoamReader.cxx
)
# Build the client-side plugin
ADD_PARAVIEW_PLUGIN
(
PV3FoamReader
"1.0"
GUI_RESOURCES PV3FoamReader.qrc
)
TARGET_LINK_LIBRARIES
(
PV3FoamReader_SM
OpenFOAM
finiteVolume
vtkPV3Foam
)
src/paraview-plugins/PV3-3FoamReader/PV3FoamReader/PV3FoamReader.qrc
deleted
100644 → 0
View file @
240811e6
<RCC>
<qresource prefix="/ParaViewResources" >
<file>PV3FoamReader.xml</file>
</qresource>
</RCC>
src/paraview-plugins/PV3-3FoamReader/PV3FoamReader/PV3FoamReader.xml
deleted
100644 → 0
View file @
240811e6
<ParaViewReaders>
<Reader
name=
"PV3FoamReader"
extensions=
"foam OpenFOAM"
file_description=
"OpenFOAM"
>
</Reader>
</ParaViewReaders>
src/paraview-plugins/PV3-3FoamReader/PV3FoamReader/PV3FoamReader_SM.xml
deleted
100644 → 0
View file @
240811e6
<ServerManagerConfiguration>
<ProxyGroup
name=
"sources"
>
<SourceProxy
name=
"PV3FoamReader"
class=
"vtkPV3FoamReader"
>
<!-- File name - compulsory -->
<StringVectorProperty
name=
"FileName"
command=
"SetFileName"
number_of_elements=
"1"
>
<FileListDomain
name=
"files"
/>
</StringVectorProperty>
<!-- Time info sent to animation controls (top of window) -->
<DoubleVectorProperty
name=
"TimestepValues"
information_only=
"1"
>
<TimeStepsInformationHelper/>
<Documentation>
Available timestep values.
</Documentation>
</DoubleVectorProperty>
<DoubleVectorProperty
name=
"TimeRange"
information_only=
"1"
>
<TimeRangeInformationHelper/>
</DoubleVectorProperty>
<!-- Update GUI check box -->
<IntVectorProperty
name=
"UpdateGUI"
command=
"SetUpdateGUI"
number_of_elements=
"1"
default_values=
"0"
>
<BooleanDomain
name=
"bool"
/>
</IntVectorProperty>
<!-- Cache mesh check box -->
<IntVectorProperty
name=
"CacheMesh"
command=
"SetCacheMesh"
number_of_elements=
"1"
default_values=
"1"
>
<BooleanDomain
name=
"bool"
/>
</IntVectorProperty>
<!-- ExtrapolateWalls check box -->
<IntVectorProperty
name=
"ExtrapolateWalls"
command=
"SetExtrapolateWalls"
number_of_elements=
"1"
default_values=
"0"
>
<BooleanDomain
name=
"bool"
/>
</IntVectorProperty>
<!-- Include sets check box -->
<IntVectorProperty
name=
"IncludeSets / Zones"
command=
"SetIncludeSets"
number_of_elements=
"1"
default_values=
"0"
>
<BooleanDomain
name=
"bool"
/>
</IntVectorProperty>
<!-- Include zones check box -->
<IntVectorProperty
name=
"IncludeZones"
command=
"SetIncludeZones"
number_of_elements=
"1"
default_values=
"0"
>
<BooleanDomain
name=
"bool"
/>
</IntVectorProperty>
<!-- Show patch names check box -->
<IntVectorProperty
name=
"ShowPatchNames"
command=
"SetShowPatchNames"
number_of_elements=
"1"
default_values=
"0"
>
<BooleanDomain
name=
"bool"
/>
</IntVectorProperty>
<!-- Time step edit box -->
<!-- OLESEN
<IntVectorProperty
name="TimeStepRangeInfo"
command="GetTimeStepRange"
information_only="1">
<SimpleIntInformationHelper/>
</IntVectorProperty>
<IntVectorProperty
name="TimeStep"
command="SetTimeStep"
number_of_elements="1"
animateable="1"
default_values="0"
information_property="TimestepValues">
<IntRangeDomain
name="range">
<RequiredProperties>
<Property name="TimeStepRangeInfo"
function="Range"/>
</RequiredProperties>
</IntRangeDomain>
</IntVectorProperty>
-->
<!-- Time step limits boxes -->
<!-- <IntVectorProperty
name="TimeStepLimitsInfo"
command="GetTimeStepLimits"
information_only="1">
<SimpleIntInformationHelper/>
</IntVectorProperty>
<IntVectorProperty
name="TimeStepLimits"
command="SetTimeStepLimits"
number_of_elements="2"
default_values="2 5" >
<IntRangeDomain
name="range">
<RequiredProperties>
<Property name="TimeStepLimitsInfo"
function="Range"/>
</RequiredProperties>
</IntRangeDomain>
</IntVectorProperty>-->
<!-- Available regions array -->
<StringVectorProperty
name=
"RegionArrayInfo"
information_only=
"1"
>
<ArraySelectionInformationHelper
attribute_name=
"Region"
/>
</StringVectorProperty>
<StringVectorProperty
name=
"RegionStatus"
command=
"SetRegionArrayStatus"
number_of_elements=
"0"
repeat_command=
"1"
number_of_elements_per_command=
"2"
element_types=
"2 0"
information_property=
"RegionArrayInfo"
>
<ArraySelectionDomain
name=
"array_list"
>
<RequiredProperties>
<Property
name=
"RegionArrayInfo"
function=
"ArrayList"
/>
</RequiredProperties>
</ArraySelectionDomain>
</StringVectorProperty>
<!-- Available volFields array -->
<StringVectorProperty
name=
"VolFieldArrayInfo"
information_only=
"1"
>
<ArraySelectionInformationHelper
attribute_name=
"VolField"
/>
</StringVectorProperty>
<StringVectorProperty
name=
"VolFieldStatus"
command=
"SetVolFieldArrayStatus"
number_of_elements=
"0"
repeat_command=
"1"
number_of_elements_per_command=
"2"
element_types=
"2 0"
information_property=
"VolFieldArrayInfo"
>
<ArraySelectionDomain
name=
"array_list"
>
<RequiredProperties>
<Property
name=
"VolFieldArrayInfo"
function=
"ArrayList"
/>
</RequiredProperties>
</ArraySelectionDomain>
</StringVectorProperty>
<!-- Available pointFields array -->
<StringVectorProperty
name=
"PointFieldArrayInfo"
information_only=
"1"
>
<ArraySelectionInformationHelper
attribute_name=
"PointField"
/>
</StringVectorProperty>
<StringVectorProperty
name=
"PointFieldStatus"
command=
"SetPointFieldArrayStatus"
number_of_elements=
"0"
repeat_command=
"1"
number_of_elements_per_command=
"2"
element_types=
"2 0"
information_property=
"PointFieldArrayInfo"
>
<ArraySelectionDomain
name=
"array_list"
>
<RequiredProperties>
<Property
name=
"PointFieldArrayInfo"
function=
"ArrayList"
/>
</RequiredProperties>
</ArraySelectionDomain>
</StringVectorProperty>
<!-- Available Lagrangian fields array -->
<StringVectorProperty
name=
"LagrangianFieldArrayInfo"
information_only=
"1"
>
<ArraySelectionInformationHelper
attribute_name=
"LagrangianField"
/>
</StringVectorProperty>
<StringVectorProperty
name=
"LagrangianFieldStatus"
command=
"SetLagrangianFieldArrayStatus"
number_of_elements=
"0"
repeat_command=
"1"
number_of_elements_per_command=
"2"
element_types=
"2 0"
information_property=
"LagrangianFieldArrayInfo"
>
<ArraySelectionDomain
name=
"array_list"
>
<RequiredProperties>
<Property
name=
"LagrangianFieldArrayInfo"
function=
"ArrayList"
/>
</RequiredProperties>
</ArraySelectionDomain>
</StringVectorProperty>
<!-- Available times array -->
<StringVectorProperty
name=
"TimeArrayInfo"
information_only=
"1"
>
<ArraySelectionInformationHelper
attribute_name=
"Time"
/>
</StringVectorProperty>
<StringVectorProperty
name=
"TimeStatus"
command=
"SetTimeArrayStatus"
number_of_elements=
"0"
repeat_command=
"1"
number_of_elements_per_command=
"2"
element_types=
"2 0"
information_property=
"TimeArrayInfo"
>
<ArraySelectionDomain
name=
"array_list"
>
<RequiredProperties>
<Property
name=
"TimeArrayInfo"
function=
"ArrayList"
/>
</RequiredProperties>
</ArraySelectionDomain>
</StringVectorProperty>
</SourceProxy>
</ProxyGroup>
</ServerManagerConfiguration>
src/paraview-plugins/PV3-3FoamReader/PV3FoamReader/vtkPV3FoamReader.cxx
deleted
100644 → 0
View file @
240811e6
/*=========================================================================
Program: Visualization Toolkit
Module: $RCSfile: vtkPV3FoamReader.cxx,v $
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
#include
"vtkPV3FoamReader.h"
#include
"pqApplicationCore.h"
#include
"pqRenderView.h"
#include
"pqServerManagerModel.h"
// VTK includes
#include
"vtkCallbackCommand.h"
#include
"vtkCellArray.h"
#include
"vtkCellData.h"
#include
"vtkDataArraySelection.h"
#include
"vtkDirectory.h"
#include
"vtkDoubleArray.h"
#include
"vtkErrorCode.h"
#include
"vtkFloatArray.h"
#include
"vtkInformation.h"
#include
"vtkInformationVector.h"
#include
"vtkIntArray.h"
#include
"vtkMultiBlockDataSet.h"
#include
"vtkObjectFactory.h"
#include
"vtkPoints.h"
#include
"vtkRenderer.h"
#include
"vtkSMRenderViewProxy.h"
#include
"vtkStreamingDemandDrivenPipeline.h"
#include
"vtkStringArray.h"
#include
"vtkUnstructuredGrid.h"
#include
"vtkUnstructuredGridAlgorithm.h"
#include
"vtkAlgorithmOutput.h"
#include
"vtkMultiBlockDataSet.h"
// Foam includes
#include
"vtkPV3Foam.H"
vtkCxxRevisionMacro
(
vtkPV3FoamReader
,
"$Revision: 1.2$"
);
vtkStandardNewMacro
(
vtkPV3FoamReader
);
vtkPV3FoamReader
::
vtkPV3FoamReader
()
{
Debug
=
0
;
vtkDebugMacro
(
<<
"Constructor"
);
SetNumberOfInputPorts
(
0
);
FileName
=
NULL
;
foamData_
=
NULL
;
CacheMesh
=
0
;
UpdateGUI
=
1
;
UpdateGUIOld
=
1
;
TimeStep
=
0
;
TimeStepRange
[
0
]
=
0
;
TimeStepRange
[
1
]
=
0
;
ShowPatchNames
=
0
;
TimeSelection
=
vtkDataArraySelection
::
New
();
RegionSelection
=
vtkDataArraySelection
::
New
();
VolFieldSelection
=
vtkDataArraySelection
::
New
();
PointFieldSelection
=
vtkDataArraySelection
::
New
();
LagrangianFieldSelection
=
vtkDataArraySelection
::
New
();
// Setup the selection callback to modify this object when an array
// selection is changed.
SelectionObserver
=
vtkCallbackCommand
::
New
();
SelectionObserver
->
SetCallback
(
&
vtkPV3FoamReader
::
SelectionModifiedCallback
);
SelectionObserver
->
SetClientData
(
this
);
TimeSelection
->
AddObserver
(
vtkCommand
::
ModifiedEvent
,
this
->
SelectionObserver
);
RegionSelection
->
AddObserver
(
vtkCommand
::
ModifiedEvent
,
this
->
SelectionObserver
);
VolFieldSelection
->
AddObserver
(
vtkCommand
::
ModifiedEvent
,
this
->
SelectionObserver
);
PointFieldSelection
->
AddObserver
(
vtkCommand
::
ModifiedEvent
,
this
->
SelectionObserver
);
LagrangianFieldSelection
->
AddObserver
(
vtkCommand
::
ModifiedEvent
,
this
->
SelectionObserver
);
}
vtkPV3FoamReader
::~
vtkPV3FoamReader
()
{
vtkDebugMacro
(
<<
"Deconstructor"
);
cout
<<
"Destroy ~vtkPV3FoamReader
\n
"
;
if
(
foamData_
)
{
delete
foamData_
;
}
if
(
FileName
)
{
delete
[]
FileName
;
}
TimeSelection
->
RemoveObserver
(
this
->
SelectionObserver
);
RegionSelection
->
RemoveObserver
(
this
->
SelectionObserver
);
VolFieldSelection
->
RemoveObserver
(
this
->
SelectionObserver
);
PointFieldSelection
->
RemoveObserver
(
this
->
SelectionObserver
);
LagrangianFieldSelection
->
RemoveObserver
(
this
->
SelectionObserver
);
SelectionObserver
->
Delete
();
TimeSelection
->
Delete
();
RegionSelection
->
Delete
();
VolFieldSelection
->
Delete
();
PointFieldSelection
->
Delete
();
LagrangianFieldSelection
->
Delete
();
}
// Do everything except set the output info
int
vtkPV3FoamReader
::
RequestInformation
(
vtkInformation
*
vtkNotUsed
(
request
),
vtkInformationVector
**
vtkNotUsed
(
inputVector
),
vtkInformationVector
*
outputVector
)
{
vtkDebugMacro
(
<<
"RequestInformation"
);
cout
<<
"REQUEST_INFORMATION
\n
"
;
if
(
!
FileName
)
{
vtkErrorMacro
(
"FileName has to be specified!"
);
return
0
;
}
{
vtkInformation
*
outputInfo
=
this
->
GetOutputPortInformation
(
0
);
outputInfo
->
Print
(
cout
);
vtkMultiBlockDataSet
*
output
=
vtkMultiBlockDataSet
::
SafeDownCast
(
outputInfo
->
Get
(
vtkMultiBlockDataSet
::
DATA_OBJECT
())
);
if
(
output
)
{
output
->
Print
(
cout
);
}
else
{
cout
<<
"no output
\n
"
;
}
cout
<<
"GetExecutive:
\n
"
;
this
->
GetExecutive
()
->
GetOutputInformation
(
0
)
->
Print
(
cout
);
}
{
int
nInfo
=
outputVector
->
GetNumberOfInformationObjects
();
cout
<<
"requestInfo with "
<<
nInfo
<<
" items
\n
"
;
for
(
int
i
=
0
;
i
<
nInfo
;
i
++
)
{
vtkInformation
*
info
=
outputVector
->
GetInformationObject
(
i
);
info
->
Print
(
cout
);
}
}
vtkInformation
*
outInfo
=
outputVector
->
GetInformationObject
(
0
);
if
(
!
foamData_
)
{
vtkDebugMacro
(
"RequestInformation: creating foamData_"
);
vtkMultiBlockDataSet
*
output
=
vtkMultiBlockDataSet
::
SafeDownCast
(
outInfo
->
Get
(
vtkMultiBlockDataSet
::
DATA_OBJECT
())
);
foamData_
=
new
Foam
::
vtkPV3Foam
(
FileName
,
this
,
output
);
foamData_
->
UpdateInformation
();
}
else
{
vtkDebugMacro
(
"RequestInformation: updating information"
);
foamData_
->
UpdateInformation
();
}
int
nTimeSteps
=
0
;
double
*
timeSteps
=
foamData_
->
timeSteps
(
nTimeSteps
);
cout
<<
"Have nTimeSteps: "
<<
nTimeSteps
<<
"
\n
"
;
outInfo
->
Set
(
vtkStreamingDemandDrivenPipeline
::
TIME_STEPS
(),
timeSteps
,
nTimeSteps
);
double
timeRange
[
2
];
if
(
nTimeSteps
)
{
timeRange
[
0
]
=
timeSteps
[
0
];
timeRange
[
1
]
=
timeSteps
[
nTimeSteps
-
1
];
cout
<<
"nTimeSteps "
<<
nTimeSteps
<<
"
\n
"
;
cout
<<
"timeRange "
<<
timeRange
[
0
]
<<
" -> "
<<
timeRange
[
1
]
<<
"
\n
"
;
// for (int i = 0; i < nTimeSteps; ++i)
// {
// cout<<"step[" << i << "] = " << timeSteps[i] << "\n";
// }
outInfo
->
Set
(
vtkStreamingDemandDrivenPipeline
::
TIME_RANGE
(),
timeRange
,
2