Square

object Square extends ShapeIcon

Companion object for the Square trait. However its apply methods delegate to the SquareImp implementation class.

Companion:
class
trait ShapeIcon
class Object
trait Matchable
class Any
Square.type

Type members

Classlikes

final class SquareImp(val sd1CenX: Double, val sd1CenY: Double, val sd3CenX: Double, val sd3CenY: Double) extends Square with RectS2S4

The class for a generalised square. If you want a square aligned XY axes use Sqlign. The square can be translated, scaled, reflected and rotated while remaining a Square.

The class for a generalised square. If you want a square aligned XY axes use Sqlign. The square can be translated, scaled, reflected and rotated while remaining a Square.

Companion:
object
object SquareImp

Factory object for squares.

Factory object for squares.

Companion:
class

Types

override type ShapeT = Sqlign

Value members

Concrete methods

def apply(width: Double, rotation: AngleVec, cen: Pt2): Square

Factory method for the creation of [Squares in the general case where the square is not aligned to the X and Y axis. The method takes the square's scalar width followed by its rotation specified in AngleVec. If no further arguments are supplied the square will positioned with its centre at the axes centre. Otherwise the rotation can be followed by a centre point Pt2 or the X and Y positions of the square's centre. If you want to create a square aligned to the axes, then you are probably better using the Sqlign factory apply method.

Factory method for the creation of [Squares in the general case where the square is not aligned to the X and Y axis. The method takes the square's scalar width followed by its rotation specified in AngleVec. If no further arguments are supplied the square will positioned with its centre at the axes centre. Otherwise the rotation can be followed by a centre point Pt2 or the X and Y positions of the square's centre. If you want to create a square aligned to the axes, then you are probably better using the Sqlign factory apply method.

def apply(width: Double, rotation: AngleVec, xCen: Double, yCen: Double): Square

Factory method for the creation of [Squares in the general case where the square is not aligned to the X and Y axis. The method takes the square's scalar width followed by its rotation specified in AngleVec. If no further arguments are supplied the square will positioned with its centre at the axes centre. Otherwise the rotation can be followed by a centre point Pt2 or the X and Y positions of the square's centre. If you want to create a square aligned to the axes, then you are probably better using the Sqlign factory apply method.

Factory method for the creation of [Squares in the general case where the square is not aligned to the X and Y axis. The method takes the square's scalar width followed by its rotation specified in AngleVec. If no further arguments are supplied the square will positioned with its centre at the axes centre. Otherwise the rotation can be followed by a centre point Pt2 or the X and Y positions of the square's centre. If you want to create a square aligned to the axes, then you are probably better using the Sqlign factory apply method.

override def fill(colour: Colour): ShapeGraphicIcon
Definition Classes
override def reify(scale: Double, xCen: Double, yCen: Double): Sqlign

Scale the Square and position (translate) it. This method is equivalent to scaling the icon and then translating (repositioning) it.

Scale the Square and position (translate) it. This method is equivalent to scaling the icon and then translating (repositioning) it.

Definition Classes
override def reify(scale: Double, cen: Pt2): Sqlign

Scale the Shape and position (translate) it. This method is equivalent to scaling the icon and then translating (repositioning) it.

Scale the Shape and position (translate) it. This method is equivalent to scaling the icon and then translating (repositioning) it.

Definition Classes
def s2s4(s2Cen: Pt2, s4Cen: Pt2): Square