Per caso ho scoperto come ArcMap mostra all'utente speciali valori in virgola mobile.
- + ∞ (infinito positivo) viene visualizzato come
1.#INF - –∞ (infinito negativo) verrebbe visualizzato come
-1.#INF- Non ho verificato questo. NaN (non un numero) viene visualizzato come allineato a destra
<Null>- da non confondere con l'allineamento a sinistra<Null>, che indica NULL (valori mancanti):
(A proposito, ottieni valori univoci nel calcolatore di campo non elenca affatto NaN.)
Ma non ho scoperto come scrivere query di definizione layer per selezionare le righe in base a questi valori speciali:
ColumnName IS NULLselezionerà solo i normali valori NULL, ma non NaN.ColumnName = 1.#INFviene rifiutato come sintassi non valida.
Qualcuno sa come fare questo?
Snippet di codice C # ArcObjects per la memorizzazione di un valore INF # # in un campo tabella (concetto di base):
Come richiesto. Dal momento che non sono più al lavoro, il seguente non è il codice reale che ho usato e non posso provarlo in questo momento, ma dovrebbe produrre l'effetto mostrato nello screenshot sopra:
ITable table = …;
int doubleFieldIndex = table.FindField(…);
IRow row = table.CreateRow();
row.Value[doubleFieldIndex] = double.PositiveInfinity;
row.Store();