Rhino C++ API  8.13
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
CRhRdkBasicMaterial Class Reference

#include <RhRdkBasicMaterial.h>

Inheritance diagram for CRhRdkBasicMaterial:
CRhRdkBasicMaterialBase CRhRdkMaterial CRhRdkCoreContent CRhRdkContent CRhRdkObject IAutoUIExtraRequirements

Classes

class  CTextureSlot
 

Public Member Functions

 CRhRdkBasicMaterial ()
 
virtual ~CRhRdkBasicMaterial ()
 
virtual void AddAutoParameters (IRhRdkParamBlock &paramBlock, int sectionId) const override
 
virtual ON_Color Ambient (void) const
 
virtual ON_wString AutomaticInstanceName (void) const override
 
virtual unsigned int BitFlags (void) const override
 
virtual const wchar_t * Category (void) const override
 
virtual ON_wString ChildSlotNameFromParamName (const wchar_t *wszParamName) const override
 
virtual double Clarity (void) const
 
virtual unsigned int ComputeRenderCRC (const CRenderCRCFlags &rcrcFlags) const override
 
virtual ON_Color Diffuse (void) const
 
virtual bool DisableLighting (void) const
 
virtual void DisplayContextHelp (HWND hwndParent) const override
 
virtual ON_Color Emission (void) const
 
virtual void EnableAlphaTransparency (bool b)
 
virtual void EnableFresnel (bool b)
 
virtual ON_wString FlamingoLibrary (void) const
 
virtual void FromOnMaterialEx (const ON_Material &mat, bool bRenameEvents, bool bChangeName, UINT_PTR uReserved=0) override
 
virtual void GetAutoParameters (const IRhRdkParamBlock &paramBlock, int sectionId) override
 
virtual ON_wString GetEnglishParamName (const wchar_t *wszParamName) const override
 
virtual bool GetExtraRequirementParameter (const wchar_t *wszParamName, const wchar_t *wszExtraReqName, CRhRdkVariant &vValueOut) const override
 
virtual ON_wString GetLocalizedParamName (const wchar_t *wszParamName) const override
 
virtual CRhRdkVariant GetParameter (const wchar_t *wszName) const override
 
virtual bool GetSimulation (const IRhRdk_XMLSection &section) override
 
virtual ON_Color Gloss (void) const
 
virtual double GlossFinish (void) const
 
virtual Harvested HarvestData (const CRhRdkContent &oldContent) override
 
virtual bool Icon (const ON_2iSize &size, CRhinoDib &dibOut) const override
 
virtual ON_wString InternalName (void) const override
 
virtual double IOR (void) const
 
virtual bool IsAlphaTransparencyEnabled (void) const
 
virtual bool IsBuiltIn (void) const override
 
virtual bool IsFactoryProductAcceptableAsChild (const CRhRdkContentFactory &f, const wchar_t *wszChildSlotName) const override
 
virtual bool IsFresnelEnabled (void) const
 
virtual CRhRdkContentMakeCopy (CopyMethods m) const override
 
virtual CChildSlotIteratorNewChildSlotIterator (CSIContext context) const override
 
virtual CRhRdkBasicMaterialCCINewCompoundContentImplementer (const UUID &uuidRenderEngine) const override
 
RDK_DEPRECATED bool OnChildSlotChanged (const wchar_t *wszChildSlotName)
 
virtual bool OnChildSlotChanged (const wchar_t *wszChildSlotName) const override
 
RDK_DEPRECATED bool OnChildSlotChanging (const wchar_t *wszChildSlotName)
 
virtual bool OnChildSlotChanging (const wchar_t *wszChildSlotName) const override
 
virtual ParamSerialMethod ParameterSerializationMethod (void) const override
 
virtual ON_wString ParamNameFromChildSlotName (const wchar_t *wszChildSlotName) const override
 
virtual UUID PlugInId (void) const override
 
virtual double Polish (void) const
 
virtual bool ReadParametersFromSection (const IRhRdk_XMLSection &section, ReadParamsContext context) override
 
virtual double Reflectivity (void) const
 
virtual ON_Color ReflectivityColor (void) const
 
virtual UUID RenderEngineId (void) const override
 
virtual void SetAmbient (const ON_Color &c)
 
virtual void SetClarity (double d)
 
virtual void SetDiffuse (const ON_Color &c)
 
virtual void SetDisableLighting (bool b)
 
virtual void SetEmission (const ON_Color &c)
 
virtual bool SetExtraRequirementParameter (const wchar_t *wszParamName, const wchar_t *wszExtraReqName, const CRhRdkVariant &vValue, SetContext sc) override
 
virtual void SetFlamingoLibrary (const ON_wString &s)
 
virtual void SetGloss (const ON_Color &c)
 
virtual void SetGlossFinish (double d)
 
virtual void SetIOR (double d)
 
virtual bool SetParameter (const wchar_t *wszName, const CRhRdkVariant &vValue) override
 
virtual void SetPolish (double d)
 
virtual void SetReflectivity (double d)
 
virtual void SetReflectivityColor (const ON_Color &c)
 
virtual bool SetSimulation (IRhRdk_XMLSection &section) const override
 
virtual void SetTextureSlot (CRhRdkMaterial::ChildSlotUsage type, const CTextureSlot &slot, bool bRecordUndo=false)
 
virtual void SetTransparency (double d)
 
virtual void SetTransparencyColor (const ON_Color &c)
 
virtual bool SupportsContextHelp (void) const override
 
virtual ON_wString TextureChildSlotName (ChildSlotUsage usage) const override
 
virtual const CTextureSlotTextureSlot (CRhRdkMaterial::ChildSlotUsage type) const
 
virtual double Transparency (void) const
 
virtual ON_Color TransparencyColor (void) const
 
virtual ON_wString TypeDescription (void) const override
 
virtual UUID TypeId (void) const override
 
virtual ON_wString TypeName (void) const override
 
virtual bool WriteParametersToSection (IRhRdk_XMLSection &section, WriteParamsContext context) const override
 
- Public Member Functions inherited from CRhRdkBasicMaterialBase
virtual void FromOnMaterial (const ON_Material &mat)
 
virtual RDK_DEPRECATED void FromOnMaterialEx (const ON_Material &mat, eChangeContext cc, bool bRenameEvents, UINT_PTR uReserved=0)
 
virtual void * GetShader (const UUID &uuidRenderEngine, void *pvData) const override
 
virtual bool IsBasicType (void) const override
 
- Public Member Functions inherited from CRhRdkMaterial
 CRhRdkMaterial ()
 
virtual ~CRhRdkMaterial ()
 
bool AssignTo (const CRhinoObjRef &objRef) const
 
bool AssignTo (const ON_ClassArray< CRhinoObjRef > &aObjRef, RhRdkAssignToSubFaceChoices sfc, RhRdkAssignToBlockChoices bc, bool bInteractive) const
 
virtual bool DynamicIcon (const ON_2iSize &size, CRhinoDib &dibOut, DynamicIconUsage usage) const override
 
virtual void * EVF (const wchar_t *wszFunc, void *pvData) override
 
virtual CRhRdkContentFastMakeCopy (CopyMethods m) const override
 
virtual bool GetTextureChannelInfo (ChildSlotUsage usage, TextureChannelInfo &info) const
 
