/// <summary> /// Constructor /// </summary> /// <param name="zoneId"></param> /// <param name="zonePerimeter"></param> /// <param name="stayOutside"></param> /// <param name="speedCommand"></param> /// <param name="parkingSpotPath"></param> /// <param name="spotLeftBound"></param> /// <param name="spotRightBound"></param> /// <param name="spotId"></param> /// <param name="extraDistance"></param> public ZoneParkingBehavior(ArbiterZoneId zoneId, Polygon zonePerimeter, Polygon[] stayOutside, ScalarSpeedCommand speedCommand, LinePath parkingSpotPath, LinePath spotLeftBound, LinePath spotRightBound, ArbiterParkingSpotId spotId, double extraDistance) : base(zoneId, zonePerimeter, stayOutside, speedCommand) { this.ParkingSpotPath = parkingSpotPath; this.SpotLeftBound = spotLeftBound; this.SpotRightBound = spotRightBound; this.ParkingSpotId = spotId; this.ExtraDistance = extraDistance; }
/// <summary> /// Constructor /// </summary> /// <param name="zoneId"></param> /// <param name="zonePerimeter"></param> /// <param name="stayOutside"></param> /// <param name="speedCommand"></param> /// <param name="parkingSpotPath"></param> /// <param name="spotLeftBound"></param> /// <param name="spotRightBound"></param> /// <param name="spotId"></param> /// <param name="extraDistance"></param> /// <param name="endingPolygon"></param> /// <param name="orientations"></param> public ZoneParkingPullOutBehavior(ArbiterZoneId zoneId, Polygon zonePerimeter, Polygon[] stayOutside, ScalarSpeedCommand speedCommand, LinePath parkingSpotPath, LinePath spotLeftBound, LinePath spotRightBound, ArbiterParkingSpotId spotId, LinePath reversePath, LinePath finalLeftBound, LinePath finalRightBound) : base(zoneId, zonePerimeter, stayOutside, speedCommand, parkingSpotPath, spotLeftBound, spotRightBound, spotId, 0.0) { this.RecommendedPullOutPath = reversePath; this.EndingLeftBound = finalLeftBound; this.EndingRightBound = finalRightBound; }