Subtexture created from pixel coordinates within parent

Introduced properties

init defaultinit(parent: Texture, left: Float, top: Float, width: Float, height: Float)

gamnit :: AbsoluteSubtexture :: defaultinit

fun left: Float

gamnit :: AbsoluteSubtexture :: left

Left border of this texture relative to parent
protected fun left=(left: Float)

gamnit :: AbsoluteSubtexture :: left=

Left border of this texture relative to parent
protected fun offset_bottom=(offset_bottom: Float)

gamnit :: AbsoluteSubtexture :: offset_bottom=

protected fun offset_left=(offset_left: Float)

gamnit :: AbsoluteSubtexture :: offset_left=

protected fun offset_right=(offset_right: Float)

gamnit :: AbsoluteSubtexture :: offset_right=

protected fun offset_top=(offset_top: Float)

gamnit :: AbsoluteSubtexture :: offset_top=

fun top: Float

gamnit :: AbsoluteSubtexture :: top

Top border of this texture relative to parent
protected fun top=(top: Float)

gamnit :: AbsoluteSubtexture :: top=

Top border of this texture relative to parent

Redefined properties

redef type SELF: AbsoluteSubtexture

gamnit $ AbsoluteSubtexture :: SELF

Type of this instance, automatically specialized in every class
redef fun offset_bottom: Float

gamnit $ AbsoluteSubtexture :: offset_bottom

Offset of the bottom border on root from 0.0 to 1.0
redef fun offset_left: Float

gamnit $ AbsoluteSubtexture :: offset_left

Offset of the left border on root from 0.0 to 1.0
redef fun offset_right: Float

gamnit $ AbsoluteSubtexture :: offset_right

Offset of the right border on root from 0.0 to 1.0
redef fun offset_top: Float

gamnit $ AbsoluteSubtexture :: offset_top

Offset of the top border on root from 0.0 to 1.0

All properties

fun !=(other: nullable Object): Bool

core :: Object :: !=

Have self and other different values?
fun ==(other: nullable Object): Bool

core :: Object :: ==

Have self and other the same value?
type CLASS: Class[SELF]

core :: Object :: CLASS

The type of the class of self.
type SELF: Object

core :: Object :: SELF

Type of this instance, automatically specialized in every class
protected fun class_factory(name: String): CLASS

core :: Object :: class_factory

Implementation used by get_class to create the specific class.
fun class_name: String

core :: Object :: class_name

The class name of the object.
init defaultinit(parent: Texture, left: Float, top: Float, width: Float, height: Float)

gamnit :: AbsoluteSubtexture :: defaultinit

fun error: nullable Error

gamnit :: Texture :: error

Last error on this texture
protected fun error=(error: nullable Error)

gamnit :: Texture :: error=

Last error on this texture
fun get_class: CLASS

core :: Object :: get_class

The meta-object representing the dynamic type of self.
fun gl_texture: Int

gamnit :: Texture :: gl_texture

OpenGL handle to this texture
fun hash: Int

core :: Object :: hash

The hash code of the object.
fun height: Float

gamnit :: Texture :: height

Height in pixels of this texture
protected fun height=(height: Float)

gamnit :: Texture :: height=

Height in pixels of this texture
init init

core :: Object :: init

fun inspect: String

core :: Object :: inspect

Developer readable representation of self.
protected fun inspect_head: String

core :: Object :: inspect_head

Return "CLASSNAME:#OBJECTID".
intern fun is_same_instance(other: nullable Object): Bool

core :: Object :: is_same_instance

Return true if self and other are the same instance (i.e. same identity).
fun is_same_serialized(other: nullable Object): Bool

core :: Object :: is_same_serialized

Is self the same as other in a serialization context?
intern fun is_same_type(other: Object): Bool

core :: Object :: is_same_type

Return true if self and other have the same dynamic type.
fun left: Float

gamnit :: AbsoluteSubtexture :: left

Left border of this texture relative to parent
protected fun left=(left: Float)

gamnit :: AbsoluteSubtexture :: left=

Left border of this texture relative to parent
fun load(force: nullable Bool)

gamnit :: Texture :: load

Load this texture, force reloading it if force
init new(path: Text): Texture

