User Tools

Site Tools


macros:example:inhibitselectedfixtures_v2

Example

Inhibit selected fixtures dimmer

by: Sebastian Beutel, with help by Gregory Haynes
published: here, October 2022
description: inhibits selected fixtures: sets them @0% and freezes
remarks: idea by John Richardson, see https://www.facebook.com/groups/Avolites/posts/2641102656021952/

See Inhibit selected fixtures - that freezes the entire fixtures while here we freeze only the dimmer attribute.

The inhibit is just a quick way of dousing a lamp or lamps and then reinstating them without affecting anything in the programmer or within any cues. So I may be running an effect on some lamps and I just need to kill it for a second and then turn it back on without messing about with the programmer or cues.

The 'without messing with the programmer' part isn't possible: you need to select the fixtures which you want to inhibit before calling the macro – and selecting fixtures brings them into the programmer. There is no way to avoid this.

functions

Code

InhibitSelectedFixtures_v2.xml
<?xml version="1.0" encoding="utf-8" ?>
 
<!-- Macros to mimic an inhibit function: fixtures are set to 0% and then frozen -->
<!-- idea by John Richardson -->
<!-- Sebastian Beutel, October 2022 -->
<!-- https://www.facebook.com/groups/Avolites/posts/2641102656021952/ -->
 
<avolites.macros>
 
  <macro id="Wiki.Macros.InhibitSelectedFixturesDimmer" name="Inhibit Selected Fixtures Dimmer">
    <description>Inhibit On.</description>
    <sequence>
      <step>Programmer.Editor.Fixtures.IncrementDimmer(-10000, 1.0, true)</step>
      <step>Programmer.Editor.Fixtures.SetContextAttributeFromId(16)</step>
      <step>Programmer.Editor.Fixtures.SetSelectedControlsFrozen(true)</step>
      <step>Programmer.Editor.ClearAll(false, false)</step>
    </sequence>
  </macro>
 
  <macro id="Avolites.Macros.UninhibitSelectedFixturesDimmer" name="Uninhibit Selected Fixtures Dimmer">
    <description>Inhibit Off</description>
    <sequence>
      <step>Programmer.Editor.Fixtures.SetContextAttributeFromId(16)</step>
      <step>Programmer.Editor.Fixtures.SetSelectedControlsFrozen(false)</step>
      <step>Programmer.Editor.ClearAll(false, false)</step>
    </sequence>
  </macro>
 
</avolites.macros>

Explanation

This explains the functional steps within the sequence. For all the other XML details please refer to Formats and syntax

The first macro Inhibit Selected Fixtures Dimmer sets the currently selected fixtures' dimmer at 0% and freezes them:

  • Programmer.Editor.Fixtures.IncrementDimmer(-10000, 1.0, true) sets the dimmer at 0
  • Programmer.Editor.Fixtures.SetContextAttributeFromId(16) makes sure we are dealing with the dimmer attribute in the next step
  • Programmer.Editor.Fixtures.SetSelectedControlsFrozen(true) freezes the dimmer of the currently selected fixtures
  • Programmer.Editor.ClearAll(false, false) clears the programmer

The second macro Uninhibit Selected Fixtures Dimmer unfreezes the currently selected fixtures:

  • Programmer.Editor.Fixtures.SetContextAttributeFromId(16) makes sure we are dealing with the dimmer attribute in the next step
  • Programmer.Editor.Fixtures.SetSelectedControlsFrozen(false) unfreezes the dimmer of the currently selected fixtures
  • Programmer.Editor.ClearAll(false, false) clears the programmer

How to use it

  1. in order to inhibit fixtures select them and fire the first macro
  2. in order to uninhibit fixtures select them and fire the second macro

Discussion

lightingsystemsuk, 2023/02/28 12:25

Hi Sebastian

Could this be another work around, witch a Macro that achieved the following:

You manually select a fixture and run the macro

Console goes into 'Blind' mode

Automatically puts fixture/fixtures in a group and selects it

Then records group to a handle (Out of the way, say page 99) making a sub group (Scale master)

Sets this scale master to 0%

Uninhibit does the reverse:

Puts scale master @100 and then deletes the group.

You could leave a comment if you were logged in.
macros/example/inhibitselectedfixtures_v2.txt · Last modified: 2022/10/20 07:08 by icke_siegen

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki