Skip to content

Extended API for quickly drawing images #45

@Zorbn

Description

@Zorbn

Currently drawing images requires using matrices for transformations like rotation, scaling, etc. This is probably the most robust way to draw things in Lyte, but there is still room for some extra versions of common functions to allow quickly drawing an image with rotation/scale on the fly.

One way to do this would be to have a simple version of each function as well as a complex one that takes additional parameters, then the user can pick based on the situation.

For example:

function draw_image(image: Image, dest_x: number, dest_y: number): void
function draw_image(image: Image, dest_x: number, dest_y: number, scale_x: number, scale_y: number, origin_x: number, origin_y: number, angle: number): void

function draw_image_rect(image: Image, dest_x: number, dest_y: number, src_x: number, src_y: number, rect_width: number, rect_height: number): void
function draw_image_rect(image: Image, dest_x: number, dest_y: number, src_x: number, src_y: number, rect_width: number, rect_height: number, scale_x: number, scale_y: number, origin_x: number, origin_y: number, angle: number): void


function add_imagebatch_rect(imagebatch: ImageBatch, dest_x: number, dest_y: number, src_x: number, src_y: number, rect_width: number, rect_height: number): void
function add_imagebatch_rect(imagebatch: ImageBatch, dest_x: number, dest_y: number, dest_width: number, dest_height: number, src_x: number, src_y: number, src_width: number, src_height: number, scale_x: number, scale_y: number, origin_x: number, origin_y: number, angle: number): void

(I'm not sure if sokol_gp will allow us to implement an angle parameter for add_imagebatch_rect)

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureNew feature or request

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions