[][src]Trait dxplr::d2d1::IGeometry

pub trait IGeometry: IResource {
    fn combine_with_geometry(
        &self,
        input: &impl IGeometry,
        mode: CombineMode,
        transform: Option<&Matrix3x2F>,
        tolerance: f32,
        sink: &impl ISimplifiedGeometrySink
    ) -> Result<(), HResult>;
fn compute_area(
        &self,
        transform: Option<&Matrix3x2F>,
        tolerance: f32
    ) -> Result<f32, HResult>;
fn compute_length(
        &self,
        transform: Option<&Matrix3x2F>,
        tolerance: f32
    ) -> Result<f32, HResult>;
fn compute_point_at_length(
        &self,
        length: f32,
        transform: Option<&Matrix3x2F>,
        tolerance: f32
    ) -> Result<ComputePointAtLengthResult, HResult>;
fn fill_contains_point(
        &self,
        point: impl Into<Point2F>,
        transform: Option<&Matrix3x2F>,
        tolerance: f32
    ) -> Result<bool, HResult>;
fn get_bounds(
        &self,
        transform: Option<&Matrix3x2F>
    ) -> Result<RectF, HResult>;
fn get_widened_bounds(
        &self,
        width: f32,
        stroke_style: &impl IStrokeStyle,
        transform: Option<&Matrix3x2F>,
        tolerance: f32
    ) -> Result<RectF, HResult>;
fn outline(
        &self,
        transform: Option<&Matrix3x2F>,
        tolerance: f32,
        sink: &impl ISimplifiedGeometrySink
    ) -> Result<(), HResult>;
fn simplify(
        &self,
        option: GeometrySimplificationOption,
        transform: Option<&Matrix3x2F>,
        tolerance: f32,
        sink: &impl ISimplifiedGeometrySink
    ) -> Result<(), HResult>;
fn stroke_contains_point(
        &self,
        point: impl Into<Point2F>,
        width: f32,
        stroke_style: &impl IStrokeStyle,
        transform: Option<&Matrix3x2F>,
        tolerance: f32
    ) -> Result<bool, HResult>;
fn tessellate(
        &self,
        transform: Option<&Matrix3x2F>,
        tolerance: f32,
        sink: &impl ITessellationSink
    ) -> Result<(), HResult>;
fn widen(
        &self,
        width: f32,
        stroke_style: &impl IStrokeStyle,
        transform: Option<&Matrix3x2F>,
        tolerance: f32,
        sink: &impl ISimplifiedGeometrySink
    ) -> Result<(), HResult>; }

Required methods

fn combine_with_geometry(
    &self,
    input: &impl IGeometry,
    mode: CombineMode,
    transform: Option<&Matrix3x2F>,
    tolerance: f32,
    sink: &impl ISimplifiedGeometrySink
) -> Result<(), HResult>

fn compute_area(
    &self,
    transform: Option<&Matrix3x2F>,
    tolerance: f32
) -> Result<f32, HResult>

fn compute_length(
    &self,
    transform: Option<&Matrix3x2F>,
    tolerance: f32
) -> Result<f32, HResult>

fn compute_point_at_length(
    &self,
    length: f32,
    transform: Option<&Matrix3x2F>,
    tolerance: f32
) -> Result<ComputePointAtLengthResult, HResult>

fn fill_contains_point(
    &self,
    point: impl Into<Point2F>,
    transform: Option<&Matrix3x2F>,
    tolerance: f32
) -> Result<bool, HResult>

fn get_bounds(&self, transform: Option<&Matrix3x2F>) -> Result<RectF, HResult>

fn get_widened_bounds(
    &self,
    width: f32,
    stroke_style: &impl IStrokeStyle,
    transform: Option<&Matrix3x2F>,
    tolerance: f32
) -> Result<RectF, HResult>

fn outline(
    &self,
    transform: Option<&Matrix3x2F>,
    tolerance: f32,
    sink: &impl ISimplifiedGeometrySink
) -> Result<(), HResult>

fn simplify(
    &self,
    option: GeometrySimplificationOption,
    transform: Option<&Matrix3x2F>,
    tolerance: f32,
    sink: &impl ISimplifiedGeometrySink
) -> Result<(), HResult>

fn stroke_contains_point(
    &self,
    point: impl Into<Point2F>,
    width: f32,
    stroke_style: &impl IStrokeStyle,
    transform: Option<&Matrix3x2F>,
    tolerance: f32
) -> Result<bool, HResult>

fn tessellate(
    &self,
    transform: Option<&Matrix3x2F>,
    tolerance: f32,
    sink: &impl ITessellationSink
) -> Result<(), HResult>

fn widen(
    &self,
    width: f32,
    stroke_style: &impl IStrokeStyle,
    transform: Option<&Matrix3x2F>,
    tolerance: f32,
    sink: &impl ISimplifiedGeometrySink
) -> Result<(), HResult>

Loading content...

Implementors

impl IGeometry for EllipseGeometry[src]

impl IGeometry for Geometry[src]

impl IGeometry for GeometryGroup[src]

impl IGeometry for PathGeometry[src]

impl IGeometry for RectangleGeometry[src]

impl IGeometry for RoundedRectangleGeometry[src]

impl IGeometry for TransformedGeometry[src]

Loading content...