pub struct VectorObject { /* private fields */ }Expand description
A VectorObject is a vector object that can be drawn on a vector graphics canvas.
Implementations§
Source§impl VectorObject
impl VectorObject
Sourcepub fn new(
path: Path2D,
fill: Style,
fill_rule: String,
stroke: Style,
stroke_width: f32,
stroke_line_cap: String,
stroke_line_join: String,
stroke_miter_limit: f32,
stroke_dash_offset: f32,
stroke_dash_array: Vec<f32>,
children: Vec<VectorObject>,
name: Option<String>,
transform: TransformationMatrix,
) -> VectorObject
pub fn new( path: Path2D, fill: Style, fill_rule: String, stroke: Style, stroke_width: f32, stroke_line_cap: String, stroke_line_join: String, stroke_miter_limit: f32, stroke_dash_offset: f32, stroke_dash_array: Vec<f32>, children: Vec<VectorObject>, name: Option<String>, transform: TransformationMatrix, ) -> VectorObject
Creates a new VectorObject.
Sourcepub fn clone_js(&self) -> VectorObject
pub fn clone_js(&self) -> VectorObject
Clones the vector object.
Sourcepub fn default_vector_object() -> VectorObject
pub fn default_vector_object() -> VectorObject
Creates a new empty VectorObject.
Sourcepub fn stroke_width(&self) -> f32
pub fn stroke_width(&self) -> f32
Gets the stroke width of the VectorObject.
Sourcepub fn stroke_line_cap(&self) -> String
pub fn stroke_line_cap(&self) -> String
Gets the stroke line cap of the VectorObject.
Sourcepub fn stroke_line_join(&self) -> String
pub fn stroke_line_join(&self) -> String
Gets the stroke line join of the VectorObject.
Sourcepub fn stroke_miter_limit(&self) -> f32
pub fn stroke_miter_limit(&self) -> f32
Gets the stroke miter limit of VectorObject.
Sourcepub fn stroke_dash_offset(&self) -> f32
pub fn stroke_dash_offset(&self) -> f32
Gets the stroke dash offset of the VectorObject.
Sourcepub fn stroke_dash_array(&self) -> Vec<f32>
pub fn stroke_dash_array(&self) -> Vec<f32>
Gets the stroke dash array of the VectorObject.
Sourcepub fn children(&self) -> Vec<VectorObject>
pub fn children(&self) -> Vec<VectorObject>
Gets the children of the VectorObject.
Sourcepub fn transform(&self) -> TransformationMatrix
pub fn transform(&self) -> TransformationMatrix
Gets the transformation matrix of the VectorObject.
Sourcepub fn actual_path(&self) -> Path2D
pub fn actual_path(&self) -> Path2D
Gets the Path2D with the applied TransformationMatrix.
Sourcepub fn bounding_box(&self, recursive: Option<bool>) -> Option<BoundingBox>
pub fn bounding_box(&self, recursive: Option<bool>) -> Option<BoundingBox>
Gets the BoundingBox of the VectorObject.
Sourcepub fn get_critical_point(
&self,
key_x: f32,
key_y: f32,
recursive: Option<bool>,
) -> Option<Point2D>
pub fn get_critical_point( &self, key_x: f32, key_y: f32, recursive: Option<bool>, ) -> Option<Point2D>
Gets the critical Point2D of the VectorObject.
Sourcepub fn get_children_recursive(
&self,
with_points: Option<bool>,
) -> Vec<VectorObject>
pub fn get_children_recursive( &self, with_points: Option<bool>, ) -> Vec<VectorObject>
Gets the children of the VectorObject recursively.
Sourcepub fn num_curves(&self) -> usize
pub fn num_curves(&self) -> usize
Gets the number of cubic bezier curves in the vector object.
Sourcepub fn num_points(&self) -> usize
pub fn num_points(&self) -> usize
Gets the number of points in the VectorObject’s path.
Sourcepub fn num_children(&self) -> usize
pub fn num_children(&self) -> usize
Gets the number of children in the VectorObject.
Sourcepub fn slice_children(&self, start: usize, end: usize) -> Vec<VectorObject>
pub fn slice_children(&self, start: usize, end: usize) -> Vec<VectorObject>
Slices the VectorObject’s children.
Sourcepub fn get_children_by_names(&self, names: Vec<String>) -> Vec<VectorObject>
pub fn get_children_by_names(&self, names: Vec<String>) -> Vec<VectorObject>
Gets the children of the VectorObject with the given names.
Source§impl VectorObject
impl VectorObject
pub fn apply_operation(&mut self, operation: &dyn VectorOperation)
Trait Implementations§
Source§impl Clone for VectorObject
impl Clone for VectorObject
Source§fn clone(&self) -> VectorObject
fn clone(&self) -> VectorObject
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for VectorObject
impl Debug for VectorObject
Source§impl Default for VectorObject
impl Default for VectorObject
Source§impl From<VectorObject> for JsValue
impl From<VectorObject> for JsValue
Source§fn from(value: VectorObject) -> Self
fn from(value: VectorObject) -> Self
Source§impl FromWasmAbi for VectorObject
impl FromWasmAbi for VectorObject
Source§impl IntoWasmAbi for VectorObject
impl IntoWasmAbi for VectorObject
Source§impl LongRefFromWasmAbi for VectorObject
impl LongRefFromWasmAbi for VectorObject
Source§impl OptionFromWasmAbi for VectorObject
impl OptionFromWasmAbi for VectorObject
Source§impl OptionIntoWasmAbi for VectorObject
impl OptionIntoWasmAbi for VectorObject
Source§impl RefFromWasmAbi for VectorObject
impl RefFromWasmAbi for VectorObject
Source§type Anchor = RcRef<VectorObject>
type Anchor = RcRef<VectorObject>
Self for the duration of the
invocation of the function that has an &Self parameter. This is
required to ensure that the lifetimes don’t persist beyond one function
call, and so that they remain anonymous.Source§impl RefMutFromWasmAbi for VectorObject
impl RefMutFromWasmAbi for VectorObject
Source§impl TryFromJsValue for VectorObject
impl TryFromJsValue for VectorObject
Source§impl VectorFromWasmAbi for VectorObject
impl VectorFromWasmAbi for VectorObject
type Abi = <Box<[JsValue]> as FromWasmAbi>::Abi
unsafe fn vector_from_abi(js: Self::Abi) -> Box<[VectorObject]>
Source§impl VectorIntoWasmAbi for VectorObject
impl VectorIntoWasmAbi for VectorObject
type Abi = <Box<[JsValue]> as IntoWasmAbi>::Abi
fn vector_into_abi(vector: Box<[VectorObject]>) -> Self::Abi
Source§impl WasmDescribeVector for VectorObject
impl WasmDescribeVector for VectorObject
impl SupportsConstructor for VectorObject
impl SupportsInstanceProperty for VectorObject
impl SupportsStaticProperty for VectorObject
Auto Trait Implementations§
impl Freeze for VectorObject
impl RefUnwindSafe for VectorObject
impl !Send for VectorObject
impl !Sync for VectorObject
impl Unpin for VectorObject
impl UnwindSafe for VectorObject
Blanket Implementations§
Source§impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for Swhere
T: Real + Zero + Arithmetics + Clone,
Swp: WhitePoint<T>,
Dwp: WhitePoint<T>,
D: AdaptFrom<S, Swp, Dwp, T>,
Source§fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
fn adapt_into_using<M>(self, method: M) -> Dwhere
M: TransformMatrix<T>,
Source§fn adapt_into(self) -> D
fn adapt_into(self) -> D
Source§impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
impl<T, C> ArraysFrom<C> for Twhere
C: IntoArrays<T>,
Source§fn arrays_from(colors: C) -> T
fn arrays_from(colors: C) -> T
Source§impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
impl<T, C> ArraysInto<C> for Twhere
C: FromArrays<T>,
Source§fn arrays_into(self) -> C
fn arrays_into(self) -> C
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
impl<WpParam, T, U> Cam16IntoUnclamped<WpParam, T> for Uwhere
T: FromCam16Unclamped<WpParam, U>,
Source§type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
type Scalar = <T as FromCam16Unclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn cam16_into_unclamped(
self,
parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>,
) -> T
fn cam16_into_unclamped( self, parameters: BakedParameters<WpParam, <U as Cam16IntoUnclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
impl<T, C> ComponentsFrom<C> for Twhere
C: IntoComponents<T>,
Source§fn components_from(colors: C) -> T
fn components_from(colors: C) -> T
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> Filterable for T
impl<T> Filterable for T
Source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
Source§impl<T> FromAngle<T> for T
impl<T> FromAngle<T> for T
Source§fn from_angle(angle: T) -> T
fn from_angle(angle: T) -> T
angle.Source§impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
impl<T, U> FromStimulus<U> for Twhere
U: IntoStimulus<T>,
Source§fn from_stimulus(other: U) -> T
fn from_stimulus(other: U) -> T
other into Self, while performing the appropriate scaling,
rounding and clamping.Source§impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
impl<T, U> IntoAngle<U> for Twhere
U: FromAngle<T>,
Source§fn into_angle(self) -> U
fn into_angle(self) -> U
T.Source§impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
impl<WpParam, T, U> IntoCam16Unclamped<WpParam, T> for Uwhere
T: Cam16FromUnclamped<WpParam, U>,
Source§type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
type Scalar = <T as Cam16FromUnclamped<WpParam, U>>::Scalar
parameters when converting.Source§fn into_cam16_unclamped(
self,
parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>,
) -> T
fn into_cam16_unclamped( self, parameters: BakedParameters<WpParam, <U as IntoCam16Unclamped<WpParam, T>>::Scalar>, ) -> T
self into C, using the provided parameters.Source§impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
impl<T, U> IntoColor<U> for Twhere
U: FromColor<T>,
Source§fn into_color(self) -> U
fn into_color(self) -> U
Source§impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
impl<T, U> IntoColorUnclamped<U> for Twhere
U: FromColorUnclamped<T>,
Source§fn into_color_unclamped(self) -> U
fn into_color_unclamped(self) -> U
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoStimulus<T> for T
impl<T> IntoStimulus<T> for T
Source§fn into_stimulus(self) -> T
fn into_stimulus(self) -> T
self into T, while performing the appropriate scaling,
rounding and clamping.Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().Source§impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
impl<T> ReturnWasmAbi for Twhere
T: IntoWasmAbi,
Source§type Abi = <T as IntoWasmAbi>::Abi
type Abi = <T as IntoWasmAbi>::Abi
IntoWasmAbi::AbiSource§fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
fn return_abi(self) -> <T as ReturnWasmAbi>::Abi
IntoWasmAbi::into_abi, except that it may throw and never
return in the case of Err.Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Source§impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
impl<T, C> TryComponentsInto<C> for Twhere
C: TryFromComponents<T>,
Source§type Error = <C as TryFromComponents<T>>::Error
type Error = <C as TryFromComponents<T>>::Error
try_into_colors fails to cast.Source§fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
fn try_components_into(self) -> Result<C, <T as TryComponentsInto<C>>::Error>
Source§impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
impl<T, U> TryIntoColor<U> for Twhere
U: TryFromColor<T>,
Source§fn try_into_color(self) -> Result<U, OutOfBounds<U>>
fn try_into_color(self) -> Result<U, OutOfBounds<U>>
OutOfBounds error is returned which contains
the unclamped color. Read more