📄 pgcircle.java
字号:
package postgresql.geometric;import java.io.*;import java.sql.*;import postgresql.util.*;/** * This represents postgresql's circle datatype, consisting of a point and * a radius */public class PGcircle extends PGobject implements Serializable,Cloneable{ /** * This is the centre point */ public PGpoint center; /** * This is the radius */ double radius; /** * @param x coordinate of centre * @param y coordinate of centre * @param r radius of circle */ public PGcircle(double x,double y,double r) { this(new PGpoint(x,y),r); } /** * @param c PGpoint describing the circle's centre * @param r radius of circle */ public PGcircle(PGpoint c,double r) { this(); this.center = c; this.radius = r; } /** * @param s definition of the circle in PostgreSQL's syntax. * @exception SQLException on conversion failure */ public PGcircle(String s) throws SQLException { this(); setValue(s); } /** * This constructor is used by the driver. */ public PGcircle() { setType("circle"); } /** * @param s definition of the circle in PostgreSQL's syntax. * @exception SQLException on conversion failure */ public void setValue(String s) throws SQLException { PGtokenizer t = new PGtokenizer(PGtokenizer.removeAngle(s),','); if(t.getSize() != 2) throw new PSQLException("postgresql.geo.circle",s); try { center = new PGpoint(t.getToken(0)); radius = Double.valueOf(t.getToken(1)).doubleValue(); } catch(NumberFormatException e) { throw new PSQLException("postgresql.geo.circle",e); } } /** * @param obj Object to compare with * @return true if the two boxes are identical */ public boolean equals(Object obj) { if(obj instanceof PGcircle) { PGcircle p = (PGcircle)obj; return p.center.equals(center) && p.radius==radius; } return false; } /** * This must be overidden to allow the object to be cloned */ public Object clone() { return new PGcircle((PGpoint)center.clone(),radius); } /** * @return the PGcircle in the syntax expected by postgresql */ public String getValue() { return "<"+center+","+radius+">"; }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -