Beispiel #1
0
        /***************************************************/
        /**** Public Methods                            ****/
        /***************************************************/
        public static TheatronPlan NoCornersPlan(StadiaParameters parameters)
        {
            TheatronPlan plan = new TheatronPlan();

            NoCornerPlanSetUp(ref plan, parameters.PitchLength, parameters.PitchWidth, parameters.EndBound, parameters.StructBayWidth, parameters.SideBound);
            return(plan);
        }
Beispiel #2
0
        public static TheatronPlan PlanGeometry(StadiaParameters parameters)
        {
            //assuming its a full stadium
            TheatronPlan planGeometry = new TheatronPlan();

            switch (parameters.TypeOfBowl)
            {
            case StadiaType.Circular:
                planGeometry = CircularPlan(parameters);
                break;

            case StadiaType.NoCorners:
                planGeometry = NoCornersPlan(parameters);
                break;

            case StadiaType.Orthogonal:
                planGeometry = OrthogonalPlan(parameters);
                break;

            case StadiaType.EightArc:
                planGeometry = EightArcPlan(parameters);
                break;

            case StadiaType.FourArc:
                planGeometry = FourArcPlan(parameters);
                break;
            }
            planGeometry.ActivityArea = parameters.ActivityArea;
            planGeometry.FocalCurve   = planGeometry.ActivityArea.PlayingArea;
            setPlanes(ref planGeometry);

            return(planGeometry);
        }
Beispiel #3
0
        /***************************************************/
        /**** Public Methods                            ****/
        /***************************************************/
        public static TheatronPlan CircularPlan(StadiaParameters parameters)
        {
            TheatronPlan plan = new TheatronPlan();

            CircularPlaneSetUp(ref plan, parameters.TheatronRadius, parameters.StructBayWidth);
            return(plan);
        }
Beispiel #4
0
        /***************************************************/
        /**** Public Methods                            ****/
        /***************************************************/
        public static TheatronPlan OrthogonalPlan(StadiaParameters parameters)
        {
            TheatronPlan plan = new TheatronPlan();

            orthoPlanSetUp(ref plan, parameters.PitchLength, parameters.PitchWidth, parameters.EndBound, parameters.SideBound,
                           parameters.CornerRadius, parameters.StructBayWidth, parameters.NumCornerBays);
            return(plan);
        }
        /***************************************************/
        /**** Public Methods                            ****/
        /***************************************************/
        public static TheatronPlan EightArcPlan(StadiaParameters parameters)
        {
            TheatronPlan plan = new TheatronPlan();

            RadialPlanSetUp(ref plan, parameters.PitchLength, parameters.PitchWidth, parameters.SideBound, parameters.SideRadius,
                            parameters.EndBound, parameters.EndRadius, parameters.CornerRadius, parameters.NumCornerBays, parameters.StructBayWidth,
                            parameters.CornerFraction);
            return(plan);
        }
Beispiel #6
0
        /***************************************************/
        /**** Public Methods                            ****/
        /***************************************************/
        public static TheatronPlan NoCornersPlan(StadiaParameters parameters)
        {
            if (parameters == null)
            {
                BH.Engine.Reflection.Compute.RecordError("Cannot create a no corners plan from a null set of stadia parameters.");
                return(null);
            }

            TheatronPlan plan = new TheatronPlan();

            NoCornerPlanSetUp(ref plan, parameters.PitchLength, parameters.PitchWidth, parameters.EndBound, parameters.StructBayWidth, parameters.SideBound);
            return(plan);
        }
Beispiel #7
0
        /***************************************************/
        /**** Public Methods                            ****/
        /***************************************************/
        public static TheatronPlan CircularPlan(StadiaParameters parameters)
        {
            if (parameters == null)
            {
                BH.Engine.Reflection.Compute.RecordError("Cannot create a theatron plan from a null set of stadia parameters.");
                return(null);
            }

            TheatronPlan plan = new TheatronPlan();

            CircularPlaneSetUp(ref plan, parameters.TheatronRadius, parameters.StructBayWidth);
            return(plan);
        }
Beispiel #8
0
        /***************************************************/
        /**** Public Methods                            ****/
        /***************************************************/
        public static TheatronPlan EightArcPlan(StadiaParameters parameters)
        {
            if (parameters == null)
            {
                BH.Engine.Reflection.Compute.RecordError("Cannot create an eight arc plan from a null set of stadia parameters.");
                return(null);
            }

            TheatronPlan plan = new TheatronPlan();

            RadialPlanSetUp(ref plan, parameters.PitchLength, parameters.PitchWidth, parameters.SideBound, parameters.SideRadius,
                            parameters.EndBound, parameters.EndRadius, parameters.CornerRadius, parameters.NumCornerBays, parameters.StructBayWidth,
                            parameters.CornerFraction);
            return(plan);
        }
Beispiel #9
0
        public static TheatronPlan PlanGeometry(StadiaParameters parameters)
        {
            if (parameters == null)
            {
                BH.Engine.Reflection.Compute.RecordError("Cannot create a theatron plan from a null set of stadia parameters.");
                return(null);
            }

            //assuming its a full stadium
            TheatronPlan planGeometry = new TheatronPlan();

            switch (parameters.TypeOfBowl)
            {
            case StadiaType.Circular:
                planGeometry = CircularPlan(parameters);
                break;

            case StadiaType.NoCorners:
                planGeometry = NoCornersPlan(parameters);
                break;

            case StadiaType.Orthogonal:
                planGeometry = OrthogonalPlan(parameters);
                break;

            case StadiaType.EightArc:
                planGeometry = EightArcPlan(parameters);
                break;

            case StadiaType.FourArc:
                planGeometry = FourArcPlan(parameters);
                break;
            }
            planGeometry.ActivityArea = parameters.ActivityArea;
            planGeometry.FocalCurve   = planGeometry.ActivityArea.PlayingArea;
            SetPlanes(ref planGeometry);

            return(planGeometry);
        }
Beispiel #10
0
        public static TheatronGeometry TheatronGeometry(TheatronPlan planFull, TheatronFullProfile profile, StadiaParameters sParams, List <ProfileParameters> pParams)
        {
            var theatron = CreateGeometry(planFull, profile, pParams, sParams.TypeOfBowl);

            CopyGeneratorBlocks(ref theatron, planFull, sParams.TypeOfBowl);

            return(theatron);
        }
Beispiel #11
0
        public static TheatronGeometry TheatronGeometry(TheatronPlan planFull, TheatronFullProfile profile, StadiaParameters sParams, List <ProfileParameters> pParams)
        {
            if (planFull == null)
            {
                BH.Engine.Reflection.Compute.RecordError("Cannot create theatron geometry will a null theatron plan.");
                return(null);
            }

            if (profile == null)
            {
                BH.Engine.Reflection.Compute.RecordError("Cannot create theatron geometry will a null profile.");
                return(null);
            }

            if (sParams == null)
            {
                BH.Engine.Reflection.Compute.RecordError("Cannot create theatron geometry from a null set of stadia parameters.");
                return(null);
            }

            var theatron = CreateGeometry(planFull, profile, pParams, sParams.TypeOfBowl);

            CopyGeneratorBlocks(ref theatron, planFull, sParams.TypeOfBowl);

            return(theatron);
        }
Beispiel #12
0
 /***************************************************/
 /**** Public Methods                            ****/
 /***************************************************/
 public static TheatronPlan FourArcPlan(StadiaParameters parameters)
 {
     throw new NotImplementedException();
 }