⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 point.java

📁 Hecl编程语言是一个高层次的脚本语言的Java实现。其用意是要小
💻 JAVA
字号:
/* * Copyright (C) 2005, 2006 data2c GmbH (www.data2c.com) * * Author: Wolfgang S. Kechel - wolfgang.kechel@data2c.com *  * J2ME version of java.awt.Point. */package org.awt;//#ifndef j2seimport org.awt.geom.Point2D;public class Point extends Point2D {    /**     * The <i>x</i> coordinate.     * If no <i>x</i> coordinate is set it will default to 0.     *     * @serial     * @see #getLocation()     * @see #move(int, int)     */    public int x;        /**     * The <i>y</i> coordinate.      * If no <i>y</i> coordinate is set it will default to 0.     *     * @serial     * @see #getLocation()     * @see #move(int, int)     */    public int y;        /**     * Constructs and initializes a point at the origin      * (0,&nbsp;0) of the coordinate space.      */    public Point() {	this(0, 0);    }        /**     * Constructs and initializes a point with the same location as     * the specified <code>Point</code> object.     * @param       p a point     */    public Point(Point p) {	this(p.x, p.y);    }        /**     * Constructs and initializes a point at the specified      * (<i>x</i>,&nbsp;<i>y</i>) location in the coordinate space.      * @param       x   the <i>x</i> coordinate     * @param       y   the <i>y</i> coordinate     */    public Point(int x, int y) {	this.x = x;	this.y = y;    }        public Object clone() /*throws CloneNotSupportedException*/ {	return new Point(x,y);    }        /**     * Returns the X coordinate of the point in double precision.     * @return the X coordinate of the point in double precision     */    public double getX() {	return x;    }	    /**     * Returns the Y coordinate of the point in double precision.     * @return the Y coordinate of the point in double precision     */    public double getY() {	return y;    }	    /**     * Returns the location of this point.     * This method is included for completeness, to parallel the     * <code>getLocation</code> method of <code>Component</code>.     * @return      a copy of this point, at the same location     */    public Point getLocation() {	return new Point(x, y);    }		    /**     * Sets the location of the point to the specified location.     * This method is included for completeness, to parallel the     * <code>setLocation</code> method of <code>Component</code>.     * @param       p  a point, the new location for this point     */    public void setLocation(Point p) {	setLocation(p.x, p.y);    }		    /**     * Changes the point to have the specified location.     * <p>     * This method is included for completeness, to parallel the     * <code>setLocation</code> method of <code>Component</code>.     * Its behavior is identical with <code>move(int,&nbsp;int)</code>.     * @param       x  the <i>x</i> coordinate of the new location     * @param       y  the <i>y</i> coordinate of the new location     */    public void setLocation(int x, int y) {	move(x, y);    }		    /**     * Sets the location of this point to the specified double coordinates.     * The double values will be rounded to integer values.     * Any number smaller than <code>Integer.MIN_VALUE</code>     * will be reset to <code>MIN_VALUE</code>, and any number     * larger than <code>Integer.MAX_VALUE</code> will be     * reset to <code>MAX_VALUE</code>.     *     * @param x the <i>x</i> coordinate of the new location     * @param y the <i>y</i> coordinate of the new location     * @see #getLocation     */    public void setLocation(double x, double y) {	this.x = (int) Math.floor(x+0.5);	this.y = (int) Math.floor(y+0.5);    }	    /**     * Moves this point to the specified location in the      * (<i>x</i>,&nbsp;<i>y</i>) coordinate plane. This method     * is identical with <code>setLocation(int,&nbsp;int)</code>.     * @param       x  the <i>x</i> coordinate of the new location     * @param       y  the <i>y</i> coordinate of the new location     */    public void move(int x, int y) {	this.x = x;	this.y = y;    }		    /**     * Translates this point, at location (<i>x</i>,&nbsp;<i>y</i>),      * by <code>dx</code> along the <i>x</i> axis and <code>dy</code>      * along the <i>y</i> axis so that it now represents the point      * (<code>x</code>&nbsp;<code>+</code>&nbsp;<code>dx</code>,      * <code>y</code>&nbsp;<code>+</code>&nbsp;<code>dy</code>).      * @param       dx   the distance to move this point      *                            along the <i>x</i> axis     * @param       dy    the distance to move this point      *                            along the <i>y</i> axis     */    public void translate(int dx, int dy) {	this.x += dx;	this.y += dy;    }		    /**     * Determines whether or not two points are equal. Two instances of     * <code>Point</code> are equal if the values of their      * <code>x</code> and <code>y</code> member fields, representing     * their position in the coordinate space, are the same.     * @param obj an object to be compared with this <code>Point</code>     * @return <code>true</code> if the object to be compared is     *         an instance of <code>Point</code> and has     *         the same values; <code>false</code> otherwise.     */    public boolean equals(Object obj) {	if (obj instanceof Point) {	    Point pt = (Point)obj;	    return (x == pt.x) && (y == pt.y);	}	return super.equals(obj);    }	    /**     * Returns a string representation of this point and its location      * in the (<i>x</i>,&nbsp;<i>y</i>) coordinate space. This method is      * intended to be used only for debugging purposes, and the content      * and format of the returned string may vary between implementations.      * The returned string may be empty but may not be <code>null</code>.     *      * @return  a string representation of this point     */    public String toString() {	return "Point[" + x + ", " + y + "]";    }}//#endif

⌨️ 快捷键说明

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