ON_wString GetTextureChildSlotName (ChildSlotUsage usage) const
 
const CRhRdkContentGetTextureForUsage (ChildSlotUsage usage) const
 
CImpl & Impl (void) const
 
virtual bool IsAssociatedWith (const ON_Material &mat) const
 
virtual Kinds Kind (void) const final override
 
virtual const wchar_t * LibraryFileExtension (void) const override
 
virtual CRhRdkPreviewBackgroundNewPreviewBackground (void) const override
 
virtual CRhRdkPreviewGeometryNewPreviewGeometry (void) const override
 
virtual IRhRdkPreviewSceneServerNewPreviewSceneServer (const CRhRdkSSData &data) const override
 
virtual UINT PreviewBackgroundFlags (void) const override
 
virtual UINT PreviewGeometryFlags (void) const override
 
virtual UINT PreviewLightingFlags (void) const override
 
virtual ePreviewSceneType PreviewSceneType (void) const override
 
virtual void SetInstanceName (const wchar_t *wszName) override
 
bool SmellsLike (const UUID &typeId, bool bIgnoreTextures=false) const
 
bool SmellsLikeGem (void) const
 
bool SmellsLikeGlass (void) const
 
bool SmellsLikeMetal (void) const
 
bool SmellsLikePaint (void) const
 
bool SmellsLikePlaster (void) const
 
bool SmellsLikePlastic (void) const
 
bool SmellsLikeTexturedGem (void) const
 
bool SmellsLikeTexturedGlass (void) const
 
bool SmellsLikeTexturedMetal (void) const
 
bool SmellsLikeTexturedPaint (void) const
 
bool SmellsLikeTexturedPlaster (void) const
 
bool SmellsLikeTexturedPlastic (void) const
 
virtual bool TextureRequiresLinearWorkflowAdjustment (const wchar_t *wszChildSlotName) const
 
ChildSlotUsage TextureUsage (const wchar_t *wszChildSlotName) const
 
virtual bool UpdateDocumentTables (void) const override
 
- Public Member Functions inherited from CRhRdkCoreContent
 CRhRdkCoreContent ()
 
 CRhRdkCoreContent (bool bAutoGlobalRegister)
 
virtual ~CRhRdkCoreContent ()
 
virtual RDK_DEPRECATED bool AddAutomaticUISection (const wchar_t *wszCaption, int id=0)
 
virtual bool AddAutomaticUISection (IRhRdkExpandableContentUI &ui, const wchar_t *wszLocalCaption, const wchar_t *wszEnglishCaption, int id=0)
 
virtual void AddUI (IRhRdkContentUI &ui) const override
 
virtual void AddUISections (IRhRdkExpandableContentUI &ui)
 
virtual RDK_DEPRECATED void AddUISections (void)
 
virtual bool CreatePreview (CRhRdkRenderPlugIn &plugIn, const ON_2iSize &sizeImage, RhRdkPreviewQuality qual, const IRhRdkPreviewSceneServer *pSceneServer, IRhRdkPreviewCallbacks *pNotify, CRhinoDib &dibOut) const override
 
virtual IRhRdkContentUICreateUI (IRhRdkContentEditor &e, const UUID &uuidUI, const CRhRdkContentArray &aInitialClients, void *pReserved) override
 
virtual IRhRdkCustomCurveGraphSectionCallbackCustomCurveGraphSectionCallback (void)
 
virtual void GetUIs (ON_SimpleArray< IRhRdkContentUI * > &aOut) const override
 
virtual RDK_DEPRECATED bool RecreateTextureSummary (void)
 
virtual void ReleaseAllEditorUIs (const UUID &uuidEditor, bool bIncludeChildren) const override
 
virtual void ReleaseAllUIs (bool bIncludeChildren) const override
 
virtual void TransferUIsFrom (const CRhRdkContent &c) override
 
virtual RDK_DEPRECATED IRhRdkExpandableContentUIUI (void) const override
 
- Public Member Functions inherited from CRhRdkContent
 CRhRdkContent ()
 
 CRhRdkContent (bool bAutoGlobalRegister)
 
virtual ~CRhRdkContent ()
 
virtual RDK_DEPRECATED void AddAutoParameters (class IRhRdkParamBlock &paramBlock, int id)
 
virtual RDK_DEPRECATED bool AddChild (CRhRdkContent *pChild, const wchar_t *wszChildSlotName)
 
virtual bool AddToDocumentList (CRhRdkDocument &rdkDoc)
 
virtual const class IRhRdkPreviewAppearanceDefaults * AppearanceDefaults (void) const
 
virtual bool AttachCustomUserData (ICustomUserData *data)
 
virtual bool AutoDelete (void) const
 
virtual CRhRdkContentBeginChange (RhRdkChangeContext cc) const
 
virtual bool CanBeEdited (void) const
 
virtual bool ChangeChild (CRhRdkContent *pOldChild, CRhRdkContent *pNewChild)
 
virtual RDK_DEPRECATED void Changed (eChangeContext cc)
 
virtual void Changed (void)
 
virtual_su bool CheckComplete (ON_wString &sReason) const
 
virtual RDK_DEPRECATED DWORD ChildrenRenderCRC (void) const
 
virtual CRhRdkVariant ChildSlotAmount (const wchar_t *wszChildSlotName) const
 
virtual_su ON_wString ChildSlotDisplayName (void) const
 
virtual ON_wString ChildSlotName (void) const
 
virtual CRhRdkVariant ChildSlotOn (const wchar_t *wszChildSlotName) const
 
CRhRdkContentClone (CopyMethods m=CopyMethods::Normal) const
 
void CommonCtor (bool b)
 
virtual bool ContentNameTakenFromFileName (void) const
 
virtual void ConvertMetersToUnits (void)
 
virtual void ConvertUnitsToMeters (void)
 
virtual bool CreatedByLoading (void) const
 
virtual RDK_DEPRECATED HBITMAP CreateLibraryPreview (const class CSize &sizeImage, const IRhRdkPreviewSceneServer *pSceneServer) const
 
virtual bool CreateLibraryPreview (const ON_2iSize &sizeImage, const IRhRdkPreviewSceneServer *pSceneServer, CRhinoDib &dibOut) const
 
virtual RDK_DEPRECATED HBITMAP CreatePreview (class CRhRdkRenderPlugIn &plugIn, const class CSize &sizeImage, eRhRdkRenderQuality qual, const class IRhRdkPreviewSceneServer *pSceneServer) const
 
virtual class IRhRdkContentUICreateUI (class IRhRdkContentEditor &e, const UUID &uuidUI, const class CRhRdkContentArray &aInitialClients, void *pReserved)=0
 
virtual const ICustomUserDataCustomUserData (const UUID &uuidDataId) const
 
virtual RDK_DEPRECATED void DecrementUseCount (void) const
 
virtual void DeleteAllChildren (void)
 
virtual bool DeleteChild (const wchar_t *wszChildSlotName)
 
virtual RDK_DEPRECATED void DestroyChildContent (const UUID &uuidPlugIn)
 
virtual void DestroyChildContent (const UUID &uuidPlugIn) const
 
virtual bool DetachCustomUserData (ICustomUserData *pUD)
 
virtual void DisplayDebugString (const wchar_t *wszTitle=L"") const
 
virtual_su ON_wString DisplayName (void) const
 
