#8651 Surface Intersection Curve: Fix crash when non-overlapping surface and intersection (#8737)

This commit is contained in:
Kristian Bendiksen
2022-03-25 15:06:11 +01:00
committed by GitHub
parent 86ea679871
commit fda4d1d608

View File

@@ -204,13 +204,15 @@ void RivExtrudedCurveIntersectionGeometryGenerator::calculateSurfaceIntersection
cvf::Vec3d intersectionPoint; cvf::Vec3d intersectionPoint;
bool foundMatch = RigSurfaceResampler::resamplePoint( surface, pointAbove, pointBelow, intersectionPoint ); bool foundMatch = RigSurfaceResampler::resamplePoint( surface, pointAbove, pointBelow, intersectionPoint );
if ( !foundMatch ) if ( foundMatch )
intersectionPoint = cvf::Vec3d( point.x(), point.y(), std::numeric_limits<double>::infinity() ); {
const size_t lineIndex = 0; const size_t lineIndex = 0;
transformedSurfacePolyline.push_back( transformedSurfacePolyline.push_back(
transformPointByPolylineSegmentIndex( intersectionPoint, lineIndex, segmentIndex ) ); transformPointByPolylineSegmentIndex( intersectionPoint, lineIndex, segmentIndex ) );
} }
}
if ( !transformedSurfacePolyline.empty() )
m_transformedSurfaceIntersectionPolylines[rimSurface] = transformedSurfacePolyline; m_transformedSurfaceIntersectionPolylines[rimSurface] = transformedSurfacePolyline;
} }
} }