static unsigned char getTriFlags(const float* va, const float* vb, const float* vc, const float* vpoly, const int npoly) { unsigned char flags = 0; flags |= getEdgeFlags(va,vb,vpoly,npoly) << 0; flags |= getEdgeFlags(vb,vc,vpoly,npoly) << 2; flags |= getEdgeFlags(vc,va,vpoly,npoly) << 4; return flags; }
static unsigned char getTriFlags(const dtCoordinates& va, const dtCoordinates& vb, const dtCoordinates& vc, const dtCoordinates* vpoly, const int npoly) { unsigned char flags = 0; flags |= getEdgeFlags(va,vb,vpoly,npoly) << 0; flags |= getEdgeFlags(vb,vc,vpoly,npoly) << 2; flags |= getEdgeFlags(vc,va,vpoly,npoly) << 4; return flags; }
STDMETHODIMP CVisComplexObj::get_edgeFlags(VARIANT *pVal) { VariantFromDoubleArray(getEdgeFlags(), pVal); return S_OK; }