Example #1
0
        private int AddLine(XYZ startPoint, XYZ direction, PointDirections directions, float distance)
        {
            float deltaX    = 0.0f;
            int   totalRead = 0;

            while (deltaX < distance)
            {
                AddPoints(startPoint + direction * deltaX, directions);
                deltaX += s_delta;
            }

            return(totalRead);
        }
Example #2
0
        private void AddPoints(XYZ point, PointDirections directions)
        {
            // Two random items: number of points, and delta
            int    numberOfPoints  = 5;
            double transverseDelta = 0.1;

            if (m_randomize)
            {
                numberOfPoints  = 5 + m_random.Next(10);
                transverseDelta = m_random.NextDouble() * 0.1;
            }

            for (int i = 1; i < numberOfPoints; i++)
            {
                if ((directions & PointDirections.PlusX) == PointDirections.PlusX)
                {
                    AddModifiedPoint(point, XYZ.BasisX, transverseDelta, i);
                }

                if ((directions & PointDirections.MinusX) == PointDirections.MinusX)
                {
                    AddModifiedPoint(point, -XYZ.BasisX, transverseDelta, i);
                }

                if ((directions & PointDirections.PlusY) == PointDirections.PlusY)
                {
                    AddModifiedPoint(point, XYZ.BasisY, transverseDelta, i);
                }

                if ((directions & PointDirections.MinusY) == PointDirections.MinusY)
                {
                    AddModifiedPoint(point, -XYZ.BasisY, transverseDelta, i);
                }

                if ((directions & PointDirections.PlusZ) == PointDirections.PlusZ)
                {
                    AddModifiedPoint(point, XYZ.BasisZ, transverseDelta, i);
                }

                if ((directions & PointDirections.MinusZ) == PointDirections.MinusZ)
                {
                    AddModifiedPoint(point, -XYZ.BasisZ, transverseDelta, i);
                }
            }
        }
Example #3
0
        private void AddPoints(XYZ point, PointDirections directions)
        {
            // Two random items: number of points, and delta
            int numberOfPoints = 5;
            double transverseDelta = 0.1;
            if (m_randomize)
            {
                numberOfPoints = 5 + m_random.Next(10);
                transverseDelta = m_random.NextDouble() * 0.1;
            }

            for (int i = 1; i < numberOfPoints; i++)
            {
                if ((directions & PointDirections.PlusX) == PointDirections.PlusX)
                {
                    AddModifiedPoint(point, XYZ.BasisX, transverseDelta, i);
                }

                if ((directions & PointDirections.MinusX) == PointDirections.MinusX)
                {
                    AddModifiedPoint(point, -XYZ.BasisX, transverseDelta, i);
                }

                if ((directions & PointDirections.PlusY) == PointDirections.PlusY)
                {
                    AddModifiedPoint(point, XYZ.BasisY, transverseDelta, i);
                }

                if ((directions & PointDirections.MinusY) == PointDirections.MinusY)
                {
                    AddModifiedPoint(point, -XYZ.BasisY, transverseDelta, i);
                }

                if ((directions & PointDirections.PlusZ) == PointDirections.PlusZ)
                {
                    AddModifiedPoint(point, XYZ.BasisZ, transverseDelta, i);
                }

                if ((directions & PointDirections.MinusZ) == PointDirections.MinusZ)
                {
                    AddModifiedPoint(point, -XYZ.BasisZ, transverseDelta, i);
                }
            }
        }
Example #4
0
        private unsafe int AddLine(XYZ startPoint, XYZ direction, PointDirections directions, float distance)
        {
            float deltaX = 0.0f;
            int totalRead = 0;

            while (deltaX < distance)
            {
                AddPoints(startPoint + direction * deltaX, directions);
                deltaX += s_delta;
            }

            return totalRead;
        }