#ifndef PACKER_IMAGE_REOURCE_H #define PACKER_IMAGE_REOURCE_H #include "core/image.h" #include "scene/resources/texture.h" class PackerImageResource : public Texture { GDCLASS(PackerImageResource, Texture); RES_BASE_EXTENSION("restex"); public: int get_width() const; int get_height() const; RID get_rid() const; bool has_alpha() const; void set_flags(uint32_t p_flags); uint32_t get_flags() const; void draw(RID p_canvas_item, const Point2 &p_pos, const Color &p_modulate = Color(1, 1, 1), bool p_transpose = false, const Ref &p_normal_map = Ref()) const; void draw_rect(RID p_canvas_item, const Rect2 &p_rect, bool p_tile = false, const Color &p_modulate = Color(1, 1, 1), bool p_transpose = false, const Ref &p_normal_map = Ref()) const; void draw_rect_region(RID p_canvas_item, const Rect2 &p_rect, const Rect2 &p_src_rect, const Color &p_modulate = Color(1, 1, 1), bool p_transpose = false, const Ref &p_normal_map = Ref(), bool p_clip_uv = true) const; bool get_rect_region(const Rect2 &p_rect, const Rect2 &p_src_rect, Rect2 &r_rect, Rect2 &r_src_rect) const; void set_data(const Ref &p_image); Ref get_data() const; PackerImageResource(); ~PackerImageResource(); protected: static void _bind_methods(); private: Ref _image; }; #endif