drawSell method
void
drawSell(
- Canvas canvas
)
Implementation
void drawSell(Canvas canvas) {
mSellPointWidth =
(mDrawWidth / (mSellData!.length - 1 == 0 ? 1 : mSellData!.length - 1));
mSellPath!.reset();
double x;
double y;
for (int i = 0; i < mSellData!.length; i++) {
if (i == 0) {
mSellPath!.moveTo(mDrawWidth, getY(mSellData![0].vol));
}
x = (mSellPointWidth! * i) + mDrawWidth;
y = getY(mSellData![i].vol);
if (i >= 1) {
canvas.drawLine(
Offset((mSellPointWidth! * (i - 1)) + mDrawWidth,
getY(mSellData![i - 1].vol)),
Offset(x, y),
mSellLinePaint!);
}
if (i != mSellData!.length - 1) {
mSellPath!.quadraticBezierTo(
x,
y,
(mSellPointWidth! * (i + 1)) + mDrawWidth,
getY(mSellData![i + 1].vol));
} else {
if (i == 0) {
mSellPath!.lineTo(mWidth, y);
mSellPath!.lineTo(mWidth, mDrawHeight);
mSellPath!.lineTo(mDrawWidth, mDrawHeight);
} else {
mSellPath!.quadraticBezierTo(mWidth, y, x, mDrawHeight);
mSellPath!.quadraticBezierTo(x, mDrawHeight, mDrawWidth, mDrawHeight);
}
mSellPath!.close();
}
}
canvas.drawPath(mSellPath!, mSellPathPaint!);
}