예제 #1
0
파일: Sets.java 프로젝트: JamesEarle/GPP
  /** Loads all current values from the parameter file for fitness functions. */
  private void load() {

    int n;

    for (int i = 0; i < param.FunctionSet.TREE_FUNCTIONS.size(); i++) {
      n = (Integer) param.FunctionSet.TREE_FUNCTIONS.get(i);
      treeBox[n].setSelected(true);
    }

    for (int i = 0; i < param.FunctionSet.SHAPE_FUNCTIONS.size(); i++) {
      n = (Integer) param.FunctionSet.SHAPE_FUNCTIONS.get(i) / 2;
      shapeBox[n].setSelected(true);
    }

    for (int i = 0; i < param.FunctionSet.MATH_FUNCTIONS.size(); i++) {
      n = (Integer) param.FunctionSet.MATH_FUNCTIONS.get(i);
      mathBox[n].setSelected(true);
    }

    for (int i = 0; i < param.FunctionSet.TEXTURE_FUNCTIONS.size(); i++) {
      n = (Integer) param.FunctionSet.TEXTURE_FUNCTIONS.get(i);
      textureBox[n].setSelected(true);
    }

    if (param.Parameters.ALPHA) alpha.setSelected(true);
    radius.setText(param.FunctionSet.RADIUS + "");
  };
예제 #2
0
파일: Sets.java 프로젝트: JamesEarle/GPP
  /** Method called when 'quit' is pressed. Saves all current parameters. */
  private void quit() {

    int n;

    if (getInt(radius) != -1) param.FunctionSet.RADIUS = getInt(radius);

    // Check that at least one root function is selected
    boolean treeselect = false;
    boolean shapeselect = true;
    boolean textureselect = true;

    for (int i = 0; i < treeBox.length; i++) {
      if (treeBox[i].isSelected()) treeselect = true;
    }

    // Check that if a shape root function is selected, at least one shape
    // is as well
    if (treeBox[1].isSelected()) {
      shapeselect = false;
      for (int i = 0; i < shapeBox.length; i++) {
        if (shapeBox[i].isSelected()) shapeselect = true;
      }
    }

    // Check that at least one texture terminal is selected if one non-
    // terminal texture is selected
    if (rT8.isSelected() || rT1.isSelected() || rT2.isSelected()) {
      textureselect = false;
      for (int i = 2; i <= 6; i++) if (textureBox[i].isSelected()) textureselect = true;
    }

    // If no errors, save progress
    if (treeselect && shapeselect && textureselect) {

      param.FunctionSet.TREE_FUNCTIONS = new LinkedList<Integer>();
      for (int i = 0; i < treeBox.length; i++) {
        if (treeBox[i].isSelected()) param.FunctionSet.TREE_FUNCTIONS.add(i);
      }

      param.FunctionSet.SHAPE_FUNCTIONS = new LinkedList<Integer>();
      for (int i = 0; i < shapeBox.length; i++) {
        if (shapeBox[i].isSelected()) {
          param.FunctionSet.SHAPE_FUNCTIONS.add(i * 2);
          param.FunctionSet.SHAPE_FUNCTIONS.add(i * 2 + 1);
        }
      }

      param.FunctionSet.MATH_FUNCTIONS = new LinkedList<Integer>();
      for (int i = 0; i < mathBox.length; i++) {
        if (mathBox[i].isSelected()) param.FunctionSet.MATH_FUNCTIONS.add(i);
      }

      param.FunctionSet.TEXTURE_FUNCTIONS = new LinkedList<Integer>();
      for (int i = 0; i < textureBox.length; i++) {
        if (textureBox[i].isSelected()) param.FunctionSet.TEXTURE_FUNCTIONS.add(i);
      }

      param.Parameters.ALPHA = alpha.isSelected();
    }

    exit();
  };