virtual RDK_DEPRECATED CRhinoDocDocument (void) const
 
virtual_su CRhinoDocDocumentAssoc (void)
 
virtual const CRhinoDocDocumentAssoc (void) const
 
virtual ON_wString DragText (const UUID &uuidSource) const
 
ON_wString DragTextEx (const UUID &uuidSource, int version, void *) const
 
virtual_su void Dump (const DumpContext &dc, unsigned int gds_flags, int indent=0) const
 
virtual const RDK_DEPRECATED CRhRdkContentDuplicate (void) const
 
const RDK_DEPRECATED CRhRdkContentDuplicateEx (bool reserved) const
 
const CRhRdkContentDuplicateEx (DupOpt d) const
 
virtual IAutoUIExtraRequirementsDuplicateExtraRequirementsInterface (void) const
 
virtual bool DuplicationInProgress (void) const
 
virtual CRhRdkContentEdit (void) const
 
virtual ON_wString EmbeddedFiles (void) const
 
virtual ON_wString EmbeddedFilesRecursive (void) const
 
void EmergencyUnregister (void) const
 
virtual bool EndChange (void)
 
virtual void ExecuteCommand (UUID uuidCommand, void *pvData) const
 
virtual const CRhRdkContentFactoryFactory (void) const
 
class CRhRdkContentFieldsFields (void) const
 
virtual const CRhRdkContentFindChild (const wchar_t *wszChildSlotName) const
 
virtual const CRhRdkContentFindInstance (const UUID &uuidInstance) const
 
virtual RDK_DEPRECATED CRhRdkContentFindInstance (const wchar_t *wszName) const
 
virtual void FindInstanceByName (const wchar_t *wszName, bool bCaseSensitive, bool bRecurse, OUT CRhRdkContentArray &aContent) const
 
virtual const CRhRdkContentFirstChild (void) const
 
virtual const CRhRdkContentForDisplay (void) const
 
virtual RhRdkChangeContext GetChangeContext (void) const
 
virtual CChildIterator GetChildIterator (void) const
 
virtual ON_wString GetDebugString (const wchar_t *sep, UINT_PTR flags) const
 
virtual RDK_DEPRECATED bool GetDefaultsFromUser (HWND)
 
virtual bool GetDefaultsFromUser (void)
 
virtual void GetInstanceIdsRecursive (class CRhRdkInstanceIdArray &aOut) const
 
virtual RDK_DEPRECATED bool GetParameters (const class IRhRdk_XMLSection &section, eGetParamsContext context)
 
void GetSortedChildren (OUT CRhRdkContentArray &aChild) const
 
virtual_su bool GetUnderlyingInstances (OUT CRhRdkContentArray &a) const
 
virtual bool GlobalRegister (bool bRegister=true)
 
virtual const UUID & GroupId (void) const
 
virtual RDK_DEPRECATED HICON Icon (void) const
 
CImpl & Imp (void) const
 
virtual RDK_DEPRECATED void IncrementUseCount (void) const
 
virtual bool Initialize (void)
 
virtual const UUID & InstanceId (void) const
 
virtual ON_wString InstanceName (void) const
 
virtual void InternalChanged (RhRdkChangeContext, const CRhRdkContent *)
 
virtual_su bool IsChild (void) const
 
virtual bool IsCompatible (const UUID &uuidRenderEngine) const
 
virtual bool IsContentTypeAcceptableAsChild (const UUID &uuidType, const wchar_t *wszChildSlotName) const
 
virtual RDK_DEPRECATED bool IsCRCCached (void) const
 
virtual bool IsDefaultInstance (void) const
 
virtual bool IsFactoryProductAcceptableAsChild (const class CRhRdkContentFactory &f, const wchar_t *wszChildSlotName) const
 
virtual RDK_DEPRECATED bool IsFactoryProductAcceptableAsChild (const class CRhRdkContentFactory *pFactory, const wchar_t *wszChildSlotName) const
 
virtual bool IsHidden (void) const
 
virtual bool IsHiddenByAutoDelete (void) const
 
virtual RDK_DEPRECATED bool IsInDocument (void) const
 
virtual bool IsKind (CRhRdkContent::Kinds kind) const
 
virtual bool IsLocked (void) const
 
virtual bool IsOwnedByDocument (void) const
 
virtual bool IsPerObject (void) const
 
virtual bool IsPrivate (void) const
 
virtual bool IsReference (void) const
 
virtual bool IsRhinoObjectSelected (void) const
 
virtual bool IsSurrogate (void) const
 
virtual bool IsTopLevel (void) const
 
virtual bool IsUniversal (void) const
 
virtual bool IsV4Material (void) const
 
virtual ON_wString LibraryFileName (void) const
 
virtual_su CRhRdkContentMakeCopyForPreview (void) const
 
virtual RDK_DEPRECATED CRhRdkContentMakeGroupInstance (void)
 
virtual CRhRdkContentMakeGroupInstance (void) const
 
virtual class IRhRdkPreviewSceneServerNewPreviewSceneServer (const class CRhRdkSSData &data) const =0
 
virtual const CRhRdkContentNextSibling (void) const
 
virtual ON_wString Notes (void) const
 
virtual bool OnChildChanging (const CRhRdkContent *pOldChild, const CRhRdkContent *pNewChild) const
 
virtual void OnDocumentRegister (void) const
 
virtual void OnDocumentUnregister (void) const
 
virtual bool OnExtraRequirementButtonClicked (const wchar_t *wszParamName, const wchar_t *wszButtonName)
 
virtual void OnFieldChanged (const class CRhRdkContentField &field, const CRhRdkVariant &vOldValue, RhRdkChangeContext cc, void *pReserved)
 
virtual_su bool OpenInFirstMainModelessEditor (void) const
 
virtual bool OpenInMainEditor (void) const
 
virtual RDK_DEPRECATED bool OpenInModalEditor (UINT uFlags=0)
 
virtual const CRhRdkContentParent (void) const
 
virtual int PreviewUpdateDelay (void) const
 
virtual_su void Promote (void)
 
virtual ProxyTypes ProxyType (void) const
 
virtual const CRhRdkDocumentRdkDocumentAssoc (void) const
 
virtual UUID RdkDocumentId (void) const
 
virtual const CRhRdkDocumentRdkDocumentOwner (void) const
 
virtual const RDK_DEPRECATED CRhRdkDocumentRdkDocumentRegistered (void) const
 
virtual RDK_DEPRECATED bool ReadParameterXMLStream (const wchar_t *wszStream, eGetParamsContext context)
 
virtual bool ReadParameterXMLStream (const wchar_t *wszStream, ReadParamsContext context)
 
virtual bool ReadSimulationXMLStream (wchar_t *wszStream)
 
RDK_DEPRECATED bool ReadXMLStream (const wchar_t *wszStream)
 
virtual bool ReadXMLStream (const wchar_t *wszStream, const CRhinoFileReadOptions *pOptions)
 
virtual bool RemoveFromDocumentList (CRhRdkDocument &rdkDoc)
 
virtual bool RemoveRdkDocumentAssoc (void)
 
virtual unsigned int RenderCRC (const CRenderCRCFlags &rcrcFlags) const
 
RDK_DEPRECATED unsigned int RenderCRC (const CRenderCRCFlags &rcrcFlags, const IRhRdkLinearWorkflow &lw) const
 
