private bool GetAlignmentParameters() { var doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument; var ed = doc.Editor; Matrix3d ucs2wcs = AcadGraphics.UcsToWcs; Matrix3d wcs2ucs = AcadGraphics.WcsToUcs; // Alignment type Alignment = Bridge.PickAlignment(); if (Alignment == Bridge.AlignmentType.None) { return(false); } // Alignment line PromptEntityOptions entityOpts = new PromptEntityOptions("\nEksen: "); entityOpts.SetRejectMessage("\nSelect a curve."); entityOpts.AddAllowedClass(typeof(Curve), false); PromptEntityResult entityRes = ed.GetEntity(entityOpts); if (entityRes.Status == PromptStatus.OK) { CenterlineId = entityRes.ObjectId; } else { return(false); } // Start point PromptPointResult ptRes = ed.GetPoint("\nBaşlangıç noktası: "); if (ptRes.Status == PromptStatus.OK) { StartPoint = ptRes.Value.TransformBy(ucs2wcs); } else { return(false); } // Start CH AcadEditor.PromptChainageOptions chOpts = new AcadEditor.PromptChainageOptions("\nBaşlangıç kilometresi: "); chOpts.DefaultValue = AcadText.ChainageToString(StartCH, ChPrecision); chOpts.UseDefaultValue = true; AcadEditor.PromptChainageResult chRes = ed.GetChainage(chOpts); if (chRes.Status == PromptStatus.OK) { StartCH = chRes.DoubleResult; } else if (chRes.Status == PromptStatus.None) { // Use default } else if (chRes.Status != PromptStatus.OK) { return(false); } return(true); }