static public SictGbsAstInfoSictAuswert[] MengePfaadScnitmenge( this SictGbsAstInfoSictAuswert AstPfaadUurscprung, IEnumerable <SictGbsAstInfoSictAuswert> MengePfaadBlat) { if (null == AstPfaadUurscprung || null == MengePfaadBlat) { return(null); } var MengePfaad = MengePfaadBlat.Select((PfaadBlat) => Extension.SuuceFlacMengeAstMitPfaadFrüheste(AstPfaadUurscprung, (t) => t == PfaadBlat)).ToArray(); if (Bib3.Extension.NullOderLeer(MengePfaad)) { return(null); } var Pfaad0 = MengePfaad.FirstOrDefault(); var TailPfaadÜberscnaidung = Pfaad0.TakeWhile((PfaadZwisceAst, InPfaadAstIndex) => MengePfaad.All((AnderePfaad) => (null == AnderePfaad) ? false : (AnderePfaad.ElementAtOrDefault(InPfaadAstIndex) == PfaadZwisceAst))) .ToArray(); return(TailPfaadÜberscnaidung); }
static public SictVektor2DSingle?GrööseAusListeChildFürScpezUIRootBerecne( this SictGbsAstInfoSictAuswert Ast) { if (null == Ast) { return(null); } var ListeChild = Ast.ListeChild; if (null != ListeChild) { foreach (var Child in ListeChild) { var ChildGrööse = Child.Grööse; if (ChildGrööse.HasValue) { if (UIRootVorgaabeGrööseListeName.Any((AstNaame) => string.Equals(AstNaame, Child.Name))) { return(ChildGrööse); } } } } return(null); }
static public string LabelText( this SictGbsAstInfoSictAuswert Ast) { if (null == Ast) { return(null); } return(Ast.SetText); }
static public SictGbsAstInfoSictAuswert[] StaticListeChild( this SictGbsAstInfoSictAuswert Ast) { if (null == Ast) { return(null); } return(Ast.ListeChild); }
static public SictGbsAstInfoSictAuswert SuuceFlacMengeAstFrühesteMitHerkunftAdrese( this SictGbsAstInfoSictAuswert Ast, Int64?HerkunftAdrese, int?TiifeScrankeMax = null, int?TiifeScrankeMin = null) { return(Extension.SuuceFlacMengeAstFrüheste( Ast, (Kandidaat) => Kandidaat.HerkunftAdrese == HerkunftAdrese, TiifeScrankeMax, TiifeScrankeMin)); }
static public IEnumerable <SictGbsAstInfoSictAuswert> BaumEnumFlacListeKnoote( this SictGbsAstInfoSictAuswert SuuceWurzel, int?TiifeScrankeMax = null, int?TiifeScrankeMin = null) { return (Bib3.Extension.BaumEnumFlacListeKnoote( SuuceWurzel, (Ast) => null == Ast ? null : Ast.ListeChildBerecne().OfTypeNullable <SictGbsAstInfoSictAuswert>(), TiifeScrankeMax, TiifeScrankeMin)); }
static public SictGbsAstInfoSictAuswert[] SuuceFlacMengeAstMitPfaadFrüheste( this SictGbsAstInfoSictAuswert Ast, Func <SictGbsAstInfoSictAuswert, bool> Prädikaat, int?TiifeScrankeMax = null, int?TiifeScrankeMin = null) { var MengeAstMitPfaad = Ast.SuuceFlacMengeAstMitPfaad(Prädikaat, 1, TiifeScrankeMax, TiifeScrankeMin, true); if (null == MengeAstMitPfaad) { return(null); } var AstMitPfaad = MengeAstMitPfaad.FirstOrDefault(); return(AstMitPfaad); }
static public SictGbsAstInfoSictAuswert SuuceFlacMengeAstFrüheste( this SictGbsAstInfoSictAuswert Ast, Func <SictGbsAstInfoSictAuswert, bool> Prädikaat, int?TiifeScrankeMax = null, int?TiifeScrankeMin = null) { var MengeAst = Ast.SuuceFlacMengeAst(Prädikaat, 1, TiifeScrankeMax, TiifeScrankeMin, true); if (null == MengeAst) { return(null); } var FundAst = MengeAst.FirstOrDefault(); return(FundAst); }
static public SictVektor2DSingle?LaagePlusVonParentErbeLaage( this SictGbsAstInfoSictAuswert Ast) { if (null == Ast) { return(null); } var VonParentErbeLaage = Ast.VonParentErbeLaage; if (!VonParentErbeLaage.HasValue) { return(Ast.Laage); } return(Ast.Laage + VonParentErbeLaage); }
static public SictVektor2DSingle?GrööseMaxAusListeChild( this SictGbsAstInfoSictAuswert Ast) { if (null == Ast) { return(null); } SictVektor2DSingle?GrööseMax = null; var ThisGrööse = Ast.Grööse; if (ThisGrööse.HasValue) { GrööseMax = ThisGrööse; } var ListeChild = Ast.ListeChild; if (null != ListeChild) { foreach (var Child in ListeChild) { var ChildGrööse = Child.Grööse; if (ChildGrööse.HasValue) { if (GrööseMax.HasValue) { GrööseMax = new SictVektor2DSingle( Math.Max(GrööseMax.Value.A, ChildGrööse.Value.A), Math.Max(GrööseMax.Value.B, ChildGrööse.Value.B)); } else { GrööseMax = ChildGrööse; } } } } return(GrööseMax); }
/* * 2015.03.12 * * Error 20 The call is ambiguous between the following methods or properties: 'Optimat.EveOnline.AuswertGbs.Extension.SuuceFlacMengeAst(Optimat.EveOnline.AuswertGbs.SictGbsAstInfoSictAuswert, System.Func<Optimat.EveOnline.AuswertGbs.SictGbsAstInfoSictAuswert,bool>, int?, int?, int?, bool)' and 'Optimat.EveOnline.AuswertGbs.Extension.SuuceFlacMengeAst(Optimat.EveOnline.AuswertGbs.SictGbsAstInfoSictAuswert, System.Func<Optimat.EveOnline.AuswertGbs.SictGbsAstInfoSictAuswert,bool>, int?, int?, int?, bool)' T:\Günta\Projekt\Optimat.EveOnline\Impl.Sensor\Assembly\Optimat.EveO.Nuzer\sln\Optimat.EveOnline.Temp\SictGbs\AuswertGbs.DroneView.cs 422 5 Optimat.EveOnline.Temp * * * static public SictGbsAstInfoSictAuswert[] SuuceFlacMengeAst( * SictGbsAstInfoSictAuswert SuuceWurzel, * Func<SictGbsAstInfoSictAuswert, bool> Prädikaat, * int? ListeFundAnzaalScrankeMax = null, * int? TiifeScrankeMax = null, * int? TiifeScrankeMin = null, * bool LaseAusMengeChildUnterhalbTrefer = false) * { * if (null == SuuceWurzel) * { * return null; * } * * return SuuceWurzel.SuuceFlacMengeAst(Prädikaat, ListeFundAnzaalScrankeMax, TiifeScrankeMax, TiifeScrankeMin, LaseAusMengeChildUnterhalbTrefer); * } * */ static public SictGbsAstInfoSictAuswert[] SuuceFlacMengeAst( this SictGbsAstInfoSictAuswert Ast, Func <SictGbsAstInfoSictAuswert, bool> Prädikaat, int?ListeFundAnzaalScrankeMax = null, int?TiifeScrankeMax = null, int?TiifeScrankeMin = null, bool LaseAusMengeChildUnterhalbTrefer = false) { var MengeAstMitPfaad = Ast.SuuceFlacMengeAstMitPfaad( Prädikaat, ListeFundAnzaalScrankeMax, TiifeScrankeMax, TiifeScrankeMin, LaseAusMengeChildUnterhalbTrefer); if (null == MengeAstMitPfaad) { return(null); } var MengeAst = MengeAstMitPfaad.Select((AstMitPfaad) => AstMitPfaad.LastOrDefault()).ToArray(); return(MengeAst); }
static public SictGbsAstInfoSictAuswert[][] SuuceFlacMengeAstMitPfaad( this SictGbsAstInfoSictAuswert Ast, Func <SictGbsAstInfoSictAuswert, bool> Prädikaat, int?ListeFundAnzaalScrankeMax = null, int?TiifeScrankeMax = null, int?TiifeScrankeMin = null, bool LaseAusMengeChildUnterhalbTrefer = false) { if (null == Ast) { return(null); } return(Optimat.Glob.SuuceFlacMengeAstMitPfaad( Ast, Prädikaat, (Kandidaat) => Kandidaat.ListeChild, ListeFundAnzaalScrankeMax, TiifeScrankeMax, TiifeScrankeMin, LaseAusMengeChildUnterhalbTrefer)); }
static public SictGbsAstInfoSictAuswert GröösteLabel( this SictGbsAstInfoSictAuswert SuuceWurzel, int?TiifeScrankeMax = null) { var MengeLabelSictbar = SuuceWurzel.SuuceFlacMengeAst((Kandidaat) => Glob.GbsAstTypeIstLabel(Kandidaat), null, TiifeScrankeMax); if (null == MengeLabelSictbar) { return(null); } SictGbsAstInfoSictAuswert BisherBeste = null; foreach (var LabelAst in MengeLabelSictbar) { var LabelAstGrööse = LabelAst.Grööse; if (!LabelAstGrööse.HasValue) { continue; } if (null == BisherBeste) { BisherBeste = LabelAst; } else { if (BisherBeste.Grööse.Value.BetraagQuadriirt < LabelAstGrööse.Value.BetraagQuadriirt) { BisherBeste = LabelAst; } } } return(BisherBeste); }
static public void AbgelaiteteAigescafteBerecne( this SictGbsAstInfoSictAuswert Ast, ref int InBaumAstIndexZääler, int?TiifeScrankeMax = null, SictVektor2DSingle?VonParentErbeLaage = null, float?VonParentErbeClippingFläceLinx = null, float?VonParentErbeClippingFläceOobn = null, float?VonParentErbeClippingFläceRecz = null, float?VonParentErbeClippingFläceUntn = null) { if (null == Ast) { return; } if (TiifeScrankeMax < 0) { return; } Ast.InBaumAstIndex = ++InBaumAstIndexZääler; Ast.VonParentErbeLaage = VonParentErbeLaage; var FürChildVonParentErbeLaage = Ast.Laage; /* * 2015.02.23 * * OrtogoonSingle SelbsctFläce = null; * */ var LaagePlusVonParentErbeLaage = Ast.LaagePlusVonParentErbeLaage(); var Grööse = Ast.Grööse; /* * 2015.02.23 * * if(LaagePlusVonParentErbeLaage.HasValue && * Grööse.HasValue) * { * SelbsctFläce = OrtogoonSingle.FläceAusEkeMininumLaageUndGrööse(LaagePlusVonParentErbeLaage.Value, Grööse.Value); * } * */ var FürChildVonParentErbeClippingFläceLinx = VonParentErbeClippingFläceLinx; var FürChildVonParentErbeClippingFläceOobn = VonParentErbeClippingFläceOobn; var FürChildVonParentErbeClippingFläceRecz = VonParentErbeClippingFläceRecz; var FürChildVonParentErbeClippingFläceUntn = VonParentErbeClippingFläceUntn; if (LaagePlusVonParentErbeLaage.HasValue && Grööse.HasValue) { FürChildVonParentErbeClippingFläceLinx = Bib3.Glob.Max(FürChildVonParentErbeClippingFläceLinx, LaagePlusVonParentErbeLaage.Value.A); FürChildVonParentErbeClippingFläceRecz = Bib3.Glob.Min(FürChildVonParentErbeClippingFläceRecz, LaagePlusVonParentErbeLaage.Value.A); FürChildVonParentErbeClippingFläceOobn = Bib3.Glob.Max(FürChildVonParentErbeClippingFläceOobn, LaagePlusVonParentErbeLaage.Value.B); FürChildVonParentErbeClippingFläceUntn = Bib3.Glob.Min(FürChildVonParentErbeClippingFläceUntn, LaagePlusVonParentErbeLaage.Value.B); } if (VonParentErbeLaage.HasValue) { if (FürChildVonParentErbeLaage.HasValue) { FürChildVonParentErbeLaage = FürChildVonParentErbeLaage.Value + VonParentErbeLaage.Value; } else { FürChildVonParentErbeLaage = VonParentErbeLaage; } } var ListeChild = Ast.ListeChild; if (null != ListeChild) { for (int ChildIndex = 0; ChildIndex < ListeChild.Length; ChildIndex++) { var Child = ListeChild[ChildIndex]; if (null == Child) { continue; } Child.InParentListeChildIndex = ChildIndex; Child.AbgelaiteteAigescafteBerecne( ref InBaumAstIndexZääler, TiifeScrankeMax - 1, FürChildVonParentErbeLaage, FürChildVonParentErbeClippingFläceLinx, FürChildVonParentErbeClippingFläceOobn, FürChildVonParentErbeClippingFläceRecz, FürChildVonParentErbeClippingFläceUntn); } } }