unsigned int RenderCRC (const CRenderCRCFlags &rcrcFlags, const ON_LinearWorkflow &lw) const
 
virtual void ResetParametersToDefaults (const ON_ClassArray< ON_wString > &aParams)
 
virtual RDK_DEPRECATED void ResetUseCount (void) const
 
virtual void ResolveRelativePaths (const wchar_t *wszPathToFile)
 
virtual void ResolveURLPaths (bool bForceDownload=false)
 
ON_wString SavedCSN (void) const
 
virtual RDK_DEPRECATED bool SaveToLibraryFile (const ON_wString &sFullPath, const IRhRdkPreviewSceneServer *pSceneServer) const
 
virtual bool SaveToLibraryFile (const ON_wString &sFullPath, const IRhRdkPreviewSceneServer *pSceneServer, EmbedFilesChoice c) const
 
virtual bool SaveToLibraryFile_Internal (const wchar_t *wszFullPath, const IRhRdkPreviewSceneServer *pSceneServer, bool bEmbedFiles) const
 
virtual void SetAutoDelete (bool bAutoDelete)
 
virtual bool SetChild (const CRhRdkContent *pChild, const wchar_t *wszChildSlotName)
 
virtual bool SetChildSlotAmount (const wchar_t *wszChildSlotName, double dPercent)
 
virtual void SetChildSlotName (const wchar_t *wszChildSlotName)
 
virtual bool SetChildSlotOn (const wchar_t *wszChildSlotName, bool bOn)
 
virtual RDK_DEPRECATED void SetCRCCache (DWORD dwCRC) const
 
virtual bool SetDocumentAssoc (const CRhinoDoc &doc) const
 
virtual_su bool SetDocumentAssoc (const CRhRdkContent &source) const
 
virtual void SetGroupId (const UUID &uuidGroup) const
 
virtual void SetHidden (bool bHidden)
 
RDK_DEPRECATED void SetHidden (bool bHidden, eChangeContext cc)
 
virtual void SetInstanceId (UUID uuidInstance)
 
virtual_su void SetInstanceName (const wchar_t *wszName, bool bRenameEvents, bool bEnsureNameUnique)
 
virtual void SetInstanceNameImpl (const wchar_t *wszName, bool bRenameEvents)
 
virtual_su void SetInstanceNameImpl (const wchar_t *wszName, bool bRenameEvents, bool bEnsureNameUnique)
 
virtual RDK_DEPRECATED void SetIsReference (bool b)
 
void SetIsRenderCRCRecursive (bool bRecursive)
 
virtual void SetIsRhinoObjectSelected (bool bSelected) const
 
virtual void SetLocked (void)
 
virtual void SetNotes (const wchar_t *wszNotes)
 
RDK_DEPRECATED void SetNotes (const wchar_t *wszNotes, bool bSendEvents)
 
virtual RDK_DEPRECATED bool SetParameter (const wchar_t *wszName, const CRhRdkVariant &vValue, eChangeContext cc)
 
virtual RDK_DEPRECATED bool SetParameters (class IRhRdk_XMLSection &section, eSetParamsContext context) const
 
virtual bool SetRdkDocumentAssoc (const CRhRdkDocument &rdkDoc)
 
virtual bool SetRdkDocumentOwner (CRhRdkDocument *pRdkDoc)
 
virtual void SetTags (const wchar_t *wszTags, bool bSendEvents=true)
 
virtual bool SmartUngroupRecursive (void)
 
virtual bool SupportsCommand (UUID uuidCommand) const
 
virtual ON_wString Tags (void) const
 
ON_RenderContentToON_RenderContent (bool bRecursive=true) const
 
virtual CRhRdkContentTopLevel (void)
 
virtual const CRhRdkContentTopLevel (void) const
 
virtual CRhRdkContentTopLevelParent (void)
 
virtual const CRhRdkContentTopLevelParent (void) const
 
virtual RDK_DEPRECATED bool Ungroup (void)
 
virtual bool Ungroup (void) const
 
virtual RDK_DEPRECATED bool UngroupRecursive (void)
 
virtual bool UngroupRecursive (void) const
 
virtual void Uninitialize (void)
 
virtual void UpdatePreview (void) const
 
virtual RDK_DEPRECATED void UpdateUI (void) const
 
virtual int UseCount (void) const
 
virtual void VerifyCopy (const CRhRdkContent *pCopy) const
 
virtual RDK_DEPRECATED const class IRhRdkThumbViewDefaults * ViewDefaults (void) const
 
virtual RDK_DEPRECATED DWORD WriteParameterXMLStream (wchar_t *wszStream, DWORD dwMaxChars, eSetParamsContext context) const
 
virtual size_t WriteParameterXMLStream (wchar_t *wszStream, size_t maxChars, WriteParamsContext context) const
 
virtual size_t WriteSimulationXMLStream (wchar_t *wszStream, size_t maxChars) const
 
virtual RDK_DEPRECATED DWORD WriteXMLStream (wchar_t *wszStream, DWORD dwMaxChars, eSetParamsContext context) const
 
virtual size_t WriteXMLStream (wchar_t *wszStream, size_t maxChars, WriteParamsContext context, const CRhinoFileWriteOptions *pOptions) const
 
- Public Member Functions inherited from CRhRdkObject
 CRhRdkObject ()
 
virtual ~CRhRdkObject ()
 
void operator delete (void *buf)
 
void operator delete[] (void *buf)
 
void * operator new (size_t size)
 
void * operator new[] (size_t size)
 
- Public Member Functions inherited from IAutoUIExtraRequirements
virtual ~IAutoUIExtraRequirements ()
 

Static Public Member Functions

static int NumTextureTypes (void)
 
- Static Public Member Functions inherited from CRhRdkBasicMaterialBase
static ON_Color DefaultColor ()
 
- Static Public Member Functions inherited from CRhRdkMaterial
static std::shared_ptr< CRhRdkMaterialDefault (void)
 
static CRhRdkMaterialFromOnMaterial (const ON_Material &material, const CRhinoDoc *pDocAssoc)
 
static ON_Texture::TYPE TextureTypeFromUsage (ChildSlotUsage u)
 
static ChildSlotUsage UsageFromTextureType (ON_Texture::TYPE type)
 
static const CRhRdkMaterialWorstPossibleMaterial (void)
 
- Static Public Member Functions inherited from CRhRdkContent
static RhRdkChangeContext ChangeContextFromSetContext (SetContext sc)
 
static RDK_DEPRECATED CRhRdkContentCreateObjectFromType (UUID uuidType)
 
static CRhRdkContentFromON_RenderContent (const class ON_RenderContent &rc, const CRhinoDoc *pDocAssoc, bool bRecursive)
 
static RDK_DEPRECATED CRhRdkContentFromXMLStream (const wchar_t *wszXML)
 
static RDK_DEPRECATED CRhRdkContentFromXMLStream (const wchar_t *wszXML, const CRhinoDoc *pDocAssoc)
 
static CRhRdkContentFromXMLStream (const wchar_t *wszXML, const CRhinoDoc *pDocAssoc, bool bUseXMLInstanceId)
 
static bool IsChangeContextUIBased (RhRdkChangeContext cc)
 
static CRhRdkContentLoadFromLibraryFile (const wchar_t *sFullPath)
 
