CAlfMeshVisual Class Reference

class CAlfMeshVisual : public CAlfVisual

Mesh visual

Mesh visual allows integration of 3D shapes (meshes) with the user interface. The mesh visual always contains one CAlfMesh - derived concrete mesh implementation. By default the mesh visual contains a CAlfProceduralMesh object. The concrete mesh object can be queried through the Mesh() - interface and can be recreated using the CreateMeshL() - interface.

Usage:
  //Create Mesh Visual
   CAlfMeshVisual* meshVisual = CAlfMeshVisual::AddNewL( control );
 
  //Create M3GMesh and get it
  meshVisual->CreateMeshL( EAlfMeshTypeM3G  );
  CAlfM3GMesh* m3gmesh = mMeshVisual->M3GMesh();
  
  //Create ProceduralMesh and get it
  meshVisual->CreateMeshL( EAlfMeshTypeProcedural  );
  CAlfProceduralMesh* proceduralmesh = mMeshVisual->ProceduralMesh();
 
  //Set MeshVisual Yaw angle
  TAlfTimedValue tv( 2 );
  tv.setTarget( 20, 500 );
  meshVisual->SetYawAngle( tv );
CAlfM3GMesh CAlfProceduralMeshalfclient.lib
Since
S60 v3.2

Inherits from

Nested Classes and Structures

