SurfaceBackedCanvas

eu.joaocosta.minart.graphics.SurfaceBackedCanvas

Canvas backed by a mutable surface.

Attributes

Graph
Supertypes
trait AutoCloseable
trait Canvas
trait Surface
class Object
trait Matchable
class Any
Show all

Members list

Value members

Abstract methods

protected def surface: MutableSurface

Concrete methods

override def blit(that: Surface, blendMode: BlendMode)(x: Int, y: Int, cx: Int, cy: Int, cw: Int, ch: Int): Unit

Draws a surface on top of this surface.

Draws a surface on top of this surface.

Value parameters

blendMode

blend strategy to use

ch

clip height of the source surface

cw

clip width of the source surface

cx

leftmost pixel on the source surface

cy

topmost pixel on the source surface

that

surface to draw

x

leftmost pixel on the destination surface

y

topmost pixel on the destination surface

Attributes

Definition Classes
override def fill(color: Color): Unit

Fill the whole surface with a certain color.

Fill the whole surface with a certain color.

Value parameters

color

Color to fill the surface with

Attributes

Definition Classes
def fillRegion(x: Int, y: Int, w: Int, h: Int, color: Color): Unit

Fill part of the surface with a certain color.

Fill part of the surface with a certain color.

Value parameters

color

Color to fill the surface with

h

region height

w

region width

x

leftmost pixel on the destination surface

y

topmost pixel on the destination surface

Attributes

override def getPixels(): Vector[Array[Color]]

Returns the pixels from this surface. This operation can be perfomance intensive, so it might be worthwile to implement this operation on the application code.

Returns the pixels from this surface. This operation can be perfomance intensive, so it might be worthwile to implement this operation on the application code.

Attributes

Returns

color matrix

Definition Classes
def unsafeGetPixel(x: Int, y: Int): Color

Gets the color from the this surface in an unsafe way.

Gets the color from the this surface in an unsafe way.

This operation is unsafe: reading a out of bounds pixel has undefined behavior. You should only use this if the performance of getPixel and getPixels are not acceptable.

Value parameters

x

pixel x position

y

pixel y position

Attributes

Returns

pixel color

def unsafePutPixel(x: Int, y: Int, color: Color): Unit

Puts a pixel in the surface in an unsafe way.

Puts a pixel in the surface in an unsafe way.

This operation is unsafe: writing a out of bounds pixel has undefined behavior. You should only use this if the performance of putPixel is not acceptable.

Value parameters

x

pixel x position

y

pixel y position

Attributes

Returns

pixel color

Inherited methods

The settings applied to this canvas.

The settings applied to this canvas.

Attributes

Inherited from:
LowLevelCanvas
def changeSettings(newSettings: Settings): Unit

Changes the settings of the subsystem.

Changes the settings of the subsystem.

Value parameters

newSettings

new settings to apply

Attributes

Inherited from:
Extended
def clear(buffers: Set[Buffer]): Unit

Clears buffers, such as the backbuffer and keyboard inputs.

Clears buffers, such as the backbuffer and keyboard inputs.

Value parameters

buffers

set of Canvas.Buffers to be cleared

Attributes

Inherited from:
Canvas
def close(): Unit

Destroys the subsystem.

Destroys the subsystem.

Calling any operation on this object after calling close() without calling init() has an undefined behavior.

Attributes

Inherited from:
Extended
def extendedSettings: ExtendedSettings

Attributes

Inherited from:
Extended

Gets the current keyboard input.

Gets the current keyboard input.

Attributes

Returns

current keyboard input

Inherited from:
Canvas
final def getPixel(x: Int, y: Int): Option[Color]

Gets the color from the this surface. This operation can be perfomance intensive, so it might be worthwile to either use getPixels to fetch multiple pixels at the same time or to implement this operation on the application code.

Gets the color from the this surface. This operation can be perfomance intensive, so it might be worthwile to either use getPixels to fetch multiple pixels at the same time or to implement this operation on the application code.

Value parameters

x

pixel x position

y

pixel y position

Attributes

Returns

pixel color

Inherited from:
Surface
final def getPixelOrElse(x: Int, y: Int, fallback: Color): Color

Gets the color from the this surface, falling back to a default color when out of bounds. Similar to getPixel(x, y).getOrElse(fallback), but avoids an allocation.

Gets the color from the this surface, falling back to a default color when out of bounds. Similar to getPixel(x, y).getOrElse(fallback), but avoids an allocation.

Value parameters

fallback

fallback color

x

pixel x position

y

pixel y position

Attributes

Returns

pixel color

Inherited from:
Surface

Gets the current pointer input.

Gets the current pointer input.

Attributes

Returns

current pointer input

Inherited from:
Canvas
final def height: Int

The surface height.

The surface height.

Attributes

Inherited from:
Canvas
def init(settings: Settings): Extended.this.type

Creates the subsystem.

Creates the subsystem.

Operations can only be called after calling this.

Value parameters

settings

settings used to configure the subsystem

Attributes

Returns

this subsystem

Inherited from:
Extended

Checks if the subsystem is created or if it has been destroyed.

Checks if the subsystem is created or if it has been destroyed.

Attributes

Inherited from:
Extended

Modifies this surface using surface view transformations

Modifies this surface using surface view transformations

Value parameters

f

operations to apply

Attributes

Inherited from:
MutableSurface
final def putPixel(x: Int, y: Int, color: Color): Unit

Put a pixel in the surface with a certain color.

Put a pixel in the surface with a certain color.

Value parameters

color

Color to apply to the pixel

x

pixel x position

y

pixel y position

Attributes

Inherited from:
MutableSurface
def redraw(): Unit

Flips buffers and redraws the screen.

Flips buffers and redraws the screen.

Attributes

Inherited from:
Canvas
def settings: Settings

Returns the current settings.

Returns the current settings.

Attributes

Inherited from:
Extended
final def toRamSurface(): RamSurface

Copies this surface into a new surface stored in RAM.

Copies this surface into a new surface stored in RAM.

Attributes

Inherited from:
Surface
protected def unsafeApplySettings(settings: Settings): ExtendedSettings

Configures the subsystem according to the settings and returns the applied extended settings.

Configures the subsystem according to the settings and returns the applied extended settings.

Attributes

Inherited from:
Extended
protected def unsafeDestroy(): Unit

Unsafe implementation of the subsystem destroy.

Unsafe implementation of the subsystem destroy.

Attributes

Inherited from:
Extended
protected def unsafeInit(): Unit

Unsafe implementation of the subsystem init.

Unsafe implementation of the subsystem init.

Attributes

Inherited from:
Extended

Returns a view over this surface.

Returns a view over this surface.

Operations performed on a view are executed in a defered fashion.

Attributes

Inherited from:
Surface
final def width: Int

The surface width.

The surface width.

Attributes

Inherited from:
Canvas

Deprecated and Inherited methods

def blit(that: Surface, mask: Option[Color])(x: Int, y: Int, cx: Int, cy: Int, cw: Int, ch: Int): Unit

Draws a surface on top of this surface.

Draws a surface on top of this surface.

Value parameters

ch

clip height of the source surface

cw

clip width of the source surface

cx

leftmost pixel on the source surface

cy

topmost pixel on the source surface

mask

color to use as a mask (pixels with this color won't be merged)

that

surface to draw

x

leftmost pixel on the destination surface

y

topmost pixel on the destination surface

Attributes

Deprecated
true
Inherited from:
MutableSurface

Inherited fields

Attributes

Inherited from:
Extended