static SetContext SetContextFromChangeContext (RhRdkChangeContext cc)
 
static void UninitializeAndDelete (CRhRdkContent *pContent)
 
- Static Public Member Functions inherited from CRhRdkObject
static void CheckMemory (void)
 
static void PopulateDebuggingInfo (void)
 

Protected Member Functions

virtual void SimulateMaterial (ON_Material &mat, CRhRdkTexture::TextureGeneration tg=CRhRdkTexture::TextureGeneration::Allow, int iSimulatedTextureSize=-1, const CRhinoObject *pObject=nullptr) const override
 
- Protected Member Functions inherited from CRhRdkBasicMaterialBase
virtual RDK_DEPRECATED CRhRdkBasicMaterialCCINewCompoundContentImplementer (void) const
 
- Protected Member Functions inherited from CRhRdkMaterial
virtual RDK_DEPRECATED ON_wString BumpTextureChildSlotName (void) const
 
virtual RDK_DEPRECATED ON_wString DiffuseTextureChildSlotName (void) const
 
virtual RDK_DEPRECATED ON_wString EnvironmentTextureChildSlotName (void) const
 
virtual RDK_DEPRECATED void SimulateMaterial (ON_Material &matOut, bool bForDataOnly, const CRhinoObject *pObject=nullptr) const
 
virtual RDK_DEPRECATED ON_wString TransparencyTextureChildSlotName (void) const
 

Additional Inherited Members

- Public Types inherited from CRhRdkMaterial
enum  ChildSlotUsage : unsigned int {
  ChildSlotUsage::None = 0x0000000, ChildSlotUsage::Diffuse = 0x0000001, ChildSlotUsage::Transparency = 0x0000002, ChildSlotUsage::Opacity = 0x0000002,
  ChildSlotUsage::Bump = 0x0000004, ChildSlotUsage::Environment = 0x0000008, ChildSlotUsage::PBR_base_color = Diffuse, ChildSlotUsage::PBR_opacity = Transparency,
  ChildSlotUsage::PBR_bump = Bump, ChildSlotUsage::PBR_subsurface = 0x0000020, ChildSlotUsage::PBR_subsurface_scattering = 0x0000040, ChildSlotUsage::PBR_subsurface_scattering_color = 0x0000040,
  ChildSlotUsage::PBR_subsurface_scattering_radius = 0x0000080, ChildSlotUsage::PBR_metallic = 0x0000100, ChildSlotUsage::PBR_specular = 0x0000200, ChildSlotUsage::PBR_specular_tint = 0x0000400,
  ChildSlotUsage::PBR_roughness = 0x0000800, ChildSlotUsage::PBR_anisotropic = 0x0001000, ChildSlotUsage::PBR_anisotropic_rotation = 0x0002000, ChildSlotUsage::PBR_sheen = 0x0004000,
  ChildSlotUsage::PBR_sheen_tint = 0x0008000, ChildSlotUsage::PBR_clearcoat = 0x0010000, ChildSlotUsage::PBR_clearcoat_roughness = 0x0020000, ChildSlotUsage::PBR_opacity_ior = 0x0040000,
  ChildSlotUsage::PBR_opacity_roughness = 0x0080000, ChildSlotUsage::PBR_emission = 0x0100000, ChildSlotUsage::PBR_ambient_occlusion = 0x0200000, ChildSlotUsage::PBR_displacement = 0x0800000,
  ChildSlotUsage::PBR_clearcoat_bump = 0x1000000, ChildSlotUsage::PBR_alpha = 0x2000000, ChildSlotUsage::Any = 0xFFFFFFFF
}
 
- Public Types inherited from CRhRdkCoreContent
enum  SectionId : int { TextureSummary = 0x8000, NotUsed = 0x8001 }
 
- Public Types inherited from CRhRdkContent
enum  : unsigned int {
  bfTextureSummary = 0x0001, bfQuickPreview = 0x0002, bfPreviewCache = 0x0004, bfLocalTextureMapping = 0x0010,
  bfGraphDisplay = 0x0020, bfAdjustment = 0x0080, bfFields = 0x0100, bfNameTypeSection = 0x0800
}
 
enum  {
  pg_unused = 0x00000000, pg_sphere = 0x00000001, pg_cube = 0x00000002, pg_cone = 0x00000004,
  pg_pyramid = 0x00000008, pg_torus = 0x00000010, pg_plane = 0x00000020, pg_cone_sphere = 0x00010000,
  pg_scene = 0x00020000, pg_default_mat = pg_sphere | pg_cube | pg_cone | pg_pyramid | pg_torus | pg_plane | pg_scene, pg_default_env = pg_cone_sphere, pg_default_tex = pg_unused,
  pg_mat_scene = pg_scene, force32bit_pgflags = 0xFFFFFFFF
}
 
enum  {
  pb_unused = 0x00000000, pb_none = 0x00000001, pb_checker = 0x00000002, pb_custom = 0x00000004,
  pb_scene = 0x00000008, pb_default_mat = pb_none | pb_checker | pb_custom | pb_scene, pb_default_env = pb_unused, pb_default_tex = pb_unused,
  force32bit_pbflags = 0xFFFFFFFF
}
 
enum  {
  pl_unused = 0x00000000, pl_simple = 0x00000001, pl_sky = 0x00000002, pl_default_mat = pl_simple | pl_sky,
  pl_default_env = pl_unused, pl_default_tex = pl_unused, force32bit_plflags = 0xFFFFFFFF
}
 
enum  CopyMethods : unsigned int { CopyMethods::Normal, CopyMethods::Transient }
 
enum  CSIContext : unsigned int { CSIContext::All = 0, CSIContext::TextureSummary = 1, CSIContext::Private1 = 2, CSIContext::Private2 = 3 }
 
enum  DupOpt { DupOpt::Attach, DupOpt::NoAttach }
 
enum  DynamicIconUsage : unsigned int { DynamicIconUsage::TreeControl, DynamicIconUsage::SubnodeControl, DynamicIconUsage::ContentControl, DynamicIconUsage::General }
 
enum  EmbedFilesChoice : unsigned int { EmbedFilesChoice::kNeverEmbed, EmbedFilesChoice::kAlwaysEmbed, EmbedFilesChoice::kAskUser }
 
enum  ePreviewSceneType { preview_scene_server = 0, texture_2d_image = 1, force32_bit_sceneType = 0xFFFFFFFF }
 
enum  GDS_Flags : UINT_PTR {
  gds_Normal = 0x00000, gds_KindPrefix = 0x00001, gds_UppercasePropNames = 0x00002, gds_AbbreviatePropNames = 0x00004,
  gds_NameAndIdFirst = 0x00008, gds_ShortUuids = 0x00010, gds_SuppressDocumentId = 0x00020, gds_SuppressGroupId = 0x00040,
  gds_SuppressKind = 0x00080, gds_SuppressTags = 0x00100, gds_SuppressUsage = 0x00200, gds_SuppressSerialNumber = 0x00400,
  gds_SuppressCRCs = 0x00800, gds_SuppressChildSlotName = 0x01000, gds_SuppressRegistration = 0x02000, gds_SuppressAttributes = 0x04000,
  gds_SuppressCustomUserData = 0x08000, gds_SuppressTextureProxy = 0x10000
}
 
