// TODO: if this is only called to add a fresh start triangle, all vertices must be added void CBlockOption::AddOneTriangle( STri * const pTri, const CObject * const pOb) { int i; // Add the triangle to the block AddTriangle(pTri); // Add the vertices to the block for(i = 0; i < 3; ++i) AddVertexCheckDup(&pOb->m_pVtx[pTri->pwIdx[i]]); }
void CBlockOption::Add( const CBlockOption * const pSrc, const CObject * const pOb) { int i; // Add vertices from job to block for(i = 0; i < pSrc->nVtxNum; ++i) AddVertexCheckDup(pSrc->psVtx[i]); // Add triangles from job to block for(i = 0; i < pSrc->nTriNum; ++i) AddTriangle(pSrc->psTri[i]); }
/**************************************************************************** @Function Add @Input pMesh The mesh to add @Description Add's the input mesh to the current block option ****************************************************************************/ void CBlockOption::Add( const SMesh * const pMesh) { int i, j; SVtx *pVtx; for(i = 0; i < pMesh->nVtxNum; ++i) { pVtx = pMesh->ppVtx[i]; AddVertexCheckDup(pVtx); for(j = 0; j < pVtx->nTriNumTot; ++j) { if(!pVtx->psTri[j]->bUsed) AddTriangleCheckDup(pVtx->psTri[j]); } } }