PaintTexture Class Reference

#include <c4d_painter.h>

Inheritance diagram for PaintTexture:

详细描述

A class for paint textures, can contain layers and may represent the channel of a material.

公共成员函数

PaintLayer GetFirstLayer ()
PaintLayer GetLastLayer ()
PaintLayerBmp AddLayerBmp ( PaintLayer *insertafter, PaintLayer *layerset=nullptr, COLORMODE mode= COLORMODE::ARGB , Bool useundo=true, Bool activate=true)
PaintLayerFolder AddLayerFolder ( PaintLayer *insertafter, PaintLayer *insertunder, Bool useundo=true, Bool activate=true)
void  SetActiveLayer ( PaintLayer *layer, Bool activatetexture, Bool show=true)
PaintLayer GetActive ()
void  GetLinkLayers ( AtomArray &layers, Bool addfolders)
void  SetColorMode ( COLORMODE newcolormode, Bool doundo)
const Filename   GetFilename ()
BaseBitmap GetVisibleBitmap ( Bool recalc=true)
BaseBitmap GetSelectionMaskTexture ( UInt64 width, UInt64 height, Int32 &dirtyCount)
Int32   GetLayerCount () const
Int32   GetAlphaCount () const
Bool   SetColorProfile (const ColorProfile &profile)
const ColorProfile GetColorProfile () const
-  Public Member Functions inherited from PaintBitmap
Int32   GetBw ()
Int32   GetBh ()
PaintTexture GetPaintTexture ()
PaintBitmap GetParent ()
PaintLayer GetLayerDownFirst ()
PaintLayer GetLayerDownLast ()
PaintLayer GetAlphaFirst ()
PaintLayer GetAlphaLast ()
PaintLayerBmp AddAlphaChannel ( Int32 bitdepth, PaintLayer *prev=nullptr, Bool undo=true, Bool activate=true)
Bool   AskApplyAlphaMask ()
void  ApplyAlphaMask ( Int32 x, Int32 y, Int32 cnt, PIX *bits, COLORMODE 模式, Bool inverted, Int32 flags)
PaintLayerMask FindSelectionMask ( PaintBitmap **toplevel, Int32 *bitdepth)
COLORMODE   GetColorMode ()
UInt32   GetDirty ( DIRTYFLAGS flags) const
void  UpdateRefresh ( Int32 xmin, Int32 ymin, Int32 xmax, Int32 ymax, UInt32 flags)
void  UpdateRefreshAll ( UInt32 flags, Bool reallyall)
Bool   ReCalc ( BaseThread *thread, Int32 x1, Int32 y1, Int32 x2, Int32 y2, BaseBitmap *bmp, Int32 flags, UInt32 showbit)
-  Public Member Functions inherited from BaseList2D
const Char GetViewportRenderId ( VIEWPORT_RENDER_ID typeId) const
BaseList2D GetNext ()
BaseList2D GetPred ()
void  SetBit ( Int32 mask)
Bool   GetBit ( Int32 mask) const
void  DelBit ( Int32 mask)
void  ToggleBit ( Int32 mask)
Int32   GetAllBits () const
void  SetAllBits ( Int32 bits)
void  SetBitEx ( Int32 mask, Int32 flags)
BaseContainer   GetData ()
void  SetData (const BaseContainer &bc, Bool add=true)
const BaseContainer GetDataInstance () const
BaseContainer GetDataInstance ()
const BaseContainer GetDataInstanceRef () const
BaseContainer GetDataInstanceRef ()
String   GetName () const
void  SetName (const maxon::String &name)
String   GetBubbleHelp ()
Bool   TransferGoal ( BaseList2D *dst, Bool undolink)
Bool   TransferMarker ( BaseList2D *dst) const
Bool   比例 ( Float scale)
Bool   编辑 ()
void  GetIcon ( IconData *dat)
GeListHead GetNLARoot ()
BaseList2D AnimationLayerRemap ( BaseObject **layer=nullptr)
String   GetTypeName ()
BaseList2D GetMain () const
void  InsertTrackSorted ( CTrack *track)
Bool   AddEventNotification ( BaseList2D *bl, NOTIFY_EVENT eventid, NOTIFY_EVENT_FLAG flags, const BaseContainer *data)
Bool   RemoveEventNotification ( BaseDocument *doc, BaseList2D *bl, NOTIFY_EVENT eventid)
Bool   FindEventNotification ( BaseDocument *doc, BaseList2D *bl, NOTIFY_EVENT eventid)
Bool   SetDescIDState (const DescID &id, DESCIDSTATE descidstate)
DESCIDSTATE   GetDescIDState (const DescID &id, Bool tolerant) const
GeListHead GetOverrideRoot ()
BaseOverride GetFirstOverride ()
GeListHead GetShaderRepositoryRoot ()
GeListHead GetHiddenShaderRoot ()
maxon::NimbusInterface *  GetNimbusRef (const maxon::Id &spaceId) const
maxon::Result < maxon::NimbusInterface * >  GetOrCreateNimbusRef (const maxon::Id &spaceId)
void  RemoveNimbusRef (const maxon::Id &spaceId)
maxon::Result < maxon::HashMap < maxon::Id , maxon::ForwardRef < maxon::NimbusRef > > >  GetAllNimbusRefs () const
Bool   IsNodeBased () const
void  GetMarkerStampEx ( UInt32 *l1, UInt32 *l2)
const GeMarker GetMarker () const
void  SetMarker (const GeMarker &m)
Bool   AddUniqueID ( Int32 appid, const Char *const mem, Int bytes)
Bool   FindUniqueID ( Int32 appid, const Char *&mem, Int &bytes) const
Int32   GetUniqueIDCount () const
Bool   GetUniqueIDIndex ( Int32 idx, Int32 &id, const Char *&mem, Int &bytes) const
Bool   SetAnimatedParameter ( CTrack *track, const DescID &id, const GeData &t_data1, const GeData &t_data2, Float mix, DESCFLAGS_SET flags)
Bool   GetAnimatedParameter (const DescID &id, GeData &t_data1, GeData &t_data2, Float &mix, DESCFLAGS_GET flags)
BaseShader GetFirstShader () const
void  InsertShader ( BaseShader *shader, BaseShader *pred=nullptr)
void  ClearKeyframeSelection ()
Bool   FindKeyframeSelection (const DescID &id)
Bool   SetKeyframeSelection (const DescID &id, Bool selection)
Bool   KeyframeSelectionContent ()
LayerObject GetLayerObject ( BaseDocument *doc)
Bool   SetLayerObject ( LayerObject *layer)
const LayerData GetLayerData ( BaseDocument *doc, Bool rawdata=false)
Bool   SetLayerData ( BaseDocument *doc, const LayerData &data)
GeListHead GetCTrackRoot ()
CTrack GetFirstCTrack ()
CTrack FindCTrack (const DescID &id)
-  Public Member Functions inherited from GeListNode
GeListNode GetNext ()
GeListNode GetPred ()
GeListNode GetDown ()
GeListNode GetUp ()
GeListNode GetDownLast ()
void  InsertBefore ( GeListNode *bl)
void  InsertAfter ( GeListNode *bl)
void  InsertUnder ( GeListNode *bl)
void  InsertUnderLast ( GeListNode *bl)
void  移除 ()
GeListHead GetListHead ()
Int32   GetNodeID ( Int32 index=0) const
template<typename CAST >
const CAST *  GetNodeData ( Int32 index=0) const
template<typename CAST >
CAST *  GetNodeData ( Int32 index=0)
void  SetCustomData ( GeListNode *node)
GeListNode GetCustomData ()
BaseDocument GetDocument ()
Int32   GetBranchInfo ( BranchInfo *info, Int32 max, GETBRANCHINFO flags)
Bool   IsDocumentRelated ()
Int32   GetInfo ()
Bool   GetNBit ( NBIT bit) const
UInt32   GetNBitMask ( Int32 index) const
Bool   ChangeNBit ( NBIT bit, NBITCONTROL bitmode)
-  Public Member Functions inherited from C4DAtom
Int32   GetType () const
Int32   GetRealType () const
Int32   GetDiskType () const
Bool   IsInstanceOf ( Int32 id) const
Int32   GetClassification () const
Bool   消息 ( Int32 type, void *data=nullptr)
Bool   MultiMessage ( MULTIMSG_ROUTE flags, Int32 type, void *data)
C4DAtom GetClone ( COPYFLAGS flags, AliasTrans *trn)
Bool   CopyTo ( C4DAtom *dst, COPYFLAGS flags, AliasTrans *trn)
Bool   读取 ( HyperFile *hf, Int32 id, Int32 level)
Bool   Write ( HyperFile *hf)
Bool   ReadObject ( HyperFile *hf, Bool readheader)
Bool   WriteObject ( HyperFile *hf)
Bool   GetDescription ( 描述 *description, DESCFLAGS_DESC flags)
Bool   GetParameter (const DescID &id, GeData &t_data, DESCFLAGS_GET flags)
Bool   SetParameter (const DescID &id, const GeData &t_data, DESCFLAGS_SET flags)
DynamicDescription GetDynamicDescription ()
Bool   GetEnabling (const DescID &id, const GeData &t_data, DESCFLAGS_ENABLE flags, const BaseContainer *itemdesc)
Bool   TranslateDescID (const DescID &id, DescID &res_id, C4DAtom *&res_at)
UInt32   GetDirty ( DIRTYFLAGS flags) const
void  SetDirty ( DIRTYFLAGS flags)
UInt32   GetHDirty ( HDIRTYFLAGS mask) const
void  SetHDirty ( HDIRTYFLAGS mask)