Public Member Functions
CAlfMeshVisual()
~CAlfMeshVisual()
IMPORT_C CAlfMeshVisual *AddNewL(CAlfControl &, CAlfLayout *)
IMPORT_C voidConstructL(CAlfControl &)
IMPORT_C voidCreateMeshL(TInt)
IMPORT_C CAlfVisual *FindTag(const TDesC8 &)
IMPORT_C const TAlfImage &Image()
IMPORT_C CAlfM3GMesh *M3GMesh()
IMPORT_C CAlfMesh &Mesh()
IMPORT_C TAlfTimedValuePitchAngle()
IMPORT_C CAlfProceduralMesh *ProceduralMesh()
IMPORT_C voidRemoveAndDestroyAllD()
IMPORT_C TAlfTimedValueScale()
IMPORT_C TAlfTimedValueSecondaryAlpha()
IMPORT_C const TAlfImage &SecondaryImage()
IMPORT_C voidSetImage(const TAlfImage &)
IMPORT_C voidSetPitchAngle(const TAlfTimedValue &)
IMPORT_C voidSetScale(const TAlfTimedValue &)
IMPORT_C voidSetSecondaryAlpha(const TAlfTimedValue &)
IMPORT_C voidSetSecondaryImage(const TAlfImage &)
IMPORT_C voidSetSpecularImage(const TAlfImage &)
IMPORT_C voidSetYawAngle(const TAlfTimedValue &)
IMPORT_C const TAlfImage &SpecularImage()
IMPORT_C voidUpdateChildrenLayout(TInt)
IMPORT_C TAlfTimedValueYawAngle()
Protected Member Functions
IMPORT_C voidDoRemoveAndDestroyAllD()
IMPORT_C voidPropertyOwnerExtension(const TUid &, TAny **)
Inherited Functions
CAlfPropertyOwner::CAlfPropertyOwner()
CAlfPropertyOwner::CopyProperty(const CAlfPropertyOwner &,const TDesC8 &)
CAlfPropertyOwner::PropertyClear()
CAlfPropertyOwner::PropertyFindInteger(const TDesC8 &,TInt *)const
CAlfPropertyOwner::PropertyFindString(const TDesC8 &,TDesC **)const
CAlfPropertyOwner::PropertyRemove(const TDesC8 &)
CAlfPropertyOwner::PropertySetIntegerL(const TDesC8 &,TInt,TInt,TInt)
CAlfPropertyOwner::PropertySetStringL(const TDesC8 &,const TDesC &)
CAlfPropertyOwner::~CAlfPropertyOwner()
CAlfVisual::AlignByOrigin(TAlfRealRect &)const
CAlfVisual::Brushes()
CAlfVisual::CAlfVisual()
CAlfVisual::ClearFlag(TAlfVisualFlags)
CAlfVisual::ClearFlags(TUint)
CAlfVisual::Clipping()const
CAlfVisual::Comms()const
CAlfVisual::ConstructL(CAlfControl &,TInt,TInt,const TDesC8 &)
CAlfVisual::CopyValues(const CAlfVisual &,TInt,TInt)
CAlfVisual::DepthOffset()const
CAlfVisual::Display()const
CAlfVisual::DisplayRect()const
CAlfVisual::DisplayRectTarget()const
CAlfVisual::DisplayToLocal(const TAlfRealPoint &)const
CAlfVisual::DisplayToLocal(const TPoint &)const
CAlfVisual::DropShadowHandler()const
CAlfVisual::EffectiveOpacity()const
CAlfVisual::EnableBrushesL(TBool)
CAlfVisual::EnableDropShadowL(TBool)
CAlfVisual::EnableTransformationL(TBool)
CAlfVisual::Env()const
CAlfVisual::Flags()const
CAlfVisual::HasTactileFeedback(TInt)const
CAlfVisual::HorizontalOrigin()const
CAlfVisual::HorizontalPadding()const
CAlfVisual::Identifier()const
CAlfVisual::IsTagged()const
CAlfVisual::Layout()const
CAlfVisual::LocalToDisplay(const TAlfRealPoint &)const
CAlfVisual::LocalToDisplay(const TPoint &)const
CAlfVisual::MaxSize()const
CAlfVisual::MaxSizeInBaseUnits()const
CAlfVisual::Mimic(CAlfVisual &,TInt)
CAlfVisual::MinSize()const
CAlfVisual::MinSizeInBaseUnits()const
CAlfVisual::Move(const TAlfRealPoint &,TInt)
CAlfVisual::Move(const TPoint &,TInt)
CAlfVisual::MoveToFront(TInt)
CAlfVisual::Opacity()const
CAlfVisual::Owner()const
CAlfVisual::Padding()const
CAlfVisual::PaddingAsMetric()const
CAlfVisual::PaddingInPixels()const
CAlfVisual::Pause(TInt)
CAlfVisual::Pos()const
CAlfVisual::RemoveTactileFeedback(TInt)
CAlfVisual::Resume(TInt)
CAlfVisual::SetCenteredPosAndSize(const TAlfRealPoint &,const TAlfRealSize &,TInt)
CAlfVisual::SetCenteredPosAndSize(const TPoint &,const TSize &,TInt)
CAlfVisual::SetClipping(TBool)
CAlfVisual::SetDepthOffset(const TAlfTimedValue &)
CAlfVisual::SetDisplay(CAlfDisplay *)
CAlfVisual::SetEffectL(const TDesC &)
CAlfVisual::SetFlag(TAlfVisualFlags)
CAlfVisual::SetFlags(TUint)
CAlfVisual::SetGroupEffectL(const TDesC &,TInt)
CAlfVisual::SetLayout(CAlfLayout *)
CAlfVisual::SetMaxSize(const TAlfRealSize &)
CAlfVisual::SetMaxSize(const TSize &)
CAlfVisual::SetMinSize(const TAlfRealSize &)
CAlfVisual::SetMinSize(const TSize &)
CAlfVisual::SetOpacity(const TAlfTimedValue &)
CAlfVisual::SetOrigin(TAlfVisualHOrigin,TAlfVisualVOrigin)
CAlfVisual::SetOwner(CAlfControl &)
CAlfVisual::SetPadding(TInt)
CAlfVisual::SetPadding(const TAlfBoxMetric &)
CAlfVisual::SetPadding(const TPoint &)
CAlfVisual::SetPos(const TAlfRealPoint &,TInt)
CAlfVisual::SetPos(const TAlfTimedPoint &)
CAlfVisual::SetRect(const TAlfRealRect &,TInt)
CAlfVisual::SetSize(const TAlfRealSize &,TInt)
CAlfVisual::SetSize(const TAlfTimedPoint &)
CAlfVisual::SetTactileFeedbackL(TInt,TInt)
CAlfVisual::SetTagL(const TDesC8 &)
CAlfVisual::Size()const
CAlfVisual::Tag()const
CAlfVisual::TagMatches(const TDesC8 &)const
CAlfVisual::Transformation()
CAlfVisual::VerticalOrigin()const
CAlfVisual::VerticalPadding()const
CAlfVisual::~CAlfVisual()
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
Private Attributes
TMeshVisualPrivateData *iMeshVisualData

Constructor & Destructor Documentation

CAlfMeshVisual()

IMPORT_CCAlfMeshVisual()

Constructor.

~CAlfMeshVisual()

IMPORT_C~CAlfMeshVisual()[virtual]

Destructor.

Member Functions Documentation

AddNewL(CAlfControl &, CAlfLayout *)

IMPORT_C CAlfMeshVisual *AddNewL(CAlfControl &aOwnerControl,
CAlfLayout *aParentLayout = 0
)[static]

Constructor, which gives ownership to the control.

Parameters

CAlfControl & aOwnerControlThe control
CAlfLayout * aParentLayout = 0If given, the parent layout.

ConstructL(CAlfControl &)

IMPORT_C voidConstructL(CAlfControl &aOwner)[virtual]

Second-phase constructor.

Parameters

CAlfControl & aOwner

CreateMeshL(TInt)

