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

Type members

Classlikes

final
class SquareImp(val sd2CenX: Double, val sd2CenY: Double, val sd4CenX: Double, val sd4CenY: 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
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