public CG_PointData GetObjectData(string AccessName, string Name, int NbPoints)
        {
            CG_GeometryData data = GetObject(AccessName, Name);

            if (data == null)
            {
                data = GetFirstValidObject(NbPoints);
            }

            if (data != null && data.Data.Count > 0)
            {
                return(data.Data[0]);
            }

            return(null);
        }
        public CG_PointData GetObjectData(string AccessName, string Name, string type)
        {
            CG_GeometryData data = GetObject(AccessName, Name);

            if (data != null)
            {
                foreach (CG_PointData pointData in data.Data)
                {
                    if (pointData.Type == type)
                    {
                        return(pointData);
                    }
                }
            }

            return(null);
        }
        public void Add(CG_GeometryData data)
        {
            mGeometriesData.Add(data);

            if (!mGeosDic.ContainsKey(data.Geometry.AccessName))
            {
                mGeosDic.Add(data.Geometry.AccessName, data);
            }
            else
            {
                mGeosDic[data.Geometry.AccessName] = data;
            }

            if (!mGeosDic.ContainsKey(data.Geometry.Name))
            {
                mGeosDic.Add(data.Geometry.Name, data);
            }
            else
            {
                mGeosDic[data.Geometry.Name] = data;
            }
        }