r11851: add cl-kmrcl dependency
[cl-photo.git] / cameras.lisp
index d914d0bad6eb4f123f6022f218bb5afe86f78e09..118f48aa76ddb39e09b34733af1d67a32ceeb341 100644 (file)
 
 (eval-when (:compile-toplevel :load-toplevel :execute)
   (defun make-output-format (w h &key (units :inches))
-    (let ((name (format nil "~Dx~Din" w h)))
+    (let ((name (format nil "~Dx~D~A" w h
+                       (ecase units
+                         (:inches "in")
+                         (:mm "mm")
+                         (:cm "cm")
+                         (:m "m")
+                         (:feet "ft")))))
       (list :format (kmrcl:ensure-keyword name)
-            :output (cons (inches->mm w) (inches->mm h))
+            :output (cons (length->mm w units) (length->mm h units))
             :name name
             :nicks (list (kmrcl:ensure-keyword (format nil "~Dx~D" w h)))))))
 
@@ -43,6 +49,7 @@
     (:format :d60 :make "Canon" :pixels (3072 . 2048) :imager (22.7 . 15.1) :name "D60")
     (:format :10d :make "Canon" :pixels (3072 . 2048) :imager (22.7 . 15.1) :name "10D")
     (:format :20d :make "Canon" :pixels (3456 . 2304) :imager (22.5 . 15) :name "20D")
+    (:format :5d :make "Canon" :pixels (4368 . 2912) :imager (35.8 . 23.9) :name "5D")
     (:format :300d :make "Canon" :pixels (3072 . 2048) :imager (22.7 . 15.1) :name "300D")
     (:format :350d :make "Canon" :pixels (3456 . 2304) :imager (22.2 . 14.8) :name "350D")
     (:format :1d :make "Canon" :pixels (2464 . 1648) :imager (27 . 17.8) :name "1D")
@@ -51,7 +58,8 @@
     (:format :1ds :make "Canon" :pixels (4064 . 3328) :imager (36 . 24) :name "1Ds")
     (:format :1dsmkii :make "Canon" :pixels (4992 . 3328) :imager (36 . 24)
     :name "1Ds Mark II" :nicks (:1ds2 :1dsii))
-    
+    (:format :g7 :make "Canon" :pixels (3648 . 2736) :imager (7.2 . 5.3)
+             :name "PowerShot G7")
     (:format :ndigital :make "Contax" :pixels (3040 . 2008) :imager (36 . 24)
      :name "N Digital")
 
     (:format :d2hs :make "Nikon" :pixels (2464 . 1632) :imager (23.3 . 15.5) :name "D2Hs")
     (:format :d2x :make "Nikon" :pixels (4288 . 2848) :imager (23.7 . 15.6) :name "D2X")
 
+    (:format :cp5900 :make "Nikon" :pixels (2592 . 1944) :imager (7.18 . 5.32) :name "Coolpix 5900")
+    (:format :cp7900 :make "Nikon" :pixels (3072 . 2304) :imager (7.18 . 5.32) :name "Coolpix 7900")
+    (:format :cp8800 :make "Nikon" :pixels (3264 . 2448) :imager (8.8 . 6.6) :name "Coolpix 8800")
+
     (:format :*ist-d :make "Pentax" :pixels (3008 . 2008) :imager (36 . 24)
      :name "*ist D")
     (:format :*ist-ds :make "Pentax" :pixels (3008 . 2008) :imager (36 . 24)
     (:format :sd10 :make "Sigma" :pixels (2268 . 1512) :imager (20.7 . 13.8)
      :name "SD10")
 
+    (:format :1/1.8in :imager (7.18 . 5.32) :name "1/1.8\"")
+    (:format :dx :imager (24 . 16) :name "DX")
     (:format :35mm :imager (36 . 24) :name "35mm")
     
     (:format :6x4.5cm :imager (60 . 45) :name "6x4.5cm" :nicks (:\645))