質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

1回答

1359閲覧

画像を読み込み、色を抽出して、色を反映したい

yasu_abu7

総合スコア12

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2018/10/15 01:07

編集2018/10/15 01:07

今回は、画像を読み込み、色をある座標で抽出して抽出した色をある座標に反映させたいです。

画像の読み込み。
色を座標で抽出。までができていますが、座標に色を反映させる方法はないでしょうか?
ソースコードは以下になります。

java

1import java.awt.Dimension; 2import java.awt.Font; 3import java.awt.Graphics; 4import java.awt.Image; 5import java.awt.Toolkit; 6import java.awt.event.WindowAdapter; 7import java.awt.event.WindowEvent; 8import java.awt.image.BufferedImage; 9import java.io.File; 10import java.io.IOException; 11import javax.imageio.ImageIO; 12import javax.swing.JFrame; 13import java.awt.Color; 14import java.io.IOException; 15 16 17public class irohannei extends JFrame{ 18 19 /* 20 保存した画像を読み込む 21 色を抽出する点の座標を使用し色を抽出する 22 色反映 23 */ 24 25 static int x_0 = 205; 26 static int x_1 = 260; 27 static int x_2 = 320; 28 static int x_3 = 390; 29 static int x_4 = 440; 30 static int x_5 = 265; 31 static int x_6 = 320; 32 static int x_7 = 380; 33 static int x_8 = 320; 34 35 static int y_0 = 165; 36 static int y_1 = 195; 37 static int y_2 = 170; 38 static int y_3 = 185; 39 static int y_4 = 165; 40 static int y_5 = 270; 41 static int y_6 = 290; 42 static int y_7 = 270; 43 static int y_8 = 360; 44 45 int x1[] = {425,395,455,425}; 46 int y1[] = {510,450,450,510}; 47 48 int x2[] = {365,395,425,365}; 49 int y2[] = {390,450,390,390}; 50 51 52 int x3[] = {395,425,455,395}; 53 int y3[] = {450,390,450,450}; 54 55 int x4[] = {425,455,485,425}; 56 int y4[] = {390,450,390,390}; 57 58 int x5[] = {335,365,395,335}; 59 int y5[] = {330,390,330,330}; 60 61 int x6[] = {365,395,425,365}; 62 int y6[] = {390,330,390,390}; 63 64 int x7[] = {395,425,455,395}; 65 int y7[] = {330,390,330,330}; 66 67 int x8[] = {425,455,485,425}; 68 int y8[] = {390,330,390,390}; 69 70 int x9[] = {455,485,515,455}; 71 int y9[] = {330,390,330,330}; 72 73 /*二面*/ 74 int x10[] = {335,365,395,335}; 75 int y10[] = {330-2,270-2,330-2,330-2}; 76 77 int x11[] = {365,395,425,365}; 78 int y11[] = {270-2,330-2,270-2,270-2}; 79 80 int x12[] = {395,425,455,395}; 81 int y12[] = {330-2,270-2,330-2,330-2}; 82 83 int x13[] = {425,455,485,425}; 84 int y13[] = {270-2,330-2,270-2,270-2}; 85 86 int x14[] = {455,485,515,455}; 87 int y14[] = {330-2,270-2,330-2,330-2}; 88 89 int x15[] = {365,395,425,365}; 90 int y15[] = {270-2,210-2,270-2,270-2}; 91 92 int x16[] = {395,425,455,395}; 93 int y16[] = {210-2,270-2,210-2,210-2}; 94 95 int x17[] = {425,455,485,425}; 96 int y17[] = {270-2,210-2,270-2,270-2}; 97 98 int x18[] = {395,425,455,395}; 99 int y18[] = {210-2,150-2,210-2,210-2}; 100 101 /*三面*/ 102 int x19[] = {515+1,485+1,545+1,515+1}; 103 int y19[] = {330,390,390,330}; 104 105 int x20[] = {485+1,515+1,545+1,485+1}; 106 int y20[] = {390,450,390,390}; 107 108 int x21[] = {455+1,485+1,515+1,455+1}; 109 int y21[] = {450,390,450,450}; 110 111 int x22[] = {455+1,485+1,515+1,455+1}; 112 int y22[] = {450,510,450,450}; 113 114 int x23[] = {425+1,455+1,485+1,425+1}; 115 int y23[] = {510,450,510,510}; 116 117 int x24[] = {515+1,545+1,575+1,515+1}; 118 int y24[] = {450,390,450,450}; 119 120 int x25[] = {515+1,545+1,575+1,515+1}; 121 int y25[] = {450,510,450,450}; 122 123 int x26[] = {485+1,515+1,545+1,485+1}; 124 int y26[] = {510,450,510,510}; 125 126 int x27[] = {545+1,575+1,605+1,545+1}; 127 int y27[] = {510,450,510,510}; 128 129 /*四面*/ 130 int x28[] = {395-1,365-1,425-1,395-1}; 131 int y28[] = {450,510,510,450}; 132 133 int x29[] = {335-1,365-1,395-1,335-1}; 134 int y29[] = {450,510,450,450}; 135 136 int x30[] = {335-1,365-1,395-1,335-1}; 137 int y30[] = {450,390,450,450}; 138 139 int x31[] = {305-1,335-1,365-1,305-1}; 140 int y31[] = {390,450,390,390}; 141 142 int x32[] = {305-1,335-1,365-1,305-1}; 143 int y32[] = {390,330,390,390}; 144 145 int x33[] = {275-1,305-1,335-1,275-1}; 146 int y33[] = {450,390,450,450}; 147 148 int x34[] = {275-1,305-1,335-1,275-1}; 149 int y34[] = {450,510,450,450}; 150 151 int x35[] = {305-1,335-1,365-1,305-1}; 152 int y35[] = {510,450,510,510}; 153 154 int x36[] = {245-1,275-1,305-1,245-1}; 155 int y36[] = {510,450,510,510}; 156 157 public static void main(String[] args) { 158 new irohannei().setVisible(true); 159 160 File z = new File("rgby.jpg"); 161 BufferedImage read; 162 try { 163 read = ImageIO.read(z); 164 165 Color color1 = new Color(read.getRGB(x_0, y_0)); 166 Color color2 = new Color(read.getRGB(x_1, y_1)); 167 Color color3 = new Color(read.getRGB(x_2, y_2)); 168 Color color4 = new Color(read.getRGB(x_3, y_3)); 169 Color color5 = new Color(read.getRGB(x_4, y_4)); 170 Color color6 = new Color(read.getRGB(x_5, y_5)); 171 Color color7 = new Color(read.getRGB(x_6, y_6)); 172 Color color8 = new Color(read.getRGB(x_7, y_7)); 173 Color color9 = new Color(read.getRGB(x_8, y_8)); 174 175 String a = String.valueOf(color1); 176 String b = String.valueOf(color2); 177 String c = String.valueOf(color3); 178 String d = String.valueOf(color4); 179 String e = String.valueOf(color5); 180 String f = String.valueOf(color6); 181 String g = String.valueOf(color7); 182 String h = String.valueOf(color8); 183 String i = String.valueOf(color9); 184 185 System.out.println(color1);//5 186 System.out.println(color2);//6 187 System.out.println(color3);//7 188 System.out.println(color4);//8 189 System.out.println(color5);//9 190 System.out.println(color6);//2 191 System.out.println(color7);//3 192 System.out.println(color8);//4 193 System.out.println(color9);//1 194 195 } catch (IOException e1) { 196 197 e1.printStackTrace(); 198 } 199 } 200 201 public irohannei(){ 202 this.setSize(new Dimension(800,800)); 203 this.setTitle("色"); 204 } 205 206public void paint(Graphics g){ 207 208 Font fg = new Font("SandSerif",Font.PLAIN,20); 209 210 irohannei.main(null); 211 212 //fillPolygon 213 /*1面*/ 214 g.setColor(Color.GREEN); 215 g.fillPolygon(x1, y1, 4); 216 217 g.setColor(Color.GREEN); 218 g.fillPolygon(x2, y2, 4); 219 220 g.setColor(Color.BLUE); 221 g.fillPolygon(x3, y3, 4); 222 223 g.setColor(Color.YELLOW); 224 g.fillPolygon(x4, y4, 4); 225 226 g.setColor(Color.RED); 227 g.fillPolygon(x5, y5, 4); 228 229 g.setColor(Color.BLUE); 230 g.fillPolygon(x6, y6, 4); 231 232 g.setColor(Color.GREEN); 233 g.fillPolygon(x7, y7, 4); 234 235 g.setColor(Color.RED); 236 g.fillPolygon(x8, y8, 4); 237 238 g.setColor(Color.BLUE); 239 g.fillPolygon(x9, y9, 4); 240 241 /*2面*/ 242 g.setColor(Color.YELLOW); 243 g.drawPolyline(x10, y10, 4); 244 245 g.setColor(Color.GREEN); 246 g.drawPolyline(x11, y11, 4); 247 248 g.setColor(Color.BLUE); 249 g.drawPolyline(x12, y12, 4); 250 251 g.setColor(Color.YELLOW); 252 g.drawPolyline(x13, y13, 4); 253 254 g.setColor(Color.RED); 255 g.drawPolyline(x14, y14, 4); 256 257 g.setColor(Color.BLUE); 258 g.drawPolyline(x15, y15, 4); 259 260 g.setColor(Color.GREEN); 261 g.drawPolyline(x16, y16, 4); 262 263 g.setColor(Color.RED); 264 g.drawPolyline(x17, y17, 4); 265 266 g.setColor(Color.BLUE); 267 g.drawPolyline(x18, y18, 4); 268 269 /*3面*/ 270 g.setColor(Color.RED); 271 g.drawPolyline(x19, y19, 4); 272 273 g.setColor(Color.GREEN); 274 g.drawPolyline(x20, y20, 4); 275 276 g.setColor(Color.BLUE); 277 g.drawPolyline(x21, y21, 4); 278 279 g.setColor(Color.YELLOW); 280 g.drawPolyline(x22, y22, 4); 281 282 g.setColor(Color.GREEN); 283 g.drawPolyline(x23, y23, 4); 284 285 g.setColor(Color.BLUE); 286 g.drawPolyline(x24, y24, 4); 287 288 g.setColor(Color.GREEN); 289 g.drawPolyline(x25, y25, 4); 290 291 g.setColor(Color.RED); 292 g.drawPolyline(x26, y26, 4); 293 294 g.setColor(Color.BLUE); 295 g.drawPolyline(x27, y27, 4); 296 /*4面*/ 297 g.setColor(Color.BLUE); 298 g.drawPolyline(x28, y28, 4); 299 300 g.setColor(Color.GREEN); 301 g.drawPolyline(x29, y29, 4); 302 303 g.setColor(Color.BLUE); 304 g.drawPolyline(x30, y30, 4); 305 306 g.setColor(Color.YELLOW); 307 g.drawPolyline(x31, y31, 4); 308 309 g.setColor(Color.GREEN); 310 g.drawPolyline(x32, y32, 4); 311 312 g.setColor(Color.BLUE); 313 g.drawPolyline(x33, y33, 4); 314 315 g.setColor(Color.GREEN); 316 g.drawPolyline(x34, y34, 4); 317 318 g.setColor(Color.RED); 319 g.drawPolyline(x35, y35, 4); 320 321 g.setColor(Color.BLUE); 322 g.drawPolyline(x36, y36, 4); 323 } 324} 325

わかる方の返答お待ちしています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

自分で試行錯誤した結果、うまくできました。

投稿2018/10/15 02:49

yasu_abu7

総合スコア12

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問