IMPORT_C voidCreateMeshL(TIntaMeshType)

Creates CAlfMesh - derived object and attaches it to this CAlfMeshVisual. This method will destroy the mesh object that was contained in this mesh visual before. The created mesh object can be queried through Mesh() - method.

Parameters

TInt aMeshTypeConcrete mesh type to be created. Possible values are e.g EAlfMeshTypeProcedural and EAlfMeshTypeM3G.

DoRemoveAndDestroyAllD()

IMPORT_C voidDoRemoveAndDestroyAllD()[protected, virtual]

FindTag(const TDesC8 &)

IMPORT_C CAlfVisual *FindTag(const TDesC8 &aTag)[virtual]

Finds a visual whose tag descriptor contains a specific tag.

CAlfVisual::FindTag() is the basic implementation that checks if this visual's tag matches the specified tag. CAlfLayout::FindTag() extends the search into child visuals, covering recursively entire visual hierarchies.

Todo: how should several visuals with matching tag to be handled ??

CAlfVisual::Tag() CAlfVisual::SetTagL() CAlfVisual::IsTagged() CAlfLayout::FindTag()

Parameters

const TDesC8 & aTagTag to look for. If this tag is found as a part of a visual's colon-separated tag descriptor, it is treated as a match and the visual is returned. The tag to look for cannot contain separator characters (:).

Image()

IMPORT_C const TAlfImage &Image()const

M3GMesh()

IMPORT_C CAlfM3GMesh *M3GMesh()const

Returns pointer to the M3G mesh contained in this mesh visual. If contained mesh isn't an M3G mesh, NULL is returned.

Mesh()

IMPORT_C CAlfMesh &Mesh()

Returns the mesh object contained in this mesh visual.

PitchAngle()

IMPORT_C TAlfTimedValuePitchAngle()const

ProceduralMesh()

IMPORT_C CAlfProceduralMesh *ProceduralMesh()const

Returns pointer to the procedural mesh contained in this mesh visual. If contained mesh isn't a procedural mesh, NULL is returned.

PropertyOwnerExtension(const TUid &, TAny **)

IMPORT_C voidPropertyOwnerExtension(const TUid &aExtensionUid,
TAny **aExtensionParams
)[protected, virtual]

! future proofing

Parameters

const TUid & aExtensionUid
TAny ** aExtensionParams

RemoveAndDestroyAllD()

IMPORT_C voidRemoveAndDestroyAllD()[virtual]

Scale()

IMPORT_C TAlfTimedValueScale()const

SecondaryAlpha()

IMPORT_C TAlfTimedValueSecondaryAlpha()const

SecondaryImage()

IMPORT_C const TAlfImage &SecondaryImage()const

SetImage(const TAlfImage &)

IMPORT_C voidSetImage(const TAlfImage &aImage)

Parameters

const TAlfImage & aImage

SetPitchAngle(const TAlfTimedValue &)

IMPORT_C voidSetPitchAngle(const TAlfTimedValue &aPitchAngle)

Parameters

const TAlfTimedValue & aPitchAngle

SetScale(const TAlfTimedValue &)

IMPORT_C voidSetScale(const TAlfTimedValue &aScale)

Parameters

const TAlfTimedValue & aScale

SetSecondaryAlpha(const TAlfTimedValue &)

IMPORT_C voidSetSecondaryAlpha(const TAlfTimedValue &aSecondaryAlpha)

Parameters

const TAlfTimedValue & aSecondaryAlpha

SetSecondaryImage(const TAlfImage &)

IMPORT_C voidSetSecondaryImage(const TAlfImage &aImage)

Secondary image is used for crossfading.

Parameters

const TAlfImage & aImage

SetSpecularImage(const TAlfImage &)

IMPORT_C voidSetSpecularImage(const TAlfImage &aImage)

Parameters

const TAlfImage & aImage

SetYawAngle(const TAlfTimedValue &)

IMPORT_C voidSetYawAngle(const TAlfTimedValue &aYawAngle)

Parameters

const TAlfTimedValue & aYawAngle

SpecularImage()

IMPORT_C const TAlfImage &SpecularImage()const

UpdateChildrenLayout(TInt)

IMPORT_C voidUpdateChildrenLayout(TIntaTransitionTime = 0)[virtual]

Update the layout of all children. Subclasses can call this to recalculate the layout of all children.

Parameters

TInt aTransitionTime = 0Time for layout transition in milliseconds. Any negative value uses value given in CAlfEnv::StaticSetLayoutTransitionTime()

YawAngle()

IMPORT_C TAlfTimedValueYawAngle()const

Member Data Documentation

TMeshVisualPrivateData * iMeshVisualData

TMeshVisualPrivateData *iMeshVisualData[private]