Math Lib: add range_vn_u
authorCampbell Barton <ideasman42@gmail.com>
Mon, 27 Apr 2015 20:54:17 +0000 (06:54 +1000)
committerCampbell Barton <ideasman42@gmail.com>
Mon, 27 Apr 2015 20:54:50 +0000 (06:54 +1000)
source/blender/blenlib/BLI_math_vector.h
source/blender/blenlib/intern/math_vector.c

index 9c8a9f5437978d37d7c7f1b95c3b8ee90b1d6d63..82a2b9c9ab20dc74a7263e756b1837643d85a048 100644 (file)
@@ -314,6 +314,7 @@ double len_squared_vn(const float *array, const int size) ATTR_WARN_UNUSED_RESUL
 float normalize_vn_vn(float *array_tar, const float *array_src, const int size);
 float normalize_vn(float *array_tar, const int size);
 void range_vn_i(int *array_tar, const int size, const int start);
+void range_vn_u(unsigned int *array_tar, const int size, const unsigned int start);
 void range_vn_fl(float *array_tar, const int size, const float start, const float step);
 void negate_vn(float *array_tar, const int size);
 void negate_vn_vn(float *array_tar, const float *array_src, const int size);
index e9909cef29deb2f8ec6f1a209cad5f2de0579068..8f536bfe75c20a0c3d9190d90f83e4272d07c04f 100644 (file)
@@ -897,6 +897,16 @@ void range_vn_i(int *array_tar, const int size, const int start)
        }
 }
 
+void range_vn_u(unsigned int *array_tar, const int size, const unsigned int start)
+{
+       unsigned int *array_pt = array_tar + (size - 1);
+       unsigned int j = start + (unsigned int)(size - 1);
+       int i = size;
+       while (i--) {
+               *(array_pt--) = j--;
+       }
+}
+
 void range_vn_fl(float *array_tar, const int size, const float start, const float step)
 {
        float *array_pt = array_tar + (size - 1);