enum  Harvested : unsigned int { Harvested::None = 0, Harvested::Some = 1, Harvested::All = 2 }
 
enum  Kinds : unsigned int { Kinds::Unset, Kinds::Material, Kinds::Environment, Kinds::Texture }
 
enum  ParamSerialMethod : unsigned int { ParamSerialMethod::GetSet, ParamSerialMethod::XmlStream }
 
enum  ProxyTypes : unsigned int { ProxyTypes::None, ProxyTypes::Single, ProxyTypes::Multi, ProxyTypes::Texture }
 
enum  ReadParamsContext : unsigned int { ReadParamsContext::Serialization = 0, ReadParamsContext::Harvesting = 1, ReadParamsContext::Rendering = 2 }
 
enum  WriteParamsContext : unsigned int { WriteParamsContext::Serialization = 0, WriteParamsContext::Harvesting = 1, WriteParamsContext::Rendering = 2, WriteParamsContext::DragDrop = 3 }
 
- Public Types inherited from IAutoUIExtraRequirements
enum  SetContext : unsigned int { SetContext::UI, SetContext::Drop, SetContext::Program }
 

Detailed Description

This class is the RDK equivalent of ON_Material.

Constructor & Destructor Documentation

◆ CRhRdkBasicMaterial()

CRhRdkBasicMaterial::CRhRdkBasicMaterial ( )

◆ ~CRhRdkBasicMaterial()

virtual CRhRdkBasicMaterial::~CRhRdkBasicMaterial ( )
virtual

Member Function Documentation

◆ AddAutoParameters()

virtual void CRhRdkBasicMaterial::AddAutoParameters ( IRhRdkParamBlock paramBlock,
int  id 
) const
overridevirtual

Optionally override this method to add the content's parameters to a collection. You need to override this method if you are using the automatic UI system and also if your content supports the texture summary.

See also
BitFlags(). The default implementation is a no-op. Even if you are using fields, you still need to override this and call Fields().AddValuesToParamBlock().
Parameters
paramBlockis the collection.
idis a caller-defined identifier (can be zero if not needed). Values of 0x8000 and above are reserved for RDK internal use.
See also
enum CRhRdkCoreContent::eSectionId for special values used internally.

Reimplemented from CRhRdkContent.

◆ Ambient()

virtual ON_Color CRhRdkBasicMaterial::Ambient ( void  ) const
virtual

◆ AutomaticInstanceName()

virtual ON_wString CRhRdkBasicMaterial::AutomaticInstanceName ( void  ) const
overridevirtual
Returns
the default content name stem (e.g., "Custom Material"). By default this function returns TypeName(). Bitmap-based materials return the filename of the bitmap.

Reimplemented from CRhRdkContent.

◆ BitFlags()

virtual unsigned int CRhRdkBasicMaterial::BitFlags ( void  ) const
overridevirtual

Optionally override this method to modify the content's bit-flags. You should first call the base class and then modify the resulting value before finally returning it. This will ensure that you get the correct default behavior before modifying it.

Returns
The bit-coded flags for this content.

Reimplemented from CRhRdkContent.

◆ Category()

virtual const wchar_t* CRhRdkBasicMaterial::Category ( void  ) const
overridevirtual
Returns
The category of the content.

Reimplemented from CRhRdkMaterial.

◆ ChildSlotNameFromParamName()

virtual ON_wString CRhRdkBasicMaterial::ChildSlotNameFromParamName ( const wchar_t *  wszParamName) const
overridevirtual
Returns
The child slot name corresponding to a parameter name.

Reimplemented from CRhRdkContent.

◆ Clarity()

virtual double CRhRdkBasicMaterial::Clarity ( void  ) const
virtual

◆ ComputeRenderCRC()

virtual unsigned int CRhRdkBasicMaterial::ComputeRenderCRC ( const CRenderCRCFlags rcrcFlags) const
overridevirtual

Calculate the render CRC of the state that affects how the content is rendered. Does not include children or perform any caching. Render CRCs are now automatically cached by the content framework and you do not have to worry about caching. You also do not have to worry about recursing into children. This method is now only called internally by the RDK. If you have existing code that calls it (or CalculateRenderCRC()), please change your code to call RenderCRC() instead. RenderCRC() is the method that manages the cache and recursion by calling this method as needed. If you override this method and implement your own CRC function, you only have to compute the CRC of this content alone. This removes the need for the methods ChildrenRenderCRC(), IsCRCCached() and SetCRCCache(). These methods are now deprecated and never called.

See also
RenderCRC()

Reimplemented from CRhRdkContent.

◆ Diffuse()

virtual ON_Color CRhRdkBasicMaterial::Diffuse ( void  ) const
virtual

◆ DisableLighting()

virtual bool CRhRdkBasicMaterial::DisableLighting ( void  ) const
virtual

◆ DisplayContextHelp()

virtual void CRhRdkBasicMaterial::DisplayContextHelp ( HWND  hwndParent) const
overridevirtual

Displays context-sensitive help.

Reimplemented from CRhRdkContent.

◆ Emission()

virtual ON_Color CRhRdkBasicMaterial::Emission ( void  ) const
virtual

◆ EnableAlphaTransparency()

virtual void CRhRdkBasicMaterial::EnableAlphaTransparency ( bool  b)
virtual

◆ EnableFresnel()

virtual void CRhRdkBasicMaterial::EnableFresnel ( bool  b)
virtual

◆ FlamingoLibrary()

virtual ON_wString CRhRdkBasicMaterial::FlamingoLibrary ( void  ) const
virtual

◆ FromOnMaterialEx()

virtual void CRhRdkBasicMaterial::FromOnMaterialEx ( const ON_Material mat,
bool  bRenameEvents,
bool  bChangeName,
UINT_PTR  uReserved = 0 
)
overridevirtual

◆ GetAutoParameters()

virtual void CRhRdkBasicMaterial::GetAutoParameters ( const IRhRdkParamBlock paramBlock,
int  id 
)
overridevirtual

Optionally override this method to get the content's parameters from a collection. You need to override this method if you are using the automatic UI system and also if your content supports the texture summary.

See also
BitFlags(). The default implementation is a no-op. Even if you are using fields, you still need to override this and call Fields().GetValuesFromParamBlock().
Parameters
paramBlockis the collection.
idis a caller-defined identifier (can be zero if not needed). Values of 0x8000 and above are reserved for RDK internal use.
See also
enum CRhRdkCoreContent::eSectionId for special values used internally.

Reimplemented from CRhRdkContent.

◆ GetEnglishParamName()

virtual ON_wString CRhRdkBasicMaterial::GetEnglishParamName ( const wchar_t *  wszParamName) const
overridevirtual

Optionally override this method to return the user-friendly English name of a particular parameter. The default implementation tries to get the name from a field with that name. If it fails, it generates a name based on the parameter name and displays a warning in the debugger output window: "GetEnglishParamName() generated...". This warning is an indication that you need to override this method and return an English string for the given parameter name.

Parameters
wszParamNameis the name of the parameter for which the localized string is required.

Reimplemented from CRhRdkContent.

◆ GetExtraRequirementParameter()

virtual bool CRhRdkBasicMaterial::GetExtraRequirementParameter ( const wchar_t *  wszParamName,
const wchar_t *  wszExtraReqName,
CRhRdkVariant vValueOut 
) const
overridevirtual

