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.