Я випадково виявив, як ArcMap відображає користувачеві спеціальні значення з плаваючою комою.
- + ∞ (позитивна нескінченність) відображається як
1.#INF
- –∞ (негативна нескінченність) нібито відображатиметься як
-1.#INF
- я цього не підтвердив. NaN (не число) відображається як вирівнювання праворуч
<Null>
- не плутати з вирівнюванням ліворуч<Null>
, що позначає NULL (відсутні значення):( Отримати унікальні значення в польовому калькуляторі зовсім не вказано NaN.)
Але я не дізнався, як писати запити на визначення рівня для вибору рядків на основі цих спеціальних значень:
ColumnName IS NULL
буде вибирати лише регулярні значення NULL, але не NaN.ColumnName = 1.#INF
відхилено як недійсний синтаксис.
Хтось знає, як це зробити?
Фрагмент коду C # ArcObjects для зберігання значення 1. # INF у полі таблиці (основна концепція):
Як вимагалось. Оскільки я більше не працюю, наступний код не є реальним кодом, який я використовував, і не можу перевірити його зараз, але він повинен створити ефект, показаний на скріншоті вище:
ITable table = …;
int doubleFieldIndex = table.FindField(…);
IRow row = table.CreateRow();
row.Value[doubleFieldIndex] = double.PositiveInfinity;
row.Store();