⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jgaptreebranchrenderer.java

📁 JGAP是一种遗传算法和遗传规划的组成部分提供了一个Java框架。它提供了基本的遗传机制
💻 JAVA
字号:
/*
 * This file is part of JGAP.
 *
 * JGAP offers a dual license model containing the LGPL as well as the MPL.
 *
 * For licensing information please see the file license.txt included with JGAP
 * or have a look at the top of class org.jgap.Chromosome which representatively
 * includes the JGAP license policy applicable for any file delivered with JGAP.
 */
package org.jgap.gp.impl;

import java.awt.*;
import org.jgap.util.tree.*;
import org.jgap.gp.function.*;
import org.jgap.gp.*;

/**
 * Renders the branches' colors of a tree to display.
 * Created by Brian Risk of Geneffects on March 18, 2004.
 * Last Modified on March 19, 2004.
 * www.geneffects.com
 * Modified by Klaus Meffert
 *
 * @author Klaus Meffert
 * @since 3.0
 */
public class JGAPTreeBranchRenderer
    implements TreeBranchRenderer {
  /** String containing the CVS revision. Read out via reflection!*/
  private final static String CVS_REVISION = "$Revision: 1.2 $";

  public Color getBranchColor(Object a_node, int a_level) {
    String name = ( (JGAPTreeNode) a_node).getName();
    Color out = Color.white;
    if (name.equals(IfElse.class.getName())) {
      out = new Color(255, 30, 30);
    }
    else if (name.equals(Add.class.getName())) {
      out = new Color(86, 140, 0);
    }
    else if (name.equals(AddAndStore.class.getName())) {
      out = new Color(44, 200, 70);
    }
    else if (name.equals(Add3.class.getName())) {
      out = new Color(0, 86, 22);
    }
    else if (name.equals(Subtract.class.getName())) {
      out = new Color(171, 0, 0);
    }
    else if (name.equals(Multiply.class.getName())) {
      out = new Color(85, 0, 85);
    }
    else if (name.equals(Multiply3.class.getName())) {
      out = new Color(0, 190, 171);
    }
    else if (name.equals(Equals.class.getName())) {
      out = new Color(0, 0, 255);
    }
    else if (name.equals(Or.class.getName())) {
      out = new Color(20, 200, 40);
    }
    else if (name.equals(Xor.class.getName())) {
      out = new Color(10, 150, 80);
    }
    else if (name.equals(And.class.getName())) {
      out = new Color(90, 100, 90);
    }
    else if (name.equals(If.class.getName())) {
      out = new Color(200, 250, 100);
    }
    else if (name.equals(Not.class.getName())) {
      out = new Color(240, 50, 0);
    }
    else if (name.equals(Sine.class.getName())) {
      out = new Color(50, 10, 0);
    }
    else if (name.equals(Cosine.class.getName())) {
      out = new Color(50, 200, 0);
    }
    else if (name.equals(Exp.class.getName())) {
      out = new Color(200, 0, 50);
    }
    else if (name.equals(Pow.class.getName())) {
      out = new Color(100, 50, 150);
    }
    else if (name.equals(SubProgram.class.getName())) {
      out = new Color(33, 66, 99);
    }
    else if (name.equals(StoreTerminal.class.getName())) {
      out = new Color(100, 40, 200);
    }
    else if (name.equals(ReadTerminal.class.getName())) {
      out = new Color(200, 80, 100);
    }
    else if (name.equals(TransferMemory.class.getName())) {
      out = new Color(100, 200, 40);
    }
    else if (name.equals(ForLoop.class.getName())) {
      out = new Color(77, 240, 110);
    }
    else if (name.equals(Increment.class.getName())) {
      out = new Color(150, 150, 40);
    }
    return out;
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -