OSDN Git Service

dmg作成バージョンの取得方法の修正
[charactermanaj/CharacterManaJ.git] / src / charactermanaj / graphics / colormodel / ColorModels.java
1 package charactermanaj.graphics.colormodel;\r
2 \r
3 public enum ColorModels implements ColorModel {\r
4 \r
5         /**\r
6          * HSB(色相・彩度・明度)\r
7          */\r
8         HSB(new HSBColorModel()),\r
9 \r
10         /**\r
11          * HSY(色相・彩度・輝度)\r
12          */\r
13         HSY(new HSYColorModel());\r
14 \r
15         /**\r
16          * デフォルトのカラーモデル.<br>\r
17          */\r
18         public static ColorModels DEFAULT = HSB;\r
19 \r
20         /**\r
21          * カラーモデル名からカラーモデルを取得する.<br>\r
22          * nullまたは空文字、または該当がない場合はデフォルトを採用する.<br>\r
23          * \r
24          * @param colorModelName\r
25          *            カラーモデル名\r
26          * @return カラーモデル\r
27          */\r
28         public static ColorModels safeValueOf(String colorModelName) {\r
29                 try {\r
30                         if (colorModelName != null && colorModelName.length() > 0) {\r
31                                 return valueOf(colorModelName);\r
32                         }\r
33 \r
34                 } catch (RuntimeException ex) {\r
35                         // 何もしない.\r
36                 }\r
37                 return DEFAULT;\r
38         }\r
39 \r
40         private final ColorModel colorModel;\r
41 \r
42         ColorModels(ColorModel colorModel) {\r
43                 this.colorModel = colorModel;\r
44         }\r
45 \r
46         public String getTitle() {\r
47                 return colorModel.getTitle();\r
48         }\r
49 \r
50         public String getItemTitle(int index) {\r
51                 return colorModel.getItemTitle(index);\r
52         }\r
53 \r
54         public int HSVtoRGB(float hue, float sat, float lum) {\r
55                 return colorModel.HSVtoRGB(hue, sat, lum);\r
56         }\r
57 \r
58         public float[] RGBtoHSV(int r, int g, int b, float[] hsvVals) {\r
59                 return colorModel.RGBtoHSV(r, g, b, hsvVals);\r
60         }\r
61 }\r