
package com.jfixby.r3.api.ui.unit.geometry;

import com.jfixby.cmns.api.floatn.FixedFloat2;
import com.jfixby.cmns.api.geometry.CanvasPosition;
import com.jfixby.cmns.api.geometry.ORIGIN_RELATIVE_HORIZONTAL;
import com.jfixby.cmns.api.geometry.ORIGIN_RELATIVE_VERTICAL;
import com.jfixby.cmns.api.geometry.Rectangle;
import com.jfixby.cmns.api.geometry.RectangleCorner;
import com.jfixby.r3.api.ui.unit.CanvasPositionable;
import com.jfixby.r3.api.ui.unit.raster.CanvasComponent;

public interface RectangularComponent extends CanvasComponent, CanvasPositionable {

	Rectangle shape ();

	public void setOriginAbsolute (FixedFloat2 point);

	double getWidth ();

	double getHeight ();

	void setSize (double width, double height);

	void setWidth (double width);

	void setHeight (double height);

	void setOriginRelative (ORIGIN_RELATIVE_HORIZONTAL ORIGIN_RELATIVE_HORIZONTAL,
		ORIGIN_RELATIVE_VERTICAL ORIGIN_RELATIVE_VERTICAL);

	void setOriginRelativeX (ORIGIN_RELATIVE_HORIZONTAL ORIGIN_RELATIVE_HORIZONTAL);

	void setOriginRelativeY (ORIGIN_RELATIVE_VERTICAL ORIGIN_RELATIVE_VERTICAL);

	// public void setOriginAbsolute(double origin_x, double origin_y);

	void setOriginRelative (double ORIGIN_RELATIVE_HORIZONTAL, double ORIGIN_RELATIVE_VERTICAL);

	void setOriginRelativeX (double ORIGIN_RELATIVE_HORIZONTAL);

	void setOriginRelativeY (double ORIGIN_RELATIVE_VERTICAL);

	public Rectangle setupShape (Rectangle other);

	RectangleCorner getTopLeftCorner ();

	RectangleCorner getTopRightCorner ();

	RectangleCorner getBottomLeftCorner ();

	RectangleCorner getBottomRightCorner ();

	CanvasPosition getPosition ();

}

@@ -73,309 +73,26 @@
 api.
-floatn.FixedFloat2;%0D%0Aimport com.jfixby.cmns.api.geometry.CanvasPosition;%0D%0Aimport com.jfixby.cmns.api.geometry.ORIGIN_RELATIVE_HORIZONTAL;%0D%0Aimport com.jfixby.cmns.api.geometry.ORIGIN_RELATIVE_VERTICAL;%0D%0Aimport com.jfixby.cmns.api.geometry.Rectangle;%0D%0Aimport com.jfixby.cmns.api.geometry.RectangleCorner
+geometry.Rectangle
 ;%0D%0Ai
@@ -289,15 +289,10 @@
 able
+,
  
-%7B%0D%0A%0D%0A%09
 Rect
@@ -301,1096 +301,82 @@
 gle 
-shape ();%0D%0A%0D%0A%09public void setOriginAbsolute (FixedFloat2 point);%0D%0A%0D%0A%09double getWidth ();%0D%0A%0D%0A%09double getHeight ();%0D%0A%0D%0A%09void setSize (double width, double height);%0D%0A%0D%0A%09void setWidth (double width);%0D%0A%0D%0A%09void setHeight (double height);%0D%0A%0D%0A%09void setOriginRelative (ORIGIN_RELATIVE_HORIZONTAL ORIGIN_RELATIVE_HORIZONTAL,%0D%0A%09%09ORIGIN_RELATIVE_VERTICAL ORIGIN_RELATIVE_VERTICAL);%0D%0A%0D%0A%09void setOriginRelativeX (ORIGIN_RELATIVE_HORIZONTAL ORIGIN_RELATIVE_HORIZONTAL);%0D%0A%0D%0A%09void setOriginRelativeY (ORIGIN_RELATIVE_VERTICAL ORIGIN_RELATIVE_VERTICAL);%0D%0A%0D%0A%09// public void setOriginAbsolute(double origin_x, double origin_y);%0D%0A%0D%0A%09void setOriginRelative (double ORIGIN_RELATIVE_HORIZONTAL, double ORIGIN_RELATIVE_VERTICAL);%0D%0A%0D%0A%09void setOriginRelativeX (double ORIGIN_RELATIVE_HORIZONTAL);%0D%0A%0D%0A%09void setOriginRelativeY (double ORIGIN_RELATIVE_VERTICAL);%0D%0A%0D%0A%09public Rectangle setupShape (Rectangle other);%0D%0A%0D%0A%09RectangleCorner getTopLeftCorner ();%0D%0A%0D%0A%09RectangleCorner getTopRightCorner ();%0D%0A%0D%0A%09RectangleCorner getBottomLeftCorner ();%0D%0A%0D%0A%09RectangleCorner getBottomRightCorner ();%0D%0A%0D%0A%09CanvasPosition getPosition (
+%7B%0D%0A%0D%0A%09Rectangle shape ();%0D%0A%0D%0A%09public Rectangle setupShape (Rectangle other
 );%0D%0A

make it rectangular!