public WarnSettingsForm(Document document) { InitializeComponent(); Document = document; FaceRecorderForRevit recorder = PMSoftHelper.GetRecorder(nameof(WarnSettings), Document); var str = recorder.GetValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForSubsidenceMonitor.WarnSettings, 1), "", 1000); if (!string.IsNullOrEmpty(str)) { WarnSettings = JsonConvert.DeserializeObject <WarnSettings>(str); tb_BuildingSubsidence_Day.Text = WarnSettings.BuildingSubsidence_Day.ToString(); tb_BuildingSubsidence_DailyMillimeter.Text = WarnSettings.BuildingSubsidence_DailyMillimeter.ToString(); tb_BuildingSubsidence_SumMillimeter.Text = WarnSettings.BuildingSubsidence_SumMillimeter.ToString(); tb_SurfaceSubsidence_Day.Text = WarnSettings.SurfaceSubsidence_Day.ToString(); tb_SurfaceSubsidence_DailyMillimeter.Text = WarnSettings.SurfaceSubsidence_DailyMillimeter.ToString(); tb_SurfaceSubsidence_SumMillimeter.Text = WarnSettings.SurfaceSubsidence_SumMillimeter.ToString(); tb_STBAP_MaxAxle.Text = WarnSettings.STBAP_MaxAxle.ToString(); tb_STBAP_MinAxle.Text = WarnSettings.STBAP_MinAxle.ToString(); tb_StressedPipeLineSubsidence_Day.Text = WarnSettings.PressedPipeLineSubsidence_Day.ToString(); tb_StressedPipeLineSubsidence_PipelineMillimeter.Text = WarnSettings.PressedPipeLineSubsidence_PipelineMillimeter.ToString(); tb_StressedPipeLineSubsidence_WellMillimeter.Text = WarnSettings.PressedPipeLineSubsidence_WellMillimeter.ToString(); tb_StressedPipeLineSubsidence_SumMillimeter.Text = WarnSettings.PressedPipeLineSubsidence_SumMillimeter.ToString(); tb_UnstressedPipeLineSubsidence_Day.Text = WarnSettings.UnpressedPipeLineSubsidence_Day.ToString(); tb_UnstressedPipeLineSubsidence_PipelineMillimeter.Text = WarnSettings.UnpressedPipeLineSubsidence_PipelineMillimeter.ToString(); tb_UnstressedPipeLineSubsidence_WellMillimeter.Text = WarnSettings.UnpressedPipeLineSubsidence_WellMillimeter.ToString(); tb_UnstressedPipeLineSubsidence_SumMillimeter.Text = WarnSettings.UnpressedPipeLineSubsidence_SumMillimeter.ToString(); tb_SkewBack_WellMillimeter.Text = WarnSettings.SkewBack_WellMillimeter.ToString(); tb_SkewBack_StandardMillimeter.Text = WarnSettings.SkewBack_StandardMillimeter.ToString(); tb_SkewBack_Speed.Text = WarnSettings.SkewBack_Speed.ToString(); tb_SkewBack_Day.Text = WarnSettings.SkewBack_Day.ToString(); } }
public ListForm(UIDocument ui_doc) { InitializeComponent(); InitControls(); UI_Doc = ui_doc; FaceRecorderForRevit recorder = PMSoftHelper.GetRecorder(nameof(WarnSettings), ui_doc.Document); var str = recorder.GetValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForSubsidenceMonitor.WarnSettings, 1), "", 1000); if (!string.IsNullOrEmpty(str)) { WarnSettings = JsonConvert.DeserializeObject <WarnSettings>(str); } string dataStr = ""; recorder = PMSoftHelper.GetRecorder(nameof(ListForm), ui_doc.Document); recorder.ReadValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForSubsidenceMonitor.ListForm, 1), ref dataStr, 1000); ListFormData data = JsonConvert.DeserializeObject <ListFormData>(dataStr); if (data != null) { var typeNames = Enum.GetNames(typeof(EIssueType)); if (typeNames.Contains(data.IssueType)) { cb_IssueType.Text = data.IssueType; } if (!string.IsNullOrEmpty(data.StartTime)) { btn_IssueMonth.Text = data.StartTime; } } }
//public void UpdateBlockName(int index, string name) //{ // Blocks[index].Name = name; // if (Blocks[index].ImplementationInfo.IsSettled) // { // Blocks[index].ImplementationInfo.Unsettle(); // } //} public override void Commit(EarthworkBlockingForm storage) { BlockIdIndexMapper = new Dictionary <int, int>(); int index = 0; foreach (var block in Blocks) { BlockIdIndexMapper.Add(block.Id, index); index++; if (block.IsChanged) { block.Commit(storage); } } FaceRecorderForRevit recorder = PMSoftHelper.GetRecorder(nameof(EarthworkBlockingForm), storage.m_Doc); var jsonObj = JsonConvert.SerializeObject(this); recorder.WriteValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForEarthWork.EarthworkBlocking_Size, 1), jsonObj.Length.ToString()); recorder.WriteValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForEarthWork.EarthworkBlocking, 1), jsonObj); foreach (var block in Deletes) { //TODO ???Block的删除或需优化 Block总是新增节点,会造成数据量一致增加 recorder.WriteValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForEarthWork.EarthworkBlock_Size, block.Id), ""); recorder.WriteValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForEarthWork.EarthworkBlock, block.Id), ""); recorder.WriteValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForEarthWork.EarthworkBlockCPSettings_Size, block.Id), ""); recorder.WriteValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForEarthWork.EarthworkBlockCPSettings, block.Id), ""); } Adds.Clear(); Deletes.Clear(); }
private void ListForm_FormClosing(object sender, FormClosingEventArgs e) { //当前页面选项的备份,下次加载上次打开的 ListFormData data = new ListFormData() { IssueType = cb_IssueType.Text, StartTime = btn_IssueMonth.Text, }; FaceRecorderForRevit recorder = PMSoftHelper.GetRecorder(nameof(ListForm), UI_Doc.Document); var jsonObj = JsonConvert.SerializeObject(data); recorder.WriteValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForSubsidenceMonitor.ListForm, 1), jsonObj); }
public ListForm(UIDocument ui_doc) { InitializeComponent(); InitControls(); UI_Doc = ui_doc; FaceRecorderForRevit recorder = PMSoftHelper.GetRecorder(nameof(WarnSettings), ui_doc.Document); var str = recorder.GetValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForSubsidenceMonitor.WarnSettings, 1), "", 1000); if (!string.IsNullOrEmpty(str)) { WarnSettings = JsonConvert.DeserializeObject <WarnSettings>(str); } }
public void SaveConfig(Autodesk.Revit.DB.Document doc) { FaceRecorderForRevit Recorder = GetRecorder(doc); Recorder.WriteValue(nameof(BeamName), BeamName); Recorder.WriteValue(nameof(BeamWidth), BeamWidth); Recorder.WriteValue(nameof(BeamHeight), BeamHeight); Recorder.WriteValue(nameof(BeamHaunchingVisibility), BeamHaunchingVisibility.ToString()); Recorder.WriteValue(nameof(BeamHaunching), BeamHaunching); Recorder.WriteValue(nameof(HoopingDiameter), HoopingDiameter); Recorder.WriteValue(nameof(Hooping), Hooping); Recorder.WriteValue(nameof(LongitudinalBar), LongitudinalBar); Recorder.WriteValue(nameof(LongitudinalBarLevel), LongitudinalBarLevel); Recorder.WriteValue(nameof(WaistBarLevel), WaistBarLevel); Recorder.WriteValue(nameof(WaistBar), WaistBar); Recorder.WriteValue(nameof(BeamAbsoluteTop), BeamAbsoluteTop); Recorder.WriteValue(nameof(BeamRelationalSkew), BeamRelationalSkew); }
public void LoadConfig(Autodesk.Revit.DB.Document doc) { FaceRecorderForRevit Recorder = GetRecorder(doc); BeamName = Recorder.GetValue(nameof(BeamName), "KL1(1)", 40); BeamWidth = Recorder.GetValue(nameof(BeamWidth), "300", 20); BeamHeight = Recorder.GetValue(nameof(BeamHeight), "600", 20); BeamHaunching = Recorder.GetValue(nameof(BeamHaunching), "Y350x500", 40); BeamHaunchingVisibility = Recorder.GetValueAsBOOL(nameof(BeamHaunchingVisibility), false); Hooping = Recorder.GetValue(nameof(Hooping), "8@200(2)", 40); HoopingDiameter = Recorder.GetValue(nameof(HoopingDiameter), "C", 40); LongitudinalBar = Recorder.GetValue(nameof(LongitudinalBar), "3 14;3 18", 40); LongitudinalBarLevel = Recorder.GetValue(nameof(LongitudinalBarLevel), "B", 40); WaistBar = Recorder.GetValue(nameof(WaistBar), "N4 15", 40); WaistBarLevel = Recorder.GetValue(nameof(WaistBarLevel), "C", 40); BeamAbsoluteTop = Recorder.GetValue(nameof(BeamAbsoluteTop), "(0.600)", 40); BeamRelationalSkew = Recorder.GetValue(nameof(BeamRelationalSkew), "(3.150)", 40); }
private void btn_Submit_Click(object sender, EventArgs e) { //当前页面选项的备份,下次加载上次打开的 ChartFormData data = new ChartFormData() { ReportName = tb_ReportName.Text, IssueType = cb_IssueType.Text, NodeCode = cb_NodeCode.Text, Depth = cb_Depth.Text, YField = cb_Y.Text, StartTime = btn_StartDate.Text, }; FaceRecorderForRevit recorder = PMSoftHelper.GetRecorder(nameof(WarnSettings), Doc); var jsonObj = JsonConvert.SerializeObject(data); recorder.WriteValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForSubsidenceMonitor.ChartForm, 1), jsonObj); this.Close(); }
public ChartForm(Autodesk.Revit.DB.Document doc) { InitializeComponent(); InitControls(); Doc = doc; string dataStr = ""; FaceRecorderForRevit recorder = PMSoftHelper.GetRecorder(nameof(WarnSettings), Doc); recorder.ReadValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForSubsidenceMonitor.ChartForm, 1), ref dataStr, 1000); ChartFormData data = JsonConvert.DeserializeObject <ChartFormData>(dataStr); if (data != null) { tb_ReportName.Text = data.ReportName; var typeNames = Enum.GetNames(typeof(EIssueType)); if (typeNames.Contains(data.IssueType)) { cb_IssueType.Text = data.IssueType; } if ((cb_NodeCode.DataSource as List <string>) != null && (cb_NodeCode.DataSource as List <string>).Contains(data.NodeCode)) { cb_NodeCode.Text = data.NodeCode; } if ((cb_Depth.DataSource as List <string>) != null && (cb_Depth.DataSource as List <string>).Contains(data.Depth)) { cb_Depth.Text = data.Depth; } if ((cb_Y.DataSource as System.Data.DataTable) != null) { foreach (DataRow row in (cb_Y.DataSource as System.Data.DataTable).Rows) { if (row[nameof(TypeKeyDdscription.Description)].ToString() == data.YField) { cb_Y.Text = data.YField; break; } } } btn_StartDate.Text = data.StartTime; } }
private void btn_Submit_Click(object sender, System.EventArgs e) { //int $1;\r\nif(int.TryParse(tb_$1.Text, out $1))\r\nWarnSettings.$1 = $1;\r\nelse\r\n ShowMessage(ShowTitle, "$1" + "不是有效的数值"); //建筑物沉降 int BuildingSubsidence_Day; if (int.TryParse(tb_BuildingSubsidence_Day.Text, out BuildingSubsidence_Day)) { WarnSettings.BuildingSubsidence_Day = BuildingSubsidence_Day; } else { ShowMessage(ShowTitle, WarnSettings.Tag_BuildingSubsidence_Day + MessageSuffix); return; } int BuildingSubsidence_DailyMillimeter; if (int.TryParse(tb_BuildingSubsidence_DailyMillimeter.Text, out BuildingSubsidence_DailyMillimeter)) { WarnSettings.BuildingSubsidence_DailyMillimeter = BuildingSubsidence_DailyMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_BuildingSubsidence_DailyMillimeter + MessageSuffix); return; } int BuildingSubsidence_SumMillimeter; if (int.TryParse(tb_BuildingSubsidence_SumMillimeter.Text, out BuildingSubsidence_SumMillimeter)) { WarnSettings.BuildingSubsidence_SumMillimeter = BuildingSubsidence_SumMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_BuildingSubsidence_SumMillimeter + MessageSuffix); return; } //地表沉降 int SurfaceSubsidence_Day; if (int.TryParse(tb_SurfaceSubsidence_Day.Text, out SurfaceSubsidence_Day)) { WarnSettings.SurfaceSubsidence_Day = SurfaceSubsidence_Day; } else { ShowMessage(ShowTitle, WarnSettings.Tag_SurfaceSubsidence_Day + MessageSuffix); return; } int SurfaceSubsidence_DailyMillimeter; if (int.TryParse(tb_SurfaceSubsidence_DailyMillimeter.Text, out SurfaceSubsidence_DailyMillimeter)) { WarnSettings.SurfaceSubsidence_DailyMillimeter = SurfaceSubsidence_DailyMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_SurfaceSubsidence_DailyMillimeter + MessageSuffix); return; } int SurfaceSubsidence_SumMillimeter; if (int.TryParse(tb_SurfaceSubsidence_SumMillimeter.Text, out SurfaceSubsidence_SumMillimeter)) { WarnSettings.SurfaceSubsidence_SumMillimeter = SurfaceSubsidence_SumMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_SurfaceSubsidence_SumMillimeter + MessageSuffix); return; } //钢支撑轴力 int STBAP_MaxAxle; if (int.TryParse(tb_STBAP_MaxAxle.Text, out STBAP_MaxAxle)) { WarnSettings.STBAP_MaxAxle = STBAP_MaxAxle; } else { ShowMessage(ShowTitle, WarnSettings.Tag_STBAP_MaxAxle + MessageSuffix); return; } int STBAP_MinAxle; if (int.TryParse(tb_STBAP_MinAxle.Text, out STBAP_MinAxle)) { WarnSettings.STBAP_MinAxle = STBAP_MinAxle; } else { ShowMessage(ShowTitle, WarnSettings.Tag_STBAP_MinAxle + MessageSuffix); return; } //管线沉降(有压) int StressedPipeLineSubsidence_Day; if (int.TryParse(tb_StressedPipeLineSubsidence_Day.Text, out StressedPipeLineSubsidence_Day)) { WarnSettings.PressedPipeLineSubsidence_Day = StressedPipeLineSubsidence_Day; } else { ShowMessage(ShowTitle, WarnSettings.Tag_PressedPipeLineSubsidence_Day + MessageSuffix); return; } int StressedPipeLineSubsidence_PipelineMillimeter; if (int.TryParse(tb_StressedPipeLineSubsidence_PipelineMillimeter.Text, out StressedPipeLineSubsidence_PipelineMillimeter)) { WarnSettings.PressedPipeLineSubsidence_PipelineMillimeter = StressedPipeLineSubsidence_PipelineMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_PressedPipeLineSubsidence_PipelineMillimeter + MessageSuffix); return; } int StressedPipeLineSubsidence_WellMillimeter; if (int.TryParse(tb_StressedPipeLineSubsidence_WellMillimeter.Text, out StressedPipeLineSubsidence_WellMillimeter)) { WarnSettings.PressedPipeLineSubsidence_WellMillimeter = StressedPipeLineSubsidence_WellMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_PressedPipeLineSubsidence_WellMillimeter + MessageSuffix); return; } int StressedPipeLineSubsidence_SumMillimeter; if (int.TryParse(tb_StressedPipeLineSubsidence_SumMillimeter.Text, out StressedPipeLineSubsidence_SumMillimeter)) { WarnSettings.PressedPipeLineSubsidence_SumMillimeter = StressedPipeLineSubsidence_SumMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_PressedPPipeLineSubsidence_SumMillimeter + MessageSuffix); return; } //管线沉降(无压) int UnstressedPipeLineSubsidence_Day; if (int.TryParse(tb_UnstressedPipeLineSubsidence_Day.Text, out UnstressedPipeLineSubsidence_Day)) { WarnSettings.UnpressedPipeLineSubsidence_Day = UnstressedPipeLineSubsidence_Day; } else { ShowMessage(ShowTitle, WarnSettings.Tag_UnpressedPipeLineSubsidence_Day + MessageSuffix); return; } int UnstressedPipeLineSubsidence_PipelineMillimeter; if (int.TryParse(tb_UnstressedPipeLineSubsidence_PipelineMillimeter.Text, out UnstressedPipeLineSubsidence_PipelineMillimeter)) { WarnSettings.UnpressedPipeLineSubsidence_PipelineMillimeter = UnstressedPipeLineSubsidence_PipelineMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_UnpressedPipeLineSubsidence_PipelineMillimeter + MessageSuffix); return; } int UnstressedPipeLineSubsidence_WellMillimeter; if (int.TryParse(tb_UnstressedPipeLineSubsidence_WellMillimeter.Text, out UnstressedPipeLineSubsidence_WellMillimeter)) { WarnSettings.UnpressedPipeLineSubsidence_WellMillimeter = UnstressedPipeLineSubsidence_WellMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_UnpressedPipeLineSubsidence_WellMillimeter + MessageSuffix); return; } int UnstressedPipeLineSubsidence_SumMillimeter; if (int.TryParse(tb_UnstressedPipeLineSubsidence_SumMillimeter.Text, out UnstressedPipeLineSubsidence_SumMillimeter)) { WarnSettings.UnpressedPipeLineSubsidence_SumMillimeter = UnstressedPipeLineSubsidence_SumMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_UnpressedPipeLineSubsidence_SumMillimeter + MessageSuffix); return; } //墙体水平位移(侧斜) int SkewBack_WellMillimeter; if (int.TryParse(tb_SkewBack_WellMillimeter.Text, out SkewBack_WellMillimeter)) { WarnSettings.SkewBack_WellMillimeter = SkewBack_WellMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_SkewBack_WellMillimeter + MessageSuffix); return; } int SkewBack_StandardMillimeter; if (int.TryParse(tb_SkewBack_StandardMillimeter.Text, out SkewBack_StandardMillimeter)) { WarnSettings.SkewBack_StandardMillimeter = SkewBack_StandardMillimeter; } else { ShowMessage(ShowTitle, WarnSettings.Tag_SkewBack_StandardMillimeter + MessageSuffix); return; } int SkewBack_Speed; if (int.TryParse(tb_SkewBack_Speed.Text, out SkewBack_Speed)) { WarnSettings.SkewBack_Speed = SkewBack_Speed; } else { ShowMessage(ShowTitle, WarnSettings.Tag_SkewBack_Speed + MessageSuffix); return; } int SkewBack_Day; if (int.TryParse(tb_SkewBack_Day.Text, out SkewBack_Day)) { WarnSettings.SkewBack_Day = SkewBack_Day; } else { ShowMessage(ShowTitle, WarnSettings.Tag_SkewBack_Day + MessageSuffix); return; } FaceRecorderForRevit recorder = PMSoftHelper.GetRecorder(nameof(WarnSettings), Document); var jsonObj = JsonConvert.SerializeObject(WarnSettings); recorder.WriteValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForSubsidenceMonitor.WarnSettings, 1), jsonObj); this.Close(); }
public void InitByDocument(Document doc) { Doc = doc; string viewName = "土方分块"; View3D = Revit_Document_Helper.GetElementByNameAs <View3D>(doc, viewName); if (View3D == null) { using (var transaction = new Transaction(doc, "EarthworkBlocking." + nameof(InitByDocument))) { transaction.Start(); try { var viewFamilyType = new FilteredElementCollector(doc).OfClass(typeof(ViewFamilyType)).ToElements() .First(c => c.Name == "三维视图"); View3D = View3D.CreateIsometric(doc, viewFamilyType.Id); View3D.Name = viewName; transaction.Commit(); TaskDialog.Show("消息", "三维视图(土方分块)新建成功"); } catch (Exception ex) { transaction.RollBack(); TaskDialog.Show("消息", "视图(土方分块)新建失败,错误详情:" + ex.ToString()); } } } //加载 EarthworkBlock FaceRecorderForRevit recorder = PMSoftHelper.GetRecorder(nameof(EarthworkBlockingForm), doc); var orderedBlockIdIndexs = BlockIdIndexMapper.OrderBy(c => c.Value); foreach (var orderedBlockIdIndex in orderedBlockIdIndexs) { string blockStr = ""; recorder.ReadValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForEarthWork.EarthworkBlock, orderedBlockIdIndex.Key), ref blockStr, recorder.GetValueAsInt(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForEarthWork.EarthworkBlock_Size, orderedBlockIdIndex.Key), 1000) + 2); var block = JsonConvert.DeserializeObject <EarthworkBlock>(blockStr); if (block == null) { return; } string cpSettingsStr = ""; recorder.ReadValue(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForEarthWork.EarthworkBlockCPSettings, orderedBlockIdIndex.Key), ref cpSettingsStr, recorder.GetValueAsInt(SaveKeyHelper.GetSaveKey(SaveKeyHelper.SaveKeyTypeForEarthWork.EarthworkBlockCPSettings_Size, orderedBlockIdIndex.Key), 1000) + 2); var cpSettings = JsonConvert.DeserializeObject <EarthworkBlockCPSettings>(cpSettingsStr); if (cpSettings != null) { block.CPSettings = cpSettings; } //foreach (KeyValuePair<int,int> elementIdValue in block.ElementIdValues) //{ // var element = doc.GetElement(new ElementId(elementIdValue.Key)); // if (element!=null) // { // block.ElementIds.Add(element.Id); // } // else // { // block.info // } //} var elements = block.ElementIdValues.Select(c => doc.GetElement(new ElementId(c))); foreach (var element in elements) { if (element != null) { block.ElementIds.Add(element.Id); } } //var implementationStr = ""; //recorder.ReadValue(SaveKeyHelper.GetSaveKeyOfEarthworkBlockImplementationInfo(orderedBlockIdIndex.Key), ref implementationStr, int.MaxValue); //var implementationInfo = JsonConvert.DeserializeObject<EarthworkBlockImplementationInfo>(implementationStr); //if (implementationInfo != null) //{ // implementationInfo.Name = block.Name; // block.ImplementationInfo = implementationInfo; //} Blocks.Add(block); } }