| Flutter Impeller |

Public Types | Public Attributes | List of all members
impeller::GeometryResult Struct Reference

`#include <geometry.h>`

## Public Types
enum class | Mode { kNormal , kNonZero , kEvenOdd , kPreventOverdraw }

## Public Attributes
PrimitiveType | type = PrimitiveType::kTriangleStrip
VertexBuffer | vertex_buffer
Matrix | transform
Mode | mode = Mode::kNormal

## Detailed Description

Definition at line 21 of file geometry.h.

## Member Enumeration Documentation

## ◆ Mode

enum impeller::GeometryResult::Mode
| strong

Enumerator
kNormal | The geometry has no overlapping triangles.
kNonZero | The geometry may have overlapping triangles. The geometry should be stenciled with the NonZero fill rule.
kEvenOdd | The geometry may have overlapping triangles. The geometry should be stenciled with the EvenOdd fill rule.
kPreventOverdraw | The geometry may have overlapping triangles, but they should not overdraw or cancel each other out. This is a special case for stroke geometry.

Definition at line 22 of file geometry.h.

22 {
23 /// The geometry has no overlapping triangles.
24 kNormal,
25 /// The geometry may have overlapping triangles. The geometry should be
26 /// stenciled with the NonZero fill rule.
27 kNonZero,
28 /// The geometry may have overlapping triangles. The geometry should be
29 /// stenciled with the EvenOdd fill rule.
30 kEvenOdd,
31 /// The geometry may have overlapping triangles, but they should not
32 /// overdraw or cancel each other out. This is a special case for stroke
33 /// geometry.
34 kPreventOverdraw,
35 };
impeller::FillType::kNonZero
@ kNonZero

## Member Data Documentation

## ◆ mode

Mode impeller::GeometryResult::mode = Mode::kNormal

Definition at line 40 of file geometry.h.

Referenced by impeller::ColorSourceContents::DrawGeometry(), impeller::ShadowVerticesContents::Render(), impeller::VerticesSimpleBlendContents::Render(), impeller::ClipContents::Render(), impeller::testing::TEST(), and impeller::testing::TEST_P().

## ◆ transform

Matrix impeller::GeometryResult::transform

Definition at line 39 of file geometry.h.

Referenced by impeller::ColorSourceContents::DrawGeometry(), impeller::VerticesSimpleBlendContents::Render(), impeller::ClipContents::Render(), and impeller::testing::TEST().

## ◆ type

PrimitiveType impeller::GeometryResult::type = PrimitiveType::kTriangleStrip

Definition at line 37 of file geometry.h.

Referenced by impeller::Geometry::ComputePositionGeometry(), impeller::ColorSourceContents::DrawGeometry(), impeller::ShadowVertices::GetPositionBuffer(), impeller::DlVerticesGeometry::GetPositionBuffer(), impeller::FillRectGeometry::GetPositionBuffer(), impeller::StrokeRectGeometry::GetPositionBuffer(), impeller::DlVerticesGeometry::GetPositionUVColorBuffer(), impeller::ShadowVerticesContents::Render(), impeller::VerticesSimpleBlendContents::Render(), impeller::ClipContents::Render(), and impeller::testing::TEST().

## ◆ vertex_buffer

VertexBuffer impeller::GeometryResult::vertex_buffer

Definition at line 38 of file geometry.h.

Referenced by impeller::ColorSourceContents::DrawGeometry(), impeller::ShadowVerticesContents::Render(), impeller::VerticesSimpleBlendContents::Render(), impeller::ClipContents::Render(), and impeller::testing::TEST_P().

The documentation for this struct was generated from the following file:

- impeller/entity/geometry/geometry.h