14#ifndef OSGUTIL_OPERATIONARRAYFUNCTOR
15#define OSGUTIL_OPERATIONARRAYFUNCTOR 1
62 template <
typename ArrayType>
65 typedef typename ArrayType::ElementDataType ElementDataType;
67 ElementDataType convertedVector;
70 typename ArrayType::iterator it = array.begin();
73 typename ArrayType::iterator end = it;
76 for (; it < end; ++it)
77 (*it) += convertedVector;
89 template <
typename ArrayType>
92 typedef typename ArrayType::ElementDataType ElementDataType;
94 ElementDataType convertedVector;
97 typename ArrayType::iterator it = array.begin();
100 typename ArrayType::iterator end = it;
101 std::advance(end,
_count);
103 for (; it < end; ++it)
104 (*it) *= convertedVector;
TemplateArray< Vec2, Array::Vec2ArrayType, 2, GL_FLOAT > Vec2Array
Definition Array:448
TemplateArray< Vec4, Array::Vec4ArrayType, 4, GL_FLOAT > Vec4Array
Definition Array:450
TemplateArray< Vec3b, Array::Vec3bArrayType, 3, GL_BYTE > Vec3bArray
Definition Array:425
TemplateArray< Vec3d, Array::Vec3dArrayType, 3, GL_DOUBLE > Vec3dArray
Definition Array:453
TemplateArray< Vec3, Array::Vec3ArrayType, 3, GL_FLOAT > Vec3Array
Definition Array:449
TemplateArray< Vec2b, Array::Vec2bArrayType, 2, GL_BYTE > Vec2bArray
Definition Array:424
TemplateArray< Vec4d, Array::Vec4dArrayType, 4, GL_DOUBLE > Vec4dArray
Definition Array:454
TemplateArray< Vec2s, Array::Vec2sArrayType, 2, GL_SHORT > Vec2sArray
Definition Array:428
TemplateArray< Vec3s, Array::Vec3sArrayType, 3, GL_SHORT > Vec3sArray
Definition Array:429
TemplateArray< Vec4b, Array::Vec4bArrayType, 4, GL_BYTE > Vec4bArray
Definition Array:426
TemplateArray< Vec4s, Array::Vec4sArrayType, 4, GL_SHORT > Vec4sArray
Definition Array:430
TemplateArray< Vec2d, Array::Vec2dArrayType, 2, GL_DOUBLE > Vec2dArray
Definition Array:452
TemplateArray< Vec4ub, Array::Vec4ubArrayType, 4, GL_UNSIGNED_BYTE > Vec4ubArray
Definition Array:438
The osgUtil library provides general purpose utility classes such as update, cull and draw traverses,...
Definition NodeVisitor:25
OperationArrayFunctor< AddRangeOperator > AddRangeFunctor
Definition OperationArrayFunctor:85
OperationArrayFunctor< MultiplyRangeOperator > MultiplyRangeFunctor
Definition OperationArrayFunctor:112
General purpose double triple for use as vertices, vectors and normals.
Definition Vec3d:30
static void convert(InType &in, OutType &out)
Definition ConvertVec:24
Definition OperationArrayFunctor:28
virtual void apply(osg::Vec4Array &array)
Definition OperationArrayFunctor:43
virtual void apply(osg::Vec2bArray &array)
Definition OperationArrayFunctor:47
virtual void apply(osg::Vec2dArray &array)
Definition OperationArrayFunctor:55
virtual void apply(osg::Array &)
Definition OperationArrayFunctor:31
virtual void apply(osg::Vec3dArray &array)
Definition OperationArrayFunctor:56
virtual void apply(osg::Vec3bArray &array)
Definition OperationArrayFunctor:48
virtual void apply(osg::Vec4sArray &array)
Definition OperationArrayFunctor:53
virtual void apply(osg::Vec2sArray &array)
Definition OperationArrayFunctor:51
virtual void apply(osg::Vec2Array &array)
Definition OperationArrayFunctor:41
virtual void apply(osg::Vec4ubArray &array)
Definition OperationArrayFunctor:45
virtual void apply(osg::Vec4dArray &array)
Definition OperationArrayFunctor:57
virtual void apply(osg::Vec3sArray &array)
Definition OperationArrayFunctor:52
virtual void apply(osg::Vec3Array &array)
Definition OperationArrayFunctor:42
virtual void apply(osg::Vec4bArray &array)
Definition OperationArrayFunctor:49
Definition OperationArrayFunctor:61
void process(ArrayType &array)
Definition OperationArrayFunctor:63
unsigned int _begin
Definition OperationArrayFunctor:80
unsigned int _count
Definition OperationArrayFunctor:81
osg::Vec3d _vector
Definition OperationArrayFunctor:83
Definition OperationArrayFunctor:88
osg::Vec3d _vector
Definition OperationArrayFunctor:110
unsigned int _begin
Definition OperationArrayFunctor:107
unsigned int _count
Definition OperationArrayFunctor:108
void process(ArrayType &array)
Definition OperationArrayFunctor:90