198298a5394067835a8386ff5dcb0b605619b38b
1 # \$Id\$
2 # Documentation for the vertex proxy class
4 class KX_VertexProxy:
5         """
6         A vertex holds position, UV, colour and normal information.
8         Note:
9         The physics simulation is NOT currently updated - physics will not respond
10         to changes in the vertex position.
12         Attributes:
13         @cvar XYZ: The position of the vertex. (list [x, y, z])
14         @cvar UV: The texture coordinates of the vertex. (list [u, v])
15         @cvar normal: The normal of the vertex (list [nx, ny, nz])
16         @cvar colour: The colour of the vertex. (list [r, g, b, a]) Black = [0.0, 0.0, 0.0, 1.0], White = [1.0, 1.0, 1.0, 1.0]
17         @cvar color: Synonym for colour.
19         @cvar x: The x coordinate of the vertex. (float)
20         @cvar y: The y coordinate of the vertex. (float)
21         @cvar z: The z coordinate of the vertex. (float)
23         @cvar u: The u texture coordinate of the vertex. (float)
24         @cvar v: The v texture coordinate of the vertex. (float)
26         @cvar r: The red component of the vertex colour.   (float) 0.0 <= r <= 1.0
27         @cvar g: The green component of the vertex colour. (float) 0.0 <= g <= 1.0
28         @cvar b: The blue component of the vertex colour.  (float) 0.0 <= b <= 1.0
29         @cvar a: The alpha component of the vertex colour. (float) 0.0 <= a <= 1.0
30         """
32         def getXYZ():
33                 """
34                 Gets the position of this vertex.
36                 @rtype: list [x, y, z]
37                 @return: this vertexes position in local coordinates.
38                 """
39         def setXYZ(pos):
40                 """
41                 Sets the position of this vertex.
43                 @type pos: list [x, y, z]
44                 @param: the new position for this vertex in local coordinates.
45                 """
46         def getUV():
47                 """
48                 Gets the UV (texture) coordinates of this vertex.
50                 @rtype: list [u, v]
51                 @return: this vertexes UV (texture) coordinates.
52                 """
53         def setUV(uv):
54                 """
55                 Sets the UV (texture) coordinates of this vertex.
57                 @type uv: list [u, v]
58                 """
59         def getRGBA():
60                 """
61                 Gets the colour of this vertex.
63                 Example:
64                 # Big endian:
65                 col = v.getRGBA()
66                 red = (col & 0xff000000) >> 24
67                 green = (col & 0xff0000) >> 16
68                 blue = (col & 0xff00) >> 8
69                 alpha = (col & 0xff)
71                 # Little endian:
72                 col = v.getRGBA()
73                 alpha = (col & 0xff000000) >> 24
74                 blue = (col & 0xff0000) >> 16
75                 green = (col & 0xff00) >> 8
76                 red = (col & 0xff)
78                 @rtype: integer
79                 @return: packed colour. 4 byte integer with one byte per colour channel in RGBA format.
80                 """
81         def setRGBA(col):
82                 """
83                 Sets the colour of this vertex.
85                 @type col: integer
86                 @param col: the new colour of this vertex in packed format.
87                 """
88         def getNormal():
89                 """
90                 Gets the normal vector of this vertex.
92                 @rtype: list [nx, ny, nz]
93                 @return: normalised normal vector.
94                 """