Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Bakker <jeroen@blender.org>2022-04-04 15:00:33 +0300
committerJeroen Bakker <jeroen@blender.org>2022-04-04 15:12:33 +0300
commit9c2b5900c0add01a6fb0cbef234c78eb04ec9ff4 (patch)
tree225ded5ad2d4364cdf90f3b4c0cf68368cf3ddf6 /source/blender/blenkernel/BKE_image_wrappers.hh
parenta56f53ad5615afc4b9ed74907de21376c14b3775 (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.hh44
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