colour.utilities.MixinDataclassArithmetic#

class colour.utilities.MixinDataclassArithmetic[source]#

Bases: MixinDataclassArray

A mixin providing mathematical operations for dataclass-like class.

Methods

  • __iadd__()

  • __add__()

  • __isub__()

  • __sub__()

  • __imul__()

  • __mul__()

  • __idiv__()

  • __div__()

  • __ipow__()

  • __pow__()

  • arithmetical_operation()

Notes

__add__(a: Any) Dataclass[source]#

Implement support for addition.

Parameters:

a (Any) – Variable \(a\) to add.

Returns:

Variable added dataclass-like class.

Return type:

dataclass

__iadd__(a: Any) Dataclass[source]#

Implement support for in-place addition.

Parameters:

a (Any) – Variable \(a\) to add in-place.

Returns:

In-place variable added dataclass-like class.

Return type:

dataclass

__sub__(a: Any) Dataclass[source]#

Implement support for subtraction.

Parameters:

a (Any) – Variable \(a\) to subtract.

Returns:

Variable subtracted dataclass-like class.

Return type:

dataclass

__isub__(a: Any) Dataclass[source]#

Implement support for in-place subtraction.

Parameters:

a (Any) – Variable \(a\) to subtract in-place.

Returns:

In-place variable subtracted dataclass-like class.

Return type:

dataclass

__mul__(a: Any) Dataclass[source]#

Implement support for multiplication.

Parameters:

a (Any) – Variable \(a\) to multiply by.

Returns:

Variable multiplied dataclass-like class.

Return type:

dataclass

__imul__(a: Any) Dataclass[source]#

Implement support for in-place multiplication.

Parameters:

a (Any) – Variable \(a\) to multiply by in-place.

Returns:

In-place variable multiplied dataclass-like class.

Return type:

dataclass

__div__(a: Any) Dataclass[source]#

Implement support for division.

Parameters:

a (Any) – Variable \(a\) to divide by.

Returns:

Variable divided dataclass-like class.

Return type:

dataclass

__idiv__(a: Any) Dataclass[source]#

Implement support for in-place division.

Parameters:

a (Any) – Variable \(a\) to divide by in-place.

Returns:

In-place variable divided dataclass-like class.

Return type:

dataclass

__itruediv__(a: Any) Dataclass#

Implement support for in-place division.

Parameters:

a (Any) – Variable \(a\) to divide by in-place.

Returns:

In-place variable divided dataclass-like class.

Return type:

dataclass

__truediv__(a: Any) Dataclass#

Implement support for division.

Parameters:

a (Any) – Variable \(a\) to divide by.

Returns:

Variable divided dataclass-like class.

Return type:

dataclass

__pow__(a: Any) Dataclass[source]#

Implement support for exponentiation.

Parameters:

a (Any) – Variable \(a\) to exponentiate by.

Returns:

Variable exponentiated dataclass-like class.

Return type:

dataclass

__ipow__(a: Any) Dataclass[source]#

Implement support for in-place exponentiation.

Parameters:

a (Any) – Variable \(a\) to exponentiate by in-place.

Returns:

In-place variable exponentiated dataclass-like class.

Return type:

dataclass

arithmetical_operation(a: Any, operation: str, in_place: bool = False) Dataclass[source]#

Perform given arithmetical operation with \(a\) operand on the dataclass-like class.

Parameters:
  • a (Any) – Operand.

  • operation (str) – Operation to perform.

  • in_place (bool) – Operation happens in place.

Returns:

dataclass-like class with arithmetical operation performed.

Return type:

dataclass