442 #define ME_POLY_LOOP_PREV(mloop, mp, i) \
443 (&(mloop)[(mp)->loopstart + (((i) + (mp)->totloop - 1) % (mp)->totloop)])
444 #define ME_POLY_LOOP_NEXT(mloop, mp, i) (&(mloop)[(mp)->loopstart + (((i) + 1) % (mp)->totloop)])
447 #define ME_POLY_TRI_TOT(mp) ((mp)->totloop - 2)
454 #define ME_MAT_NR_TEST(mat_nr, totmat) \
455 (CHECK_TYPE_ANY(mat_nr, short, const short), \
456 CHECK_TYPE_ANY(totmat, short, const short), \
457 (LIKELY(mat_nr < totmat) ? mat_nr : 0))
499 #define MESH_MLOOPCOL_FROM_MCOL(_mloopcol, _mcol) \
501 MLoopCol *mloopcol__tmp = _mloopcol; \
502 const MCol *mcol__tmp = _mcol; \
503 mloopcol__tmp->r = mcol__tmp->b; \
504 mloopcol__tmp->g = mcol__tmp->g; \
505 mloopcol__tmp->b = mcol__tmp->r; \
506 mloopcol__tmp->a = mcol__tmp->a; \
510 #define MESH_MLOOPCOL_TO_MCOL(_mloopcol, _mcol) \
512 const MLoopCol *mloopcol__tmp = _mloopcol; \
513 MCol *mcol__tmp = _mcol; \
514 mcol__tmp->b = mloopcol__tmp->r; \
515 mcol__tmp->g = mloopcol__tmp->g; \
516 mcol__tmp->r = mloopcol__tmp->b; \
517 mcol__tmp->a = mloopcol__tmp->a; \
typedef float(TangentPoint)[2]
These structs are the foundation for all linked lists in the library system.
struct FreestyleEdge FreestyleEdge
struct MBoolProperty MBoolProperty
struct MVertSkin MVertSkin
struct MStringProperty MStringProperty
struct GridPaintMask GridPaintMask
struct MDeformVert MDeformVert
struct OrigSpaceFace OrigSpaceFace
struct MDeformWeight MDeformWeight
struct OrigSpaceLoop OrigSpaceLoop
struct MIntProperty MIntProperty
struct MFloatProperty MFloatProperty
struct FreestyleFace FreestyleFace