internal void SetBoundingBox(List <ColoBox> staticBoxes, bool isCandidate = false) { boundingBox = GetBiggestBox(staticBoxes, isCandidate); boundingBox.LayoutManager = this; if (this.LocationMachine == null) { ColoEngine.Model.LocationStatemachine.Machine locationMachine = new LocationStatemachine.Machine(initParam, boundingBox); this.LocationMachine = locationMachine; this.LocationMachine.direction = DirectionController; } this.LocationMachine.boundingBox = boundingBox; //assign the layout manager to all the static boxes foreach (ColoBox box in staticBoxes) { box.LayoutManager = this; } borderVerifier = new BorderVerifier(staticBoxes, this.LocationMachine); this.LocationMachine.BorderVerifier = borderVerifier; //if (borderVerifier.IsRotating) //{ // double angle = borderVerifier.Angle; // foreach (ColoBox cb in staticBoxes) // { // cb.Rotate(angle); // } //} //borderVerifier = new BorderVerifier(staticBoxes, locationMachine); }
protected BorderVerifier getToughBorderVerifier(DirectionBase direction, Machine machine) { ColoBox boundingBox = new ColoBox("", 1); boundingBox.AddPoint(531.67, 415); boundingBox.AddPoint(531.67, 474.61); boundingBox.AddPoint(507.86, 497.33); boundingBox.AddPoint(465.8, 497.33); boundingBox.AddPoint(463.07, 494.76); boundingBox.AddPoint(459.83, 491.71); boundingBox.AddPoint(456, 488.1); boundingBox.AddPoint(456, 473.67); boundingBox.AddPoint(473.67, 473.67); boundingBox.AddPoint(473.67, 445.67); boundingBox.AddPoint(456, 445.67); boundingBox.AddPoint(456, 415); boundingBox.AddPoint(410, 415); boundingBox.AddPoint(410, 335); boundingBox.AddPoint(483, 335); boundingBox.AddPoint(483, 352.67); boundingBox.AddPoint(532, 352.67); boundingBox.AddPoint(532, 335); boundingBox.AddPoint(595.33, 335); boundingBox.AddPoint(595.33, 415); boundingBox.AddPoint(531.67, 415); List <ColoBox> staticBoxes = new List <ColoBox>(); staticBoxes.Add(boundingBox); machine.boundingBox = boundingBox; BorderVerifier verifier = new BorderVerifier(staticBoxes, machine); return(verifier); }
internal void SetBoundingBox(List <ColoBox> staticBoxes) { boundingBox = GetBiggestBox(staticBoxes); DXFPoc.Model.LocationStatemachine.Machine locationMachine = new LocationStatemachine.Machine(coldAisle, spaceAfterObstacle, boundingBox); this.locationMachine = locationMachine; this.locationMachine.direction = DirectionController; borderVerifier = new BorderVerifier(staticBoxes, locationMachine); locationMachine.BorderVerifier = borderVerifier; //if (borderVerifier.IsRotating) //{ // double angle = borderVerifier.Angle; // foreach (ColoBox cb in staticBoxes) // { // cb.Rotate(angle); // } //} //borderVerifier = new BorderVerifier(staticBoxes, locationMachine); }
protected BorderVerifier getBorderVerifier(DirectionBase direction, Machine machine) { ColoBox boundingBox = new ColoBox("", 1); boundingBox.AddPoint(160.38, -530); boundingBox.AddPoint(310.38, -390); boundingBox.AddPoint(166.15, -272); boundingBox.AddPoint(256.54, -128); boundingBox.AddPoint(291.15, -128); boundingBox.AddPoint(312.31, -101); boundingBox.AddPoint(341.15, -101); boundingBox.AddPoint(362.31, -128); boundingBox.AddPoint(387.31, -128); boundingBox.AddPoint(402.69, -99); boundingBox.AddPoint(472.42, -99); boundingBox.AddPoint(492.5, -130); boundingBox.AddPoint(788, -130); boundingBox.AddPoint(788, -379); boundingBox.AddPoint(697, -379); boundingBox.AddPoint(697, -420); boundingBox.AddPoint(639, -420); boundingBox.AddPoint(639, -499); boundingBox.AddPoint(831.54, -692); boundingBox.AddPoint(716.15, -849); boundingBox.AddPoint(553, -849); boundingBox.AddPoint(494.25, -896); boundingBox.AddPoint(441.58, -896); boundingBox.AddPoint(386.33, -849); boundingBox.AddPoint(273.85, -849); boundingBox.AddPoint(160.38, -530); List <ColoBox> staticBoxes = new List <ColoBox>(); staticBoxes.Add(boundingBox); machine.boundingBox = boundingBox; BorderVerifier verifier = new BorderVerifier(staticBoxes, machine); return(verifier); }