public static List <Point3d> GetGeometryNodes(Document document, double buffer) { var polylineIds = CadUtils.FindAllPolylines(document); var nears = GetNearGeometries(polylineIds.ToList(), buffer); var result = GetPolylineNodingResult(document.Database, nears, true); return(result.NodePoints); }
public static Dictionary <ObjectId, IList <ObjectId> > GetNearGeometries(double buffer = 0.5) { // 避免误差太小(现在是1e-10),现在变小一点 // 过滤选择polyline var polylineIds = CadUtils.FindAllPolylines(Application.DocumentManager.MdiActiveDocument); // 计算相邻多边形,以0.5作为buffer return(NtsUtils.GetNearGeometries(polylineIds.ToList(), buffer)); }