I3DShRenderable Struct Reference
[Shell Interfaces]

Inheritance diagram for I3DShRenderable:
IMCUnknown TCountedRenderable TBitMapRenderable TInstanceRenderable TRenderableHelper TSimpleShapeRenderable TPointMeshRenderable TSegmentMeshRenderable

List of all members.

Public Types

enum  EType {
  kType_Point, kType_Segment, kType_Facet, kType_Segment2D,
  kType_BitMap2D
}

Public Member Functions

virtual I3DShRenderable::EType
MCCOMAPI 
GetGeometryType () const =0
virtual const TPointMesh *MCCOMAPI GetPointMesh () const =0
virtual const TSegmentMesh
*MCCOMAPI 
GetSegmentMesh () const =0
virtual MCCOMErr MCCOMAPI GetFMesh (real lod, FacetMesh **amesh)=0
virtual const TMCPixelBucket
*MCCOMAPI 
GetPixelBucket (TMCRect &rect) const =0
virtual TRenderableFlags MCCOMAPI GetRenderableFlags (void) const =0
virtual MCCOMErr MCCOMAPI SetRenderableFlags (const TRenderableFlags flags)=0
virtual MCCOMErr MCCOMAPI GetShadingApproximation (TShadingApproximation &shadingApprox, uint32 uvSpaceID) const =0
virtual MCCOMErr MCCOMAPI GetFlatennedTexturesAsync (uint32 uvSpaceID, UVMaps &maps, TextureAvailableProc proc, void *privData, TMCRealRect *range=nil) const =0
virtual void MCCOMAPI GetBoundingBox (TBBox3D &bb)=0
virtual uint32 MCCOMAPI GetUVSpaceCount ()=0
virtual MCCOMErr MCCOMAPI GetInstance (I3DShInstance **instance)=0
virtual void MCCOMAPI SetFinalRenderingFlag (boolean finalRendering)=0
virtual ELODParamType MCCOMAPI GetLODParamType () const =0
virtual boolean MCCOMAPI GetRecommendedTextureSize (uint32 uvSpaceID, uint32 channelIndex, uint32 &width, uint32 &height) const =0
 Calculate the intrinsic appropriate texture size.
virtual void MCCOMAPI GetRelevantTextureBucketCache (uint32 uvSpaceID, uint32 channelIndex, boolean allowMultiplierModification, IShTextureMapBucketCache **outTextureMapFile) const =0
 Get the texture map file associated to the specified shading domain.

Detailed Description

A renderable represents a geometry that should be rendered by the interactive renderer (see I3DExRendererBox). It can be either composed of points, segments or facets.


Member Enumeration Documentation

Enumerator:
kType_Point 
kType_Segment 
kType_Facet 
kType_Segment2D 
kType_BitMap2D 

Member Function Documentation

virtual void MCCOMAPI I3DShRenderable::GetBoundingBox ( TBBox3D bb  )  [pure virtual]

Returns the bounding box of the renderable in local coordinates (for triangle meshes).

Parameters:
bb The bounding box that is returned.

Implemented in TRenderableHelper, TCountedRenderable, TSimpleShapeRenderable, and TInstanceRenderable.

virtual MCCOMErr MCCOMAPI I3DShRenderable::GetFlatennedTexturesAsync ( uint32  uvSpaceID,
UVMaps maps,
TextureAvailableProc  proc,
void *  privData,
TMCRealRect range = nil 
) const [pure virtual]

Calculates a set of texture maps that approximates the shading on the instance.

Parameters:
uvSpaceID The shading domain index.
maps The maps that are returned.
proc A callback function called when the texture is available.
privData Data passed by the callback.
range A rectangle in the texture coordinates. (NULL if the whole uvspace is required).

Implemented in TCountedRenderable.

virtual MCCOMErr MCCOMAPI I3DShRenderable::GetFMesh ( real  lod,
FacetMesh **  amesh 
) [pure virtual]

Returns a pointer to the triangle mesh contained in this renderable (see GetGeometryType()).

Parameters:
lod The lod that is requested.
amesh A pointer to the mesh that is returned.

Implemented in TCountedRenderable, TSimpleShapeRenderable, and TInstanceRenderable.

virtual I3DShRenderable::EType MCCOMAPI I3DShRenderable::GetGeometryType (  )  const [pure virtual]

