FaceGrid.java

package ac.essex.ooechs.imaging.commons.grids; 
 
import ac.essex.ooechs.imaging.commons.util.Region; 
 
import java.awt.*; 
 
/** 
 * <p/> 
 * This program is free software; you can redistribute it and/or 
 * modify it under the terms of the GNU General Public License 
 * as published by the Free Software Foundation; either version 2 
 * of the License, or (at your option) any later version, 
 * provided that any use properly credits the author. 
 * This program is distributed in the hope that it will be useful, 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 
 * GNU General Public License for more details at http://www.gnu.org 
 * </p> 
 * 
 * @author Olly Oechsle, University of Essex, Date: 23-Oct-2006 
 * @version 1.0 
 */ 
public class FaceGrid implements Grid { 
 
    public int getTotalHorizontalLines() { 
        return 16; 
    } 
 
    public int getTotalVerticalLines() { 
        return 20; 
    } 
 
    public void draw(Graphics g, Region r) { 
 
        double yDist = r.getHeight() / getTotalVerticalLines(); 
        double xDist = r.getWidth() / getTotalHorizontalLines(); 
 
        // drawPixels horizontal lines 
        for (int y = 0; y < getTotalVerticalLines(); y++) { 
 
            int dist = (int) (yDist * y); 
 
            g.drawLine(r.getStartX(), r.getStartY() + dist, r.getStartX() + r.getWidth(), r.getStartY() + dist); 
 
        } 
 
        // drawPixels vertical lines 
        for (int x = 0; x < getTotalHorizontalLines(); x++) { 
 
            int dist = (int) (xDist * x); 
 
            g.drawLine(r.getStartX() + dist, r.getStartY(), r.getStartX() + dist, r.getStartY() + r.getWidth()); 
 
        } 
 
    } 
 
}