Tics.java
/*
* Created on 2005/08/04
* Copyright (C) 2005 Koga Laboratory. All rights reserved.
*
*/
package org.mklab.tool.graph.gnuplot.decoration;
/**
* 目盛りの刻み位置を表すクラスです。
*
* @author koga
* @version $Revision: 1.7 $, 2005/08/04
*/
public abstract class Tics implements GnuplotComponent {
/** 始点 */
private double start;
/** 増分 */
private double increase;
/** 終点 */
private double end;
/**
* 新しく生成された<code>Tics</code>オブジェクトを初期化します。
*
* @param start 始点
* @param increase 増分
* @param end 終点
*/
protected Tics(double start, double increase, double end) {
this.start = start;
this.increase = increase;
this.end = end;
}
/**
* 目盛りの刻み位置を設定します。
*
* @param start 始点
* @param increase 増分
* @param end 終点
*/
public void setTics(double start, double increase, double end) {
this.start = start;
this.increase = increase;
this.end = end;
}
/**
* 始点を設定します。
*
* @param start 始点
*/
public void setStart(double start) {
this.start = start;
}
/**
* 始点を返します。
*
* @return 始点
*/
public double getStart() {
return this.start;
}
/**
* 終点を設定します。
*
* @param end 終点
*/
public void setEnd(double end) {
this.end = end;
}
/**
* 終点を返します。
*
* @return 終点
*/
public double getEnd() {
return this.end;
}
/**
* 増分を設定します。
*
* @param increase 増分
*/
public void setIncrease(double increase) {
this.increase = increase;
}
/**
* 増分を返します。
*
* @return 増分
*/
public double getIncrease() {
return this.increase;
}
/**
* {@inheritDoc}
*/
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
long temp;
temp = Double.doubleToLongBits(this.end);
result = prime * result + (int)(temp ^ (temp >>> 32));
temp = Double.doubleToLongBits(this.increase);
result = prime * result + (int)(temp ^ (temp >>> 32));
temp = Double.doubleToLongBits(this.start);
result = prime * result + (int)(temp ^ (temp >>> 32));
return result;
}
/**
* {@inheritDoc}
*/
@Override
public boolean equals(Object obj) {
if (this == obj) return true;
if (obj == null) return false;
if (getClass() != obj.getClass()) return false;
Tics other = (Tics)obj;
if (Double.doubleToLongBits(this.end) != Double.doubleToLongBits(other.end)) return false;
if (Double.doubleToLongBits(this.increase) != Double.doubleToLongBits(other.increase)) return false;
if (Double.doubleToLongBits(this.start) != Double.doubleToLongBits(other.start)) return false;
return true;
}
}