如何将测井深度测量深度转换为海洋中的海燕?

时间:2011-05-06 14:08:05

标签: c# ocean petrel unit-conversion

我想将井记录从Slb.Ocean.Petrel.DomainObject.Well.WellLog导出到外部文件,但即使项目设置为使用英尺,我得到的测量深度也以米为单位。

我可以用我得到的转换器转换测井记录样本:

var converter = PetrelUnitSystem.GetConverterToUI(wellLog.WellLogVersion.UnitMeasurement);

如何获得测量深度的转换器?

1 个答案:

答案 0 :(得分:2)

Hallgrim,

您可以从不变的海洋单位到Petrel显示单元获得转换器:

IUnitConverter convertToDisplayMD = PetrelUnitSystem.GetConverterToUI(Domain.MD);

以下是使用它的示例:

double valueToConvert = 3;

IUnit displayMD = PetrelUnitSystem.GetDisplayUnit(Domain.MD.Template);
IUnit oceanMD = PetrelUnitSystem.GetInvariantUnit(Domain.MD.Template);

PetrelLogger.InfoOutputWindow("converting " + valueToConvert.ToString() + 
" from: the Ocean unit for measured depth " + oceanMD.Symbol + 
" to: " + displayMD.Symbol + " = " + convertToDisplayMD.Convert(valueToConvert));

Petrel消息日志中的输出将是:

  

“将海洋单位转换为3,测量深度m为:ft =   9.84251968503937"

,对于以英尺为单位测量深度的项目。