Beispiel #1
0
        public List <Vector3> GetMainPoints(bool pAddDebugLine)
        {
            List <Vector3> points = new List <Vector3>();

            points.Add(ballTop);

            if (pAddDebugLine)
            {
                points.AddRange(CUtils.GetPointLine(ballTop, Vector3.UnitZ));
            }

            if (pAddDebugLine)
            {
                points.AddRange(CUtils.GetPointLine(furthestPoint2D, -Vector3.UnitZ));
            }


            if (ballBot != null)
            {
                points.Add((Vector3)ballBot);
                if (pAddDebugLine)
                {
                    points.AddRange(CUtils.GetPointLine((Vector3)ballBot, -Vector3.UnitZ));
                }
            }

            if (IsValidMainPoint(furthestPointPlusX))
            {
                points.Add(furthestPointPlusX);
                if (pAddDebugLine)
                {
                    points.AddRange(CUtils.GetPointLine(furthestPointPlusX, Vector3.UnitX));
                }
            }
            if (IsValidMainPoint(furthestPointMinusX))
            {
                points.Add(furthestPointMinusX);
                if (pAddDebugLine)
                {
                    points.AddRange(CUtils.GetPointLine(furthestPointMinusX, -Vector3.UnitX));
                }
            }

            if (IsValidMainPoint(furthestPointPlusY))
            {
                points.Add(furthestPointPlusY);
                if (pAddDebugLine)
                {
                    points.AddRange(CUtils.GetPointLine(furthestPointPlusY, Vector3.UnitY));
                }
            }
            if (IsValidMainPoint(furthestPointMinusY))
            {
                points.Add(furthestPointMinusY);
                if (pAddDebugLine)
                {
                    points.AddRange(CUtils.GetPointLine(furthestPointMinusY, -Vector3.UnitY));
                }
            }
            return(points);
        }