public void BuildHeight()
        {
            Func <string> GetAnyIniqueBlockName = () => DateTime.Now.Ticks.ToString();

            var document = Autodesk.AutoCAD.ApplicationServices
                           .Application.DocumentManager.MdiActiveDocument;

            AcadTools.CreateLayersForPluginTool(document);
            AcadTools.ChangeCurrentLayers();

            while (AcadTools.CreateHeightPointBlock(document))
            {
            }
            ;

            AcadTools.ChangeCurrentLayers();
        }
        private void BuildRoadPoint(Func <Document, int, bool> CreatePointBlockDialog)
        {
            var document = Autodesk.AutoCAD.ApplicationServices
                           .Application.DocumentManager.MdiActiveDocument;

            int pointNumber = 0;

            if (!AcadTools.GetPointNumberDialog(out pointNumber))
            {
                return;
            }

            AcadTools.CreateLayersForPluginTool(document);
            AcadTools.ChangeCurrentLayers();

            while (CreatePointBlockDialog(document, pointNumber))
            {
                pointNumber++;
            }
            ;

            AcadTools.ChangeCurrentLayers();
        }