private GroupRenderStruct ExportGroupRender(MapObjects2.GroupRenderer render) { GroupRenderStruct oGroupRender = new GroupRenderStruct(); short iIndex = 0; oGroupRender.DrawBackground = render.DrawBackground; oGroupRender.Tag = render.Tag; object oMapSubRender = render.get_Renderer(iIndex); while (oMapSubRender != null) { if (oMapSubRender is MapObjects2.ValueMapRenderer) { ValueRenderStruct oValueRender = this.ExportValueRender(oMapSubRender as MapObjects2.ValueMapRenderer); oGroupRender.RenderList.Add(oValueRender); } else if (oMapSubRender is MapObjects2.ClassBreaksRenderer) { ClassBreakRenderStruct oClassBreakRender = this.ExportClassBreakRender(oMapSubRender as MapObjects2.ClassBreaksRenderer); oGroupRender.RenderList.Add(oClassBreakRender); } else if (oMapSubRender is MapObjects2.LabelRenderer) { LabelRenderStruct oLabelRender = this.ExportLabelRender(oMapSubRender as MapObjects2.LabelRenderer); oGroupRender.RenderList.Add(oLabelRender); } iIndex++; oMapSubRender = render.get_Renderer(iIndex); } return oGroupRender; }
private object GetRenderFromGroup(MapObjects2.GroupRenderer groupRender, RenderType renderType) { short iRendererCount = groupRender.Count; for (short i = 0; i < iRendererCount; i++) { if ((groupRender.get_Renderer(i) is MapObjects2.ValueMapRenderer && renderType == RenderType.ValueRender) || (groupRender.get_Renderer(i) is MapObjects2.ClassBreaksRenderer && renderType == RenderType.ClassBreakRender) || (groupRender.get_Renderer(i) is MapObjects2.LabelRenderer && renderType == RenderType.LabelRender) ) return groupRender.get_Renderer(i); } return null; }