Optionally override this method to get a parameter for extra UI requirements. Please be sure to call the base class.

Parameters
wszParamNameThe name of the content parameter for which to get an extra requirement parameter.
See also
ParamNameFromChildSlotName() which is relevant when addressing child slots.
Parameters
wszExtraReqNameThe name of the extra requirement parameter to retrieve.
vValueOutReceives the parameter's value.
Returns
true if the parameter was retrieved successfuly, else false.
Note
This method must set vValueOut to a non-null value if it returns true.

Reimplemented from CRhRdkContent.

◆ GetLocalizedParamName()

virtual ON_wString CRhRdkBasicMaterial::GetLocalizedParamName ( const wchar_t *  wszParamName) const
overridevirtual

Optionally override this method to return the user-friendly localized name of a particular parameter. The default implementation tries to get the name from a field with that name. If it fails, it generates a name based on the parameter name and displays a warning in the debugger output window: "GetLocalizedParamName() generated...". This warning is an indication that you need to override this method and return a localized string for the given parameter name.

Parameters
wszParamNameis the name of the parameter for which the localized string is required.

Reimplemented from CRhRdkContent.

◆ GetParameter()

virtual CRhRdkVariant CRhRdkBasicMaterial::GetParameter ( const wchar_t *  wszName) const
overridevirtual

Optionally override this method to get a specific parameter from the content. Use of content fields causes this method to be automatically implemented. The default implementation checks if fields are in use and if so, it returns the field value.

Reimplemented from CRhRdkContent.

◆ GetSimulation()

virtual bool CRhRdkBasicMaterial::GetSimulation ( const IRhRdk_XMLSection section)
overridevirtual

Optionally override this method to get the content's simulation from an XML section. This is needed if you want to avoid having to use ReadSimulationXMLStream() for serialization. For this to work you must return true. The default implementation is a no-op that returns false. This is the easiest and preferred way to serialize the simulation.

Reimplemented from CRhRdkContent.

◆ Gloss()

virtual ON_Color CRhRdkBasicMaterial::Gloss ( void  ) const
virtual

◆ GlossFinish()

virtual double CRhRdkBasicMaterial::GlossFinish ( void  ) const
virtual

◆ HarvestData()

virtual Harvested CRhRdkBasicMaterial::HarvestData ( const CRhRdkContent oldContent)
overridevirtual

Implement this to transfer data from another content to this content during creation.

Parameters
oldContentis an old content from which the implementation may harvest data.

Reimplemented from CRhRdkMaterial.

◆ Icon()

virtual bool CRhRdkBasicMaterial::Icon ( const ON_2iSize size,
CRhinoDib dibOut 
) const
overridevirtual

Creates imagery (AKA an 'icon') to represent the content's type. This imagery is static, i.e., it does not change.

Parameters
sizeis the desired physical size of the imagery, in pixels.
dibOutis a DIB that accepts the created imagery.
Returns
true if successful, else false.

Reimplemented from CRhRdkMaterial.

◆ InternalName()

virtual ON_wString CRhRdkBasicMaterial::InternalName ( void  ) const
overridevirtual
Returns
The internal name of the content type. This name should never change and should not be localized.

Implements CRhRdkContent.

◆ IOR()

virtual double CRhRdkBasicMaterial::IOR ( void  ) const
virtual

◆ IsAlphaTransparencyEnabled()

virtual bool CRhRdkBasicMaterial::IsAlphaTransparencyEnabled ( void  ) const
virtual

◆ IsBuiltIn()

virtual bool CRhRdkBasicMaterial::IsBuiltIn ( void  ) const
inlineoverridevirtual

Reimplemented from CRhRdkContent.

◆ IsFactoryProductAcceptableAsChild()

virtual bool CRhRdkBasicMaterial::IsFactoryProductAcceptableAsChild ( const CRhRdkContentFactory f,
const wchar_t *  wszChildSlotName 
) const
overridevirtual

◆ IsFresnelEnabled()

virtual bool CRhRdkBasicMaterial::IsFresnelEnabled ( void  ) const
virtual

◆ MakeCopy()

virtual CRhRdkContent* CRhRdkBasicMaterial::MakeCopy ( CopyMethods  m) const
overridevirtual

Copies the current content including its children.

Parameters
mis the method used to create the copy. Most (if not all) clients will use the default, 'Normal'. 'Transient' is an advanced feature used for complex internal manipulation of contents; it will rarely, if ever, be used by ordinary clients.
Note
The copy can subsequently be attached to a document if desired.
The copied contents will be found by RhRdkFindContentInstance().
Returns
A copy of the content tree.

Reimplemented from CRhRdkBasicMaterialBase.

◆ NewChildSlotIterator()

virtual CChildSlotIterator* CRhRdkBasicMaterial::NewChildSlotIterator ( CSIContext  context) const
overridevirtual
Returns
An iterator for accessing child slot information or null if not implemented. The caller shall delete the iterator.

Reimplemented from CRhRdkContent.

◆ NewCompoundContentImplementer()

virtual CRhRdkBasicMaterialCCI* CRhRdkBasicMaterial::NewCompoundContentImplementer ( const UUID &  uuidRenderEngine) const
overridevirtual

Deprecated - use the one with TextureGeneration and pObject.

Implements CRhRdkBasicMaterialBase.

◆ NumTextureTypes()

static int CRhRdkBasicMaterial::NumTextureTypes ( void  )
static

◆ OnChildSlotChanged() [1/2]

RDK_DEPRECATED bool CRhRdkBasicMaterial::OnChildSlotChanged ( const wchar_t *  wszChildSlotName)

This method is deprecated in favor of the one below.

◆ OnChildSlotChanged() [2/2]

virtual bool CRhRdkBasicMaterial::OnChildSlotChanged ( const wchar_t *  wszChildSlotName) const
overridevirtual

Called when a child slot of the content has changed.

Parameters
wszChildSlotNameis the name of the child slot that has changed.
Note
The default implementation just returns false.
Returns
true if successful, else false.

Reimplemented from CRhRdkContent.

◆ OnChildSlotChanging() [1/2]

RDK_DEPRECATED bool CRhRdkBasicMaterial::OnChildSlotChanging ( const wchar_t *  wszChildSlotName)

This method is deprecated in favor of the one below.

◆ OnChildSlotChanging() [2/2]

virtual bool CRhRdkBasicMaterial::OnChildSlotChanging ( const wchar_t *  wszChildSlotName) const
overridevirtual

Called when a child slot of the content is about to change.

Parameters
wszChildSlotNameis the name of the child slot that is about to change.
Note
The default implementation just returns false.
Returns
true if successful, else false.

Reimplemented from CRhRdkContent.

◆ ParameterSerializationMethod()

virtual ParamSerialMethod CRhRdkBasicMaterial::ParameterSerializationMethod ( void  ) const
overridevirtual

Implement this method to indicate which serialization method your content uses. If you return GetSet then you must implement the ReadParametersFromSection() and WriteParametersToSection() methods to serialize the parameters. If you return XmlStream then you must implement the low-level ReadParameterXMLStream() and WriteParameterXMLStream() methods to serialize the parameters.

Note
Using GetSet is the easiest and preferred way to serialize the parameters, and it is required if you want your content to animate in Bongo 2.

Reimplemented from CRhRdkCoreContent.

