class RotatableExtent

Defined at line 161 of file fidling/gen/sdk/fidl/fuchsia.ui.observation.geometry/fuchsia.ui.observation.geometry/cpp/fidl/fuchsia.ui.observation.geometry/cpp/natural_types.h

A view bounding box, described in another view's coordinate system.

Concretely, |RotatableExtent| describes the origin, size, and rotation angle

about the origin, for a view's bounding box.

Note: For describing a view's bounding box in the view's own coordinate

system, see |AlignedExtent|.

We use "V" to refer to the view being described, and "W" to refer to the

view where V is being described.

Note that while |angle| can be arbitrary, typical usage is axis aligned.

To find the bounding box of V in W in clockwise order, starting with

|origin|, where |angle| is 0, 90, 180, or 270, and using o=origin, w=width,

h=height, a=angle:

a= 0: (o.x, o.y), (o.x + w, o.y), (o.x + w, o.y + h), (o.x, o.y + h)

a= 90: (o.x, o.y), (o.x, o.y - w), (o.x + h, o.y - w), (o.x + h, o.y)

a=180: (o.x, o.y), (o.x - w, o.y), (o.x - w, o.y - h), (o.x, o.y - h)

a=270: (o.x, o.y), (o.x, o.y + w), (o.x - h, o.y + w), (o.x - h, o.y)

A formula based on sin a and cos a is readily obtained, but floating point

computation may give only approximate results.

Public Methods

void RotatableExtent (Storage_ storage)
void RotatableExtent (::fuchsia_math::PointF origin, float width, float height, float angle_degrees)
void RotatableExtent ()

Default constructs a |RotatableExtent| only if all of its members are default constructible.

Defined at line 172 of file fidling/gen/sdk/fidl/fuchsia.ui.observation.geometry/fuchsia.ui.observation.geometry/cpp/fidl/fuchsia.ui.observation.geometry/cpp/natural_types.h

void RotatableExtent (RotatableExtent && )

Defined at line 175 of file fidling/gen/sdk/fidl/fuchsia.ui.observation.geometry/fuchsia.ui.observation.geometry/cpp/fidl/fuchsia.ui.observation.geometry/cpp/natural_types.h

void RotatableExtent (const RotatableExtent & other)
RotatableExtent & operator= (RotatableExtent && )

Defined at line 176 of file fidling/gen/sdk/fidl/fuchsia.ui.observation.geometry/fuchsia.ui.observation.geometry/cpp/fidl/fuchsia.ui.observation.geometry/cpp/natural_types.h

RotatableExtent & operator= (const RotatableExtent & other)
bool operator== (const RotatableExtent & other)
bool operator!= (const RotatableExtent & other)
const ::fuchsia_math::PointF & origin ()

The origin point of V's bounding box, in W's coordinate system.

::fuchsia_math::PointF & origin ()

The origin point of V's bounding box, in W's coordinate system.

RotatableExtent & origin (::fuchsia_math::PointF value)

The origin point of V's bounding box, in W's coordinate system.

float width ()

The width of V's bounding box (along the direction where V's x axis

increases), in W's coordinate system.

float & width ()

The width of V's bounding box (along the direction where V's x axis

increases), in W's coordinate system.

RotatableExtent & width (float value)

The width of V's bounding box (along the direction where V's x axis

increases), in W's coordinate system.

float height ()

The height of V's bounding box (along the direction where V's y axis

increases), in W's coordinate system.

float & height ()

The height of V's bounding box (along the direction where V's y axis

increases), in W's coordinate system.

RotatableExtent & height (float value)

The height of V's bounding box (along the direction where V's y axis

increases), in W's coordinate system.

float angle_degrees ()

The clockwise rotation about the origin, in degrees.

float & angle_degrees ()

The clockwise rotation about the origin, in degrees.

RotatableExtent & angle_degrees (float value)

The clockwise rotation about the origin, in degrees.

void RotatableExtent (::fidl::internal::DefaultConstructPossiblyInvalidObjectTag )

Friends

class MemberVisitor
class NaturalStructCodingTraits