Как правильно преобразовать измеренную глубину в футы в океане для буревестника? - PullRequest
1 голос
/ 06 мая 2011

Я хочу экспортировать каротаж скважины из Slb.Ocean.Petrel.DomainObject.Well.WellLog во внешний файл, но полученная мной измеренная глубина измеряется в метрах, даже если проект настроен на использование футов.

Я могу преобразовать образцы каротажа скважины с помощью конвертера, из которого я получаю:

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

Как мне получить преобразователь для измеренной глубины?

1 Ответ

2 голосов
/ 10 мая 2011

Hallgrim,

Вы можете получить преобразователь из инвариантной единицы Ocean в единицу отображения 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"

, для проекта с измерением глубины в футах.

...