Add vector of CellIntersectionInfo to WellLogExtractor

This commit is contained in:
Rebecca Cox
2017-10-27 14:28:51 +02:00
parent 112390e0a8
commit dda063cd68
2 changed files with 40 additions and 0 deletions

View File

@@ -37,6 +37,32 @@ RigWellLogExtractor::~RigWellLogExtractor()
{
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
std::vector<CellIntersectionInfo> RigWellLogExtractor::intersectionInfo() const
{
std::vector<CellIntersectionInfo> infoVector;
for (size_t i = 0; i < m_intersectedCellsGlobIdx.size() - 1; i=i+2)
{
CVF_ASSERT(m_intersectedCellsGlobIdx[i] == m_intersectedCellsGlobIdx[i + 1]);
CellIntersectionInfo cellInfo;
cellInfo.globCellIndex = m_intersectedCellsGlobIdx[i];
cellInfo.startPoint = m_intersections[i];
cellInfo.endPoint = m_intersections[i+1];
cellInfo.intersectedCellFaceIn = m_intersectedCellFaces[i];
cellInfo.intersectedCellFaceOut = m_intersectedCellFaces[i+1];
infoVector.push_back(cellInfo);
}
return infoVector;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------

View File

@@ -32,6 +32,18 @@
#include "RigWellLogExtractionTools.h"
#include "RigHexIntersectionTools.h"
//==================================================================================================
///
//==================================================================================================
struct CellIntersectionInfo
{
size_t globCellIndex;
cvf::Vec3d startPoint;
cvf::Vec3d endPoint;
cvf::StructGridInterface::FaceType intersectedCellFaceIn;
cvf::StructGridInterface::FaceType intersectedCellFaceOut;
};
class RigWellPath;
//==================================================================================================
@@ -48,6 +60,8 @@ public:
const RigWellPath* wellPathData() { return m_wellPath.p();}
std::vector<CellIntersectionInfo> intersectionInfo() const;
protected:
static void insertIntersectionsInMap(const std::vector<HexIntersectionInfo> &intersections,
cvf::Vec3d p1,