/// <summary>
        /// 从一固定点创建管道
        /// </summary>
        /// <param name="startPoint"></param>
        /// <returns>返回结果如上</returns>
        public Point3d?CreatePipeLineConnectedPipeLine(Point3d startPoint, out bool status)
        {
            PipeLine newPipeline = null;
            PipeJig  jig         = new PipeJig(startPoint);

            if (!jig.StartDraw(out status))
            {
                return(null);
            }
            newPipeline = new PipeLine((Point3d)jig.startPoint, jig.endPoint, false, this);
            return(this.PipeLineCrossTest(newPipeline));
        }
        /// <summary>
        /// 每一次创建管道的时候初始状态获取点的方式是从界面上选取一点
        /// 后面都是从上一次的尾点开始
        /// </summary>
        /// <returns>空或者尾点坐标,空意味着管道创建结束</returns>
        public Point3d?CreatePipeLineWithoutInitialPoint(out bool status)
        {
            status = false;
            PipeLine newPipeLine = null;
            PipeJig  jig         = new PipeJig(null);

            if (!jig.StartDraw(out status))
            {
                return(null);
            }
            newPipeLine = new PipeLine((Point3d)jig.startPoint, jig.endPoint, false, this);
            //相交测试
            //和简单接口测试相交
            return(this.PipeLineCrossTest(newPipeLine));
        }