#2608 Adjust default radius to equivalent to 5deg dogleg = 115 m,

Use 0.2*p1p2 as controll point Fallback
This commit is contained in:
Jacob Støren
2018-08-10 12:10:39 +02:00
parent 22fd7a7692
commit e61942f88e

View File

@@ -250,24 +250,24 @@ std::vector<cvf::Vec3d> RimWellPathGeometryDef::lineArcEndpoints() const
RiaSCurveCalculator sCurveCalc(target1->targetPointXYZ(), RiaSCurveCalculator sCurveCalc(target1->targetPointXYZ(),
target1->azimuth(), target1->azimuth(),
target1->inclination(), target1->inclination(),
50,//30.0/cvf::Math::toRadians(12.0), 115,//30.0/cvf::Math::toRadians(12.0),
target2->targetPointXYZ(), target2->targetPointXYZ(),
target2->azimuth(), target2->azimuth(),
target2->inclination(), target2->inclination(),
50);//30.0/cvf::Math::toRadians(12.0)); 115);//30.0/cvf::Math::toRadians(12.0));
if (!sCurveCalc.isOk()) if (!sCurveCalc.isOk())
{ {
RiaLogging::warning("SCurve Calculation failed between target " + QString::number(tIdx+1) + " and " + QString::number(tIdx+2)); RiaLogging::warning("SCurve Calculation failed between target " + QString::number(tIdx+1) + " and " + QString::number(tIdx+2));
double p1p2Length = (target2->targetPointXYZ() - target1->targetPointXYZ()).length();
sCurveCalc = RiaSCurveCalculator::fromTangentsAndLength(target1->targetPointXYZ(), sCurveCalc = RiaSCurveCalculator::fromTangentsAndLength(target1->targetPointXYZ(),
target1->azimuth(), target1->azimuth(),
target1->inclination(), target1->inclination(),
50, 0.2*p1p2Length,
target2->targetPointXYZ(), target2->targetPointXYZ(),
target2->azimuth(), target2->azimuth(),
target2->inclination(), target2->inclination(),
50); 0.2*p1p2Length);
} }
endPoints.push_back( sCurveCalc.firstArcEndpoint() + m_referencePoint() ); endPoints.push_back( sCurveCalc.firstArcEndpoint() + m_referencePoint() );
endPoints.push_back( sCurveCalc.secondArcStartpoint() + m_referencePoint() ); endPoints.push_back( sCurveCalc.secondArcStartpoint() + m_referencePoint() );