X-Git-Url: https://git.hedgecode.org/?a=blobdiff_plain;f=chesshog-format%2Fsrc%2Fmain%2Fjava%2Forg%2Fhedgecode%2Fchess%2Fimg%2FDiagramBuilder.java;fp=chesshog-format%2Fsrc%2Fmain%2Fjava%2Forg%2Fhedgecode%2Fchess%2Fimg%2FDiagramBuilder.java;h=0000000000000000000000000000000000000000;hb=e185f00e2252021d946f23f4871ae9721f7e65fa;hp=c059361b70ce5a4f02831440189b3616247c37fb;hpb=612dc701d600159c094ab201c6de6136ae38dba9;p=chesshog.git diff --git a/chesshog-format/src/main/java/org/hedgecode/chess/img/DiagramBuilder.java b/chesshog-format/src/main/java/org/hedgecode/chess/img/DiagramBuilder.java deleted file mode 100644 index c059361..0000000 --- a/chesshog-format/src/main/java/org/hedgecode/chess/img/DiagramBuilder.java +++ /dev/null @@ -1,141 +0,0 @@ -/* - * Copyright (c) 2018. Developed by Hedgecode. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.hedgecode.chess.img; - -import java.awt.Graphics; -import java.awt.Image; -import java.awt.image.BufferedImage; -import java.awt.image.RenderedImage; -import java.io.File; -import java.io.IOException; -import java.util.Map; - -import javax.imageio.ImageIO; - -import org.hedgecode.chess.img.board.Board; -import org.hedgecode.chess.img.board.BoardLoader; -import org.hedgecode.chess.img.piece.PieceSet; -import org.hedgecode.chess.img.piece.PieceSetLoader; -import org.hedgecode.chess.position.ColorPiece; -import org.hedgecode.chess.position.Position; -import org.hedgecode.chess.position.Positions; -import org.hedgecode.chess.position.Square; - -/** - * - * - * @author Dmitry Samoshin aka gotty - */ -public class DiagramBuilder implements ImageBuilder { - - private static ImageBuilder _instance = new DiagramBuilder(); - - private BoardLoader boardLoader; - private PieceSetLoader pieceSetLoader; - - private DiagramBuilder() { - boardLoader = new BoardLoader(); - pieceSetLoader = new PieceSetLoader(); - } - - @Override - public String build(Position position) { - return ""; // todo - } - - @Override - public RenderedImage build(Position position, String boardType, String pieceType) - throws ImageException - { - Map squares = position.getSquares(); - - Board board = boardLoader.load(boardType); - PieceSet pieces = pieceSetLoader.load(pieceType); - - if (board == null || pieces == null) { - throw new ImageException("Couldn't find image resources!"); // todo: locale - } - - int squareSize = board.squareSize(); - - BufferedImage diagram = board.render(); - Graphics diagramGraphics = diagram.getGraphics(); - for (int y = 0; y < Square.getSize(); ++y) { - for (int x = 0; x < Square.getSize(); ++x) { - Square square = Square.getSquare(x, Square.getSize() - (y + 1)); - ColorPiece colorPiece = squares.get(square); - if (colorPiece != null) { - diagramGraphics.drawImage( - pieces.get(colorPiece).getScaledInstance( - squareSize, squareSize, Image.SCALE_SMOOTH - ), - x * squareSize, - y * squareSize, - null - ); - } - } - } - return diagram; - } - - public static ImageBuilder getInstance() { - return _instance; - } - - - public static void main(String[] args) throws IOException, ImageException { - - ImageIO.write( - DiagramBuilder.getInstance().build(Positions.INITIAL.getPosition(), "test", "shade"), - ImageFormat.PNG.name(), - new File("chessboard" + "." + ImageFormat.PNG.getExt()) - ); - -/* - String[] formatNames; - Set set = new HashSet<>(); - - formatNames = ImageIO.getReaderFormatNames(); - for (String formatName : formatNames) - set.add(formatName.toLowerCase()); - System.out.println("Supported read formats: " + set); - - set.clear(); - - formatNames = ImageIO.getWriterFormatNames(); - for (String formatName : formatNames) - set.add(formatName.toLowerCase()); - System.out.println("Supported write formats: " + set); - - set.clear(); - - formatNames = ImageIO.getReaderMIMETypes(); - for (String formatName : formatNames) - set.add(formatName.toLowerCase()); - System.out.println("Supported read MIME types: " + set); - - set.clear(); - - formatNames = ImageIO.getWriterMIMETypes(); - for (String formatName : formatNames) - set.add(formatName.toLowerCase()); - System.out.println("Supported write MIME types: " + set); -*/ - } - -}