/// <summary> /// /// </summary> /// <param name="contextGeometries"></param> /// <param name="distanceCriteria"></param> /// <returns></returns> public Autodesk.DesignScript.Geometry.Geometry[] SelectWithinDistance(Geometry[] contextGeometries, double distanceCriteria) { if (contextGeometries == null) { throw new System.ArgumentNullException("contextGeometries"); } else if (contextGeometries.Length == 0) { throw new System.ArgumentException(string.Format(Properties.Resources.IsZero, "number of context geometries"), "contextGeometries"); } var absDist = Math.Abs(distanceCriteria); List <Geometry> selectedGeoms = new List <Geometry>(); foreach (var geom in contextGeometries) { double distance = geom.GeomEntity.DistanceTo(PointEntity); if (GeometryExtension.LessThanOrEquals(distance, absDist)) { selectedGeoms.Add(geom); } } return(selectedGeoms.ToArray()); }