MCPcopy Create free account
hub / github.com/Kitware/VTK / LoadTraces

Method LoadTraces

IO/SegY/vtkSegYReaderInternal.cxx:70–93  ·  view source on GitHub ↗

------------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

68
69//------------------------------------------------------------------------------
70void vtkSegYReaderInternal::LoadTraces(int* extent)
71{
72 std::streamoff traceStartPos = FIRST_TRACE_START_POS;
73 std::streamoff fileSize = vtkSegYIOUtils::Instance()->getFileSize(this->In);
74
75 // allocate traces vector
76 int dims[3] = { extent[1] - extent[0] + 1, extent[3] - extent[2] + 1, extent[5] - extent[4] + 1 };
77
78 bool is3d = extent[3] - extent[2] > 1;
79 this->Traces.resize(dims[0] * dims[1], nullptr);
80 size_t traceCount = 0;
81 while (traceStartPos + 240 < fileSize)
82 {
83 vtkSegYTrace* pTrace = new vtkSegYTrace();
84 this->TraceReader->ReadTrace(traceStartPos, this->In, this->FormatCode, pTrace);
85 size_t loc = traceCount;
86 if (is3d)
87 {
88 loc = pTrace->CrosslineNumber - extent[0] + (pTrace->InlineNumber - extent[2]) * dims[0];
89 }
90 this->Traces[loc] = pTrace;
91 traceCount++;
92 }
93}
94
95//------------------------------------------------------------------------------
96bool vtkSegYReaderInternal::ReadHeader()

Callers 1

RequestDataMethod · 0.80

Calls 3

getFileSizeMethod · 0.80
ReadTraceMethod · 0.80
resizeMethod · 0.45

Tested by

no test coverage detected