{{newin|[[11.0]]|110|type=type}}
Object containing a coordinate system transformation.

The [[love.graphics]] module has several functions and function variants which accept Transform objects.

== Constructors ==
{{#ask: [[Category:Functions]] [[Constructs::Transform]]
| headers=hide
| default=None.
| format=template
| template=ListingFields
| introtemplate=ListingIntro
| outrotemplate=ListingOutro
| ?Description
| ?PrettySince
| ?PrettyRemoved
}}
== Functions ==
{{#ask: [[Category:Functions]] [[parent::Transform||Object]]
| headers=hide
| format=template
| template=ListingFields
| introtemplate=ListingIntro
| outrotemplate=ListingOutro
| ?Description
| ?PrettySince
| ?PrettyRemoved
}}
== Enums ==
{{#ask: [[Category:Enums]] [[parent::Transform]]
| headers=hide
| format=template
| template=ListingFields
| introtemplate=ListingIntro
| outrotemplate=ListingOutro
| ?Description
| ?PrettySince
| ?PrettyRemoved
}}
== Supertypes ==
* [[parent::Object]]
== Notes ==
Transform objects have a custom <code>*</code> (multiplication) operator. <code>result = tA * tB</code> is equivalent to <code>result = tA:clone():apply(tB)</code>. It maps to the matrix multiplication operation that [[Transform:apply]] performs.

The <code>*</code> operator creates a new Transform object, so it is not recommended to use it heavily in per-frame code.
== See Also ==
* [[parent::love.math]]
* [[love.graphics.applyTransform]]
* [[love.graphics.replaceTransform]]
* [[love.graphics.draw]]
* [[love.graphics.print]]
* [[SpriteBatch:add]]
* [[Text:add]]
* [[Shader:send]]
[[Category:Types]]
{{#set:Description=Object containing a coordinate system transformation.}}
== Other Languages ==
{{i18n|Transform}}