静态公共成员函数

static PaintTexture GetTexture (const String &name, const Filename &filename, Bool create)
static Bool   GetProjectionPaintTextures (const ViewWindow *viewWindow, PaintTexture *&paintTexture)
static GeListHead GetPaintTextureHead ()
static PaintTexture CreateNewTexture (const Filename &path, const BaseContainer &settings)
static Bool   GetTextureDefaults ( Int32 channel, BaseContainer &settings)
static PaintTexture GetPaintTextureOfBaseChannel ( BaseDocument *doc, BaseChannel *bc)
static Bool   SetSelected_Texture ( PaintBitmap *bmp, PaintMaterial *preferred)
static PaintTexture GetSelectedTexture ()
static PaintTexture GetSelectedTexturePP ( PaintMaterial **ppmat=nullptr)
-  Static Public Member Functions inherited from PaintBitmap
static Bool   ConvertBits ( Int32 cnt, const PIX *src, Int32 srcinc, COLORMODE srcmode, PIX *dst, Int32 dstinc, COLORMODE dstmode, Int32 dithery, Int32 ditherx)
-  Static Public Member Functions inherited from BaseList2D
static BaseList2D Alloc ( Int32 type)
static void  Free ( BaseList2D *&bl)

私有成员函数

  PaintTexture ()
  ~PaintTexture ()

