예제 #1
0
    /** Compute the ticks, sub-ticks data and the sub-ticks density. */
    private void computeTicksData() {
      if (graduations != null) {
        ticksValue = graduations.getAllValues();
        final int N = rulerModel.getSubticksNumber();

        if (N < 0) {
          Graduations subGraduation = graduations.getSubGraduations();
          while ((subGraduation != null)
              && (computeTicksDistance(subGraduation) < rulerModel.getMinimalSubTicksDistance())) {
            subGraduation = subGraduation.getAlternative();
          }

          if (subGraduation != null) {
            subTicksValue = subGraduation.getAllValues();
          } else {
            subTicksValue = new LinkedList<Double>();
          }
        } else {
          subTicksValue = graduations.getSubGraduations(N);
        }
        density = getDensity();
      } else {
        subTicksValue = new LinkedList<Double>();
        ticksValue = new LinkedList<Double>();
        density = 0;
      }
    }