diff options
author | Jeroen Bakker <jeroen@blender.org> | 2022-04-04 15:00:33 +0300 |
---|---|---|
committer | Jeroen Bakker <jeroen@blender.org> | 2022-04-04 15:12:33 +0300 |
commit | 9c2b5900c0add01a6fb0cbef234c78eb04ec9ff4 (patch) | |
tree | 225ded5ad2d4364cdf90f3b4c0cf68368cf3ddf6 /source/blender/blenkernel/BKE_image_wrappers.hh | |
parent | a56f53ad5615afc4b9ed74907de21376c14b3775 (diff) |
Move ImageTileWrapper to BKE.
ImageTileWrapper is a wrapper around ImageTile to centralize tile calculations when
using CPP. Currentry used by the image engine and will be used for the 3d
texturing brush project.
Diffstat (limited to 'source/blender/blenkernel/BKE_image_wrappers.hh')
-rw-r--r-- | source/blender/blenkernel/BKE_image_wrappers.hh | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_image_wrappers.hh b/source/blender/blenkernel/BKE_image_wrappers.hh new file mode 100644 index 00000000000..344edd952f8 --- /dev/null +++ b/source/blender/blenkernel/BKE_image_wrappers.hh @@ -0,0 +1,44 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later + * Copyright 2022 Blender Foundation. */ + +/** \file + * \ingroup imbuf + */ + +#pragma once + +#include "DNA_image_types.h" + +#include "BLI_math_vec_types.hh" + +namespace blender::bke::image { + +struct ImageTileWrapper { + ImageTile *image_tile; + ImageTileWrapper(ImageTile *image_tile) : image_tile(image_tile) + { + } + + int get_tile_number() const + { + return image_tile->tile_number; + } + + int2 get_tile_offset() const + { + return int2(get_tile_x_offset(), get_tile_y_offset()); + } + + int get_tile_x_offset() const + { + int tile_number = get_tile_number(); + return (tile_number - 1001) % 10; + } + + int get_tile_y_offset() const + { + int tile_number = get_tile_number(); + return (tile_number - 1001) / 10; + } +}; +} // namespace blender::bke::image |