Returns the type of geometry that should be rendered (points, segments or triangles...)

Implemented in TRenderableHelper, TPointMeshRenderable, TSegmentMeshRenderable, TBitMapRenderable, TCountedRenderable, TSimpleShapeRenderable, and TInstanceRenderable.

virtual MCCOMErr MCCOMAPI I3DShRenderable::GetInstance ( I3DShInstance **  instance  )  [pure virtual]

Returns a pointer to the instance that corresponds to the renderable. Note that it can be NULL if the renderable has no instance

Parameters:
instance A pointer to the instance.

Implemented in TCountedRenderable, and TInstanceRenderable.

virtual ELODParamType MCCOMAPI I3DShRenderable::GetLODParamType (  )  const [pure virtual]
Returns:
The type of information used to calculate the appropriate LOD

Implemented in TCountedRenderable, and TInstanceRenderable.

virtual const TMCPixelBucket* MCCOMAPI I3DShRenderable::GetPixelBucket ( TMCRect rect  )  const [pure virtual]

Returns a pointer to the pixel bucket contained by the renderable. Returns NULL if the renderable is not a 2D image (see GetGeometryType()).

Implemented in TBitMapRenderable, and TCountedRenderable.

virtual const TPointMesh* MCCOMAPI I3DShRenderable::GetPointMesh (  )  const [pure virtual]

Returns a pointer to the point mesh contained in this renderable. Returns NULL if the renderable is not a point mesh (see GetGeometryType()).

Implemented in TPointMeshRenderable, TCountedRenderable, and TSimpleShapeRenderable.

virtual boolean MCCOMAPI I3DShRenderable::GetRecommendedTextureSize ( uint32  uvSpaceID,
uint32  channelIndex,
uint32 width,
uint32 height 
) const [pure virtual]

Calculate the intrinsic appropriate texture size.

Implemented in TCountedRenderable, and TInstanceRenderable.

virtual void MCCOMAPI I3DShRenderable::GetRelevantTextureBucketCache ( uint32  uvSpaceID,
uint32  channelIndex,
boolean  allowMultiplierModification,
IShTextureMapBucketCache **  outTextureMapFile 
) const [pure virtual]

Get the texture map file associated to the specified shading domain.

Implemented in TCountedRenderable, and TInstanceRenderable.

virtual TRenderableFlags MCCOMAPI I3DShRenderable::GetRenderableFlags ( void   )  const [pure virtual]

Returns the flags associated with this renderable. See TRenderableFlags for more info.

Implemented in TRenderableHelper, TCountedRenderable, TSimpleShapeRenderable, and TInstanceRenderable.

virtual const TSegmentMesh* MCCOMAPI I3DShRenderable::GetSegmentMesh (  )  const [pure virtual]

Returns a pointer to the segment mesh contained in this renderable. Returns NULL if the renderable is not a segment mesh (see GetGeometryType()).

Implemented in TSegmentMeshRenderable, TCountedRenderable, and TSimpleShapeRenderable.

virtual MCCOMErr MCCOMAPI I3DShRenderable::GetShadingApproximation ( TShadingApproximation shadingApprox,
uint32  uvSpaceID 
) const [pure virtual]

Returns an approximation of the shading that can be used for interactive rendering.

Parameters:
shadingApprox The color of the shader.
uvSpaceID The UVSpaceID for which the approximation is required.

Implemented in TCountedRenderable.

virtual uint32 MCCOMAPI I3DShRenderable::GetUVSpaceCount (  )  [pure virtual]

Returns the number of shading domaine (uv space) on the primitive.

Implemented in TCountedRenderable, and TInstanceRenderable.

virtual void MCCOMAPI I3DShRenderable::SetFinalRenderingFlag ( boolean  finalRendering  )  [pure virtual]
Parameters:
finalRendering True if the renderaable is used for final rendering.

Implemented in TCountedRenderable.

virtual MCCOMErr MCCOMAPI I3DShRenderable::SetRenderableFlags ( const TRenderableFlags  flags  )  [pure virtual]

Sets the flags associated with this renderable.

Parameters:
flags The flags.

Implemented in TCountedRenderable, TSimpleShapeRenderable, and TInstanceRenderable.


The documentation for this struct was generated from the following file:
Generated on Mon Apr 26 22:47:41 2010 for Carrara SDK Doc by  doxygen 1.6.3