private static Timeline getTimeline(UserData user) { Timeline tl = new Timeline(); TimelinePoint lasttp = null; boolean truncated = false; for (Position p : user.getPositions()) { TimelinePoint tp = new TimelinePoint(p.getHourOfDay(), scaleX(p.getX()), scaleY(p.getY())); if (lasttp == null) lasttp = tp; else { if (!p.isTruncated()) { TimelineSegment s1 = new TimelineSegment( lasttp, tp, (truncated || p.isTruncated() ? DrawTimelines.DASHED : DrawTimelines.SOLID)); tl.getSegments().add(s1); lasttp = tp; truncated = p.isTruncated(); } else truncated = true; } } return tl; }