public void IfcToCoBieLiteUkTest() { const string ifcTestFile = @"Lakeside_Restaurant.ifc"; using (var m = IfcStore.Open(ifcTestFile)) { var jsonFile = Path.ChangeExtension(ifcTestFile, "json"); var facilities = new List <Facility>(); var rolefilters = new OutPutFilters(); const RoleFilter reqRoles = RoleFilter.Unknown; //RoleFilter.Architectural | RoleFilter.Mechanical | RoleFilter.Electrical | RoleFilter.FireProtection | RoleFilter.Plumbing; rolefilters.ApplyRoleFilters(reqRoles); var ifcToCoBieLiteUkExchanger = new IfcToCOBieLiteUkExchanger(m, facilities, null, rolefilters); facilities = ifcToCoBieLiteUkExchanger.Convert(); foreach (var facilityType in facilities) { var log = new StringWriter(); facilityType.ValidateUK2012(log, true); string msg; facilityType.WriteJson(jsonFile, true); facilityType.WriteCobie("..\\..\\Lakeside_Restaurant.xlsx", out msg, rolefilters, "UK2012", true); break; } } }
public FilterViewModel(OutPutFilters modelFilter) { _filters = modelFilter; ProductFilters = makeFilter(modelFilter.IfcProductFilter); TypeObjectFilters = makeFilter(modelFilter.IfcTypeObjectFilter); AssemblyFilters = makeFilter(modelFilter.IfcAssemblyFilter); }
/// <summary> /// Constructor /// </summary> /// <param name="filter">OutPutFilters</param> /// <param name="readOnly"></param> public FilterTab(OutPutFilters filter, bool readOnly = false) { _filter = filter; ReadOnly = readOnly; InitializeComponent(); listViewDefinedTypes.UpdatedListView += SetPreDefinedTypes; if (readOnly) { listViewDefinedTypes.SetReadOnly(); } _common = (PropertySetFilters)tabPropertyCtr.TabPages["tabCommon"].Controls["pSetFiltersCommon"]; _zone = (PropertySetFilters)tabPropertyCtr.TabPages["tabZone"].Controls["pSetFiltersZone"]; _type = (PropertySetFilters)tabPropertyCtr.TabPages["tabType"].Controls["pSetFiltersType"]; _space = (PropertySetFilters)tabPropertyCtr.TabPages["tabSpace"].Controls["pSetFiltersSpace"]; _floor = (PropertySetFilters)tabPropertyCtr.TabPages["tabFloor"].Controls["pSetFiltersFloor"]; _facility = (PropertySetFilters)tabPropertyCtr.TabPages["tabFacility"].Controls["pSetFiltersFacility"]; _spare = (PropertySetFilters)tabPropertyCtr.TabPages["tabSpare"].Controls["pSetFiltersSpare"]; _component = (PropertySetFilters)tabPropertyCtr.TabPages["tabComponent"].Controls["pSetFiltersComponent"]; Init(_filter); if (!readOnly) { return; } chkListBoxComp.ItemCheck += chkList_OnItemCheck; chkListBoxType.ItemCheck += chkList_OnItemCheck; chkListBoxAss.ItemCheck += chkList_OnItemCheck; }
public Window1() { InitializeComponent(); var f = OutPutFilters.GetDefaults(RoleFilter.Unknown); Filters = new FilterViewModel(f); }
/// <summary> /// Constructor /// </summary> /// <param name="filter">OutPutFilters</param> public FilterTab(OutPutFilters filter, bool readOnly = false) { Filter = filter; ReadOnly = readOnly; InitializeComponent(); listViewDefinedTypes.UpdatedListView += SetPreDefinedTypes; if (readOnly) { listViewDefinedTypes.SetReadOnly(); } _common = (PropertySetFilters)tabPropertyCtr.TabPages["tabCommon"].Controls["pSetFiltersCommon"]; _zone = (PropertySetFilters)tabPropertyCtr.TabPages["tabZone"].Controls["pSetFiltersZone"]; _type = (PropertySetFilters)tabPropertyCtr.TabPages["tabType"].Controls["pSetFiltersType"]; _space = (PropertySetFilters)tabPropertyCtr.TabPages["tabSpace"].Controls["pSetFiltersSpace"]; _floor = (PropertySetFilters)tabPropertyCtr.TabPages["tabFloor"].Controls["pSetFiltersFloor"]; _facility = (PropertySetFilters)tabPropertyCtr.TabPages["tabFacility"].Controls["pSetFiltersFacility"]; _spare = (PropertySetFilters)tabPropertyCtr.TabPages["tabSpare"].Controls["pSetFiltersSpare"]; _component = (PropertySetFilters)tabPropertyCtr.TabPages["tabComponent"].Controls["pSetFiltersComponent"]; Init(Filter); if (readOnly) { chkListBoxComp.ItemCheck += new ItemCheckEventHandler(this.chkList_OnItemCheck); chkListBoxType.ItemCheck += new ItemCheckEventHandler(this.chkList_OnItemCheck); chkListBoxAss.ItemCheck += new ItemCheckEventHandler(this.chkList_OnItemCheck); } }
/// <summary> /// On Click Class filter Button /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnClassFilter_Click(object sender, EventArgs e) { var dir = new DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory); //set the defaults if not already set if (_assetfilters.DefaultsNotSet) { _assetfilters.FillRolesFilterHolderFromDir(dir); } try { Cursor.Current = Cursors.WaitCursor; var filterDlg = new FilterDlg(_assetfilters); if (filterDlg.ShowDialog() != DialogResult.OK) { return; } _assetfilters = filterDlg.RolesFilters; _assetfilters.WriteXmlRolesFilterHolderToDir(dir); } finally { Cursor.Current = Cursors.Default; } }
public FilterDlg(OutPutFilters assetfilters, bool seeMergeFilterOnRole = false, Dictionary <FileInfo, OutPutFilters> FedFilters = null) { InitializeComponent(); SeeMergeFilter = seeMergeFilterOnRole; Roles = assetfilters.AppliedRoles; RolesFilters = assetfilters; SetFilter(FedFilters); }
public FilterDlg(OutPutFilters assetfilters, bool seeMergeFilterOnRole = false, Dictionary<FileInfo, OutPutFilters> FedFilters = null) { InitializeComponent(); SeeMergeFilter = seeMergeFilterOnRole; Roles = assetfilters.AppliedRoles; RolesFilters = assetfilters; SetFilter(FedFilters); }
/// <summary> /// Reset to the default resource config file /// </summary> private void SetDefault() { var name = this.Parent.Name; RoleFilter role; if (Enum.TryParse(name, out role)) { var defaultFilter = OutPutFilters.GetDefaults(role); if (defaultFilter != null) { Filter.Copy(defaultFilter); Init(Filter); } } }
/// <summary> /// Set up control items /// </summary> /// <param name="filter">OutPutFilters</param> private void Init(OutPutFilters filter) { SetUpPropertNameLists(_common, filter.CommonFilter); SetUpPropertNameLists(_zone, filter.ZoneFilter); SetUpPropertNameLists(_type, filter.TypeFilter); SetUpPropertNameLists(_space, filter.SpaceFilter); SetUpPropertNameLists(_floor, filter.FloorFilter); SetUpPropertNameLists(_facility, filter.FacilityFilter); SetUpPropertNameLists(_spare, filter.SpareFilter); SetUpPropertNameLists(_component, filter.ComponentFilter); SetUpObjectsList(chkListBoxComp, filter.IfcProductFilter.Items); SetUpObjectsList(chkListBoxType, filter.IfcTypeObjectFilter.Items); SetUpObjectsList(chkListBoxAss, filter.IfcAssemblyFilter.Items); }
/// <summary> /// Set up control items /// </summary> /// <param name="filter">OutPutFilters</param> private void Init (OutPutFilters filter) { SetUpPropertNameLists(_common, filter.CommonFilter); SetUpPropertNameLists(_zone, filter.ZoneFilter); SetUpPropertNameLists(_type, filter.TypeFilter); SetUpPropertNameLists(_space, filter.SpaceFilter); SetUpPropertNameLists(_floor, filter.FloorFilter); SetUpPropertNameLists(_facility, filter.FacilityFilter); SetUpPropertNameLists(_spare, filter.SpareFilter); SetUpPropertNameLists(_component, filter.ComponentFilter); SetUpObjectsList(chkListBoxComp, filter.IfcProductFilter.Items); SetUpObjectsList(chkListBoxType, filter.IfcTypeObjectFilter.Items); SetUpObjectsList(chkListBoxAss, filter.IfcAssemblyFilter.Items); }
/// <summary> /// Reset to the default resource config file /// </summary> private void SetDefault() { var name = Parent.Name; RoleFilter role; if (!Enum.TryParse(name, out role)) { return; } var defaultFilter = OutPutFilters.GetDefaults(role); if (defaultFilter == null) { return; } _filter.Copy(defaultFilter); Init(_filter); }
public void IfcToCoBieLiteUkTest() { using (var m = new XbimModel()) { const string ifcTestFile = @"Lakeside_Restaurant.ifc"; var xbimTestFile = Path.ChangeExtension(ifcTestFile, "xbim"); var jsonFile = Path.ChangeExtension(ifcTestFile, "json"); m.CreateFrom(ifcTestFile, xbimTestFile, null, true, true); var facilities = new List<Facility>(); OutPutFilters rolefilters = new OutPutFilters(); RoleFilter reqRoles = RoleFilter.Unknown; //RoleFilter.Architectural | RoleFilter.Mechanical | RoleFilter.Electrical | RoleFilter.FireProtection | RoleFilter.Plumbing; rolefilters.ApplyRoleFilters(reqRoles); var ifcToCoBieLiteUkExchanger = new IfcToCOBieLiteUkExchanger(m, facilities, null, rolefilters); facilities = ifcToCoBieLiteUkExchanger.Convert(); foreach (var facilityType in facilities) { var log = new StringWriter(); facilityType.ValidateUK2012(log, true); string msg; facilityType.WriteJson(jsonFile, true); facilityType.WriteCobie("..\\..\\Lakeside_Restaurant.xlsx", out msg, rolefilters, "UK2012", true); break; } } }
public LibalIfcToCOBieLiteUkExchanger(IModel source, List <Facility> target, ReportProgressDelegate reportProgress = null, OutPutFilters filter = null, string configFile = null, EntityIdentifierMode extId = EntityIdentifierMode.GloballyUniqueIds, SystemExtractionMode sysMode = SystemExtractionMode.System | SystemExtractionMode.Types) : base(source, target, reportProgress, filter, configFile, extId, sysMode) { ReportProgress.Progress = reportProgress; Helper = new CoBieLiteUkHelper(source, ReportProgress, filter, configFile, extId, sysMode); }
/// <summary> /// Instantiates a new IIfcToCOBieLiteUkExchanger class. /// </summary> public IfcToCoBieExpressExchanger(IfcStore source, IModel target, ReportProgressDelegate reportProgress = null, OutPutFilters filter = null, string configFile = null, EntityIdentifierMode extId = EntityIdentifierMode.IfcEntityLabels, SystemExtractionMode sysMode = SystemExtractionMode.System | SystemExtractionMode.Types, bool classify = false) : base(source, target) { ReportProgress.Progress = reportProgress; //set reporter Helper = new COBieExpressHelper(this, ReportProgress, filter, configFile, extId, sysMode); Helper.Init(); _classify = classify; }
/// <summary> /// On Click Class filter Button /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnClassFilter_Click(object sender, EventArgs e) { DirectoryInfo dir = new DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory); //set the defaults if not already set if (_assetfilters.DefaultsNotSet) { _assetfilters.FillRolesFilterHolderFromDir(dir); } try { Cursor.Current = Cursors.WaitCursor; FilterDlg filterDlg = new FilterDlg(_assetfilters); if (filterDlg.ShowDialog() == DialogResult.OK) { _assetfilters = filterDlg.RolesFilters; _assetfilters.WriteXMLRolesFilterHolderToDir(dir); } } finally { Cursor.Current = Cursors.Default; } }
/// <summary> /// Instantiates a new IfcToCOBieLiteUkExchanger class. /// </summary> /// <param name="source"></param> /// <param name="target"></param> /// <param name="reportProgress"></param> /// <param name="filter"></param> /// <param name="configFile"></param> /// <param name="extId"></param> /// <param name="sysMode"></param> /// <param name="classify"></param> public IfcToCOBieLiteUkExchanger(XbimModel source, List <Facility> target, ReportProgressDelegate reportProgress = null, OutPutFilters filter = null, string configFile = null, EntityIdentifierMode extId = EntityIdentifierMode.IfcEntityLabels, SystemExtractionMode sysMode = SystemExtractionMode.System | SystemExtractionMode.Types, bool classify = false) : base(source, target) { ReportProgress.Progress = reportProgress; //set reporter Helper = new CoBieLiteUkHelper(source, ReportProgress, filter, configFile, extId, sysMode); this._classify = classify; }