public void AddEntity(string blockName, MSExcel.COMMAND_ENTITY command, EntityParser.ProxyEntity pEntity, string name) { if (this.ContainsKey(blockName) == false) { this.Add(blockName, new BLOCK()); } else { ; } this[blockName].Add(new KEY_ENTITY(/*blockName,*/ command, this[blockName].GetCount(command) + 1, name), pEntity); }
public void Add(KEY_ENTITY key, EntityParser.ProxyEntity entity) { m_dictEntityParser.Add(key, entity); }
/// <summary> /// Создать новый примитив - конус по значениям параметров из строки таблицы /// </summary> /// <param name="rEntity">Строка таблицы со значениями параметров примитива</param> /// <param name="format">Формат файла конфигурации из которого была импортирована таблица</param> /// <param name="blockName">Наимнование блока (только при формате 'HEAP')</param> /// <returns>Объект примитива - конус</returns> public static EntityParser.ProxyEntity newCone(DataRow rEntity, MSExcel.FORMAT format /*, string blockName*/) { EntityParser.ProxyEntity pEntityRes; string name = string.Empty; MSExcel.COMMAND_ENTITY command = MSExcel.COMMAND_ENTITY.UNKNOWN; if (TryParseCommandAndNameEntity(format, rEntity, out name, out command) == true) { // значения для параметров примитива switch (format) { case MSExcel.FORMAT.HEAP: pEntityRes = new ProxyEntity( name , command , new ProxyEntity.Property[] { new ProxyEntity.Property((int)MSExcel.HEAP_INDEX_COLUMN.CONE_HEIGHT , double.Parse(rEntity[(int)MSExcel.HEAP_INDEX_COLUMN.CONE_HEIGHT].ToString() , System.Globalization.NumberStyles.Float, System.Globalization.CultureInfo.InvariantCulture)) , new ProxyEntity.Property((int)MSExcel.HEAP_INDEX_COLUMN.CONE_ARADIUS_X , double.Parse(rEntity[(int)MSExcel.HEAP_INDEX_COLUMN.CONE_ARADIUS_X].ToString() , System.Globalization.NumberStyles.Float, System.Globalization.CultureInfo.InvariantCulture)) , new ProxyEntity.Property((int)MSExcel.HEAP_INDEX_COLUMN.CONE_ARADIUS_Y , double.Parse(rEntity[(int)MSExcel.HEAP_INDEX_COLUMN.CONE_ARADIUS_Y].ToString() , System.Globalization.NumberStyles.Float, System.Globalization.CultureInfo.InvariantCulture)) , new ProxyEntity.Property((int)MSExcel.HEAP_INDEX_COLUMN.CONE_RADIUS_TOP , double.Parse(rEntity[(int)MSExcel.HEAP_INDEX_COLUMN.CONE_RADIUS_TOP].ToString() , System.Globalization.NumberStyles.Float, System.Globalization.CultureInfo.InvariantCulture)) , new ProxyEntity.Property((int)MSExcel.HEAP_INDEX_COLUMN.CONE_PTDISPLACEMENT_X , double.Parse(rEntity[(int)MSExcel.HEAP_INDEX_COLUMN.CONE_PTDISPLACEMENT_X].ToString() , System.Globalization.NumberStyles.Float, System.Globalization.CultureInfo.InvariantCulture)) , new ProxyEntity.Property((int)MSExcel.HEAP_INDEX_COLUMN.CONE_PTDISPLACEMENT_Y , double.Parse(rEntity[(int)MSExcel.HEAP_INDEX_COLUMN.CONE_PTDISPLACEMENT_Y].ToString() , System.Globalization.NumberStyles.Float, System.Globalization.CultureInfo.InvariantCulture)) , new ProxyEntity.Property((int)MSExcel.HEAP_INDEX_COLUMN.CONE_PTDISPLACEMENT_Z , double.Parse(rEntity[(int)MSExcel.HEAP_INDEX_COLUMN.CONE_PTDISPLACEMENT_Z].ToString() , System.Globalization.NumberStyles.Float, System.Globalization.CultureInfo.InvariantCulture)) } ); //pEntityRes.m_BlockName = blockName; break; case MSExcel.FORMAT.ORDER: default: // соэдать примитив по умолчанию pEntityRes = new EntityParser.ProxyEntity(); break; } } else { pEntityRes = new ProxyEntity(); Core.Logging.DebugCaller(MethodBase.GetCurrentMethod(), string.Format(@"Ошибка опрделения имени, типа сущности...")); } return(pEntityRes); }