User Tools

Site Tools


macros:example:setfancurve

Example

Fan - Curve

by: Gregory Haynes, January 2019
published: http://forum.avolites.com/viewtopic.php?f=20&t=5962
description: Macros to set the fan curve. May be put in buttons for easy access. Buttons will show the currently selected curve.
remarks:

functions

affected properties

specials

Code

FanCurve.xml
<?xml version="1.0" encoding="utf-8"?>
<avolites.macros xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="Avolites.Menus.xsd">
  <!-- Fan curve macros. Gregory Haynes 02/01/2019 -->
  <macro id="Avolites.Macros.FanCurve.Line" name="Fan Curve Line">
    <description>Set the current fan curve to Line.</description>
    <active binding="{propertyLink id='Programmer.Editor.Fixtures.Fan.SelectedFanCurveId' 
      converter='Math.EqualityConverter' 
      converterParameter='Line'}"/>
    <sequence>
      <step>Programmer.Editor.Fixtures.Fan.SelectCurve("Line")</step>
    </sequence>
  </macro>
 
  <macro id="Avolites.Macros.FanCurve.Mirror" name="Fan Curve Mirror">
    <description>Set the current fan curve to Mirror.</description>
    <active binding="{propertyLink id='Programmer.Editor.Fixtures.Fan.SelectedFanCurveId' 
      converter='Math.EqualityConverter' 
      converterParameter='Mirror'}"/>
    <sequence>
      <step>Programmer.Editor.Fixtures.Fan.SelectCurve("Mirror")</step>
    </sequence>
  </macro>
 
  <macro id="Avolites.Macros.FanCurve.Wings" name="Fan Curve Wings">
    <description>Set the current fan curve to Wings.</description>
    <active binding="{propertyLink id='Programmer.Editor.Fixtures.Fan.SelectedFanCurveId' 
      converter='Math.EqualityConverter' 
      converterParameter='Wings'}"/>
    <sequence>
      <step>Programmer.Editor.Fixtures.Fan.SelectCurve("Wings")</step>
    </sequence>
  </macro>
 
  <macro id="Avolites.Macros.FanCurve.PullMiddle" name="Fan Curve Pull Middle">
    <description>Set the current fan curve to Pull Middle.</description>
    <active binding="{propertyLink id='Programmer.Editor.Fixtures.Fan.SelectedFanCurveId' 
      converter='Math.EqualityConverter' 
      converterParameter='Pull Middle'}"/>
    <sequence>
      <step>Programmer.Editor.Fixtures.Fan.SelectCurve("Pull Middle")</step>
    </sequence>
  </macro>
 
  <macro id="Avolites.Macros.FanCurve.PullEnds" name="Fan Curve Pull Ends">
    <description>Set the current fan curve to Pull Ends.</description>
    <active binding="{propertyLink id='Programmer.Editor.Fixtures.Fan.SelectedFanCurveId' 
      converter='Math.EqualityConverter' 
      converterParameter='Pull Ends'}"/>
    <sequence>
      <step>Programmer.Editor.Fixtures.Fan.SelectCurve("Pull Ends")</step>
    </sequence>
  </macro>
 
  <macro id="Avolites.Macros.FanCurve.PullEnd" name="Fan Curve Pull End">
    <description>Set the current fan curve to Pull End.</description>
    <active binding="{propertyLink id='Programmer.Editor.Fixtures.Fan.SelectedFanCurveId' 
      converter='Math.EqualityConverter' 
      converterParameter='Pull End'}"/>
    <sequence>
      <step>Programmer.Editor.Fixtures.Fan.SelectCurve("Pull End")</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 macros simply set the fan curve to a specific value. Each macro can be put on a button. Using Active Binding the button is highlighted if the curve is currently selected.

How to use it

You could leave a comment if you were logged in.
macros/example/setfancurve.txt · Last modified: 2019/05/05 13:52 by icke_siegen