⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 charbitmap.cpp

📁 C++&datastructure书籍源码,以前外教提供现在与大家共享
💻 CPP
字号:
#include <iostream>
using namespace std;


#include "charbitmap.h"

/*** uses graphical chars
char CharBitMap::ULEFT  = 201;   // for |- char on PCs
char CharBitMap::URIGHT = 187;   // for -|
char CharBitMap::LLEFT  = 200;   // for |_ 
char CharBitMap::LRIGHT = 188;   // for _|
char CharBitMap::VERT   = 186;   // for |
char CharBitMap::HORIZ  = 205;   // for --
char CharBitMap::ON     = 219;   // square on
char CharBitMap::OFF    = ' ';   // square off
***/

char CharBitMap::ULEFT  = '+';   // for |- char on PCs
char CharBitMap::URIGHT = '+';   // for -|
char CharBitMap::LLEFT  = '+';   // for |_ 
char CharBitMap::LRIGHT = '+';   // for _|
char CharBitMap::VERT   = '|';   // for |
char CharBitMap::HORIZ  = '-';   // for --
char CharBitMap::ON     = '*';
char CharBitMap::OFF    = ' ';

CharBitMap::CharBitMap(int rows, int cols)
  : myGrid(rows,cols,white)
{

}

void CharBitMap::SetPixel(int row, int col, CharBitMap::color c)
{
    myGrid[row][col] = c;
}

CharBitMap::color CharBitMap::GetPixel(int row, int col) const
{
    return myGrid[row][col];
}

char CharBitMap::ToChar(CharBitMap::color c) const
{
    static char pixels[] = {ON,OFF};
    return pixels[c];
}

void CharBitMap::Display(ostream& out) const
{
   int j,k;
   
   out << ULEFT;
   for(j=0; j < myGrid.numcols(); j++)
   {   out << HORIZ;
   }
   out << URIGHT << endl;
   
   for(j=0; j < myGrid.numrows(); j++)
   {   out << VERT;
       for(k=0;k < myGrid.numcols(); k++)
       {   out << ToChar(myGrid[j][k]);
       }
       out << VERT << endl;
   }
   
   out << LLEFT;
   for(j=0; j < myGrid.numcols(); j++)
   {   out << HORIZ;
   }
   out << LRIGHT << endl;
}

int CharBitMap::Rows() const
{
    return myGrid.numrows();
}

int CharBitMap::Cols() const
{
    return myGrid.numcols();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -