VixenModules.SequenceType.Vixen2x.Vixen2xSequenceImporterForm.GeneratePulseEffect C# (CSharp) Метод

GeneratePulseEffect() приватный Метод

private GeneratePulseEffect ( int eventStartValue, int eventEndValue, int startEvent, int endEvent, ElementNode targetNode ) : EffectNode
eventStartValue int
eventEndValue int
startEvent int
endEvent int
targetNode ElementNode
Результат EffectNode
        private EffectNode GeneratePulseEffect(int eventStartValue, int eventEndValue, int startEvent, int endEvent, ElementNode targetNode)
        {
            IEffectModuleInstance pulseInstance = ApplicationServices.Get<IEffectModuleInstance>(Guid.Parse("cbd76d3b-c924-40ff-bad6-d1437b3dbdc0")); // Clone() Doesn't work! :(
            pulseInstance.TargetNodes = new ElementNode[]{targetNode};
            pulseInstance.TimeSpan = TimeSpan.FromMilliseconds(parsedV2Sequence.EventPeriod * (endEvent - startEvent + 1));

            EffectNode effectNode = new EffectNode(pulseInstance, TimeSpan.FromMilliseconds(parsedV2Sequence.EventPeriod * startEvent));
            effectNode.Effect.ParameterValues = new Object[] {
                new Curve(new PointPairList(new double[] { startX, endX }, new double[] { getY(eventStartValue), getY(eventEndValue) })),
                new ColorGradient()
            };

            return effectNode;
        }