/* [<][>][^][v][top][bottom][index][help] */
DEFINITIONS
This source file includes following definitions.
- pysequence_to_vec4d
- pysequence_to_vec4f
- pysequence_to_vec3d
- pysequence_to_vec3f
1 #include "utility/conversions.hpp"
2
3 osg::Vec4d
4 pysequence_to_vec4d(PyObject * sequence)
5 {
6 if(not PyList_Check(sequence))
7 {
8 return osg::Vec4d();
9 }
10 return osg::Vec4d( PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 0))
11 , PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 1))
12 , PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 2))
13 , PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 3))
14 );
15 }
16
17
18 osg::Vec4f
19 pysequence_to_vec4f(PyObject * sequence)
20 {
21 if(not PyList_Check(sequence))
22 {
23 return osg::Vec4f();
24 }
25
26 return osg::Vec4f( static_cast<float>(
27 PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 0))
28 )
29 , static_cast<float>(
30 PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 1))
31 )
32 , static_cast<float>(
33 PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 2))
34 )
35 , static_cast<float>(
36 PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 3))
37 )
38 );
39 }
40
41 osg::Vec3d
42 pysequence_to_vec3d(PyObject * sequence)
43 {
44 if(not PyList_Check(sequence))
45 {
46 return osg::Vec3d();
47 }
48
49 return osg::Vec3d( PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 0))
50 , PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 1))
51 , PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 2))
52 );
53 }
54
55
56 osg::Vec3f
57 pysequence_to_vec3f(PyObject * sequence)
58 {
59 if(not PyList_Check(sequence))
60 {
61 return osg::Vec3f();
62 }
63
64 return osg::Vec3f( static_cast<float>(
65 PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 0))
66 )
67 , static_cast<float>(
68 PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 1))
69 )
70 , static_cast<float>(
71 PyFloat_AS_DOUBLE(PySequence_GetItem(sequence, 2))
72 )
73 );
74 }