pglseg.java

来自「PostgreSQL7.4.6 for Linux」· Java 代码 · 共 115 行

JAVA
115
字号
/*------------------------------------------------------------------------- * * PGlseg.java *     This implements a lseg (line segment) consisting of two points * * Copyright (c) 2003, PostgreSQL Global Development Group * * IDENTIFICATION *	  $Header: /cvsroot/pgsql/src/interfaces/jdbc/org/postgresql/geometric/Attic/PGlseg.java,v 1.5 2003/09/13 04:02:15 barry Exp $ * *------------------------------------------------------------------------- */package org.postgresql.geometric;import org.postgresql.util.PGobject;import org.postgresql.util.PGtokenizer;import org.postgresql.util.PSQLException;import org.postgresql.util.PSQLState;import java.io.Serializable;import java.sql.SQLException;public class PGlseg extends PGobject implements Serializable, Cloneable{	/*	 * These are the two points.	 */	public PGpoint point[] = new PGpoint[2];	/*	 * @param x1 coordinate for first point	 * @param y1 coordinate for first point	 * @param x2 coordinate for second point	 * @param y2 coordinate for second point	 */	public PGlseg(double x1, double y1, double x2, double y2)	{		this(new PGpoint(x1, y1), new PGpoint(x2, y2));	}	/*	 * @param p1 first point	 * @param p2 second point	 */	public PGlseg(PGpoint p1, PGpoint p2)	{		this();		this.point[0] = p1;		this.point[1] = p2;	}	/*	 * @param s definition of the circle in PostgreSQL's syntax.	 * @exception SQLException on conversion failure	 */	public PGlseg(String s) throws SQLException	{		this();		setValue(s);	}	/*	 * reuired by the driver	 */	public PGlseg()	{		setType("lseg");	}	/*	 * @param s Definition of the line segment in PostgreSQL's syntax	 * @exception SQLException on conversion failure	 */	public void setValue(String s) throws SQLException	{		PGtokenizer t = new PGtokenizer(PGtokenizer.removeBox(s), ',');		if (t.getSize() != 2)			throw new PSQLException("postgresql.geo.lseg", PSQLState.DATA_TYPE_MISMATCH);		point[0] = new PGpoint(t.getToken(0));		point[1] = new PGpoint(t.getToken(1));	}	/*	 * @param obj Object to compare with	 * @return true if the two boxes are identical	 */	public boolean equals(Object obj)	{		if (obj instanceof PGlseg)		{			PGlseg p = (PGlseg)obj;			return (p.point[0].equals(point[0]) && p.point[1].equals(point[1])) ||				   (p.point[0].equals(point[1]) && p.point[1].equals(point[0]));		}		return false;	}	/*	 * This must be overidden to allow the object to be cloned	 */	public Object clone()	{		return new PGlseg((PGpoint)point[0].clone(), (PGpoint)point[1].clone());	}	/*	 * @return the PGlseg in the syntax expected by org.postgresql	 */	public String getValue()	{		return "[" + point[0] + "," + point[1] + "]";	}}

⌨️ 快捷键说明

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