Commit 2b7bcadc authored by hrchilds's avatar hrchilds

Update from February 8, 2006

git-svn-id: http://visit.ilight.com/svn/visit/trunk/src@616 18c085ea-50e0-402c-830e-de6fd14e8384
parent 5d38db0f
......@@ -106,10 +106,14 @@ VariableNamesEqual(const std::string &v1, const std::string &v2)
//
// Mark C. Miller, Wed Nov 16 10:46:36 PST 2005
// Added loadBalanceScheme
//
// Kathleen Bonnell, Fri Feb 3 10:23:36 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
avtMeshMetaData::avtMeshMetaData()
: AttributeSubject("sssiiiiiibFFs*ii*ssbssssssibbbbbsii")
: AttributeSubject("sssiiiiiibFFs*ii*ssbssssssibbbbbsiii")
{
blockTitle = "domains";
blockPieceName = "domain";
......@@ -135,6 +139,7 @@ avtMeshMetaData::avtMeshMetaData()
yLabel = "Y-Axis";
zLabel = "Z-Axis";
loadBalanceScheme = LOAD_BALANCE_UNKNOWN;
meshCoordType = AVT_XY;
}
// ****************************************************************************
......@@ -195,12 +200,16 @@ avtMeshMetaData::avtMeshMetaData()
//
// Mark C. Miller, Wed Nov 16 10:46:36 PST 2005
// Added loadBalanceScheme
//
// Kathleen Bonnell, Fri Feb 3 10:23:36 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
avtMeshMetaData::avtMeshMetaData(const float *extents, std::string s, int nb,
int bo, int co, int go, int sd, int td,
avtMeshType mt)
: AttributeSubject("sssiiiiiibFFs*ii*ssbssssssibbbbbsii")
: AttributeSubject("sssiiiiiibFFs*ii*ssbssssssibbbbbsiii")
{
name = s;
originalName = name;
......@@ -228,6 +237,7 @@ avtMeshMetaData::avtMeshMetaData(const float *extents, std::string s, int nb,
yLabel = "Y-Axis";
zLabel = "Z-Axis";
loadBalanceScheme = LOAD_BALANCE_UNKNOWN;
meshCoordType = AVT_XY;
}
......@@ -288,11 +298,15 @@ avtMeshMetaData::avtMeshMetaData(const float *extents, std::string s, int nb,
//
// Mark C. Miller, Wed Nov 16 10:46:36 PST 2005
// Added loadBalanceScheme
//
// Kathleen Bonnell, Fri Feb 3 10:23:36 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
avtMeshMetaData::avtMeshMetaData(std::string s, int nb, int bo, int co, int go,
int sd, int td, avtMeshType mt)
: AttributeSubject("sssiiiiiibFFs*ii*ssbssssssibbbbbsii")
: AttributeSubject("sssiiiiiibFFs*ii*ssbssssssibbbbbsiii")
{
name = s;
originalName = name;
......@@ -323,6 +337,7 @@ avtMeshMetaData::avtMeshMetaData(std::string s, int nb, int bo, int co, int go,
zLabel = "Z-Axis";
loadBalanceScheme = LOAD_BALANCE_UNKNOWN;
meshCoordType = AVT_XY;
}
......@@ -384,10 +399,14 @@ avtMeshMetaData::avtMeshMetaData(std::string s, int nb, int bo, int co, int go,
//
// Mark C. Miller, Wed Nov 16 10:46:36 PST 2005
// Added loadBalanceScheme
//
// Kathleen Bonnell, Fri Feb 3 10:23:36 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
avtMeshMetaData::avtMeshMetaData(const avtMeshMetaData &rhs)
: AttributeSubject("sssiiiiiibFFs*ii*ssbssssssibbbbbsii")
: AttributeSubject("sssiiiiiibFFs*ii*ssbssssssibbbbbsiii")
{
name = rhs.name;
originalName = rhs.originalName;
......@@ -425,6 +444,7 @@ avtMeshMetaData::avtMeshMetaData(const avtMeshMetaData &rhs)
zLabel = rhs.zLabel;
validVariable = rhs.validVariable;
loadBalanceScheme = rhs.loadBalanceScheme;
meshCoordType = rhs.meshCoordType;
}
......@@ -500,6 +520,10 @@ avtMeshMetaData::~avtMeshMetaData()
//
// Mark C. Miller, Wed Nov 16 10:46:36 PST 2005
// Added loadBalanceScheme
//
// Kathleen Bonnell, Fri Feb 3 10:23:36 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
const avtMeshMetaData &
......@@ -541,6 +565,7 @@ avtMeshMetaData::operator=(const avtMeshMetaData &rhs)
zLabel = rhs.zLabel;
validVariable = rhs.validVariable;
loadBalanceScheme = rhs.loadBalanceScheme;
meshCoordType = rhs.meshCoordType;
return *this;
}
......@@ -596,6 +621,9 @@ avtMeshMetaData::operator=(const avtMeshMetaData &rhs)
// Jeremy Meredith, Thu Aug 25 09:42:45 PDT 2005
// Added group origin.
//
// Kathleen Bonnell, Fri Feb 3 10:23:36 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
void
......@@ -634,6 +662,7 @@ avtMeshMetaData::SelectAll()
Select(30, (void*)&originalName);
Select(31, (void*)&groupOrigin);
Select(32, (void*)&loadBalanceScheme);
Select(33, (void*)&meshCoordType);
}
......@@ -738,6 +767,9 @@ avtMeshMetaData::SetExtents(const float *extents)
// Hank Childs, Wed Jan 11 09:36:13 PST 2006
// Added new mesh types.
//
// Kathleen Bonnell, Fri Feb 3 10:23:36 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
void
......@@ -898,6 +930,21 @@ avtMeshMetaData::Print(ostream &out, int indent) const
out << "HAS A SPECIFIC LOAD BALANCE SCHEME = "
<< loadBalanceScheme << endl;
}
if (meshCoordType == AVT_XY)
{
Indent(out, indent);
out << "Mesh coord type is XY" << endl;
}
else if (meshCoordType == AVT_RZ)
{
Indent(out, indent);
out << "Mesh coord type is RZ" << endl;
}
else if (meshCoordType == AVT_ZR)
{
Indent(out, indent);
out << "Mesh coord type is ZR" << endl;
}
}
......
......@@ -31,6 +31,10 @@ class avtSimulationInformation;
//
// Mark C. Miller, Wed Nov 16 10:46:36 PST 2005
// Added loadBalanceScheme
//
// Kathleen Bonnell, Fri Feb 3 10:23:36 PST 2006
// Added meshCoordType.
//
//----------------------------------------------------------------------------
struct DBATTS_API avtMeshMetaData : public AttributeSubject
{
......@@ -73,6 +77,7 @@ struct DBATTS_API avtMeshMetaData : public AttributeSubject
bool validVariable;
LoadBalanceScheme loadBalanceScheme;
avtMeshCoordType meshCoordType;
public:
avtMeshMetaData();
......
......@@ -74,6 +74,12 @@ enum avtGhostType
AVT_MAYBE_GHOSTS /* 3 */
};
enum avtMeshCoordType
{
AVT_XY = 0,
AVT_RZ, /* 1 */
AVT_ZR /* 2 */
};
enum SetState
{
......
......@@ -323,6 +323,9 @@ avtDatabase::GetOutput(const char *var, int ts)
// Hank Childs, Fri Oct 7 08:21:03 PDT 2005
// Added fullDBName.
//
// Kathleen Bonnell, Fri Feb 3 10:32:12 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
void
......@@ -383,6 +386,7 @@ avtDatabase::PopulateDataObjectInformation(avtDataObject_p &dob,
atts.GetTrueSpatialExtents()->Set(extents);
haveSetTrueSpatialExtents = true;
}
atts.SetMeshCoordType(mmd->meshCoordType);
}
//
......
......@@ -32,11 +32,16 @@ static double AreaOfCone(double, double, double);
// Programmer: Hank Childs
// Creation: September 8, 2002
//
// Modifications:
// Kathleen Bonnell, Tue Feb 7 14:14:33 PST 2006
// Added revolveAboutX.
//
// ****************************************************************************
avtRevolvedSurfaceArea::avtRevolvedSurfaceArea()
{
haveIssuedWarning = false;
revolveAboutX = true;
}
......@@ -50,6 +55,10 @@ avtRevolvedSurfaceArea::avtRevolvedSurfaceArea()
// Programmer: Hank Childs
// Creation: September 8, 2002
//
// Modifications:
// Kathleen Bonnell, Tue Feb 7 14:14:33 PST 2006
// Added revolveAboutX.
//
// ****************************************************************************
void
......@@ -60,10 +69,14 @@ avtRevolvedSurfaceArea::PreExecute(void)
avtDataAttributes &atts = GetInput()->GetInfo().GetAttributes();
if (atts.GetSpatialDimension() != 2)
{
EXCEPTION2(InvalidDimensionsException, "Revolved volume",
EXCEPTION2(InvalidDimensionsException, "Revolved surface area",
"2-dimensional");
}
haveIssuedWarning = false;
if (atts.GetMeshCoordType() == AVT_ZR)
revolveAboutX = false;
else
revolveAboutX = true;
}
......@@ -89,6 +102,9 @@ avtRevolvedSurfaceArea::PreExecute(void)
// Hank Childs, Mon Aug 30 17:09:57 PDT 2004
// Remove call to SetGhostLevel for vtkDataSetRemoveGhostCells filter.
//
// Kathleen Bonnell, Tue Feb 7 14:14:33 PST 2006
// Changed GetLineArea call to GetCellArea.
//
// ****************************************************************************
vtkDataArray *
......@@ -181,7 +197,7 @@ avtRevolvedSurfaceArea::DeriveVariable(vtkDataSet *in_ds)
for (i = 0 ; i < ncells ; i++)
{
vtkCell *cell = pd_1d_nogz->GetCell(i);
float area = (float) GetLineArea(cell);
float area = (float) GetCellArea(cell);
int orig_cell = orig_cells->GetValue(i);
float orig_area = arr->GetTuple1(orig_cell);
float new_area = area + orig_area;
......@@ -201,26 +217,25 @@ avtRevolvedSurfaceArea::DeriveVariable(vtkDataSet *in_ds)
// ****************************************************************************
// Method: avtRevolvedSurfaceArea::GetLineArea
// Method: avtRevolvedSurfaceArea::GetCellArea
//
// Purpose:
// Revolve the zone around the line y = 0. This is done by making
// two cones -- one that intersects the line y = 0 and one that is
// the requested line segment, but extended to the line y = 0. Then
// we can difference them and get the surface area for just this cell.
//
// Tests that cell is a line, and if so calls GetLineArea.
// Arguments:
// line The input line.
// cell The input cell.
// y The y-coordinates of the input line.
//
// Returns: The surface area of the revolved line segment.
// Returns: The surface area of the revolved cell, 0 if the cell
// is not a line.
//
// Programmer: Hank Childs
// Creation: March 18, 2003
// Programmer: Kathleen Bonnell
// Creation: February 7, 2006
//
// ****************************************************************************
double
avtRevolvedSurfaceArea::GetLineArea(vtkCell *cell)
avtRevolvedSurfaceArea::GetCellArea(vtkCell *cell)
{
int cellType = cell->GetCellType();
if (cellType != VTK_LINE)
......@@ -247,7 +262,42 @@ avtRevolvedSurfaceArea::GetLineArea(vtkCell *cell)
x[1] = p1[0];
y[0] = p0[1];
y[1] = p1[1];
double area;
if (revolveAboutX)
area = GetLineArea(x, y);
else
area = GetLineArea(y, x);
return area;
}
// ****************************************************************************
// Method: avtRevolvedSurfaceArea::GetLineArea
//
// Purpose:
// Revolve the zone around the line y = 0. This is done by making
// two cones -- one that intersects the line y = 0 and one that is
// the requested line segment, but extended to the line y = 0. Then
// we can difference them and get the surface area for just this cell.
//
// Arguments:
// x The x-coordinates of the input line.
// y The y-coordinates of the input line.
//
// Returns: The surface area of the revolved line segment.
//
// Programmer: Hank Childs
// Creation: March 18, 2003
//
// Modifications:
// Kathleen Bonnell, Tue Feb 7 14:14:33 PST 2006
// Changed args from vtkCell to x and y coords of the line.
// Moved cell-is-line test to GetCellArea method.
//
// ****************************************************************************
double
avtRevolvedSurfaceArea::GetLineArea(double x[2], double y[2])
{
//
// It's easier to think about this if we know x[0] < x[1]
//
......
......@@ -21,6 +21,11 @@ class vtkCell;
// Programmer: Hank Childs
// Creation: March 18, 2003
//
// Modifications:
// Kathleen Bonnell, Tue Feb 7 14:14:33 PST 2006
// Added revolveAboutX. Changed args of GetLineArea from vtkCell, to double.
// Added GetCellArea.
//
// ****************************************************************************
class EXPRESSION_API avtRevolvedSurfaceArea
......@@ -36,14 +41,15 @@ class EXPRESSION_API avtRevolvedSurfaceArea
protected:
bool haveIssuedWarning;
bool revolveAboutX;
virtual vtkDataArray *DeriveVariable(vtkDataSet *);
virtual void PreExecute(void);
virtual bool IsPointVariable(void) { return false; };
double GetLineArea(vtkCell *);
double GetTriangleVolume(double [3], double [3]);
double GetCellArea(vtkCell*);
double GetLineArea(double[2], double[2]);
double RevolveLineSegment(double [2], double [2],
double *);
};
......
......@@ -21,11 +21,16 @@
// Programmer: Hank Childs
// Creation: September 8, 2002
//
// Modifications:
// Kathleen Bonnell, Fri Feb 3 11:24:40 PST 2006
// Initialize revolveAboutX.
//
// ****************************************************************************
avtRevolvedVolume::avtRevolvedVolume()
{
haveIssuedWarning = false;
revolveAboutX = true;
}
......@@ -39,6 +44,10 @@ avtRevolvedVolume::avtRevolvedVolume()
// Programmer: Hank Childs
// Creation: September 8, 2002
//
// Modifications:
// Kathleen Bonnell, Fri Feb 3 11:24:40 PST 2006
// Initialize revolveAboutX.
// ****************************************************************************
void
......@@ -53,6 +62,10 @@ avtRevolvedVolume::PreExecute(void)
"2-dimensional");
}
haveIssuedWarning = false;
if (atts.GetMeshCoordType() == AVT_ZR)
revolveAboutX = false;
else
revolveAboutX = true;
}
......@@ -90,9 +103,12 @@ avtRevolvedVolume::DeriveVariable(vtkDataSet *in_ds)
// Method: avtRevolvedVolume::GetZoneVolume
//
// Purpose:
// Revolve the zone around the axis x = 0. This is done by making
// two volumes for the top of the zone and the bottom of the zone and
// subtracting them.
// Revolve the zone around either the y-axis (x = 0), or the
// x-axis (y = 0). Which axis is determined by the mesh coord type.
// RZ -> about x; ZR -> about y; XY -> assume RZ, so about x.
//
// This is done by making two volumes for the top of the zone
// and the bottom of the zone and subtracting them.
//
// Arguments:
// cell The input zone.
......@@ -224,7 +240,39 @@ avtRevolvedVolume::GetZoneVolume(vtkCell *cell)
// Function: GetTriangleVolume
//
// Purpose:
// Revolve a triangle around the y-axis.
// Revolve a triangle around either the x-axis or y-axis.
//
// Simulates revolution about y-axis by revsering order of x and
// y coordinates in call to GetTriangleVolume2.
//
// Arguments:
// x The x-coordinates of the triangle.
// y The y-coordinates of the triangle.
//
// Returns: The volume of the revolved triangle.
//
// Programmer: Kathleen Bonnell
// Creation: February 3, 2006
//
// Modifications:
//
// ****************************************************************************
double
avtRevolvedVolume::GetTriangleVolume(double x[3], double y[3])
{
if (revolveAboutX)
return GetTriangleVolume2(x, y);
else
return GetTriangleVolume2(y, x);
}
// ****************************************************************************
// Function: GetTriangleVolume2
//
// Purpose:
// Revolve a triangle around the x-axis (y = 0).
//
// Arguments:
// x The x-coordinates of the triangle.
......@@ -236,13 +284,18 @@ avtRevolvedVolume::GetZoneVolume(vtkCell *cell)
// Creation: March 29, 2000
//
// Modifications:
// Akira Haddox, Wed Jul 2 12:27:24 PDT 2003
// Dealt with triangles below or on the y-axis.
// Akira Haddox, Wed Jul 2 12:27:24 PDT 2003
// Dealt with triangles below or on the x-axis.
//
// Kathleen Bonnell, Thu Feb 2 10:53:19 PST 2006
// Renamed to GetTriangleVolume2, modifiy comments to more
// accurately reflect revolution-about-x, Fixed x-intercept formula
// for triangles crossing x-axis. Tighten up for-loop for sorting points.
//
// ****************************************************************************
double
avtRevolvedVolume::GetTriangleVolume(double x[3], double y[3])
avtRevolvedVolume::GetTriangleVolume2(double x[3], double y[3])
{
int i, j;
double cone01, cone02, cone12;
......@@ -303,7 +356,7 @@ avtRevolvedVolume::GetTriangleVolume(double x[3], double y[3])
else
{
double nslope = (oppositeY - pt1Y) / (oppositeX - pt1X);
xInt1 = oppositeX + oppositeY / nslope;
xInt1 = oppositeX - oppositeY / nslope;
}
if (oppositeX == pt2X)
......@@ -311,7 +364,7 @@ avtRevolvedVolume::GetTriangleVolume(double x[3], double y[3])
else
{
double nslope = (oppositeY - pt2Y) / (oppositeX - pt2X);
xInt2 = oppositeX + oppositeY / nslope;
xInt2 = oppositeX - oppositeY / nslope;
}
double v1, v2, v3;
......@@ -326,7 +379,7 @@ avtRevolvedVolume::GetTriangleVolume(double x[3], double y[3])
y[1] = 0;
y[2] = 0;
v1 = GetTriangleVolume(x, y);
v1 = GetTriangleVolume2(x, y);
//
// Find the volume of the quad by splitting it into triangles
......@@ -335,11 +388,11 @@ avtRevolvedVolume::GetTriangleVolume(double x[3], double y[3])
x[0] = pt1X;
y[0] = pt1Y;
v2 = GetTriangleVolume(x, y);
v2 = GetTriangleVolume2(x, y);
x[1] = pt2X;
y[1] = pt2Y;
v3 = GetTriangleVolume(x, y);
v3 = GetTriangleVolume2(x, y);
return v1 + v2 + v3;
}
......@@ -348,9 +401,9 @@ avtRevolvedVolume::GetTriangleVolume(double x[3], double y[3])
// Sort the points so that they are ordered by x-coordinate. This will
// make things much easier later.
//
for (i = 0 ; i < 3 ; i++)
for (i = 0 ; i < 2 ; i++)
{
for (j = i ; j < 3 ; j++)
for (j = i + 1 ; j < 3 ; j++)
{
if (x[j] < x[i])
{
......@@ -424,7 +477,7 @@ avtRevolvedVolume::GetTriangleVolume(double x[3], double y[3])
//
// Purpose:
// Calculate the volume of the cone created by revolving a line segment
// around the y-axis.
// around the x-axis (y = 0).
//
// Arguments:
// x The x-coordinates of the line segment.
......@@ -436,13 +489,17 @@ avtRevolvedVolume::GetTriangleVolume(double x[3], double y[3])
// Programmer: Hank Childs
// Creation: March 29, 2000
//
// Modifications:
// Kathleen Bonnell, Thu Feb 2 11:26:23 PST 2006
// Renamed some vars for clarity.
//
// ****************************************************************************
double
avtRevolvedVolume::RevolveLineSegment(double x[2], double y[2], double *slope)
{
double m, b;
double x_at_y_axis;
double x_intercept;
double radius, height;
double coneAll, coneCropped;
......@@ -477,12 +534,12 @@ avtRevolvedVolume::RevolveLineSegment(double x[2], double y[2], double *slope)
}
//
// Calculate where the line segment will hit the line x = 0.
// Calculate where the line segment will hit the line y = 0.
// Note we have already taken care of degenerate cases.
//
m = (y[1] - y[0]) / (x[1] - x[0]);
b = y[0] - m*x[0];
x_at_y_axis = -b / m;
x_intercept = -b / m;
//
// We are now going to calculate the cone that contains are volume and
......@@ -496,17 +553,17 @@ avtRevolvedVolume::RevolveLineSegment(double x[2], double y[2], double *slope)
// . <= P0
//
// . <= P1
// x_at_y_axis
// x_intercept
// ||
// \/
// y-axis -----------------.--------------------
// x-axis -----------------.--------------------
//
radius = y[0];
height = x_at_y_axis - x[0];
height = x_intercept - x[0];
coneAll = M_PI * radius * radius * height / 3;
radius = y[1];
height = x_at_y_axis - x[1];
height = x_intercept - x[1];
coneCropped = M_PI * radius * radius * height / 3;
}
else // m > 0
......@@ -515,17 +572,17 @@ avtRevolvedVolume::RevolveLineSegment(double x[2], double y[2], double *slope)
// . <= P1
//
// . <= P0
// x_at_y_axis
// x_intercept
// ||
// \/
// y-axis ----.---------------------------------
// x-axis ----.---------------------------------
//
radius = y[1];
height = x[1] - x_at_y_axis;
height = x[1] - x_intercept;
coneAll = M_PI * radius * radius * height / 3;
radius = y[0];
height = x[0] - x_at_y_axis;
height = x[0] - x_intercept;
coneCropped = M_PI * radius * radius * height / 3;
}
......@@ -533,4 +590,3 @@ avtRevolvedVolume::RevolveLineSegment(double x[2], double y[2], double *slope)
return (coneAll - coneCropped);
}
......@@ -21,6 +21,10 @@ class vtkCell;
// Programmer: Hank Childs
// Creation: September 8, 2002
//
// Modifications:
// Kathleen Bonnell, Fri Feb 3 11:24:40 PST 2006
// Added revolveAboutX, GetTriangleVolume2.
//
// ****************************************************************************
class EXPRESSION_API avtRevolvedVolume : public avtSingleInputExpressionFilter
......@@ -34,6 +38,7 @@ class EXPRESSION_API avtRevolvedVolume : public avtSingleInputExpressionFilter
protected:
bool haveIssuedWarning;
bool revolveAboutX;
virtual vtkDataArray *DeriveVariable(vtkDataSet *);
virtual void PreExecute(void);
......@@ -42,6 +47,7 @@ class EXPRESSION_API avtRevolvedVolume : public avtSingleInputExpressionFilter
double GetZoneVolume(vtkCell *);
double GetTriangleVolume(double [3], double [3]);
double GetTriangleVolume2(double [3], double [3]);
double RevolveLineSegment(double [2], double [2],
double *);
};
......
......@@ -90,6 +90,9 @@ using std::sort;
// Hank Childs, Fri Oct 7 08:31:30 PDT 2005
// Added fullDBName.
//
// Kathleen Bonnell, Fri Feb 3 10:32:12 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
avtDataAttributes::avtDataAttributes()
......@@ -143,6 +146,7 @@ avtDataAttributes::avtDataAttributes()
mirOccurred = false;
canUseOrigZones = true;
origNodesRequiredForPick = false;
meshCoordType = AVT_XY;
}
......@@ -313,6 +317,9 @@ avtDataAttributes::DestructSelf(void)
// Hank Childs, Fri Oct 7 08:31:30 PDT 2005
// Added fullDBName.
//
// Kathleen Bonnell, Fri Feb 3 10:32:12 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
void
......@@ -560,6 +567,18 @@ avtDataAttributes::Print(ostream &out)
if (origNodesRequiredForPick)
out << "Original Nodes are required for Pick." << endl;
switch (meshCoordType)
{
case AVT_XY:
out << "The mesh coord tyep is XY " << endl;
break;
case AVT_RZ:
out << "The mesh coord tyep is RZ " << endl;
break;
case AVT_ZR:
out << "The mesh coord tyep is ZR " << endl;
break;
}
}
......@@ -652,6 +671,9 @@ avtDataAttributes::Print(ostream &out)
// Hank Childs, Fri Oct 7 08:31:30 PDT 2005
// Added fullDBName.
//
// Kathleen Bonnell, Fri Feb 3 10:32:12 PST 2006
// Added meshCoordType.
//
// ****************************************************************************
void
......@@ -736,6 +758,7 @@ avtDataAttributes::Copy(const avtDataAttributes &di)
mirOccurred = di.mirOccurred;
canUseOrigZones = di.canUseOrigZones;
origNodesRequiredForPick = di.origNodesRequiredForPick;
meshCoordType = di.meshCoordType;
}
......@@ -833,6 +856,9 @@ avtDataAttributes::Copy(const avtDataAttributes &di)
// Jeremy Meredith, Thu Aug 25 11:07:42 PDT 2005
// Added groupOrigin.
//
// Kathleen Bonnell, Fri Feb 3 10:32:12 PST 2006
// Added meshCoordType.
//