コード例 #1
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Добавление слоя
            /// </summary>
            /// <param name="name">Имя слоя</param>
            /// <returns>Добавленный слой</returns>
            //---------------------------------------------------------------------------------------------------------
            public static CCadLayer Add(String name)
            {
                CCadLayer layer = new CCadLayer(name);

                mLayers.Add(layer);
                return(layer);
            }
コード例 #2
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Добавление слоя
            /// </summary>
            /// <param name="name">Имя слоя</param>
            /// <param name="group">Группа слоя</param>
            /// <returns>Добавленный слой</returns>
            //---------------------------------------------------------------------------------------------------------
            public static CCadLayer Add(String name, String group)
            {
                CCadLayer layer = new CCadLayer(name);

                layer.mGroup = group;
                mLayers.Add(layer);
                return(layer);
            }
コード例 #3
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Удаление контура из проекта
            /// </summary>
            /// <param name="sender">Источник события</param>
            /// <param name="args">Аргументы события</param>
            //---------------------------------------------------------------------------------------------------------
            private void OnLayerManagerRemove(Object sender, RoutedEventArgs args)
            {
                CCadLayer layer = mCollectionViewLayers.CurrentItem as CCadLayer;

                if (layer != null)
                {
                    XCadLayerManager.Remove(layer);
                }
            }
コード例 #4
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Добавление слоя
            /// </summary>
            /// <param name="name">Имя слоя</param>
            /// <param name="group">Группа слоя</param>
            /// <param name="id">Идентификатор слоя</param>
            /// <param name="is_print">Печать слоя</param>
            /// <returns>Добавленный слой</returns>
            //---------------------------------------------------------------------------------------------------------
            public static CCadLayer Add(String name, String group, Int64 id, Boolean is_print = true)
            {
                CCadLayer layer = new CCadLayer(name);

                layer.mGroup   = group;
                layer.ID       = id;
                layer.mIsPrint = is_print;
                mLayers.Add(layer);
                return(layer);
            }
コード例 #5
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Удаления слоя
            /// </summary>
            /// <param name="layer">Слой</param>
            //---------------------------------------------------------------------------------------------------------
            public static void Remove(CCadLayer layer)
            {
                // 1) Если объект константный - выходим
                if (layer.IsConst)
                {
                    return;
                }

                //1) Проходим все проекты и перерисовываем элемент если он находится на данном слое и представлен на канве
                //for (Int32 ip = 0; ip < XManager.Projects.Count; ip++)
                //{
                //	ICadProject project = XManager.Projects[ip] as ICadProject;
                //	if (project != null)
                //	{
                //		//for (Int32 id = 0; id < project.Documents.Count; id++)
                //		//{
                //		//	ICadDraft draft = project.Documents[id] as ICadDraft;
                //		//	if (draft != null)
                //		//	{
                //		//		for (Int32 ie = 0; ie < draft.Elements.Count; ie++)
                //		//		{
                //		//			ICadLayerSupport element = draft.Elements[ie] as ICadLayerSupport;
                //		//			if (element != null && element.Layer == layer)
                //		//			{
                //		//				element.SetLayer(DefaultLayer);
                //		//			}
                //		//		}
                //		//	}
                //		//}
                //	}
                //}

                //2) Проходим все документы и перерисовываем элемент если он находится на данном слое и представлен на канве
                //for (Int32 id = 0; id < XManager.Documents.Count; id++)
                //{
                //	ICadDraft draft = XManager.Documents[id] as ICadDraft;
                //	if (draft != null)
                //	{
                //		//for (Int32 ie = 0; ie < draft.Elements.Count; ie++)
                //		//{
                //		//	ICadLayerSupport element = draft.Elements[ie] as ICadLayerSupport;
                //		//	if (element != null && element.Layer == layer)
                //		//	{
                //		//		element.SetLayer(DefaultLayer);
                //		//	}
                //		//}
                //	}
                //}

                // 3) Удаляем слой
                mLayers.Remove(layer);
            }
コード例 #6
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Поиск слоя по идентификатору
            /// </summary>
            /// <param name="id">Идентификатор слоя</param>
            /// <returns>Найденный слой</returns>
            //---------------------------------------------------------------------------------------------------------
            public static CCadLayer GetFromId(Int64 id)
            {
                CCadLayer layer = DefaultLayer;

                for (Int32 i = 0; i < mLayers.Count; i++)
                {
                    if (mLayers[i].ID == id)
                    {
                        return(mLayers[i]);
                    }
                }

                return(layer);
            }
コード例 #7
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Поиск слоя по имени
            /// </summary>
            /// <param name="name">Имя слоя</param>
            /// <returns>Найденный слой</returns>
            //---------------------------------------------------------------------------------------------------------
            public static CCadLayer GetFromName(String name)
            {
                CCadLayer layer = DefaultLayer;

                for (Int32 i = 0; i < mLayers.Count; i++)
                {
                    if (mLayers[i].Name == name)
                    {
                        return(mLayers[i]);
                    }
                }

                return(layer);
            }
コード例 #8
0
            //---------------------------------------------------------------------------------------------------------
            /// <summary>
            /// Обновление параметров слоя
            /// </summary>
            /// <param name="layer">Слой</param>
            //---------------------------------------------------------------------------------------------------------
            public static void Update(CCadLayer layer)
            {
                //1) Проходим все проекты и перерисовываем элемент если он находится на данном слое и представлен на канве
                //for (Int32 ip = 0; ip < XManager.Projects.Count; ip++)
                //{
                //	ICadProject project = XManager.Projects[ip] as ICadProject;
                //	if (project != null)
                //	{
                //		//for (Int32 id = 0; id < project.Documents.Count; id++)
                //		//{
                //		//	ICadDraft draft = project.Documents[id] as ICadDraft;
                //		//	if (draft != null)
                //		//	{
                //		//		for (Int32 ie = 0; ie < draft.Elements.Count; ie++)
                //		//		{
                //		//			ICadLayerSupport element = draft.Elements[ie] as ICadLayerSupport;
                //		//			if (element != null)
                //		//			{
                //		//				element.UpdateLayer();
                //		//			}
                //		//		}
                //		//	}
                //		//}
                //	}
                //}

                //2) Проходим все документы и перерисовываем элемент если он находится на данном слое и представлен на канве
                //for (Int32 id = 0; id < XManager.Documents.Count; id++)
                //{
                //	ICadDraft draft = XManager.Documents[id] as ICadDraft;
                //	if (draft != null)
                //	{
                //		//for (Int32 ie = 0; ie < draft.Elements.Count; ie++)
                //		//{
                //		//	ICadLayerSupport element = draft.Elements[ie] as ICadLayerSupport;
                //		//	if (element != null)
                //		//	{
                //		//		element.UpdateLayer();
                //		//	}
                //		//}
                //	}
                //}
            }