Системные переменные CDATE и DATE обеспечивают доступ к текущей дате и времени. Системные переменные TDCREATE, TDINDWG, TDUPDATE, и TDUSRTIMER (а также переменные заголовка DXF $TDCREATE, $TDUCREATE, $TDUPDATE и $TDUUPDATE) предоставляют доступ к времени и датам, связанным с текущим чертежом. Значения представлены в виде вещественных чисел со специальными значениями, как описано ниже.
Переменная DATE — текущая дата по юлианскому календарю и время дня в виде дроби (вещественные числа).
<дата по юлианскому календарю>.< время дня>
Например, 31 декабря 1999 года в 9:58:35 по Гринвичу переменная DATE содержала бы следующее значение:
2451544.91568287
Дата и время извлекаются из часов компьютера при считывании переменной. Время дня представлено в виде дроби. Значения времени, извлеченные из переменной DATE, можно отнимать друг от друга для вычисления различия во времени. Можно использовать выражения AutoLISP, чтобы определить число секунд, прошедших с полуночи до текущего момента, из значения переменной DATE.
(setq s (getvar "DATE")) (setq seconds (* 86400.0 (- s (fix s))))
Обратите внимание, что переменная DATE возвращает правильную дату по юлианскому календарю только в том случае, если значение системного времени — UTC/Зулу (время по Гринвичу). TDCREATE и TDUPDATE имеют тот же формат, что и переменная DATE, но их значения представляют время создания и время последней модификации текущего чертежа.
В переменных TDINDWG и TDUSRTIMER (а также переменных заголовка DXF $TDINDWG и $TDUSRTIMER) используется такой же формат, как и в переменной DATE, но их значения представляют астрономическое время работы:
<количество дней>.< время дня>
Переменная CDATE содержит текущую дату и время в формате календаря и часов. Значение возвращается в виде вещественного числа в форме
ГГГММДД.ЧЧММССсдс
, где
ГГГГ = год
ММ = месяц (01–12)
ДД = день (01–31)
ЧЧ = часы (00–23)
ММ = минуты (00–59)
СС = секунды (00–59)
сдс = сотые доли секунды (00–99)
Например, если текущая дата — 31 декабря 2005 года, а время — 21:58:35.75, переменная CDATE вернет следующее значение:
20051231.21583575
Обратите внимание, что хотя более ранние и более поздние значения переменной CDATE можно сравнивать между собой, при вычитании таких значений получить поддающиеся интерпретации результаты невозможно.