macros:example:inhibitselectedfixtures_v2
Table of Contents
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 0Programmer.Editor.Fixtures.SetContextAttributeFromId(16)
makes sure we are dealing with the dimmer attribute in the next stepProgrammer.Editor.Fixtures.SetSelectedControlsFrozen(true)
freezes the dimmer of the currently selected fixturesProgrammer.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 stepProgrammer.Editor.Fixtures.SetSelectedControlsFrozen(false)
unfreezes the dimmer of the currently selected fixturesProgrammer.Editor.ClearAll(false, false)
clears the programmer
How to use it
- in order to inhibit fixtures select them and fire the first macro
- in order to uninhibit fixtures select them and fire the second macro
macros/example/inhibitselectedfixtures_v2.txt · Last modified: 2022/10/20 07:08 by icke_siegen
Discussion
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.