/*
 * Jeffrey Ladino - jnl22@ccs.neu.edu
 *
 * File: character2d.h
 *
 * Change Log
 ************
 ** August 7, 1999 - Jeff Ladino
 * Created.
 *
 */

#ifndef MY_CHAR2D_H
#define MY_CHAR2D_H

#include "simpledraw.h"
#include "matrix3d.h"
#include "shape2d.h"

#define DEFAULT_SIZE 20

class character2d{
 private:
  void makech2d(Real xa, Real ya, Real sz);
  void map_num(unsigned base_10_digit);

 public:
  Real size;
  vector3d anchor;
  shape2d line[7]; 
  int segment[7]; // tells which lines to draw
    
 public:
  // constructors
  character2d();
  character2d(Real xa, Real ya, Real sz);
  character2d(vector3d anch, Real sz);
  character2d(Real xa, Real ya, Real sz, int *segs);
  character2d(vector3d anch, Real sz, int *segs);
  // this one will get used most
  character2d(Real xa, Real ya, Real sz, unsigned digit);

  // setters
  void setdigit(unsigned num);
  void setanchor(Real xc, Real yc);
  void setsize(Real sz);

  // actions
  void print();
  void draw(SimpleDraw& SD, matrix3d& m);
  
};

#endif //#ifndef MY_CHAR2D_H


