namespace Yw.WpfUI.Hydro { /// /// 抽象创建辅助类 /// internal class LogicalCreateHelper { /// /// 创建 /// /// /// /// /// /// /// /// public static LogicalVisual3D Create ( VisualL3d visual, LogicalStateHelper stateHelper, LogicalMaterialHelper materialHelper, LogicalOverrideColorHelper overrideColorHelper, LogicalOverrideOpacityHelper overrideOpacityHelper, LogicalOverrideVisibleHelper overrideVisibleHelper ) { if (visual == null) { return default; } if (visual is JunctionL3d junction) { return new LogicalJunction3D(junction, stateHelper, materialHelper, overrideColorHelper, overrideOpacityHelper, overrideVisibleHelper); } if (visual is ReservoirL3d reservoir) { return new LogicalReservoir3D(reservoir, stateHelper, materialHelper, overrideColorHelper, overrideOpacityHelper, overrideVisibleHelper); } if (visual is TankL3d tank) { return new LogicalTank3D(tank, stateHelper, materialHelper, overrideColorHelper, overrideOpacityHelper, overrideVisibleHelper); } if (visual is PipeL3d pipel3d) { return new LogicalPipe3D(pipel3d, stateHelper, materialHelper, overrideColorHelper, overrideOpacityHelper, overrideVisibleHelper); } if (visual is PumpL3d pumpl3d) { return new LogicalPump3D(pumpl3d, stateHelper, materialHelper, overrideColorHelper, overrideOpacityHelper, overrideVisibleHelper); } if (visual is ValveL3d valvel3d) { return new LogicalValve3D(valvel3d, stateHelper, materialHelper, overrideColorHelper, overrideOpacityHelper, overrideVisibleHelper); } return default; } } }