Dátum/idő változók speciális kezelése (DXF)

A CDATE és DATE rendszerváltozók hozzáférést biztosítanak az aktuális dátum- és időadatokhoz. A TDCREATE, TDINDWG, TDUPDATE és TDUSRTIMER rendszerváltozók (valamint a $TDCREATE, $TDUCREATE, $TDUPDATE és $TDUUPDATE DXF fejlécváltozók) hozzáférést biztosítanak az aktuális rajzhoz rendelt dátum- és időadatokhoz. Az értékek speciális jelentéssel bíró valós számokként jelennek meg a következőkben leírtak szerint.

A DATE változó a Gergely-naptár szerinti, a nap való számmal kifejezett törtrészeiben megadott aktuális dátum is idő.

<Gergely-naptár szerint>.<Nap törtrésze>

Például 1999. december 31. este 9:58:35 GMT időpontban a DATE változó a következőt tartalmazza:

2451544.91568287

A dátum- és időadatokat a rendszer a számítógép órájától szerzi be, ha a változó olvasás állapotú. Az idő a nap törtrészeként jelenik meg, így a DATE változó által visszaadott időadatok egymásból történő kivonásával kiszámítható az időadatok közötti különbség. Az éjfél után eltelt másodpercek DATE rendszerváltozó által visszaadott értékből történő kiszámításához AutoLISP kifejezéseket használhat

(setq s (getvar "DATE"))
(setq seconds (* 86400.0 (- s (fix s))))

Fontos tudni, hogy a DATE rendszerváltozó csak abban az esetben adja vissza a valódi Gergely-naptár szerinti dátumot, ha a rendszeróra greenwichi idő szerint van beállítva. A TDCREATE és a TDUPDATE rendszerváltozóknak hasonló a formátuma, mint a DATE-nek, azonban értékük az aktuális rajz létrehozásának, illetve legutóbbi frissítésének időpontját mutatja.

A TDINDWG és a TDUSRTIMER rendszerváltozók (valamint a $TDINDWG és a $TDUSRTIMER DXF fejlécváltozók) a DATE rendszerváltozóhoz hasonló formátumot használnak, de az itt adatok eltelt időket jelölnek, például

<Napok száma>.<Nap törtrésze>

A CDATE változó az aktuális dátum és idő naptár és óra formátumban. Az értéket valós számként adja vissza a következő formában:

ÉÉÉÉHHNN.ÓÓPPMMszmp

ahol

ÉÉÉÉ = év

HH = hónap (01-12)

NN = nap (01-31)

ÓÓ = óra (00-23)

PP = perc (00-59)

MM = másodperc (00-59)

szmp = századmásodperc (00-99)

Ha például az aktuális dátum 2005. december 31., az idő este 9:58:35.75, a CDATE a következő értéket adja vissza:

20051231.21583575

Fontos tudni, hogy a CDATE korábbi és későbbi értékei összehasonlíthatók, de egymásból történő kivonásuk értelmetlen számot eredményez.