tawasuyu/llimphi
Sovereign retained-mode GPU UI framework in Rust (wgpu+vello+taffy+parley), Elm loop, 40+ widgets.
1// Copyright 2024 the Velato Authors
2// SPDX-License-Identifier: Apache-2.0 OR MIT
3
4use crate::schema::constants::trim_multiple_shapes::TrimMultipleShapes;
5use crate::schema::{animated_properties::value::FloatValue, shapes::modifier::ModifierShape};
6use serde::{Deserialize, Serialize};
7
8use super::graphic_element::GraphicElementShape;
9
10/// Trims shapes into a segment.
11#[derive(Debug, Serialize, Deserialize, Clone, PartialEq)]
12pub struct TrimPathShape {
13 #[serde(flatten)]
14 pub modifier: ModifierShape,
15
16 /// Segment start.
17 #[serde(rename = "s")]
18 pub start: FloatValue,
19
20 /// Segment end.
21 #[serde(rename = "e")]
22 pub end: FloatValue,
23
24 /// Offset.
25 #[serde(rename = "o")]
26 pub offset: FloatValue,
27
28 /// How to treat multiple copies.
29 #[serde(rename = "m")]
30 #[serde(skip_serializing_if = "Option::is_none")]
31 pub multiple: Option<TrimMultipleShapes>,
32}