Function: math-to-hms
math-to-hms is an autoloaded and byte-compiled function defined in
calc-forms.el.gz.
Signature
(math-to-hms A &optional ANG)
Source Code
;; Defined in /usr/src/emacs/lisp/calc/calc-forms.el.gz
;;; Convert A from ANG or current angular mode to HMS format.
(defun math-to-hms (a &optional ang) ; [X R] [Public]
(cond ((eq (car-safe a) 'hms) a)
((eq (car-safe a) 'sdev)
(math-make-sdev (math-to-hms (nth 1 a))
(math-to-hms (nth 2 a))))
((not (Math-numberp a))
(list 'calcFunc-hms a))
((math-negp a)
(math-neg (math-to-hms (math-neg a) ang)))
((eq (or ang
(and (not math-simplifying-units) calc-angle-mode))
'rad)
(math-to-hms (math-div a (math-pi-over-180)) 'deg))
((memq (car-safe a) '(cplx polar)) a)
(t
;(setq a (let ((calc-internal-prec (max (1- calc-internal-prec) 3)))
; (math-normalize a)))
(math-normalize
(let* ((b (math-mul a 3600))
(hm (math-trunc (math-div b 60)))
(hmd (math-idivmod hm 60)))
(list 'hms
(car hmd)
(cdr hmd)
(math-sub b (math-mul hm 60))))))))