◆ ParamNameFromChildSlotName()

virtual ON_wString CRhRdkBasicMaterial::ParamNameFromChildSlotName ( const wchar_t *  wszChildSlotName) const
overridevirtual
Returns
The parameter name corresponding to a child slot-name.

Reimplemented from CRhRdkContent.

◆ PlugInId()

virtual UUID CRhRdkBasicMaterial::PlugInId ( void  ) const
overridevirtual
Returns
The plug-in's Rhino plug-in id.

Implements CRhRdkContent.

◆ Polish()

virtual double CRhRdkBasicMaterial::Polish ( void  ) const
virtual

◆ ReadParametersFromSection()

virtual bool CRhRdkBasicMaterial::ReadParametersFromSection ( const IRhRdk_XMLSection section,
ReadParamsContext  context 
)
overridevirtual

Please be sure to call the base class if you override this function.

Reimplemented from CRhRdkCoreContent.

◆ Reflectivity()

virtual double CRhRdkBasicMaterial::Reflectivity ( void  ) const
virtual

◆ ReflectivityColor()

virtual ON_Color CRhRdkBasicMaterial::ReflectivityColor ( void  ) const
virtual

◆ RenderEngineId()

virtual UUID CRhRdkBasicMaterial::RenderEngineId ( void  ) const
overridevirtual
Returns
The plug-in's render engine id.

Implements CRhRdkContent.

◆ SetAmbient()

virtual void CRhRdkBasicMaterial::SetAmbient ( const ON_Color c)
virtual

◆ SetClarity()

virtual void CRhRdkBasicMaterial::SetClarity ( double  d)
virtual

◆ SetDiffuse()

virtual void CRhRdkBasicMaterial::SetDiffuse ( const ON_Color c)
virtual

◆ SetDisableLighting()

virtual void CRhRdkBasicMaterial::SetDisableLighting ( bool  b)
virtual

◆ SetEmission()

virtual void CRhRdkBasicMaterial::SetEmission ( const ON_Color c)
virtual

◆ SetExtraRequirementParameter()

virtual bool CRhRdkBasicMaterial::SetExtraRequirementParameter ( const wchar_t *  wszParamName,
const wchar_t *  wszExtraReqName,
const CRhRdkVariant vValue,
SetContext  sc 
)
overridevirtual

Optionally override this method to set a parameter for extra UI requirements. Please be sure to call the base class.

Parameters
wszParamNameThe name of the content parameter for which to set an extra requirement parameter.
See also
ParamNameFromChildSlotName() which is relevant when addressing child slots.
Parameters
wszExtraReqNameThe name of the extra requirement parameter to be set.
vValueContains the new value for the specified extra req. parameter.
scThe context in which the set operation is being performed.
Returns
true if the parameter was set successfuly, else false.

Reimplemented from CRhRdkContent.

◆ SetFlamingoLibrary()

virtual void CRhRdkBasicMaterial::SetFlamingoLibrary ( const ON_wString s)
virtual

◆ SetGloss()

virtual void CRhRdkBasicMaterial::SetGloss ( const ON_Color c)
virtual

◆ SetGlossFinish()

virtual void CRhRdkBasicMaterial::SetGlossFinish ( double  d)
virtual

◆ SetIOR()

virtual void CRhRdkBasicMaterial::SetIOR ( double  d)
virtual

◆ SetParameter()

virtual bool CRhRdkBasicMaterial::SetParameter ( const wchar_t *  wszName,
const CRhRdkVariant vValue 
)
overridevirtual

Reimplemented from CRhRdkContent.

◆ SetPolish()

virtual void CRhRdkBasicMaterial::SetPolish ( double  d)
virtual

◆ SetReflectivity()

virtual void CRhRdkBasicMaterial::SetReflectivity ( double  d)
virtual

◆ SetReflectivityColor()

virtual void CRhRdkBasicMaterial::SetReflectivityColor ( const ON_Color c)
virtual

◆ SetSimulation()

virtual bool CRhRdkBasicMaterial::SetSimulation ( IRhRdk_XMLSection section) const
overridevirtual

Optionally override this method to add the content's simulation to an XML section. This is needed if you want to avoid having to use WriteSimulationXMLStream() for serialization. For this to work you must return true. The default implementation is a no-op that returns false. This is the easiest and preferred way to serialize the simulation.

Reimplemented from CRhRdkMaterial.

◆ SetTextureSlot()

virtual void CRhRdkBasicMaterial::SetTextureSlot ( CRhRdkMaterial::ChildSlotUsage  type,
const CTextureSlot slot,
bool  bRecordUndo = false 
)
virtual

◆ SetTransparency()

virtual void CRhRdkBasicMaterial::SetTransparency ( double  d)
virtual

◆ SetTransparencyColor()

virtual void CRhRdkBasicMaterial::SetTransparencyColor ( const ON_Color c)
virtual

◆ SimulateMaterial()

virtual void CRhRdkBasicMaterial::SimulateMaterial ( ON_Material matOut,
CRhRdkTexture::TextureGeneration  tg = CRhRdkTexture::TextureGeneration::Allow,
int  iSimulatedTextureSize = -1,
const CRhinoObject pObject = nullptr 
) const
overrideprotectedvirtual

Implement this method to modify an ON_Material to simulate this material as best you can. Callers should call ToOnMaterial() instead which is optimized to only do the simulation if something has changed. IMPORTANT NOTE: Since V6, this function is both pure and implemented, so you should call it from your implementation. The base class version (this one) implements support for setting up the standard texture slots.

Implements CRhRdkMaterial.

◆ SupportsContextHelp()

virtual bool CRhRdkBasicMaterial::SupportsContextHelp ( void  ) const
overridevirtual
Returns
true if this content supports context-sensitive help.

Reimplemented from CRhRdkContent.

◆ TextureChildSlotName()

virtual ON_wString CRhRdkBasicMaterial::TextureChildSlotName ( ChildSlotUsage  usage) const
overridevirtual

Reimplemented from CRhRdkMaterial.

◆ TextureSlot()

virtual const CTextureSlot& CRhRdkBasicMaterial::TextureSlot ( CRhRdkMaterial::ChildSlotUsage  type) const
virtual

◆ Transparency()

virtual double CRhRdkBasicMaterial::Transparency ( void  ) const
virtual

◆ TransparencyColor()

virtual ON_Color CRhRdkBasicMaterial::TransparencyColor ( void  ) const
virtual

◆ TypeDescription()

virtual ON_wString CRhRdkBasicMaterial::TypeDescription ( void  ) const
overridevirtual
Returns
The localized description of the content type.

Implements CRhRdkContent.

◆ TypeId()

virtual UUID CRhRdkBasicMaterial::TypeId ( void  ) const
overridevirtual
Returns
The unique id of the content type.

Implements CRhRdkContent.

◆ TypeName()

virtual ON_wString CRhRdkBasicMaterial::TypeName ( void  ) const
overridevirtual
Returns
The localized name of the content type.

Implements CRhRdkContent.

◆ WriteParametersToSection()

virtual bool CRhRdkBasicMaterial::WriteParametersToSection ( IRhRdk_XMLSection section,
WriteParamsContext  context 
) const
overridevirtual

Please be sure to call the base class if you override this function.

Reimplemented from CRhRdkCoreContent.