public pnt3d getPickPoint(pnt3d origin)
        {
            double[] P = new double[3] {
                origin.getX(), origin.getY(), 0
            };
            double[] tempPnt = cadApp.ActiveDocument.Utility.GetPoint(P, "_select new Origin Point");
            pnt3d    pnt     = new pnt3d(tempPnt[0], tempPnt[1], 0);

            return(pnt);
        }
        public void translateSegmentList(pnt3d selectedPnt)
        {
            int test1 = this.translatedCorrectedSegments.Count;

            Console.WriteLine("nothing");

            double ox = translatedCorrectedSegments[0].getGStart().getPnt3d().getX();
            double oy = translatedCorrectedSegments[0].getGStart().getPnt3d().getY();

            double tx = selectedPnt.getX() - ox;
            double ty = selectedPnt.getY() - oy;

            int i = 0;

            for (i = 0; i < translatedCorrectedSegments.Count; ++i)
            {
                double currentStartX   = translatedCorrectedSegments[i].getGStart().getPnt3d().getX();
                double currentStartY   = translatedCorrectedSegments[i].getGStart().getPnt3d().getY();
                double newStartx       = currentStartX + tx;
                double newStarty       = currentStartY + ty;
                pnt3d  updatedStartPnt = new pnt3d(newStartx, newStarty, 0);
                translatedCorrectedSegments[i].updateStartPnt(updatedStartPnt);
            }

            double currentEndX   = translatedCorrectedSegments[i - 1].getGEnd().getPnt3d().getX();
            double currentEndY   = translatedCorrectedSegments[i - 1].getGEnd().getPnt3d().getY();
            double newEndx       = currentEndX + tx;
            double newEndy       = currentEndY + ty;
            pnt3d  updatedEndPnt = new pnt3d(newEndx, newEndy, 0);

            translatedCorrectedSegments[i - 1].updateEndPnt(updatedEndPnt);

            int test = this.translatedCorrectedSegments.Count;

            Console.WriteLine("nothing");
        }