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:
authorSergey Sharybin <sergey.vfx@gmail.com>2019-01-17 12:47:14 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2019-01-18 14:29:53 +0300
commit9db73be975ccc3fbbad17361166060cacd84692e (patch)
treeb96066b90b99ade62618fdf40f3ff588fdb54d9e /source/blender/blenkernel/intern/subdiv_inline.h
parenta676b2b4b4dcd0b6ea1ee352ea8f895809c99153 (diff)
Multires: Cleanup, move utility function to a more public place
Diffstat (limited to 'source/blender/blenkernel/intern/subdiv_inline.h')
-rw-r--r--source/blender/blenkernel/intern/subdiv_inline.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/subdiv_inline.h b/source/blender/blenkernel/intern/subdiv_inline.h
index 6e3d906f08c..1863c8602e6 100644
--- a/source/blender/blenkernel/intern/subdiv_inline.h
+++ b/source/blender/blenkernel/intern/subdiv_inline.h
@@ -77,4 +77,28 @@ BLI_INLINE int BKE_subdiv_rotate_quad_to_corner(
return corner;
}
+BLI_INLINE void BKE_subdiv_rotate_corner_to_quad(
+ const int corner,
+ const float corner_u, const float corner_v,
+ float *r_quad_u, float *r_quad_v)
+{
+ if (corner == 0) {
+ *r_quad_u = 0.5f - corner_v * 0.5f;
+ *r_quad_v = 0.5f - corner_u * 0.5f;
+ }
+ else if (corner == 1) {
+ *r_quad_u = 0.5f + corner_u * 0.5f;
+ *r_quad_v = 0.5f - corner_v * 0.5f;
+ }
+ else if (corner == 2) {
+ *r_quad_u = 0.5f + corner_v * 0.5f;
+ *r_quad_v = 0.5f + corner_u * 0.5f;
+ }
+ else {
+ BLI_assert(corner == 3);
+ *r_quad_u = 0.5f - corner_u * 0.5f;
+ *r_quad_v = 0.5f + corner_v * 0.5f;
+ }
+}
+
#endif /* __SUBDIV_INLINE_H__ */