drawMa method
Implementation
void drawMa(Canvas canvas) {
canvas.save();
canvas.translate(scrollX, 0);
double? difStartX;
double? difStartY;
double? deaStartX;
double? deaStartY;
for (int i = 0, len = values.length; i < len; i++) {
AceEntity item = values[i];
if (item.macd != null && item.macd! != 0) {
double x = indexToX(i) * scale + (getRealItemWidth() / 2) * scale;
double difY = valueToY(item.dif!);
if (difStartX == null || difStartY == null) {
difStartX = x;
difStartY = difY;
}
drawLine(
canvas: canvas,
startX: difStartX,
startY: difStartY,
endX: x,
endY: difY,
strokeWidth: difAndDeaLineWidth,
color: difLineColor);
difStartX = x;
difStartY = difY;
double deaY = valueToY(item.dea!);
if (deaStartX == null || deaStartY == null) {
deaStartX = x;
deaStartY = deaY;
}
drawLine(
canvas: canvas,
startX: deaStartX,
startY: deaStartY,
endX: x,
endY: deaY,
strokeWidth: difAndDeaLineWidth,
color: deaLineColor);
deaStartX = x;
deaStartY = deaY;
}
}
canvas.restore();
}