static void PrintShapeArea(IAreaCalculator ac) { Console.WriteLine(ac.GetArea()); Console.WriteLine(ac.GetType()); if (ac is BigCircle) { BigCircle c = ac as BigCircle; Console.WriteLine(c.Radius); } }
public Kernel() { //Instantiate Interface objects _areaCalculator = new AreaCalculator(); _volumeCalculator = new VolumeCalculator(); _decimalParse = new ParseFromInput(); _wallAreaCalculator = new WallAreaCalculator(); _paintCalculator = new PaintCoverageCalculator(); run = true; getInput = true; }
internal static void AddFigureProcessors <TDescription>( AbstractValidator <TDescription> validator, IAreaCalculator <TDescription> calculator, string code) where TDescription : IFigureDescription { var processors = new ProxyFigureProcessors(); processors.Init(validator, calculator); var type = typeof(TDescription); _typeMap.AddOrUpdate(type, processors, (key, old) => processors); _codeMap.AddOrUpdate(code, type, (key, old) => type); }
public void Init <TDescription>(AbstractValidator <TDescription> validator, IAreaCalculator <TDescription> calculator) where TDescription : IFigureDescription { if (validator == null) { throw new ArgumentNullException(nameof(validator)); } if (calculator == null) { throw new ArgumentNullException(nameof(calculator)); } Calculate = (IFigureDescription desc) => calculator.Calculate((TDescription)desc); Validate = (IFigureDescription desc) => validator.Validate((TDescription)desc); }
static void Main(string[] args) { var calcs = new IAreaCalculator[] { new TriangleAreaCalculator(3, 4, 5), new CircleAreaCalculator(1), new TriangleAreaCalculator(5, 5, 5), new CircleAreaCalculator(3.8), new TriangleAreaCalculator(7, 3, 5) }; foreach (var calc in calcs) { Console.WriteLine(calc.CalcArea()); } Console.ReadKey(); }
/// <summary> /// Initializes a new instance of the <see cref="ShapeBase{T}" /> class. /// </summary> /// <param name="areaCalculator">The area calculator.</param> /// <param name="name">The name.</param> /// <exception cref="System.ArgumentNullException">areaCalculator</exception> protected ShapeBase(IAreaCalculator <T> areaCalculator, string name) { Calculator = areaCalculator ?? throw new ArgumentNullException(nameof(areaCalculator)); Name = name; }
public AreaClient(IAreaCalculator calculator) { _calculator = calculator; }
public ConvexHullSpritePreviewEditorWindow() { _convexHullBuilder = new SpriteConvexHullBuilder(); _convexHullAreaAdapter = new ConvexHullAreaAdapter(new ConvexHullAreaCalculator()); _areaCalculator = new MinAreaCalculator(); }
public AreaCalculatorUI() { AreaCalculator = AppContainer.Resolve <IAreaCalculator>(); }
public Square(IAreaCalculator calArea) { this.calculateArea = calArea; }
public Rectangle(IAreaCalculator calArea) { this.calculateRArea = calArea; }
// Start is called before the first frame update void Start() { areaCalculator = areaCalculatorGO.GetComponent <IAreaCalculator>(); }
public CompositeAreaCalculator(IAreaCalculator areaCalculator) { _areaCalculator = areaCalculator ?? throw new ArgumentNullException(nameof(areaCalculator)); }
public PeakAreaCalculator(IAreaCalculator calculator, IBounder bounder) { this.calculator = calculator; this.bounder = bounder; }