Additional Inherited Members

-  Static Public Attributes inherited from BaseList2D
static const Int32   SETBIT_FLAG_NODIRTY
static const Int32   SETBIT_FLAG_REMOVE

构造函数 & 析构函数文档编制

◆  PaintTexture()

PaintTexture () private

◆  ~PaintTexture()

~ PaintTexture () private

成员函数文档编制

◆  GetFirstLayer()

PaintLayer * GetFirstLayer ( )

Retrieves the first layer of the paint texture.

返回
The first layer of the paint texture, or nullptr if there is none.

◆  GetLastLayer()

PaintLayer * GetLastLayer ( )

Retrieves the last layer of the paint texture.

返回
The last layer of the paint texture, or nullptr if there is none.

◆  AddLayerBmp()

PaintLayerBmp * AddLayerBmp ( PaintLayer insertafter ,
PaintLayer layerset = nullptr ,
COLORMODE   mode = COLORMODE::ARGB ,
Bool   useundo = true ,
Bool   activate = true  
)

Adds a bitmap layer.

参数
[in] insertafter The layer insertion point.
[in] layerset The parent layer folder.
[in] mode The color mode (should be the same as the paint texture): COLORMODE
[in] useundo true to create an undo on the undo stack, otherwise false .
[in] activate true to select the layer.
返回
The added bitmap layer, or nullptr if bitmap layer creation failed.

◆  AddLayerFolder()

PaintLayerFolder * AddLayerFolder ( PaintLayer insertafter ,
PaintLayer insertunder ,
Bool   useundo = true ,
Bool   activate = true  
)

Adds a layer folder.

参数
[in] insertafter The layer insertion point.
[in] insertunder The parent layer folder.
[in] useundo true to create an undo on the undo stack, otherwise false .
[in] activate true to select the layer.
返回
The added layer folder, or nullptr if layer folder creation failed.

◆  SetActiveLayer()

void SetActiveLayer ( PaintLayer layer ,
Bool   activatetexture ,
Bool   show = true  
)

Selects a layer.

