ArcStache.VectorCache.GetTableDescription C# (CSharp) Method

GetTableDescription() private method

Create a table description, which includes generalization options
private GetTableDescription ( IMapServer3 mapServer, int layerId, int zoomLevel ) : IMapTableDescription
mapServer IMapServer3
layerId int
zoomLevel int
return IMapTableDescription
        private IMapTableDescription GetTableDescription(IMapServer3 mapServer, int layerId, int zoomLevel)
        {
            ILayerDescriptions layerDescs =
                mapServer.GetServerInfo(mapServer.DefaultMapName).DefaultMapDescription.LayerDescriptions;
            int count = layerDescs.Count;

            for (int i = 0; i < count; i++)
            {
                ILayerDescription3 layerDesc = (ILayerDescription3)layerDescs.get_Element(i);

                if (layerDesc.ID == layerId)
                {
                    layerDesc.LayerResultOptions = new LayerResultOptionsClass();
                    layerDesc.LayerResultOptions.GeometryResultOptions = new GeometryResultOptionsClass();
                    // Generalize geometries based on zoom level
                    layerDesc.LayerResultOptions.GeometryResultOptions.GeneralizeGeometries = true;
                    layerDesc.LayerResultOptions.GeometryResultOptions.MaximumAllowableOffset = 2000 / (zoomLevel + 1);

                    return (IMapTableDescription)layerDesc;
                }
            }

            throw new ArgumentOutOfRangeException("layerID");
        }