# Trait graphics::Transformed [−] [src]

```pub trait Transformed: Sized {
fn append_transform(self, transform: Matrix2d) -> Self;
fn prepend_transform(self, transform: Matrix2d) -> Self;
fn trans(self, x: Scalar, y: Scalar) -> Self;
fn rot_rad(self, angle: Scalar) -> Self;
fn orient(self, x: Scalar, y: Scalar) -> Self;
fn scale(self, sx: Scalar, sy: Scalar) -> Self;
fn shear(self, v: Vec2d) -> Self;

fn rot_deg(self, angle: Scalar) -> Self { ... }
fn zoom(self, s: Scalar) -> Self { ... }
fn flip_v(self) -> Self { ... }
fn flip_h(self) -> Self { ... }
fn flip_hv(self) -> Self { ... }
}```

Implemented by contexts that can transform.

## Required Methods

### `fn append_transform(self, transform: Matrix2d) -> Self`

Appends transform to the current one.

### `fn prepend_transform(self, transform: Matrix2d) -> Self`

Prepends transform to the current one.

### `fn trans(self, x: Scalar, y: Scalar) -> Self`

Translate x an y in local coordinates.

### `fn rot_rad(self, angle: Scalar) -> Self`

Rotate radians in local coordinates.

### `fn orient(self, x: Scalar, y: Scalar) -> Self`

Orients x axis to look at point locally.

Leaves x axis unchanged if the point to look at is the origin.

### `fn scale(self, sx: Scalar, sy: Scalar) -> Self`

Scales in local coordinates.

### `fn shear(self, v: Vec2d) -> Self`

Shears in local coordinates.

## Provided Methods

### `fn rot_deg(self, angle: Scalar) -> Self`

Rotates degrees in local coordinates.

### `fn zoom(self, s: Scalar) -> Self`

Scales in both directions in local coordinates.

### `fn flip_v(self) -> Self`

Flips vertically in local coordinates.

### `fn flip_h(self) -> Self`

Flips horizontally in local coordinates.

### `fn flip_hv(self) -> Self`

Flips horizontally and vertically in local coordinates.

## Implementors

• `impl Transformed for Matrix2d`
• `impl Transformed for Context`