27 |
|
|
28 |
;; Provide a meaningful error message if we are running on |
;; Provide a meaningful error message if we are running on |
29 |
;; bare (non-float) emacs. |
;; bare (non-float) emacs. |
|
;; Can't test for 'floatp since that may be defined by float-imitation |
|
|
;; packages like float.el in this very directory. |
|
30 |
|
|
31 |
(if (fboundp 'atan) |
(if (fboundp 'atan) |
32 |
nil |
nil |
34 |
|
|
35 |
;; provide an easy hook to tell if we are running with floats or not. |
;; provide an easy hook to tell if we are running with floats or not. |
36 |
;; define pi and e via math-lib calls. (much less prone to killer typos.) |
;; define pi and e via math-lib calls. (much less prone to killer typos.) |
37 |
(defconst pi (* 4 (atan 1)) "The value of Pi (3.1415926...)") |
(defconst pi (* 4 (atan 1)) "The value of Pi (3.1415926...).") |
38 |
(defconst e (exp 1) "The value of e (2.7182818...)") |
(defconst e (exp 1) "The value of e (2.7182818...).") |
39 |
|
|
40 |
;; Careful when editing this file ... typos here will be hard to spot. |
;; Careful when editing this file ... typos here will be hard to spot. |
41 |
;; (defconst pi 3.14159265358979323846264338327 |
;; (defconst pi 3.14159265358979323846264338327 |
42 |
;; "The value of Pi (3.14159265358979323846264338327...)") |
;; "The value of Pi (3.14159265358979323846264338327...)") |
43 |
|
|
44 |
(defconst degrees-to-radians (/ pi 180.0) |
(defconst degrees-to-radians (/ pi 180.0) |
45 |
"Degrees to radian conversion constant") |
"Degrees to radian conversion constant.") |
46 |
(defconst radians-to-degrees (/ 180.0 pi) |
(defconst radians-to-degrees (/ 180.0 pi) |
47 |
"Radian to degree conversion constant") |
"Radian to degree conversion constant.") |
48 |
|
|
49 |
;; these expand to a single multiply by a float when byte compiled |
;; these expand to a single multiply by a float when byte compiled |
50 |
|
|