Nv::Blast::MeshImpl Class Reference

#include <NvBlastExtAuthoringMeshImpl.h>

Inheritance diagram for Nv::Blast::MeshImpl:

Nv::Blast::Mesh

List of all members.

Public Member Functions

virtual void calcPerFacetBounds () override
const NvcBounds3getBoundingBox () const override
NvcBounds3getBoundingBoxWritable () override
const EdgegetEdges () const override
uint32_t getEdgesCount () const override
EdgegetEdgesWritable () override
const FacetgetFacet (int32_t facet) const override
virtual const NvcBounds3getFacetBound (uint32_t index) const override
uint32_t getFacetCount () const override
const FacetgetFacetsBuffer () const override
FacetgetFacetsBufferWritable () override
FacetgetFacetWritable (int32_t facet) override
float getMeshVolume () override
const VertexgetVertices () const override
uint32_t getVerticesCount () const override
VertexgetVerticesWritable () override
bool isValid () const override
 MeshImpl (const Vertex *vertices, uint32_t count, uint32_t *indices, uint32_t indexCount, void *materials, uint32_t materialStride)
 MeshImpl (const Vertex *vertices, uint32_t count)
 MeshImpl (const Vertex *vertices, const Edge *edges, const Facet *facets, uint32_t posCount, uint32_t edgesCount, uint32_t facetsCount)
 MeshImpl (const NvcVec3 *position, const NvcVec3 *normals, const NvcVec2 *uv, uint32_t verticesCount, const uint32_t *indices, uint32_t indicesCount)
void recalculateBoundingBox () override
virtual void release () override
void replaceMaterialId (int32_t oldMaterialId, int32_t newMaterialId) override
void setMaterialId (const int32_t *materialIds) override
void setSmoothingGroup (const int32_t *smoothingGroups) override
 ~MeshImpl ()


Detailed Description

Class for internal mesh representation

Constructor & Destructor Documentation

Nv::Blast::MeshImpl::MeshImpl ( const NvcVec3 position,
const NvcVec3 normals,
const NvcVec2 uv,
uint32_t  verticesCount,
const uint32_t *  indices,
uint32_t  indicesCount 
)

Constructs mesh object from array of triangles.

Parameters:
[in] position Array of vertex positions
[in] normals Array of vertex normals
[in] uv Array of vertex uv coordinates
[in] verticesCount Vertices count
[in] indices Array of vertex indices. Indices contain vertex index triplets which form a mesh triangle.
[in] indicesCount Indices count (should be equal to numberOfTriangles * 3)

Nv::Blast::MeshImpl::MeshImpl ( const Vertex vertices,
const Edge edges,
const Facet facets,
uint32_t  posCount,
uint32_t  edgesCount,
uint32_t  facetsCount 
)

Constructs mesh object from array of facets.

Parameters:
[in] vertices Array of vertices
[in] edges Array of edges
[in] facets Array of facets
[in] posCount Vertices count
[in] edgesCount Edges count
[in] facetsCount Facets count

Nv::Blast::MeshImpl::MeshImpl ( const Vertex vertices,
uint32_t  count 
)

Nv::Blast::MeshImpl::MeshImpl ( const Vertex vertices,
uint32_t  count,
uint32_t *  indices,
uint32_t  indexCount,
void *  materials,
uint32_t  materialStride 
)

Nv::Blast::MeshImpl::~MeshImpl (  ) 


Member Function Documentation

virtual void Nv::Blast::MeshImpl::calcPerFacetBounds (  )  [override, virtual]

Calculate per-facet bounding boxes.

Implements Nv::Blast::Mesh.

const NvcBounds3& Nv::Blast::MeshImpl::getBoundingBox (  )  const [override, virtual]

Return reference on mesh bounding box.

Implements Nv::Blast::Mesh.

NvcBounds3& Nv::Blast::MeshImpl::getBoundingBoxWritable (  )  [override, virtual]

Return writable reference on mesh bounding box.

Implements Nv::Blast::Mesh.

const Edge* Nv::Blast::MeshImpl::getEdges (  )  const [override, virtual]

Return pointer on edges array

Implements Nv::Blast::Mesh.

uint32_t Nv::Blast::MeshImpl::getEdgesCount (  )  const [override, virtual]

Return edges count

Implements Nv::Blast::Mesh.

Edge* Nv::Blast::MeshImpl::getEdgesWritable (  )  [override, virtual]

Return pointer on edges array

Implements Nv::Blast::Mesh.

const Facet* Nv::Blast::MeshImpl::getFacet ( int32_t  facet  )  const [override, virtual]

Return writable pointer on specified facet

Implements Nv::Blast::Mesh.

virtual const NvcBounds3* Nv::Blast::MeshImpl::getFacetBound ( uint32_t  index  )  const [override, virtual]

Get pointer on facet bounding box, if not calculated return nullptr.

Implements Nv::Blast::Mesh.

uint32_t Nv::Blast::MeshImpl::getFacetCount (  )  const [override, virtual]

Return facet count

Implements Nv::Blast::Mesh.

const Facet* Nv::Blast::MeshImpl::getFacetsBuffer (  )  const [override, virtual]

Return pointer on facets array

Implements Nv::Blast::Mesh.

Facet* Nv::Blast::MeshImpl::getFacetsBufferWritable (  )  [override, virtual]

Return pointer on facets array

Implements Nv::Blast::Mesh.

Facet* Nv::Blast::MeshImpl::getFacetWritable ( int32_t  facet  )  [override, virtual]

Return writable pointer on specified facet

Implements Nv::Blast::Mesh.

float Nv::Blast::MeshImpl::getMeshVolume (  )  [override, virtual]

Compute mesh volume. Can be used only for triangulated meshes. Return mesh volume. If mesh is not triangulated return 0.

Implements Nv::Blast::Mesh.

const Vertex* Nv::Blast::MeshImpl::getVertices (  )  const [override, virtual]

Return pointer on vertices array

Implements Nv::Blast::Mesh.

uint32_t Nv::Blast::MeshImpl::getVerticesCount (  )  const [override, virtual]

Return vertices count

Implements Nv::Blast::Mesh.

Vertex* Nv::Blast::MeshImpl::getVerticesWritable (  )  [override, virtual]

Return pointer on vertices array

Implements Nv::Blast::Mesh.

bool Nv::Blast::MeshImpl::isValid (  )  const [override, virtual]

Return true if mesh is valid

Implements Nv::Blast::Mesh.

void Nv::Blast::MeshImpl::recalculateBoundingBox (  )  [override, virtual]

Recalculate bounding box

Implements Nv::Blast::Mesh.

virtual void Nv::Blast::MeshImpl::release (  )  [override, virtual]

Release Mesh memory

Implements Nv::Blast::Mesh.

void Nv::Blast::MeshImpl::replaceMaterialId ( int32_t  oldMaterialId,
int32_t  newMaterialId 
) [override, virtual]

Replaces an material id on faces with a new one

Implements Nv::Blast::Mesh.

void Nv::Blast::MeshImpl::setMaterialId ( const int32_t *  materialIds  )  [override, virtual]

Set per-facet material id.

Implements Nv::Blast::Mesh.

void Nv::Blast::MeshImpl::setSmoothingGroup ( const int32_t *  smoothingGroups  )  [override, virtual]

Set per-facet smoothing group.

Implements Nv::Blast::Mesh.


The documentation for this class was generated from the following file: