Vuo  2.0.0
VuoTransform2d.h
Go to the documentation of this file.
1 
10 #pragma once
11 
12 #include "VuoPoint2d.h"
13 #include "VuoReal.h"
14 
26 typedef struct
27 {
28  VuoPoint2d translation;
30  VuoPoint2d scale;
32 
34 VuoTransform2d VuoTransform2d_make(VuoPoint2d translation, VuoReal rotation, VuoPoint2d scale);
35 // See VuoTransform.h for 2D-3D conversions.
36 
39 char * VuoTransform2d_getSummary(const VuoTransform2d value);
40 
42 
46 char * VuoTransform2d_getString(const VuoTransform2d value);
50 
54 static inline bool VuoTransform2d_isIdentity(const VuoTransform2d transform)
55 {
56  const float tolerance = 0.00001f;
57  return fabs(transform.translation.x) < tolerance
58  && fabs(transform.translation.y) < tolerance
59  && fabs(transform.scale.x - 1.) < tolerance
60  && fabs(transform.scale.y - 1.) < tolerance
61  && fabs(transform.rotation) < tolerance;
62 }
63