Summary
The IVertextCallListContext (C++) and the hdrcVertextCallListContext (Java/.NET) object represents a collection of triangles to be rendered using the integrated CPU based polygon rendering engine. Multiple VertextCallListContext objects may be used in a single rendering scene. This, combined with the m_transform parameter allow for separate complex scene graph of objects to be manipulated independently.
Use of this class with a complete description and example code is found in 3D Polygon Meshes chapter.
In C++, this object is created by IServerContext::CreateVertexCallList().
The use an array of indices in this call list can be used to provide higher storage efficiency. Arrays of indices are only supported by VCL_TYPE_TRIANGLES. See the documentation for SetNumIndices() for more information.
In Java/.NET, this object is created by hdrcServerContext.createVertexCallList()
The use an array of indices in this call list can be used to provide higher storage efficiency. See the documentation for lockIndices() for more information.
The subset of the methods are described below. Please refer to Doxygen links at the bottom for the complete list of methods.
o | GetColors (C++) |
o | GetIndices (C++) |
o | GetNormals (C++) |
o | GetNumIndicies (C++) |
o | GetShadingEnabled (C++) |
o | GetTextureCoords (C++) |
o | GetVertices (C++) |
o | lockColors (Java/.NET) |
o | lockIndices (Java/.NET) |
o | lockNormals (Java/.NET) |
o | lockShadingEnabled (Java/.NET) |
o | lockTextureCoords (Java/.NET) |
o | lockVertices (Java/.NET) |
o | ReleaseSessionResources --> Need to discuss somewhere |
o | SetColorsModified (C++) |
o | SetIndicesModified (C++) |
o | SetNormalsModified (C++) |
o | SetNumIndices (C++) |
o | SetShadingEnabledModified (C++) |
o | SetTextureCoordsModified (C++) |
o | SetVerticesModified (C++) |
o | unlockColors (Java/.NET) |
o | unlockIndices (Java/.NET) |
o | unlockNormals (Java/.NET) |
o | unlockShadingEnabled (Java/.NET) |
o | unlockTextureCoords (Java/.NET) |
o | unlockVertices (Java/.NET) |
Missing entries
o | GetLineWidth() |
o | GetTransform() |
o | isEdited(); |
o | SetLineWidth() |
o | SetTransform() |
o | setUniformColor() - Java only |
o | setTextureEngine() - Java only |
Methods
IVertexCallListContext::ColorizeFromVolumeData()
C++ |
||||||||||||||||
This function will generate vertex colors for the vertex call list, resulting in a colorized object.
|
com.fovia.hdrc.hdrcVertexCallListContext.colorizeFromVolumeData()
Java/.NET |
||||||||||||||||
Colorizes the vertex call list by baking the volumetric rendering result into the surface of the object.
|
IVertexCallListContext::GetColors()
C++ |
||||||||
Supplies the location in memory of the colors for this list. If the number of vertices is 0, *arrColors will be set to NULL. |
IVertexCallListContext::GetIndices()
IVertexCallListContext::GetNormals()
C++ |
||||||||
Supplies the location in memory of the normals for this list. If the number of vertices is 0, *arrNormals will be set to NULL. |
IVertexCallListContext::GetNumIndicies()
C++ |
||||||
Gets the number of vertices in this call list. If this is 0, then every three vertices will constitute a triangle. |
IVertexCallListContext::GetNumVertices()
C++ |
||||||
Gets the number of vertices in this call list. |
com.fovia.hdrc.hdrcVertexCallListContext.getNumVertices()
Java/.NET |
|||||
Returns the number of vertices the call list currently contains.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJ(), com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJIndexBufferNormalsRequired(), com.fovia.hdrc.hdrcVertexCallListContext.setUniformColor(), and com.fovia.hdrc.hdrcVertexCallListContext.setUniformShadingEnabled(). |
IVertexCallListContext::GetShadingEnabled()
C++ |
||||||
Supplies the location in memory of the shading state for this list. If the number of vertices is 0, *arrShadingEnabled will be set to NULL. |
IVertexCallListContext::GetTextureCoords()
C++ |
||||||||
Supplies the location in memory of the texture mapping coordinates for this list. If the number of vertices is 0, *arrTextureCoords will be set to NULL. |
IVertexCallListContext::GetTextureMap()
C++ |
||||||||
Gets the ITextureMapContext object associated with this call list. If NULL is returned then the call list has no texture file association. |
com.fovia.hdrc.hdrcVertexCallListContext.getTextureMap()
Java/.NET |
|||||
Gets the hdrcTextureMapContext texture mapping object associated with this call list.
|
IVertexCallListContext::GetType()
C++ |
||||||||
Gets the type of this call list. |
com.fovia.hdrc.hdrcVertexCallListContext.getType()
Java/.NET |
#MERGE Merge/hdvr_java_xx.html |
NO DOXYGEN LINK
IVertexCallListContext::GetVertices()
C++ |
||||||||
Supplies the location in memory of the vertices for this list. If the number of vertices is 0, *arrVertices will be set to NULL. |
com.fovia.hdrc.hdrcVertexCallListContext.lockColors()
Java/.NET |
||||||||||||||||
Locks the color buffer for editing. Every four bytes make up a color. Each value is red, green, blue, and alpha (opacity of this vertex). These colors correspond directly to vertices at the same index in their respective buffer.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.setUniformColor(). |
com.fovia.hdrc.hdrcVertexCallListContext.lockIndices()
Java/.NET |
||||||||||||||||
Locks the index buffer for editing. Every three ints makes up the vertex indices of a triangle. You can use a structure like this to reuse vertices more than once for triangles that neighbor each other. For example, let's say you want to draw a rectangle by creating two triangles. Two of the vertices in that rectangle can be used by both triangles. By reusing the triangles, you can specify only four actual vertex locations instead of the six required for two triangles.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJIndexBufferNormalsRequired(). |
com.fovia.hdrc.hdrcVertexCallListContext.lockNormals()
Java/.NET |
||||||||||||||||
Locks the normal buffer for editing. Every three floats makes up a normal. These correspond directly to vertices at the same index in their respective buffer.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJ(), and com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJIndexBufferNormalsRequired(). |
com.fovia.hdrc.hdrcVertexCallListContext.lockShadingEnabled()
Java/.NET |
||||||||||||||||
Locks the shading buffer for editing. If the byte is 1, it means lighting is applied. If 0 no lighting is applied. These bytes correspond directly to vertices at the same index in their respective buffer.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.setUniformShadingEnabled(). |
com.fovia.hdrc.hdrcVertexCallListContext.lockTextureCoords()
Java/.NET |
||||||||||||||||
Locks the texture coordinate buffer for editing. Every two floats makes up a texture coordinate. These correspond directly to vertices at the same index in their respective buffer.
|
Java/.NET |
||||||||||||||||
Locks the vertex buffer for editing. Every three floats makes up a vertex. If there is no index buffer, every three vertices makes up a new triangle.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJ(), and com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJIndexBufferNormalsRequired(). |
IVertexCallListContext::ReleaseSessionResources()
C++ |
|||||||
Call this if you wish to free up this object on the server before disconnecting. |
com.fovia.hdrc.hdrcVertexCallListContext.releaseSessionResources()
Java/.NET |
|||||||
Call this if you wish to free up this object on the server before disconnecting.
|
IVertexCallListContext::SetColorsModified()
C++ |
||||||||||||||||||||||
Signifies that you've modified the colors in this object and they must be updated on the server. Unless you call this function, there will be no change to the visual representation in rendered images.
|
IVertexCallListContext::SetIndicesModified()
C++ |
||||||||||||||||||||||
Signifies that you've modified the indices in this object and they must be updated on the server. Unless you call this function, there will be no change to the visual representation in rendered images.
|
IVertexCallListContext::SetNormalsModified()
C++ |
||||||||||||||||||||||
Signifies that you've modified the normals in this object and they must be updated on the server. Unless you call this function, there will be no change to the visual representation in rendered images.
|
IVertexCallListContext::SetNumIndices()
C++ |
||||||
Sets the number of indices to be used for this call list. These indices may be used to define triangles in the vertex list. For example, if the number of indices was 6 and the list contained { 0, 3, 2, 5, 3, 0 } then the call list would have two triangles. The first would be connecting vertices 0,3, and 2. The second would connect verties 5, 3, and 0. If the number of indices is 0, then the vertices are interpreted as being a triangle for every three points. In other words, 0, 1, and 2 would be the first triangle and 3,4,5 would be the second and so on. If numIndices is greater than 0, the memory for the index buffer is allocated at this time. If numIndices is 0, then any memory used for any previous index buffer is freed. |
IVertexCallListContext::SetNumVertices()
C++ |
||||||
Sets the number of vertices this call list contains. This function will allocate all the memory necessary to hold these vertices, their normals, colors, and shading state. |
com.fovia.hdrc.hdrcVertexCallListContext.setNumVertices()
Java/.NET |
||||||||
Sets the number of vertices this call list should contain.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJ(), and com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJIndexBufferNormalsRequired(). |
IVertexCallListContext::SetShadingEnabledModified()
C++ |
||||||||||||||||||||||
Signifies that you've modified the shading information in this object and they must be updated on the server. Unless you call this function, there will be no change to the visual representation in rendered images.
|
IVertexCallListContext::SetTextureCoordsModified()
C++ |
||||||||||||||||||||||
Signifies that you've modified the texture coordinates in this object and they must be updated on the server. Unless you call this function, there will be no change to the visual representation in rendered images.
|
IVertexCallListContext::SetTextureMap()
C++ |
||||||||
Sets the IRenderEngineContext object associated with this call list. Set to NULL to clear the render engine. |
||||||||
Sets the ITextureMapContext object associated with this call list. Set to NULL to clear the texture map file. |
com.fovia.hdrc.hdrcVertexCallListContext.setTextureMap()
Java/.NET |
||||||||
Sets the texture mapping source to the given hdrcTextureMapContext object
|
IVertexCallListContext::SetType()
C++ |
||||||||
Sets the type of this call list (polygons, lines...etc). |
com.fovia.hdrc.hdrcVertexCallListContext.setType()
Java/.NET |
#MERGE Merge/hdvr_java_xx.html |
NO DOXYGEN LINK
IVertexCallListContext::SetVerticesModified()
C++ |
||||||||||||||||||||||
Signifies that you've modified the vertices in this object and they must be updated on the server. Unless you call this function, there will be no change to the visual representation in rendered images.
|
Java/.NET |
||||||||||||||||||||||
Call this when you are done modifying the buffer.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.setUniformColor(). |
Java/.NET |
||||||||||||||||||||||
Call this when you are done modifying the buffer.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJIndexBufferNormalsRequired(). |
Java/.NET |
||||||||||||||||||||||
Call this when you are done modifying the buffer.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJ(), and com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJIndexBufferNormalsRequired(). |
Java/.NET |
||||||||||||||||||||||
Call this when you are done modifying the buffer.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.setUniformShadingEnabled(). |
Java/.NET |
||||||||||||||||||||||
Call this when you are done modifying the buffer.
|
Java/.NET |
||||||||||||||||||||||
Call this when you are done modifying the buffer.
Referenced by com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJ(), and com.fovia.hdrc.hdrcVertexCallListContext.initFromOBJIndexBufferNormalsRequired(). |
Complete details of member variables and class names are available in the source level documentation available from these links to Doxygen.
C++ |
|
Java / .NET |