# Nested linked block selection

**URL:** <https://discourse.mcneel.com/t/nested-linked-block-selection/218284>\
**Category:** Scripting\
**Tags:** windows, python\
**Created:** [April 22, 2026, 3:26pm UTC](https://discourse.mcneel.com/t/nested-linked-block-selection/218284 "2026-04-22T15:26:31Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![BE\_Tricat](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/be_tricat/32/647546_2.png) [@BE\_Tricat](https://discourse.mcneel.com/u/BE_Tricat)\
**Post date:** [April 22, 2026, 3:26pm UTC](https://discourse.mcneel.com/t/nested-linked-block-selection/218284/1 "2026-04-22T15:26:31Z")

</div>

Hi,

I am having trouble with sub nested block selection : when using sub object selection I can select any child block, but when running a script asking to pick select blocks, only the parent block can be selected.

Is there a way to keep sub object selection effective while running a script ?

---

<div class="post-metadata">

**Author:** ![Measure](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/measure/32/651816_2.png) [@Measure](https://discourse.mcneel.com/u/Measure)\
**Post date:** [April 22, 2026, 4:01pm UTC](https://discourse.mcneel.com/t/nested-linked-block-selection/218284/2 "2026-04-22T16:01:32Z")

</div>

`rs.GetObject()` allows the `subobjects=True` parameter, but it looks like `rs.GetObjects()` (plural) does not have that parameter. If you need to select multiple sub-objects, you may need to use the `Rhino.Input.Custom` api ([https://developer.rhino3d.com/api/rhinocommon/rhino.input.custom](https://developer.rhino3d.com/api/rhinocommon/rhino.input.custom)).

---

<div class="post-metadata">

**Author:** ![Measure](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/measure/32/651816_2.png) [@Measure](https://discourse.mcneel.com/u/Measure)\
**Post date:** [April 22, 2026, 4:22pm UTC](https://discourse.mcneel.com/t/nested-linked-block-selection/218284/3 "2026-04-22T16:22:26Z")

</div>

```auto
import Rhino

def select_multiple_subobjects():
	go = Rhino.Input.Custom.GetObject()
	go.SubObjectSelect = True
	go.SetCommandPrompt("Select subobjects")
	get_result = go.GetMultiple(minimumNumber=0, maximumNumber=0)
	if get_result == Rhino.Input.GetResult.Object:
		selected_objects = go.Objects()
		return selected_objects
	if go.CommandResult() != Rhino.Commands.Result.Success:
		print(go.CommandResult())
	return

```

---

<div class="post-metadata">

**Author:** ![BE\_Tricat](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/be_tricat/32/647546_2.png) [@BE\_Tricat](https://discourse.mcneel.com/u/BE_Tricat)\
**Post date:** [April 22, 2026, 7:30pm UTC](https://discourse.mcneel.com/t/nested-linked-block-selection/218284/4 "2026-04-22T19:30:54Z")

</div>

Thanks for your quick response.

Your example led me to the solution, I tried SubObjectSelect but it didn’t work because of the following line :

_go.GeometryFilter = Rhino.DocObjects.ObjectType.InstanceReference_

Once removed it work as espected. I link the code with the commented line as example.

[blockPickerTest.py](https://discourse.mcneel.com/uploads/short-url/v51g3xbWqbmpLJ6THAOO0PI2A0C.py) (1.9 KB)
