aboutsummaryrefslogtreecommitdiff
path: root/src/AMRHierLib/StitchCellWriter.icc
blob: d91ec06217686045a2303cffa2bb6eb487861b39 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//------------------------------------------------------------------------------
//
// Project:	AMR Visualization
// Module:	$RCSfile$
// Language:	C++
// Date:	$Date$
// Author:	$Author$
// Version:	$Revision$
//
//------------------------------------------------------------------------------

inline int StitchCellWriter::pointIdxForGridCell(const AMRGridCell& gc)
{
  // (i, j, k) -> mGridStartPointIdx[gridIdx] + (k * dims[1] + j) * dims[0] + i
  AMRGrid *g = gc.grid();
  return mGridStartPointIdx[g->index()] + (gc.idx(zAxis) * g->dims[1] + gc.idx(yAxis)) * g->dims[0] + gc.idx(xAxis);
}

inline int StitchCellWriter::addPoint(const Vertex& p, double v)
{
  OutputFPType out = p.x; BinStream::binaryOut(mPositionStream, out);
  out = p.y; BinStream::binaryOut(mPositionStream, out);
  out = p.z; BinStream::binaryOut(mPositionStream, out);
  out = v; BinStream::binaryOut(mValueStream, out);
  return mNumPoints++;
}