Use of roman number to identify images.
[master-thesis.git] / Parasitemia / ParasitemiaUI / Utils.fs
index e7c9784..9f51436 100644 (file)
@@ -61,6 +61,38 @@ let sensorSizes : SensorSize list =
         saveSensorSizesToFile defaultSensorSizes
         defaultSensorSizes
 
+let toRomanNumber (v : int) : string =
+    let rec decompose (v : int) : string =
+        if v >= 1000 then
+           "M" + decompose (v - 1000)
+        elif v >= 900 then
+           "CM" + decompose (v - 900)
+        elif v >= 500 then
+            "D" + decompose (v - 500)
+        elif v >= 400 then
+            "CD" + decompose (v - 400)
+        elif v >= 100 then
+            "C" + decompose (v - 100)
+        elif v >= 90 then
+            "XC" + decompose (v - 90)
+        elif v >= 50 then
+            "L" + decompose (v - 50)
+        elif v >= 40 then
+            "XL" + decompose (v - 40)
+        elif v >= 10 then
+            "X" + decompose (v - 10)
+        elif v >= 9 then
+            "IX" + decompose (v - 9)
+        elif v >= 5 then
+            "V" + decompose (v - 5)
+        elif v >= 4 then
+            "IV" + decompose (v - 4)
+        elif v >= 1 then
+            "I" + decompose (v - 1)
+        else
+            ""
+    decompose v
+
 let argsHelp =
     let programName = System.AppDomain.CurrentDomain.FriendlyName
     "Usage of Parasitemia:\n" +