//---------------------------------------------------------- public string CreatePreview(ElementType type, All_Data myAll_Data) { string path = ""; try { mySource = new ListSource(); if (Directory.Exists(mySource.user + myAll_Data.list_path_foder_data[1]) == false) Directory.CreateDirectory(mySource.user + myAll_Data.list_path_foder_data[1]); Size imgSize = new Size(200, 200); Bitmap image = type.GetPreviewImage(imgSize); // encode image to jpeg for test display purposes: JpegBitmapEncoder encoder = new JpegBitmapEncoder(); encoder.Frames.Add(BitmapFrame.Create( ConvertBitmapToBitmapSource(image))); encoder.QualityLevel = 25; path = mySource.user + myAll_Data.list_path_foder_data[1] + "\\" + type.FamilyName + ".jpg"; FileStream file = new FileStream(path, FileMode.Create, FileAccess.Write); encoder.Save(file); file.Close(); } catch (Exception ex) { } return path; }
public void Function_TXT() { try { myAll_Data = myFunctionSupport.Get_Data_All(path); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
//---------------------------------------------------------- public All_Data Get_Data_All(string path) { All_Data myAll_Data = new All_Data(); try { List<string> du_lieu = File.ReadAllLines(path).ToList(); myAll_Data = new All_Data() { list_path_image_data = new ObservableCollection<list_image>(Get_Data_List(du_lieu, "path_image").Select(x => new list_image() { image_name = x.Split('\t')[2], image_path = x.Split('\t')[3] })), list_unit_value_data = new ObservableCollection<double>(Get_Data_List(du_lieu, "unit_value").Select(x => Convert.ToDouble(x.Split('\t')[2]))), list_color_UI_data = new ObservableCollection<Brush>(Get_Data_List(du_lieu, "color_UI").Select(x => (SolidColorBrush)new BrushConverter().ConvertFromString(x.Split('\t')[2]))), list_procedure_data = new ObservableCollection<list_procedure>(Get_Data_List(du_lieu, "sp_quantity").Select(x => new list_procedure() { procedure_name = x.Split('\t')[2], procedure_para = x.Split('\t')[3] })), list_path_foder_data = new ObservableCollection<string>(Get_Data_List(du_lieu, "path_foder").Select(x => x.Split('\t')[2])), list_path_connect_SQL_data = new ObservableCollection<string>(Get_Data_List(du_lieu, "path_connect_SQL").Select(x => x.Split('\t')[2])), list_material_para_data = new ObservableCollection<list_material_para>(Get_Data_List(du_lieu, "material_parameter").Select(x => new list_material_para() { material_para_guid = x.Split('\t')[2], material_para_name = x.Split('\t')[3] })), list_mct_descipline_data = new ObservableCollection<list_mct_descipline>(Get_Data_List(du_lieu, "mct_descipline").Select(x => new list_mct_descipline() { mct = x.Split('\t')[2], descipline = x.Split('\t')[3] })), list_parameter_share_data = new ObservableCollection<string>(Get_Data_List(du_lieu, "parameter_share").Select(x => x.Split('\t')[2])) }; } catch (Exception ex) { MessageBox.Show(ex.Message); } return myAll_Data; }
//---------------------------------------------------------- public void Default_Image(All_Data myAll_Data, List<Image> list_control_image) { try { for (int i = 0; i < list_control_image.Count; i++) { list_control_image[i].Source = new BitmapImage(new Uri(myAll_Data.list_path_image_data.First(x => x.image_name == list_control_image[i].Name).image_path)); } } catch (Exception) { } }
//---------------------------------------------------------- public ObservableCollection<parameter_data> View_Dimensions_FamilySymbol(Document doc, Element element, All_Data myAll_Data) { mySource = new ListSource(); ObservableCollection<parameter_data> my_parameter_data = new ObservableCollection<parameter_data>(); try { try { foreach (Parameter para in element.Parameters) { try { if (para.Definition.ParameterGroup == BuiltInParameterGroup.PG_GEOMETRY && mySource.para_name_not_use.Contains(para.Definition.Name) == false && para.IsReadOnly == false) { string value = Get_Parameter_Information(para, doc, myAll_Data); my_parameter_data.Add(new parameter_data() { parameter_name = para.Definition.Name, parameter_value = value, parameter = para }); } } catch (Exception) { } } } catch (Exception) { MessageBox.Show("Bạn cần có ít nhất 1 đối tượng đã được vẽ để lấy thông tin!", "ERROR", MessageBoxButton.OK, MessageBoxImage.Error); } } catch (Exception ex) { MessageBox.Show(ex.Message); } return my_parameter_data; }
//---------------------------------------------------------- public string Get_Parameter_Information_Family(FamilyParameter para, Document familyDoc, FamilyManager manager, All_Data myAll_Data) { string defValue = string.Empty; try { switch (para.StorageType) { case StorageType.Double: if (para.DisplayUnitType.ToString() == "DUT_DECIMAL_DEGREES") { defValue = Math.Round((double)manager.CurrentType.AsDouble(para) * myAll_Data.list_unit_value_data[5], mySource.lam_tron).ToString(); } else { defValue = Math.Round((double)manager.CurrentType.AsDouble(para) * myAll_Data.list_unit_value_data[2], mySource.lam_tron).ToString(); } break; case StorageType.ElementId: ElementId id = manager.CurrentType.AsElementId(para); if (id.IntegerValue >= 0) { defValue = familyDoc.GetElement(id).Name; } else { defValue = id.IntegerValue.ToString(); } break; case StorageType.Integer: if (ParameterType.YesNo == para.Definition.ParameterType) { if (manager.CurrentType.AsInteger(para) == 0) { defValue = "False"; } else { defValue = "True"; } } else { defValue = manager.CurrentType.AsInteger(para).ToString(); } break; case StorageType.String: if (manager.CurrentType.AsString(para) != null) { defValue = manager.CurrentType.AsString(para); } else { defValue = ""; } break; default: defValue = "Unexposed parameter."; break; } } catch (Exception) { } return defValue; }