ObjectTableFindByLayer Method (String) |
Namespace: Rhino.DocObjects.Tables
using Rhino.Commands; partial class Examples { public static Rhino.Commands.Result SelLayer(Rhino.RhinoDoc doc) { // Prompt for a layer name string layername = doc.Layers.CurrentLayer.Name; Result rc = Rhino.Input.RhinoGet.GetString("Name of layer to select objects", true, ref layername); if (rc != Rhino.Commands.Result.Success) return rc; // Get all of the objects on the layer. If layername is bogus, you will // just get an empty list back Rhino.DocObjects.RhinoObject[] rhobjs = doc.Objects.FindByLayer(layername); if (rhobjs == null || rhobjs.Length < 1) return Rhino.Commands.Result.Cancel; for (int i = 0; i < rhobjs.Length; i++) rhobjs[i].Select(true); doc.Views.Redraw(); return Rhino.Commands.Result.Success; } }
import Rhino import scriptcontext import System.Guid, System.Drawing.Color def SelLayer(): # Prompt for a layer name layername = scriptcontext.doc.Layers.CurrentLayer.Name rc, layername = Rhino.Input.RhinoGet.GetString("Name of layer to select objects", True, layername) if rc!=Rhino.Commands.Result.Success: return rc # Get all of the objects on the layer. If layername is bogus, you will # just get an empty list back rhobjs = scriptcontext.doc.Objects.FindByLayer(layername) if not rhobjs: Rhino.Commands.Result.Cancel for obj in rhobjs: obj.Select(True) scriptcontext.doc.Views.Redraw() return Rhino.Commands.Result.Success if __name__=="__main__": SelLayer()