/** colour by hour of day */ private static void drawPositionsHod(SvgFile svg, List<UserData> users, boolean showPoints) { float strokeWidth = 0.5f; for (UserData user : users) { Position lp = null; Position lastGoodp = null; for (Position p : user.getPositions()) { String stroke = getColour(scaleHod(p.getHourOfDay())); if (lp != null && !lp.isTruncated() && !p.isTruncated()) { svg.line( scaleX(lp.getX()), scaleY(lp.getY()), scaleX(p.getX()), scaleY(p.getY()), stroke, strokeWidth); } else if (lastGoodp != null && !p.isTruncated()) { svg.line( scaleX(lastGoodp.getX()), scaleY(lastGoodp.getY()), scaleX(p.getX()), scaleY(p.getY()), stroke, strokeWidth, "stroke-dasharray=\"" + MAG * 3 + " " + MAG * 3 + "\""); lastGoodp = null; } lp = p; if (!p.isTruncated()) lastGoodp = p; if (showPoints) svg.circle(scaleX(p.getX()), scaleY(p.getY()), 3, stroke, 0.4f, null); } } }
private static void drawPositions( SvgFile svg, UserData user, String stroke, float strokeWidth, boolean showPoints) { Position lp = null; Position lastGoodp = null; for (Position p : user.getPositions()) { if (lp != null && !lp.isTruncated() && !p.isTruncated()) { svg.line( scaleX(lp.getX()), scaleY(lp.getY()), scaleX(p.getX()), scaleY(p.getY()), stroke, strokeWidth); } else if (lastGoodp != null && !p.isTruncated()) { svg.line( scaleX(lastGoodp.getX()), scaleY(lastGoodp.getY()), scaleX(p.getX()), scaleY(p.getY()), stroke, strokeWidth, "stroke-dasharray=\"" + MAG * 3 + " " + MAG * 3 + "\""); lastGoodp = null; } lp = p; if (!p.isTruncated()) lastGoodp = p; if (showPoints) svg.circle(scaleX(p.getX()), scaleY(p.getY()), 3, stroke, 0.4f, null); } }