Coverage Report - com.buckosoft.fibs.BuckoFIBS.gui.boardTab.boardPane.AnimateEventMove
 
Classes in this File Line Coverage Branch Coverage Complexity
AnimateEventMove
0%
0/19
N/A
1
 
 1  
 /******************************************************************************
 2  
  * AnimateEventMove.java - Manage the dice move animation.
 3  
  * $Id$
 4  
  * 
 5  
  * BuckoFIBS - Backgammon by BuckoSoft
 6  
  * Copyright© 2011 - Dick Balaska - BuckoSoft, Corp.
 7  
  * 
 8  
  * $Log$
 9  
  * Revision 1.3  2013/09/10 00:22:54  dick
 10  
  * Spline2D and Flasher move MoveSpline2D and MoveFlasher
 11  
  *
 12  
  * Revision 1.2  2011/06/02 19:13:34  dick
 13  
  * Need to define isGui().
 14  
  *
 15  
  * Revision 1.1  2011/05/22 22:56:09  dick
 16  
  * c.b.f.B.g.boardTab.board becomes c.b.f.B.g.boardTab.boardPane .
 17  
  *
 18  
  * Revision 1.4  2011/05/17 22:50:04  dick
 19  
  * AnimateEvent moves to c.b.f.B.g.b.b which is where it is used.
 20  
  *
 21  
  * Revision 1.3  2011/05/16 21:21:29  dick
 22  
  * Add passthrues for getCheckerYOnBar() and getCheckerYInHome().
 23  
  *
 24  
  * Revision 1.2  2011/05/16 11:42:02  dick
 25  
  * Offset moves to the base class.
 26  
  *
 27  
  * Revision 1.1  2011/05/15 02:17:54  dick
 28  
  * Move the AnimateEvents to their own package.
 29  
  *
 30  
  * Revision 1.4  2011/05/13 18:25:46  dick
 31  
  * Whitespace.
 32  
  *
 33  
  * Revision 1.3  2011/05/13 14:55:44  dick
 34  
  * Javadoc.
 35  
  *
 36  
  * Revision 1.2  2011/05/13 14:25:09  dick
 37  
  * Base class for the animation motion algorithms.
 38  
  *
 39  
  */
 40  
 
 41  
 /* 
 42  
  * This program is free software: you can redistribute it and/or modify
 43  
  * it under the terms of the GNU General Public License as published by
 44  
  * the Free Software Foundation, either version 3 of the License, or
 45  
  * (at your option) any later version.
 46  
  *
 47  
  * This program is distributed in the hope that it will be useful,
 48  
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 49  
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 50  
  * GNU General Public License for more details.
 51  
  *
 52  
  * You should have received a copy of the GNU General Public License
 53  
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 54  
  *
 55  
  * The Original Code is BuckoFIBS, <http://www.buckosoft.com/BuckoFIBS/>.
 56  
  * The Initial Developer of the Original Code is Dick Balaska and BuckoSoft, Corp.
 57  
  * 
 58  
  */
 59  
 package com.buckosoft.fibs.BuckoFIBS.gui.boardTab.boardPane;
 60  
 
 61  
 import java.awt.Color;
 62  
 
 63  
 import com.buckosoft.fibs.BuckoFIBS.gui.boardTab.boardPane.BoardPane.BoardSpecs;
 64  
 import com.buckosoft.fibs.BuckoFIBS.gui.boardTab.boardPane.animateType.MoveFlasher;
 65  
 import com.buckosoft.fibs.BuckoFIBS.gui.boardTab.boardPane.animateType.MoveSpline2D;
 66  
 
 67  
 
 68  
 /** Run the dice move animation.
 69  
  * @author Dick Balaska
 70  
  * @since 2011/05/12
 71  
  * @version $Revision$ <br> $Date$
 72  
  * @see <a href="http://cvs.buckosoft.com/Projects/BuckoFIBS/BuckoFIBS/src/main/java/com/buckosoft/fibs/BuckoFIBS/gui/boardTab/boardPane/AnimateEventMove.java">cvs AnimateEventMove.java</a>
 73  
  */
 74  0
 public abstract class AnimateEventMove extends AnimateEvent {
 75  
         /** Define an index that is a {@link MoveFlasher} */
 76  
         public final static int ANIMATE_FLASHER  = 0;
 77  
         /** Define an index that is a {@link MoveSpline2D} */
 78  
         public final static int ANIMATE_SPLINE2D = 1;
 79  
         
 80  0
         protected double        x[] = new double[6];
 81  0
         protected double        y[] = new double[6];
 82  
         
 83  
         protected        BoardPane                boardPane;
 84  
         public                BoardSpecs                bs;
 85  
         
 86  
         protected        int        pointNumberStart;
 87  
         protected        int        checkerNumberStart;
 88  
         protected        int        pointNumberEnd;
 89  
         protected        int        checkerNumberEnd;
 90  
         
 91  
         abstract public        void        calculate();
 92  
         abstract public int[]        getXY(double offset);
 93  
         abstract public        Color        getColor(double offset); 
 94  
 
 95  
         @Override
 96  
         public Type getType() {
 97  0
                 return(Type.Move);
 98  
         }
 99  
 
 100  
         /** Default 1000ms for a Move
 101  
          */
 102  
         @Override
 103  
         public int getDuration() {
 104  0
                 return 1000;
 105  
         }
 106  
 
 107  
         
 108  
         @Override
 109  
         public boolean isGui() {
 110  0
                 return false;
 111  
         }
 112  
 
 113  
         public        void setBoardPane(BoardPane boardPane) {
 114  0
                 this.boardPane = boardPane;
 115  0
                 this.bs = boardPane.bs;
 116  0
         }
 117  
 
 118  
         public void setStartPointAndOffset(int pointNumber, int checkerNumber) {
 119  0
                 this.pointNumberStart = pointNumber;
 120  0
                 this.checkerNumberStart = checkerNumber;
 121  0
         }
 122  
 
 123  
         public void setEndPointAndOffset(int pointNumber, int checkerNumber) {
 124  0
                 this.pointNumberEnd = pointNumber;
 125  0
                 this.checkerNumberEnd = checkerNumber;
 126  0
         }
 127  
 
 128  
         protected int getPointX(int point) {
 129  0
                 return(boardPane.getPointX(point));
 130  
         }
 131  
         protected int getNthCheckerY(int point, int checker) {
 132  0
                 return(boardPane.getNthCheckerY(point, checker));
 133  
         }
 134  
         protected int getCheckerYOnBar(int who, int checker) {
 135  0
                 return(boardPane.getCheckerYOnBar(who, checker));
 136  
         }
 137  
         protected int getCheckerYInHome(int who, int checker) {
 138  0
                 return(boardPane.getCheckerYInHome(who, checker));
 139  
         }
 140  
 }