001 package org.realobject; 002 003 import java.awt.geom.*; 004 005 public abstract class EcoBe { 006 private Mark mark_; 007 private int id_; 008 private double width = 20; 009 private double height = 20; 010 011 public EcoBe(int id) { 012 id_ = id; 013 } 014 015 public Mark getMark() { 016 return mark_; 017 } 018 public void putMark(Mark mark) throws Exception { 019 System.out.println(toString()+".putMark("+mark+")"); 020 if(mark_ != null) throw new Exception("Mark already exists. "+toString()); 021 mark_ = mark; 022 mark_.setEcobe(this); 023 } 024 public void removeMark() { 025 mark_ = null; 026 mark_.setEcobe(null); 027 } 028 public int getID() { 029 return id_; 030 } 031 public abstract void move(double dx, double dy) ; 032 public String getNickName() { 033 return toString();//<?> 034 } 035 public abstract double getRadius() ; 036 public abstract double getAngle() ; 037 public abstract Point2D.Double getLocation() ; 038 public String toString() { 039 return "EcoBe[id:"+id_+","+mark_+"]"; 040 } 041 }