#2608 #2609 Add disabled Solvespace S-curve calculation. Use simplified S-curve calculation. Cleaned up Gui to only whats supported.

This commit is contained in:
Jacob Støren committed 2018-07-04 17:02:20 +02:00
1 parent e739a95830
commit 7156b99b88
16 files changed
+732 -22

No files matched your search

@@ -25,7 +25,7 @@ RimWellPathTarget::RimWellPathTarget()
CAF_PDM_InitField(&m_isEnabled, "IsEnabled", true, "", "", "", "");
CAF_PDM_InitFieldNoDefault(&m_targetType, "TargetType", "Type", "", "", "");
m_targetType.uiCapability()->setUiHidden(true);
//m_targetType.uiCapability()->setUiHidden(true);
CAF_PDM_InitFieldNoDefault(&m_targetPoint, "TargetPoint", "Point", "", "", "");
CAF_PDM_InitField(&m_azimuth, "Azimuth", 0.0, "Azi", "", "", "");
CAF_PDM_InitField(&m_inclination, "Inclination", 0.0, "Inc", "", "", "");
@@ -63,6 +63,18 @@ void RimWellPathTarget::setAsPointAndTangentTarget(const cvf::Vec3d& point,
m_inclination = inclination;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimWellPathTarget::setDerivedTangent(double azimuth, double inclination)
{
if (m_targetType == POINT)
{
m_azimuth = azimuth;
m_inclination = inclination;
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -111,6 +123,30 @@ double RimWellPathTarget::inclination()
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
cvf::Vec3d RimWellPathTarget::tangent()
{
return cvf::Vec3d (sin(m_azimuth) * sin(m_inclination),
cos(m_azimuth) * sin(m_inclination),
-cos(m_inclination));
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QList<caf::PdmOptionItemInfo> RimWellPathTarget::calculateValueOptions(const caf::PdmFieldHandle* fieldNeedingOptions, bool* useOptionsOnly)
{
QList<caf::PdmOptionItemInfo> options;
if (fieldNeedingOptions == & m_targetType)
{
options.push_back(caf::PdmOptionItemInfo("o->",RimWellPathTarget::POINT_AND_TANGENT, false, QIcon(":/WellTargetPointTangent16x16.png") ));
options.push_back(caf::PdmOptionItemInfo("o", RimWellPathTarget::POINT, false, QIcon(":/WellTargetPoint16x16.png")));
}
return options;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@@ -120,3 +156,20 @@ void RimWellPathTarget::fieldChangedByUi(const caf::PdmFieldHandle* changedField
firstAncestorOrThisOfTypeAsserted(wellPath);
wellPath->updateWellPathVisualization();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RimWellPathTarget::defineUiOrdering(QString uiConfigName, caf::PdmUiOrdering& uiOrdering)
{
if (m_targetType == POINT)
{
m_azimuth.uiCapability()->setUiReadOnly(true);
m_inclination.uiCapability()->setUiReadOnly(true);
}
else
{
m_azimuth.uiCapability()->setUiReadOnly(false);
m_inclination.uiCapability()->setUiReadOnly(false);
}
}