51 lines
1.9 KiB
C++
Executable File
51 lines
1.9 KiB
C++
Executable File
/**********************************************************************
|
|
*<
|
|
FILE: sbmtlapi.h
|
|
|
|
DESCRIPTION: Object Sub Material API
|
|
|
|
CREATED BY: Christer Janson
|
|
|
|
HISTORY: 1-19-98
|
|
|
|
*> Copyright (c) 1998, All Rights Reserved.
|
|
**********************************************************************/
|
|
|
|
// By deriving your object or modifier from this class you will support
|
|
// direct assignment of sub materials to selected faces/elements.
|
|
// For a reference implementation of this class, please refer to
|
|
// maxsdk\samples\pack1\triobjed.cpp
|
|
|
|
#ifndef __SBMTLAPI_H__
|
|
#define __SBMTLAPI_H__
|
|
|
|
class ISubMtlAPI {
|
|
public:
|
|
// Return a material ID that is currently not used by the object.
|
|
// If the current face selection share once single MtlID that is not
|
|
// used by any other faces, you should use it.
|
|
virtual MtlID GetNextAvailMtlID(ModContext* mc) = 0;
|
|
// Indicate if you are active in the modifier panel and have an
|
|
// active face selection
|
|
virtual BOOL HasFaceSelection(ModContext* mc) = 0;
|
|
// Set the selected faces to the specified material ID.
|
|
// If bResetUnsel is TRUE, then you should set the remaining
|
|
// faces material ID's to 0
|
|
virtual void SetSelFaceMtlID(ModContext* mc, MtlID id, BOOL bResetUnsel = FALSE) = 0;
|
|
// Return the material ID of the selected face(s).
|
|
// If multiple faces are selected they should all have the same MtlID -
|
|
// otherwise you should return -1.
|
|
// If faces other than the selected share the same material ID, then
|
|
// you should return -1.
|
|
virtual int GetSelFaceUniqueMtlID(ModContext* mc) = 0;
|
|
// Return the material ID of the selected face(s).
|
|
// If multiple faces are selected they should all have the same MtlID,
|
|
// otherwise you should return -1.
|
|
virtual int GetSelFaceAnyMtlID(ModContext* mc) = 0;
|
|
// Return the highest MtlID on the object.
|
|
virtual int GetMaxMtlID(ModContext* mc) = 0;
|
|
};
|
|
|
|
#endif //__SBMTLAPI_H__
|
|
|