Struct arrayfire::Window[][src]

pub struct Window { /* fields omitted */ }

Used to render Array objects

The renderings can be either plots, histograms or simply just image displays. A single window can also display multiple of the above renderings at the same time, which is known as multiview mode. An example of that is given below.

Examples

use arrayfire::{histogram, load_image, Window};
let mut wnd = Window::new(1280, 720, String::from("Image Histogram"));
let img = load_image::<f32>("Path to image".to_string(), true/*If color image, 'false' otherwise*/);
let hst = histogram(&img, 256, 0 as f64, 255 as f64);

loop {
    wnd.grid(2, 1);

    wnd.set_view(0, 0);
    wnd.draw_image(&img, Some("Input Image".to_string()));

    wnd.set_view(1, 0);
    wnd.draw_hist(&hst, 0.0, 255.0, Some("Input Image Histogram".to_string()));

    wnd.show();

    if wnd.is_closed() == true { break; }
}

Methods

impl Window
[src]

Creates new Window object

Parameters

  • width is width of the window
  • height is the height of window
  • title is the string displayed on window title bar

Return Values

Window Object

Set window starting position on the screen

Parameters

  • x is the horiontal coordinate where window is to be placed
  • y is the vertical coordinate where window is to be placed

Set window title

Parameters

  • title is the string to be displayed on window title bar

Set window visibility

Parameters

  • is_visible is a boolean indicating whether window is to be hidden or brought into focus

Return Values

None

Set window size

Parameters

  • w is the target width of window
  • h is the target height of window

Set color map to be used for rendering image, it can take one of the values of enum ColorMap

Returns true if the window close is triggered by the user

Setup display layout in multiview mode

Parameters

  • rows is the number of rows into which whole window is split into in multiple view mode
  • cols is the number of cols into which whole window is split into in multiple view mode

Used in multiview mode to swap back buffer with front buffer to show the recently rendered frame

Set the current sub-region to render

This function is only to be used into multiview mode

Parameters

  • r is the target row id
  • c is the target row id

Set chart axes titles

Parameters

  • xlabel is x axis title
  • ylabel is y axis title
  • zlabel is z axis title

Set chart axes limits by computing limits from data

In multiple view (grid) mode, setting limits will effect the chart that is currently active via set_view call

Parameters

  • xrange is set of all x values to compute min/max for x axis
  • yrange is set of all y values to compute min/max for y axis
  • zrange is set of all z values to compute min/max for z axis. If None is passed to this paramter, 2d chart limits are set.
  • exact indicates if the exact min/max values from xrange, yrange and zrange are to extracted. If exact is false then the most significant digit is rounded up to next power of 2 and the magnitude remains the same.

Set 2d chart axes limits

In multiple view (grid) mode, setting limits will effect the chart that is currently active via set_view call

Parameters

  • xmin is minimum value on x axis
  • xmax is maximum value on x axis
  • ymin is minimum value on y axis
  • ymax is maximum value on y axis
  • exact indicates if the exact min/max values from xrange, yrange and zrange are to extracted. If exact is false then the most significant digit is rounded up to next power of 2 and the magnitude remains the same.

Set 3d chart axes limits

In multiple view (grid) mode, setting limits will effect the chart that is currently active via set_view call

Parameters

  • xmin is minimum value on x axis
  • xmax is maximum value on x axis
  • ymin is minimum value on y axis
  • ymax is maximum value on y axis
  • zmin is minimum value on z axis
  • zmax is maximum value on z axis
  • exact indicates if the exact min/max values from xrange, yrange and zrange are to extracted. If exact is false then the most significant digit is rounded up to next power of 2 and the magnitude remains the same.

Render given Array as an image

Parameters

  • input image
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render given two Array's x and y as a 2d line plot

Parameters

  • x is the x coordinates of the plot
  • y is the y coordinates of the plot
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render given Array's x, y and z as a 3d line plot

Parameters

  • x is the x coordinates of the plot
  • y is the y coordinates of the plot
  • z is the z coordinates of the plot
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render give Arrays of points as a 3d line plot

Parameters

  • points is an Array containing list of points of plot
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render given Array as a histogram

Parameters

  • hst is an Array containing histogram data
  • minval is the minimum bin value of histogram
  • maxval is the maximum bin value of histogram
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render give Arrays as 3d surface

Parameters

  • x is the x coordinates of the surface plot
  • y is the y coordinates of the surface plot
  • z is the z coordinates of the surface plot
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render given Arrays as 2d scatter plot

Parameters

  • xvals is the x coordinates of the scatter plot
  • yvals is the y coordinates of the scatter plot
  • marker is of enum type MarkerType
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render given Arrays as 3d scatter plot

Parameters

  • xvals is the x coordinates of the scatter plot
  • yvals is the y coordinates of the scatter plot
  • zvals is the z coordinates of the scatter plot
  • marker is of enum type MarkerType
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render give Array as 3d scatter plot

Parameters

  • points is an Array containing list of points of plot
  • marker is of enum type MarkerType
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render given Arrays as 2d vector field

Parameters

  • xpnts is an Array containing list of x coordinates
  • xdirs is an Array containing direction component of x coord
  • ypnts is an Array containing list of y coordinates
  • ydirs is an Array containing direction component of y coord
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render given Arrays as 3d vector field

Parameters

  • xpnts is an Array containing list of x coordinates
  • xdirs is an Array containing direction component of x coord
  • ypnts is an Array containing list of y coordinates
  • ydirs is an Array containing direction component of y coord
  • zpnts is an Array containing list of z coordinates
  • zdirs is an Array containing direction component of z coord
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Render given Array as vector field

Parameters

  • points is an Array containing list of coordinates of vector field
  • directions is an Array containing directions at the coordinates specified in points Array.
  • title parameter has effect only in multiview mode, where this string is displayed as the respective cell/view title.

Trait Implementations

impl Clone for Window
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl From<u64> for Window
[src]

Used to create Window object from native(ArrayFire) resource handle

Performs the conversion.

impl Drop for Window
[src]

Executes the destructor for this type. Read more

Auto Trait Implementations

impl Send for Window

impl Sync for Window