Struct notcurses::sys::c_api::ncvisual_options
source · pub struct ncvisual_options {}Fields§
§n: *mut ncplaneif no ncplane is provided, one will be created using the exact size necessary to render the source with perfect fidelity (this might be smaller or larger than the rendering area). if NCVISUAL_OPTION_CHILDPLANE is provided, this must be non-NULL, and will be interpreted as the parent.
scaling: u32the scaling is ignored if no ncplane is provided (it ought be NCSCALE_NONE in this case). otherwise, the source is stretched/scaled relative to the provided ncplane.
y: i32if an ncplane is provided, y and x specify where the visual will be rendered on that plane. otherwise, they specify where the created ncplane will be placed relative to the standard plane’s origin. x is an ncalign_e value if NCVISUAL_OPTION_HORALIGNED is provided. y is an ncalign_e if NCVISUAL_OPTION_VERALIGNED is provided.
x: i32if an ncplane is provided, y and x specify where the visual will be rendered on that plane. otherwise, they specify where the created ncplane will be placed relative to the standard plane’s origin. x is an ncalign_e value if NCVISUAL_OPTION_HORALIGNED is provided. y is an ncalign_e if NCVISUAL_OPTION_VERALIGNED is provided.
begy: u32origin of rendered region in pixels
begx: u32origin of rendered region in pixels
leny: u32size of rendered region in pixels
lenx: u32size of rendered region in pixels
blitter: u32glyph set to use (maps input to output cells)
flags: u64bitmask over NCVISUAL_OPTION_*
transcolor: u32treat this color as transparent under NCVISUAL_OPTION_ADDALPHA
pxoffy: u32pixel offsets within the cell. if NCBLIT_PIXEL is used, the bitmap will be drawn offset from the upper-left cell’s origin by these amounts. it is an error if either number exceeds the cell-pixel geometry in its dimension. if NCBLIT_PIXEL is not used, these fields are ignored. this functionality can be used for smooth bitmap movement.
pxoffx: u32pixel offsets within the cell. if NCBLIT_PIXEL is used, the bitmap will be drawn offset from the upper-left cell’s origin by these amounts. it is an error if either number exceeds the cell-pixel geometry in its dimension. if NCBLIT_PIXEL is not used, these fields are ignored. this functionality can be used for smooth bitmap movement.
Implementations§
source§impl<'ncplane> ncvisual_options
impl<'ncplane> ncvisual_options
sourcepub fn builder() -> NcVisualOptionsBuilder<'ncplane>
pub fn builder() -> NcVisualOptionsBuilder<'ncplane>
Returns a builder object for NcVisualOptions.
sourcepub fn new(
plane: Option<&mut ncplane>,
scale: impl Into<NcScale>,
y: i32,
x: i32,
section_yx_lenyx: Option<(u32, u32, u32, u32)>,
cell_offset_yx: Option<(u32, u32)>,
blitter: impl Into<NcBlitter>,
flags: impl Into<NcVisualFlag>,
transcolor: impl Into<NcRgba>
) -> ncvisual_options
pub fn new( plane: Option<&mut ncplane>, scale: impl Into<NcScale>, y: i32, x: i32, section_yx_lenyx: Option<(u32, u32, u32, u32)>, cell_offset_yx: Option<(u32, u32)>, blitter: impl Into<NcBlitter>, flags: impl Into<NcVisualFlag>, transcolor: impl Into<NcRgba> ) -> ncvisual_options
New NcVisualOptions.
Arguments
-
plane- an optional mutable pointer to anNcPlane. -
scale- AnNcScaleindicating how the source will be stretched/scaled relative to theNcPlane. -
y- if anNcPlaneis provided inplanethen this specifies where theNcVisualwill be on that plane in the y axis.Otherwise it specifies where the created
NcPlanewill be placed in the y axis, relative to the standard plane’s origin.If
VerAlignedis set, this will be interpreted as anNcAlignvalue. -
x- if anNcPlaneis provided inplanethen this specifies where theNcVisualwill be on that plane, in the x axis.Otherwise it specifies where the created
NcPlanewill be placed, in the y axis, relative to the standard plane’s origin.If
HorAlignedis set, this will be interpreted as anNcAlignvalue. -
section_yx_lenyx- The size of the rendered section.Nonerenders the entire visual, otherwise the provided tuple (y,x,len_y,len_x) sets[yx]as the origin of the section andlen_[yx]as the its length on each respective dimension. -
cell_offset_yx- Pixel offsets within the cell.If
NcBlitter::Pixelis used the bitmap will be drawn offset from the upper-left cell’s origin by these amounts, otherwise this will be ignored.It is an error if either number exceeds the cell-pixel geometry in any dimension (see
NcVisualGeometry.cdim_yx). -
blitter-NcBlitterglyph set to use for blitting. -
flags-NcVisualFlag. -
transcolor- treats this color as transparent when theAddAlphaflag is active
Notes
If the Childplane flag is used then the plane is interpreted as
the parent NcPlane of the new plane created for this
NcVisual.
source§impl ncvisual_options
impl ncvisual_options
sourcepub fn does_plane(&self) -> bool
pub fn does_plane(&self) -> bool
Returns true if it does have an associated NcPlane.
sourcepub fn does_child_plane(&self) -> bool
pub fn does_child_plane(&self) -> bool
Returns true if it has the ChildPlane flag set.
sourcepub fn does_alpha(&self) -> bool
pub fn does_alpha(&self) -> bool
Returns true if it has the AddAlpha flag set.
sourcepub fn does_blend(&self) -> bool
pub fn does_blend(&self) -> bool
Returns true if it has the Blend flag set.
sourcepub fn does_degrade(&self) -> bool
pub fn does_degrade(&self) -> bool
Returns false if it has the NoDegrade flag set.
sourcepub fn does_interpolate(&self) -> bool
pub fn does_interpolate(&self) -> bool
Returns false if it has the NoInterpolate flag set.
sourcepub fn is_veraligned(&self) -> bool
pub fn is_veraligned(&self) -> bool
Returns true if it has the VerAligned flag set.
sourcepub fn is_horaligned(&self) -> bool
pub fn is_horaligned(&self) -> bool
Returns true if it has the HorAligned flag set.
Trait Implementations§
source§impl Debug for ncvisual_options
impl Debug for ncvisual_options
source§impl Default for ncvisual_options
impl Default for ncvisual_options
source§fn default() -> ncvisual_options
fn default() -> ncvisual_options
source§impl<'a> From<NcVisualOptionsBuilder<'a>> for ncvisual_options
impl<'a> From<NcVisualOptionsBuilder<'a>> for ncvisual_options
source§fn from(builder: NcVisualOptionsBuilder<'a>) -> ncvisual_options
fn from(builder: NcVisualOptionsBuilder<'a>) -> ncvisual_options
source§impl<'a> From<ncvisual_options> for NcVisualOptionsBuilder<'a>
impl<'a> From<ncvisual_options> for NcVisualOptionsBuilder<'a>
source§fn from(options: ncvisual_options) -> NcVisualOptionsBuilder<'a>
fn from(options: ncvisual_options) -> NcVisualOptionsBuilder<'a>
source§impl From<ncvisual_options> for VisualOptions
impl From<ncvisual_options> for VisualOptions
source§fn from(ncvo: NcVisualOptions) -> VisualOptions
fn from(ncvo: NcVisualOptions) -> VisualOptions
source§impl Hash for ncvisual_options
impl Hash for ncvisual_options
source§impl Ord for ncvisual_options
impl Ord for ncvisual_options
source§fn cmp(&self, other: &ncvisual_options) -> Ordering
fn cmp(&self, other: &ncvisual_options) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
source§impl PartialEq<ncvisual_options> for ncvisual_options
impl PartialEq<ncvisual_options> for ncvisual_options
source§fn eq(&self, other: &ncvisual_options) -> bool
fn eq(&self, other: &ncvisual_options) -> bool
self and other values to be equal, and is used
by ==.source§impl PartialOrd<ncvisual_options> for ncvisual_options
impl PartialOrd<ncvisual_options> for ncvisual_options
source§fn partial_cmp(&self, other: &ncvisual_options) -> Option<Ordering>
fn partial_cmp(&self, other: &ncvisual_options) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self and other) and is used by the <=
operator. Read more