// protected methods protected override void RenderFace( Face thisface ) { ApplyFaceColor( thisface.FaceNum ); renderer.SetTextureId( iFaceTextures[ thisface.FaceNum ] ); if( thisface is OuterFace ) { OuterFace outerface = thisface as OuterFace; ( OuterFaces[ outerface.OuterFaceIndex ] ).Render( linearextrusionpath ); } else if( thisface is InnerFace ) { InnerFace innerface = thisface as InnerFace; ( InnerFaces[ innerface.InnerFaceIndex ] ).Render( linearextrusionpath ); } else if( thisface is CutFace ) { CutFace cutface = thisface as CutFace; ( CutFaces[cutface.CutFaceIndex] ).Render( linearextrusionpath ); } else if ( thisface is EndCap ) { EndCap endcap = thisface as EndCap; if( thisface is EndCapNoCutNoHollow ) { RenderEndCapNoCutNoHollow( endcap.IsTop ); } else if( thisface is EndCapCutNoHollow ) { RenderEndCapCutNoHollow( endcap.IsTop ); } else if( thisface is EndCapHollow ) { RenderEndCapHollow( endcap.IsTop ); } } }
protected abstract void RenderFace( Face face );