参数
[in] layer The layer to select.
[in] activatetexture true to select the layer, otherwise false .
[in] show true to show the layer, otherwise false .

◆  GetActive()

PaintLayer * GetActive ( )

Retrieves the selected layer.

返回
The selected layer, or nullptr if there is none.

◆  GetLinkLayers()

void GetLinkLayers ( AtomArray layers ,
Bool   addfolders  
)

Retrieves the linked layers.

参数
[in] layers The array containing the linked layers.
[in] addfolders true the layer hierarchy is taken into account (see layer folders), otherwise false .

◆  SetColorMode()

void SetColorMode ( COLORMODE   newcolormode ,
Bool   doundo  
)

Changes the color mode of the paint texture.

参数
[in] newcolormode The new color mode: COLORMODE
[in] doundo true to create an undo for changing the color mode, otherwise false .

◆  GetFilename()

const Filename GetFilename ( )

Retrieves the filename of the paint texture.

返回
The filename.

◆  GetTexture()

static PaintTexture * GetTexture ( const String name ,
const Filename filename ,
Bool   create  
)
static

Private .

◆  GetVisibleBitmap()

BaseBitmap * GetVisibleBitmap ( Bool   recalc = true )

Private .

◆  GetSelectionMaskTexture()

BaseBitmap * GetSelectionMaskTexture ( UInt64   width ,
UInt64   height ,
Int32 dirtyCount  
)

Private .

◆  GetProjectionPaintTextures()

static Bool GetProjectionPaintTextures ( const ViewWindow *  viewWindow ,
PaintTexture *&  paintTexture  
)
static

Private .

◆  GetLayerCount()

Int32 GetLayerCount ( ) const

Retrieves the number of layers of the paint texture.

返回
The number of layers.

◆  GetAlphaCount()

Int32 GetAlphaCount ( ) const

Retrieves the number of alpha channels of the paint texture.

返回
The number of alpha channels.

◆  GetPaintTextureHead()

static GeListHead * GetPaintTextureHead ( )
static

Retrieves the head of the paint texture list. Use this to browse through the available paint textures.

返回
The head of the paint texture list.

◆  CreateNewTexture()

static PaintTexture * CreateNewTexture ( const Filename path ,
const BaseContainer settings  
)
static

Creates a new paint texture.

参数
[in] path The filename for the paint texture.
[in] settings The settings for the texture creation: TEXTURE
返回
The created paint texture if successful, otherwise nullptr .

◆  GetTextureDefaults()

static Bool GetTextureDefaults ( Int32   channel ,
BaseContainer settings  
)
static

Retrieves the default settings of textures for the passed material channel ID.

参数
[in] channel The material channel ID: CHANNEL
[out] settings Filled with the default texture settings of the passed material channel .
返回
true if successful, otherwise false .

◆  GetPaintTextureOfBaseChannel()

static PaintTexture * GetPaintTextureOfBaseChannel ( BaseDocument doc ,
BaseChannel bc  
)
static

Retrieves the paint texture of a material's channel.

参数
[in] doc The document the material is attached to.
[in] bc The channel queried for the paint texture.
返回
The paint texture if successful, otherwise nullptr .

◆  SetSelected_Texture()

static Bool SetSelected_Texture ( PaintBitmap bmp ,
PaintMaterial preferred  
)
static

Selects a paint texture.

参数
[in] bmp The paint texture to select.
[in] preferred The preferred paint material, usually nullptr .
返回
true if successful, otherwise false .

◆  GetSelectedTexture()

static PaintTexture * GetSelectedTexture ( )
static

Retrieves the selected paint texture.

返回
The selected paint texture, or nullptr if no paint is selected.

◆  GetSelectedTexturePP()

static PaintTexture * GetSelectedTexturePP ( PaintMaterial **  ppmat = nullptr )
static

Retrieves the selected projection painting texture.

参数
[out] ppmat Filled with the preferred paint material, usually nullptr .
返回
The selected projection painting texture, or nullptr if not available.

◆  SetColorProfile()

Bool SetColorProfile ( const ColorProfile profile )

Sets the color profile for the paint texture.

由于
R17.032
参数
[in] profile The color profile to set.
返回
true if successful, otherwise false .

◆  GetColorProfile()

const ColorProfile & GetColorProfile ( ) const

Gets the color profile for the paint texture.

由于
R17.032
返回
The color profile.