Examples of AntProject


Examples of de.hwrberlin.it11.tsp.model.AntProject

   *            das Eltern Composite
   * @param pStyle
   *            die SWT Stylebits dieses Composite
   */
  public TabContent(Composite pParent, int pStyle) {
    super(pParent, pStyle, new AntController(new AntProject()));

    Composite comp = new Composite(this, SWT.NONE);
    comp.setLayout(new MigLayout("fill, ins 0", "[][pref!]"));
    comp.setLayoutData("hmin pref, wmin pref, grow, hmax 98%, wmax 99%");

View Full Code Here

Examples of de.hwrberlin.it11.tsp.model.AntProject

   *            der Controller dieses DrawComposite
   */
  public DrawComposite(Composite pParent, int pStyle, AntController pController) {
    super(pParent, pStyle, pController);

    AntProject project = getController().getProject();
    project.addPropertyChangeListener(this);
    project.getParameter().addPropertyChangeListener(this);
    project.getTSPData().addPropertyChangeListener(this);
    Preferences.getInstance().addPropertyChangeListener(this);

    _scrolledComposite = new ScrolledComposite(this, SWT.H_SCROLL | SWT.V_SCROLL);
    _scrolledComposite.setLayoutData("hmin 0, wmin 0, grow, push");
    _scrolledComposite.setExpandHorizontal(true);
    _scrolledComposite.setExpandVertical(true);

    _canvas = new Canvas(_scrolledComposite, SWT.DOUBLE_BUFFERED);

    _zoomFactor = new AntScale(new Scale(this, SWT.VERTICAL), getController().getProject());
    _zoomFactor.getScale().setLayoutData("hmin 0, wmin pref, growy");
    _zoomFactor.getScale().setMinimum(5);
    _zoomFactor.getScale().setMaximum(300);
    _zoomFactor.setTooltipText("Hier k�nnen Sie den Zoom-Faktor einstellen, mit dem die Knoten und Kanten dargestellt werden.");

    _canvas.addPaintListener(new AntPaintListener());
    _canvas.addMouseListener(new MouseAdapter() {

      @Override
      public void mouseDown(MouseEvent pE) {
        if (pE.button == 1) {
          if (_selectedNode != null) {
            _selectedNode.removePropertyChangeListener(DrawComposite.this);
          }
          double zoomFactor = getController().getProject().getParameter().getZoomFactor();
          double x = (pE.x - BORDER_WIDTH) / zoomFactor;
          double y = (pE.y - BORDER_WIDTH) / zoomFactor;
          _selectedNode = getController().getProject().getNodeForCoordinates((int) x, (int) y);
          if (_selectedNode != null) {
            _selectedNode.addPropertyChangeListener(DrawComposite.this);
            _drag = true;
          }
          _canvas.redraw();
        }
      }



      @Override
      public void mouseUp(MouseEvent pE) {
        if (pE.button == 1) {
          _drag = false;
        }
      }



      @Override
      public void mouseDoubleClick(MouseEvent pE) {
        if (pE.button == 1) {
          if (pE.x - BORDER_WIDTH >= 0 && pE.y - BORDER_WIDTH >= 0 && !getController().isRunning()) {
            if (_selectedNode != null) {
              _selectedNode.removePropertyChangeListener(DrawComposite.this);
              _drag = false;
              _selectedNode = null;
            }
            AntProject project = getController().getProject();
            double zoomFactor = project.getParameter().getZoomFactor();
            NewNodeDialog newNodeDialog = new NewNodeDialog(getShell(), project, (pE.x - BORDER_WIDTH) / zoomFactor,
                (pE.y - BORDER_WIDTH) / zoomFactor);
            Node newNode = newNodeDialog.open();
            if (newNode != null) {
              project.getTSPData().addNode(newNode);
            }
          }
        }
      }
    });
View Full Code Here

Examples of de.hwrberlin.it11.tsp.model.AntProject

          || PropertyChangeTypes.TSPDATA_NODELIST_ADD.equals(propertyName) // Es wurde eine Node zur Knotenliste hinzugef�gt
          || PropertyChangeTypes.TSPDATA_NODELIST_REMOVE.equals(propertyName) // Es wurde eine Node von der Knotenliste entfernt
          || PropertyChangeTypes.PARAMETER_ZOOMFACTOR.equals(propertyName)) { // Der Zoom-Faktor hat sich ver�ndert
        double maxX = 0;
        double maxY = 0;
        AntProject project = getController().getProject();
        for (Node node : project.getTSPData().getNodeList()) {
          if (node.getxCoordinate() > maxX) {
            maxX = node.getxCoordinate();
          }
          if (node.getyCoordinate() > maxY) {
            maxY = node.getyCoordinate();
          }
        }

        double zoomFactor = project.getParameter().getZoomFactor();
        int preferredWidth = (int) (maxX * zoomFactor) + BORDER_WIDTH * 2;
        int preferredHeight = (int) (maxY * zoomFactor) + BORDER_WIDTH * 2;

        _scrolledComposite.setMinSize(preferredWidth, preferredHeight);

View Full Code Here

Examples of de.hwrberlin.it11.tsp.model.AntProject

   */
  private class AntPaintListener implements PaintListener {

    @Override
    public void paintControl(PaintEvent pE) {
      AntProject project = getController().getProject();
      List<Node> nodeList = project.getTSPData().getNodeList();
      double zoomFactor = project.getParameter().getZoomFactor();

      Result result = project.getResult();
      Preferences preferences = Preferences.getInstance();

      if (preferences.isAntialias()) {
        pE.gc.setAntialias(SWT.ON);
      }
View Full Code Here

Examples of de.hwrberlin.it11.tsp.model.AntProject

   * Enabled und disabled den Start-Button basierend auf den Validierungsstati der in dieser Instanz definierten Textfelder und des Ergebnisses des
   * AllInputValodListener.
   */
  private void evaluateStartEnabled() {
    boolean enable = _allInputValid && _tIterationCount.isValidInput() && _tMaximumTourLength.isValidInput();
    AntProject project = getController().getProject();
    enable = enable && project.getTSPData().getNodeList().size() > 1;
    if (_rOptTourFilePath.getButton().getSelection()) {
      enable = enable
          && !(project.getOptimalTourIndeces() == null || (project.getTSPData().getNodeList().size() != project.getOptimalTourIndeces()
              .size() - 1));
    }
    _bStart.getButton().setEnabled(enable);
  }
View Full Code Here

Examples of de.hwrberlin.it11.tsp.model.AntProject

  /**
   * Setzte das Bild des L�sungsdateiakzeptanz-Labels entsprechend der Validit�t der L�sungsdatei. Die L�sungsdatei ist genau dann valide, wenn sie
   * die gleiche L�nge wie die Liste der Knoten aufweist.
   */
  private void evaluateSolutionAccept() {
    AntProject project = getController().getProject();
    if (project.getOptimalTourIndeces() == null || (project.getOptimalTourIndeces().size() - 1 != project.getTSPData().getNodeList().size())) {
      _lAccept.getLabel().setImage(Images.CROSS);
    }
    else {
      _lAccept.getLabel().setImage(Images.TICK);
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.