gamnit :: Texture :: new

Prepare a texture located at path within the assets folder
intern fun object_id: Int

core :: Object :: object_id

An internal hash code for the object based on its identity.
fun offset_bottom: Float

gamnit :: Texture :: offset_bottom

Offset of the bottom border on root from 0.0 to 1.0
protected fun offset_bottom=(offset_bottom: Float)

gamnit :: AbsoluteSubtexture :: offset_bottom=

fun offset_left: Float

gamnit :: Texture :: offset_left

Offset of the left border on root from 0.0 to 1.0
protected fun offset_left=(offset_left: Float)

gamnit :: AbsoluteSubtexture :: offset_left=

fun offset_right: Float

gamnit :: Texture :: offset_right

Offset of the right border on root from 0.0 to 1.0
protected fun offset_right=(offset_right: Float)

gamnit :: AbsoluteSubtexture :: offset_right=

fun offset_top: Float

gamnit :: Texture :: offset_top

Offset of the top border on root from 0.0 to 1.0
protected fun offset_top=(offset_top: Float)

gamnit :: AbsoluteSubtexture :: offset_top=

fun output

core :: Object :: output

Display self on stdout (debug only).
intern fun output_class_name

core :: Object :: output_class_name

Display class name on stdout (debug only).
fun parent: Texture

gamnit :: Subtexture :: parent

Parent texture, from which this texture was created
protected fun parent=(parent: Texture)

gamnit :: Subtexture :: parent=

Parent texture, from which this texture was created
fun pixelated=(pixelated: Bool)

gamnit :: Texture :: pixelated=

Should this texture be drawn pixelated when magnified? otherwise it is interpolated
abstract fun root: RootTexture

gamnit :: Texture :: root

Root texture from which self is derived
fun serialization_hash: Int

core :: Object :: serialization_hash

Hash value use for serialization
fun subtexture(left: Numeric, top: Numeric, width: Numeric, height: Numeric): Subtexture

gamnit :: Texture :: subtexture

Prepare a subtexture from this texture, from the given pixel offsets
intern fun sys: Sys

core :: Object :: sys

Return the global sys object, the only instance of the Sys class.
fun to_animation(fps: Float, x: Int, y: Int): Animation

gamnit :: Texture :: to_animation

Convert to a sprite animation at fps speed with x or y frames
abstract fun to_jvalue(env: JniEnv): JValue

core :: Object :: to_jvalue

fun to_s: String

core :: Object :: to_s

User readable representation of self.
fun top: Float

gamnit :: AbsoluteSubtexture :: top

Top border of this texture relative to parent
protected fun top=(top: Float)

gamnit :: AbsoluteSubtexture :: top=

Top border of this texture relative to parent
fun width: Float

gamnit :: Texture :: width

Width in pixels of this texture
protected fun width=(width: Float)

gamnit :: Texture :: width=

Width in pixels of this texture
package_diagram gamnit::AbsoluteSubtexture AbsoluteSubtexture gamnit::Subtexture Subtexture gamnit::AbsoluteSubtexture->gamnit::Subtexture gamnit::Texture Texture gamnit::Subtexture->gamnit::Texture ...gamnit::Texture ... ...gamnit::Texture->gamnit::Texture

Ancestors

interface Object

core :: Object

The root of the class hierarchy.
abstract class Texture

gamnit :: Texture

Texture composed of pixels, loaded from the assets folder by default

Parents

abstract class Subtexture

gamnit :: Subtexture

Texture derived from another texture, does not own its pixels

Class definitions

gamnit $ AbsoluteSubtexture
# Subtexture created from pixel coordinates within `parent`
class AbsoluteSubtexture
	super Subtexture

	# Left border of this texture relative to `parent`
	var left: Float

	# Top border of this texture relative to `parent`
	var top: Float

	private fun set_wh(width, height: Float)
	is autoinit do
		self.width = width
		self.height = height
	end

	redef var offset_left = parent.offset_left + left / root.width is lazy
	redef var offset_top = parent.offset_top + top / root.height is lazy
	redef var offset_right = offset_left + width / root.width is lazy
	redef var offset_bottom = offset_top + height / root.height is lazy
end
lib/gamnit/textures.nit:350,1--370,3