機能です:
E-INK画面駆動の初期化
原型関数です:
bool isInit()
機能です:
墨水画面上のすべての表示内容をクリア
原型関数です:
int clear(int mode = INK_CLENR_MODE0)
使用例です:
#include "M5CoreInk.h"
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
}
機能です:
画像領域を作成し、画像データのバッファを画面駆動から取得するかどうかを設定(デフォルトはtrueで保存)
原型関数です:
int creatSprite(uint16_t posX, uint16_t posY, uint16_t width = 200, uint16_t height = 200, bool copyFromMem = true);
画像領域の座標は8の整数倍でなければなりません(例:0, 8, 16...)。そうでないと表示が異常になる可能性があります。
使用例です:
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
//creat ink refresh Sprite
if( InkPageSprite.creatSprite(0,0,200,200,true) != 0 ){
Serial.printf("Ink Sprite creat faild");
}else{
Serial.printf("creatSprite success\n");
}
}
機能です:
編集した画像データを画像領域にプッシュ
原型関数です:
int pushSprite()
描画API操作後、Pushを呼び出して画面をリフレッシュする必要があります。そうでないと表示されません
使用例です:
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
//creat ink refresh Sprite
if( InkPageSprite.creatSprite(0,0,200,200,true) != 0 ){
Serial.printf("Ink Sprite creat faild");
}else{
Serial.printf("creatSprite success\n");
InkPageSprite.drawString(35,50,"creatSprite success");
InkPageSprite.pushSprite();
}
}
機能です:
(x,y)の位置に単一のピクセル点を描画
原型関数です:
void drawPix(uint16_t posX,uint16_t posY,uint8_t pixBit)
pixBitに0を渡すと黒色、1を渡すと白色になります。
使用例です:
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
InkPageSprite.creatSprite(0,0,200,200,true);
InkPageSprite.drawPix(100,100,0);
InkPageSprite.pushSprite();
}
機能です:
(x,y)の位置に単一の文字を描画
原型関数です:
void drawChar(uint16_t posX, uint16_t posY, char charData, Ink_eSPI_font_t* fontPtr)
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
//creat ink refresh Sprite
InkPageSprite.creatSprite(0,0,200,200,true);
Serial.printf("Ink Sprite creat faild");
InkPageSprite.drawChar(35,50,'M');
InkPageSprite.pushSprite();
}
機能です:
(x,y)の位置に文字列を描画
原型関数です:
void drawString(uint16_t posX, uint16_t posY, const char* charData, Ink_eSPI_font_t* fontPtr = &AsciiFont8x16)
使用例です:
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
//creat ink refresh Sprite
InkPageSprite.creatSprite(0,0,200,200,true);
InkPageSprite.drawString(35,50,"Hello E-INK");
InkPageSprite.pushSprite();
}
機能です:
(x,y)の位置に幅width、高さheightの矩形を描画
原型関数です:
void FillRect(uint16_t posX, uint16_t posY, uint16_t width, uint16_t height, uint8_t pixBit)
pixBitに0を渡すと黒色、1を渡すと白色になります。
使用例です:
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
InkPageSprite.creatSprite(0,0,200,200,true);
InkPageSprite.FillRect(0,0,100,100,0);
InkPageSprite.pushSprite();
}
機能です:
全ページを描画するには、完全なページバッファを渡す必要があります。
原型関数です:
void drawFullBuff(uint8_t* buff, bool bitMode = true)
void drawBuff(uint16_t posX,uint16_t posY,uint16_t width,uint16_t height,uint8_t* imageDataptr)
機能です:
画像領域の内容をクリア
原型関数です:
void clear(int cleanFlag = CLEAR_DRAWBUFF)
cleanFlag 值 | 功能 |
---|---|
CLEAR_DRAWBUFF | CLEAR_DRAWBUFF まだPushされていない画像データをクリア |
CLEAR_LASTBUFF | CLEAR_LASTBUFF 前回リフレッシュした画像データのキャッシュ領域をクリア。次回Push時は画面を完全にリフレッシュします。 |
使用例です:
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
InkPageSprite.creatSprite(0,0,200,200,true);
InkPageSprite.FillRect(0,0,100,100,0);
InkPageSprite.pushSprite();
delay(2000);
InkPageSprite.clear();
InkPageSprite.pushSprite();
}
機能です:
既に作成した画像領域を解放
原型関数です:
int deleteSprite()
使用例です:
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
if( InkPageSprite.creatSprite(0,0,200,200,true) != 0 ){
Serial.printf("Ink Sprite creat faild");
}else{
Serial.printf("creat Sprite success\n");
}
if(InkPageSprite.deleteSprite()!= 0){
Serial.printf("Sprite delete faild");
}else{
Serial.printf("delete Sprite success\n");
}
}
機能です:
画像バッファのデータを取得
原型関数です:
uint8_t* getSpritePtr(){ return _spriteBuff;}
機能です:
画像の幅を取得
原型関数です:
uint16_t width()
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
InkPageSprite.creatSprite(0,0,200,200,true);
Serial.printf("width:%d",InkPageSprite.width());
}
機能です:
画像の高さを取得
原型関数です:
uint16_t height()
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
InkPageSprite.creatSprite(0,0,200,200,true);
Serial.printf("height:%d",InkPageSprite.height());
}
機能です:
画像のX座標を取得
原型関数です:
uint16_t posX()
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
InkPageSprite.creatSprite(0,0,200,200,true);
Serial.printf("posX:%d",InkPageSprite.posX());
}
機能です:
画像のY座標を取得
原型関数です:
uint16_t posY()
#include "M5CoreInk.h"
Ink_Sprite InkPageSprite(&M5.M5Ink);
void setup() {
M5.begin();
M5.M5Ink.isInit();
M5.M5Ink.clear();
delay(1000);
InkPageSprite.creatSprite(0,0,200,200,true);
Serial.printf("posY:%d",InkPageSprite.posY());
}