Skip to content

Tutorial 05

Selection and Visibility

Goal

This tutorial explains the two most repeated hfVisualizer tasks:

  • what to select
  • what to show or hide

In the current remote-control design, selection and visibility are closely related but not the same thing.

1. Selection defines the working set

Selection defines what later commands will act on.

Typical examples:

  • node-delete __selected__
  • element-divide parametric --source __selected__
  • nset PICKED --content "__selected__"

Basic syntax:

hfVisualizer --remote select <kind> <items|none> [--mode <current|union|intersection|xor|cur-diff-prev|prev-diff-cur>]

2. Common selection kinds

The most common kinds are:

  • node
  • element
  • surface
  • edge
  • constraint
  • load
  • sensor

Examples:

hfVisualizer --remote select node 1:20
hfVisualizer --remote select element 101:140 --mode union
hfVisualizer --remote select edge "17-42-23,31-32"
hfVisualizer --remote select surface "2@1:40"

Some examples keep quotes for readability. In PowerShell or cmd.exe, quotes only group one command-line argument, so tokens such as 1:20, 1496-1494,1817-1496, and 2@1:40 behave the same with or without quotes when they contain no spaces.

3. Reuse the current set with __selected__

When a later command should use the current selection, __selected__ is the key token.

hfVisualizer --remote select node 1:10
hfVisualizer --remote nset PICKED --content "__selected__"
hfVisualizer --remote node-delete __selected__

This pattern also fits well when the GUI creates the selection first and remote control consumes it next.

4. Visibility is render-view specific

Visibility does not modify the model itself. It only changes what is shown inside a given render view.

Basic syntax:

hfVisualizer --remote visibility <kind> <items|all> <on|off>
hfVisualizer --remote --view-id r1 visibility <kind> <items|all> <on|off>

Key rules:

  • the default target is activeRenderView
  • --view-id lets you target another render view directly
  • this is not a global all-view switch; it behaves like the ModelTree checkboxes

5. Common visibility kinds

Common kinds:

  • node
  • element
  • node-set
  • element-set
  • constraint
  • load
  • surface
  • construction
  • sensor

Examples:

hfVisualizer --remote visibility node 1:10 off
hfVisualizer --remote visibility element all on
hfVisualizer --remote visibility node-set TOP_NODES off
hfVisualizer --remote --view-id r1 visibility surface S1,S2 on

This sequence is reliable:

  1. build the working set with select
  2. clean up the scene with visibility if needed
  3. apply the editing command
  4. clear the selection afterwards with select none

Example:

hfVisualizer --remote select element 201:240
hfVisualizer --remote visibility element 201:240 off
hfVisualizer --remote select none

7. Important distinction

  • Selection changes the current working set
  • Visibility changes the display state in the current render view

They often appear together, but they do not store the same thing.

Next step