| | |
| | | using HStation.Model; |
| | | using SqlSugar.Extensions; |
| | | |
| | | namespace HStation.Hydro |
| | | { |
| | |
| | | reservoir.Catalog = Yw.Hydro.Catalog.Reservoir; |
| | | reservoir.Name = revitReservoir.Name; |
| | | reservoir.Code = revitReservoir.Code; |
| | | reservoir.ModelType = revitReservoir.ModelType; |
| | | reservoir.Flags = revitReservoir.Flags; |
| | | reservoir.Description = revitReservoir.Description; |
| | | reservoir.Quality = revitReservoir.Quality; |
| | | reservoir.PoolElev = revitReservoir.PoolElev; |
| | | reservoir.Head = revitReservoir.Head; |
| | | reservoir.HeadPattern = revitReservoir.HeadPattern; |
| | | reservoir.Position2d = new Yw.Model.Hydro.Position2d(revitReservoir.Position.X, revitReservoir.Position.Y); |
| | |
| | | tank.Catalog = Yw.Hydro.Catalog.Tank; |
| | | tank.Name = revitTank.Name; |
| | | tank.Code = revitTank.Code; |
| | | tank.ModelType = revitTank.ModelType; |
| | | tank.Flags = revitTank.Flags; |
| | | tank.Description = revitTank.Description; |
| | | tank.Quality = revitTank.Quality; |
| | |
| | | { |
| | | foreach (var revitWaterbox in revitModel.Waterboxs) |
| | | { |
| | | var waberbox = new Yw.Model.HydroWaterboxInfo(); |
| | | waberbox.Catalog = Yw.Hydro.Catalog.Waterbox; |
| | | waberbox.Name = revitWaterbox.Name; |
| | | waberbox.Code = revitWaterbox.Code; |
| | | waberbox.Flags = revitWaterbox.Flags; |
| | | waberbox.Description = revitWaterbox.Description; |
| | | waberbox.Quality = revitWaterbox.Quality; |
| | | waberbox.PoolElev = revitWaterbox.PoolElev; |
| | | waberbox.InitLevel = revitWaterbox.InitLevel; |
| | | waberbox.MinLevel = revitWaterbox.MinLevel; |
| | | waberbox.MaxLevel = revitWaterbox.MaxLevel; |
| | | waberbox.Diameter = revitWaterbox.Diameter; |
| | | waberbox.MinVol = revitWaterbox.MinVol; |
| | | waberbox.VolCurve = revitWaterbox.VolCurve; |
| | | waberbox.Position2d = new Yw.Model.Hydro.Position2d(revitWaterbox.Position.X, revitWaterbox.Position.Y); |
| | | waberbox.Position3d = new Yw.Model.Hydro.Position3d(revitWaterbox.Position.X, revitWaterbox.Position.Y, revitWaterbox.Position.Z); |
| | | waberbox.ScenePropValueList = revitWaterbox.PropValueList?.Select(x => new Yw.Model.HydroParterScenePropValuePureInfo() |
| | | var waterbox = new Yw.Model.HydroWaterboxInfo(); |
| | | waterbox.Catalog = Yw.Hydro.Catalog.Waterbox; |
| | | waterbox.Name = revitWaterbox.Name; |
| | | waterbox.Code = revitWaterbox.Code; |
| | | waterbox.ModelType = revitWaterbox.ModelType; |
| | | waterbox.Flags = revitWaterbox.Flags; |
| | | waterbox.Description = revitWaterbox.Description; |
| | | waterbox.Quality = revitWaterbox.Quality; |
| | | waterbox.PoolElev = revitWaterbox.PoolElev; |
| | | waterbox.InitLevel = revitWaterbox.InitLevel; |
| | | waterbox.MinLevel = revitWaterbox.MinLevel; |
| | | waterbox.MaxLevel = revitWaterbox.MaxLevel; |
| | | waterbox.Diameter = revitWaterbox.Diameter; |
| | | waterbox.MinVol = revitWaterbox.MinVol; |
| | | waterbox.VolCurve = revitWaterbox.VolCurve; |
| | | waterbox.Position2d = new Yw.Model.Hydro.Position2d(revitWaterbox.Position.X, revitWaterbox.Position.Y); |
| | | waterbox.Position3d = new Yw.Model.Hydro.Position3d(revitWaterbox.Position.X, revitWaterbox.Position.Y, revitWaterbox.Position.Z); |
| | | waterbox.ScenePropValueList = revitWaterbox.PropValueList?.Select(x => new Yw.Model.HydroParterScenePropValuePureInfo() |
| | | { |
| | | PropName = x.PropName, |
| | | PropValue = x.PropValue |
| | | }).ToList(); |
| | | hydro.Waterboxs.Add(waberbox); |
| | | hydro.Waterboxs.Add(waterbox); |
| | | } |
| | | } |
| | | |
| | |
| | | junction.Catalog = Yw.Hydro.Catalog.Junction; |
| | | junction.Name = revitJunction.Name; |
| | | junction.Code = revitJunction.Code; |
| | | junction.ModelType = revitJunction.ModelType; |
| | | junction.Flags = revitJunction.Flags; |
| | | junction.Description = revitJunction.Description; |
| | | junction.Quality = revitJunction.Quality; |
| | |
| | | elbow.Catalog = Yw.Hydro.Catalog.Elbow; |
| | | elbow.Name = revitElbow.Name; |
| | | elbow.Code = revitElbow.Code; |
| | | elbow.ModelType = revitElbow.ModelType; |
| | | elbow.Flags = revitElbow.Flags; |
| | | elbow.Description = revitElbow.Description; |
| | | elbow.Quality = revitElbow.Quality; |
| | |
| | | threelink.Catalog = Yw.Hydro.Catalog.Threelink; |
| | | threelink.Name = revitThreelink.Name; |
| | | threelink.Code = revitThreelink.Code; |
| | | threelink.ModelType = revitThreelink.ModelType; |
| | | threelink.Flags = revitThreelink.Flags; |
| | | threelink.Description = revitThreelink.Description; |
| | | threelink.Quality = revitThreelink.Quality; |
| | |
| | | fourlink.Catalog = Yw.Hydro.Catalog.Fourlink; |
| | | fourlink.Name = revitFourlink.Name; |
| | | fourlink.Code = revitFourlink.Code; |
| | | fourlink.ModelType = revitFourlink.ModelType; |
| | | fourlink.Flags = revitFourlink.Flags; |
| | | fourlink.Description = revitFourlink.Description; |
| | | fourlink.Quality = revitFourlink.Quality; |
| | |
| | | nozzle.Catalog = Yw.Hydro.Catalog.Nozzle; |
| | | nozzle.Name = revitNozzle.Name; |
| | | nozzle.Code = revitNozzle.Code; |
| | | nozzle.ModelType = revitNozzle.ModelType; |
| | | nozzle.Flags = revitNozzle.Flags; |
| | | nozzle.Description = revitNozzle.Description; |
| | | nozzle.Quality = revitNozzle.Quality; |
| | |
| | | hydrant.Catalog = Yw.Hydro.Catalog.Hydrant; |
| | | hydrant.Name = revitHydrant.Name; |
| | | hydrant.Code = revitHydrant.Code; |
| | | hydrant.ModelType = revitHydrant.ModelType; |
| | | hydrant.Flags = revitHydrant.Flags; |
| | | hydrant.Description = revitHydrant.Description; |
| | | hydrant.Quality = revitHydrant.Quality; |
| | |
| | | } |
| | | } |
| | | |
| | | //仪表 |
| | | if (revitModel.Meters != null && revitModel.Meters.Count > 0) |
| | | { |
| | | foreach (var revitMeter in revitModel.Meters) |
| | | { |
| | | var meter = new Yw.Model.HydroMeterInfo(); |
| | | meter.Catalog = Yw.Hydro.Catalog.Meter; |
| | | meter.Name = revitMeter.Name; |
| | | meter.Code = revitMeter.Code; |
| | | meter.ModelType = revitMeter.ModelType; |
| | | meter.Flags = revitMeter.Flags; |
| | | meter.Description = revitMeter.Description; |
| | | meter.Quality = revitMeter.Quality; |
| | | meter.Elev = revitMeter.Elev; |
| | | meter.Demand = revitMeter.Demand; |
| | | meter.DemandPattern = revitMeter.DemandPattern; |
| | | meter.Position2d = new Yw.Model.Hydro.Position2d(revitMeter.Position.X, revitMeter.Position.Y); |
| | | meter.Position3d = new Yw.Model.Hydro.Position3d(revitMeter.Position.X, revitMeter.Position.Y, revitMeter.Position.Z); |
| | | meter.ScenePropValueList = revitMeter.PropValueList?.Select(x => new Yw.Model.HydroParterScenePropValuePureInfo() |
| | | { |
| | | PropName = x.PropName, |
| | | PropValue = x.PropValue |
| | | }).ToList(); |
| | | hydro.Meters.Add(meter); |
| | | } |
| | | } |
| | | |
| | | //流量计 |
| | | if (revitModel.Flowmeters != null && revitModel.Flowmeters.Count > 0) |
| | | { |
| | |
| | | flowmeter.Catalog = Yw.Hydro.Catalog.Flowmeter; |
| | | flowmeter.Name = revitFlowmeter.Name; |
| | | flowmeter.Code = revitFlowmeter.Code; |
| | | flowmeter.ModelType = revitFlowmeter.ModelType; |
| | | flowmeter.Flags = revitFlowmeter.Flags; |
| | | flowmeter.Description = revitFlowmeter.Description; |
| | | flowmeter.Quality = revitFlowmeter.Quality; |
| | |
| | | pressmeter.Catalog = Yw.Hydro.Catalog.Pressmeter; |
| | | pressmeter.Name = revitPressmeter.Name; |
| | | pressmeter.Code = revitPressmeter.Code; |
| | | pressmeter.ModelType = revitPressmeter.ModelType; |
| | | pressmeter.Flags = revitPressmeter.Flags; |
| | | pressmeter.Description = revitPressmeter.Description; |
| | | pressmeter.Quality = revitPressmeter.Quality; |
| | |
| | | blunthead.Catalog = Yw.Hydro.Catalog.Blunthead; |
| | | blunthead.Name = revitBlunthead.Name; |
| | | blunthead.Code = revitBlunthead.Code; |
| | | blunthead.ModelType = revitBlunthead.ModelType; |
| | | blunthead.Flags = revitBlunthead.Flags; |
| | | blunthead.Description = revitBlunthead.Description; |
| | | blunthead.Quality = revitBlunthead.Quality; |
| | |
| | | } |
| | | } |
| | | |
| | | //换热器 |
| | | if (revitModel.Exchangers != null && revitModel.Exchangers.Count > 0) |
| | | { |
| | | foreach (var revitExchanger in revitModel.Exchangers) |
| | | { |
| | | var exchanger = new Yw.Model.HydroExchangerInfo(); |
| | | exchanger.Catalog = Yw.Hydro.Catalog.Exchanger; |
| | | exchanger.Name = revitExchanger.Name; |
| | | exchanger.Code = revitExchanger.Code; |
| | | exchanger.ModelType = revitExchanger.ModelType; |
| | | exchanger.Flags = revitExchanger.Flags; |
| | | exchanger.Description = revitExchanger.Description; |
| | | exchanger.Quality = revitExchanger.Quality; |
| | | exchanger.Elev = revitExchanger.Elev; |
| | | exchanger.Demand = revitExchanger.Demand; |
| | | exchanger.DemandPattern = revitExchanger.DemandPattern; |
| | | exchanger.Position2d = new Yw.Model.Hydro.Position2d(revitExchanger.Position.X, revitExchanger.Position.Y); |
| | | exchanger.Position3d = new Yw.Model.Hydro.Position3d(revitExchanger.Position.X, revitExchanger.Position.Y, revitExchanger.Position.Z); |
| | | exchanger.ScenePropValueList = revitExchanger.PropValueList?.Select(x => new Yw.Model.HydroParterScenePropValuePureInfo() |
| | | { |
| | | PropName = x.PropName, |
| | | PropValue = x.PropValue |
| | | }).ToList(); |
| | | hydro.Exchangers.Add(exchanger); |
| | | } |
| | | } |
| | | |
| | | //水泵 |
| | | if (revitModel.Pumps != null && revitModel.Pumps.Count > 0) |
| | | { |
| | |
| | | pump.Catalog = Yw.Hydro.Catalog.Pump; |
| | | pump.Name = revitPump.Name; |
| | | pump.Code = revitPump.Code; |
| | | pump.ModelType = revitPump.ModelType; |
| | | pump.Flags = revitPump.Flags; |
| | | pump.Description = revitPump.Description; |
| | | pump.StartCode = revitPump.StartCode; |
| | |
| | | valve.Catalog = Yw.Hydro.Catalog.Valve; |
| | | valve.Name = revitValve.Name; |
| | | valve.Code = revitValve.Code; |
| | | valve.ModelType = revitValve.ModelType; |
| | | valve.Flags = revitValve.Flags; |
| | | valve.Description = revitValve.Description; |
| | | valve.StartCode = revitValve.StartCode; |
| | |
| | | pipe.Catalog = Yw.Hydro.Catalog.Pipe; |
| | | pipe.Name = revitPipe.Name; |
| | | pipe.Code = revitPipe.Code; |
| | | pipe.ModelType = revitPipe.ModelType; |
| | | pipe.Flags = revitPipe.Flags; |
| | | pipe.Description = revitPipe.Description; |
| | | pipe.StartCode = revitPipe.StartCode; |
| | |
| | | } |
| | | } |
| | | |
| | | //过渡件 |
| | | if (revitModel.Translations != null && revitModel.Translations.Count > 0) |
| | | { |
| | | foreach (var revitTranslation in revitModel.Translations) |
| | | { |
| | | var translation = new Yw.Model.HydroPipeInfo(); |
| | | translation.Catalog = Yw.Hydro.Catalog.Translation; |
| | | translation.Name = revitTranslation.Name; |
| | | translation.Code = revitTranslation.Code; |
| | | translation.ModelType = revitTranslation.ModelType; |
| | | translation.Flags = revitTranslation.Flags; |
| | | translation.Description = revitTranslation.Description; |
| | | translation.StartCode = revitTranslation.StartCode; |
| | | translation.EndCode = revitTranslation.EndCode; |
| | | translation.LinkStatus = revitTranslation.LinkStatus; |
| | | translation.Diameter = revitTranslation.Diameter; |
| | | translation.Length = revitTranslation.Length; |
| | | translation.Roughness = revitTranslation.Roughness; |
| | | translation.MinorLoss = revitTranslation.MinorLoss; |
| | | translation.ScenePropValueList = revitTranslation.PropValueList?.Select(x => new Yw.Model.HydroParterScenePropValuePureInfo() |
| | | { |
| | | PropName = x.PropName, |
| | | PropValue = x.PropValue |
| | | }).ToList(); |
| | | hydro.Pipes.Add(translation); |
| | | } |
| | | } |
| | | |
| | | //装饰件 |
| | | if (revitModel.Decorators != null && revitModel.Decorators.Count > 0) |
| | | { |