blob: 3679d137f353987c609f777133895be46c1aa4a0 [file] [log] [blame]
// Copyright 2017 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
library fuchsia.ui.gfx;
// The shapes defined in this file can be used to define the rendered shape of
// an |ObjectNode|, and to define the clip region of a |ClipNode|.
// Rectangle centered at (0,0).
struct RectangleArgs {
Value width; // float32
Value height; // float32
};
// RoundedRectangle centered at (0,0). Legal parameter values must satisfy the
// constraint that the flat sides of the rectangle have non-negative length.
// In other words, the following constraints must hold:
// - top_left_radius + top_right_radius <= width
// - bottom_left_radius + bottom_right_radius <= width
// - top_left_radius + bottom_left_radius <= height
// - top_right_radius + bottom_right_radius <= height
struct RoundedRectangleArgs {
Value width; // float32
Value height; // float32
Value top_left_radius; // float32
Value top_right_radius; // float32
Value bottom_right_radius; // float32
Value bottom_left_radius; // float32
};
struct CircleArgs {
Value radius; // float32
};
// A Mesh cannot be rendered until it has been bound to vertex/index buffers;
// see BindMeshBuffersCmd.
struct MeshArgs {
uint8 dummy;
};