public RawNumberImageSource(ImageMaxValues maxValues, int x, int y, int z)
 {
     MaxValues = maxValues;
     _x        = x;
     _y        = y;
     _z        = z;
 }
 public Mcp4921PointBitMapper(bool analogZ, bool manualDataClock, bool invertBlanking, ImageMaxValues maxValues)
 {
     _analogZ         = analogZ;
     _manualDataClock = manualDataClock;
     _invertBlanking  = invertBlanking;
     _maxValues       = maxValues;
 }
        public SineWaveFrameProcessor(TimeSpan incrementInterval, float amplitude, float increment, float interval, ImageMaxValues maxValues)
        {
            _amplitude = amplitude;
            _interval  = interval;
            _increment = increment;
            _maxValues = maxValues;

            _timer = new Timer(IncrementAngle, null, incrementInterval, incrementInterval);
        }
 public PathImageSource(
     IPathSource pathSource,
     IPrimitiveConverter strokeConverter,
     ColorChannel strokeBrightness,
     IPrimitiveConverter fillConverter, Func <Path, IPrimitiveFillGenerator> fillGeneratorFactory,
     ColorChannel fillIntensity, ColorChannel fillBrightness,
     ImageMaxValues maxValues,
     bool forceNotStreaming)
 {
     _pathSource           = pathSource;
     _strokeConverter      = strokeConverter;
     _fillConverter        = fillConverter;
     _fillGeneratorFactory = fillGeneratorFactory;
     _strokeBrightness     = strokeBrightness;
     _fillIntensity        = fillIntensity;
     _fillBrightness       = fillBrightness;
     MaxValues             = maxValues;
     Streaming             = forceNotStreaming ? false : _pathSource.Streaming;
 }
Пример #5
0
        public RotateFrameProcessor(ImageMaxValues maxValues, float angle, Point center, float angleIncrement, int incrementInterval)
        {
            _center            = center;
            _angleIncrement    = angleIncrement;
            _incrementInterval = incrementInterval;
            _maxValues         = maxValues;
            _angle             = angle;

            if (_center == null)
            {
                _center = new Point()
                {
                    X = _maxValues.CenterX,
                    Y = _maxValues.CenterY,
                };
            }

            if (_incrementInterval > 0)
            {
                _timer = new Timer(IncrementAngle, null, _incrementInterval, _incrementInterval);
            }
        }
Пример #6
0
        public SliceGlitchFrameProcessor(
            ImageMaxValues maxValues,
            SliceGlitchFrameProcessorSettings settings,
            IEnumerable <SliceArea> areas = null,
            IEnumerable <Slice> slices    = null)
        {
            _maxValues = maxValues;
            _settings  = settings;

            _areas = areas ?? new[] { new SliceArea(_maxValues.MinY, _maxValues.MaxY) };
            if (slices == null)
            {
                _randomSlices = true;
            }
            else
            {
                _slices = slices.ToList();
            }

            if (_randomSlices)
            {
                _updateTask = Task.Factory.StartNew(UpdateSlices);
            }
        }
 public PointsImageSource(ImageMaxValues maxValues, int count)
 {
     MaxValues = maxValues;
     _count    = count;
 }
 public MeandreImageSource(ImageMaxValues maxValues)
 {
     MaxValues = maxValues;
 }
 public TestLineImageSource(ImageMaxValues maxValues, ImageMaxValues lineBounds, bool bothDirections)
 {
     MaxValues       = maxValues;
     _lineBounds     = lineBounds;
     _bothDirections = bothDirections;
 }
Пример #10
0
        public WaveFileImageSource(
            string filePath,
            WaveFileImageSourceChannelMode channelMode = WaveFileImageSourceChannelMode.LeftX_RightY
            )
        {
            _channelMode = channelMode;


            _filePath = Path.GetFullPath(filePath);

            if (!File.Exists(_filePath))
            {
                throw new FileNotFoundException($"File '{_filePath}' does not exists.");
            }

            if (Directory.Exists(_filePath))
            {
                throw new ArgumentException($"Path '{_filePath}' is a directory.");
            }


            var wav = new WavFile(_filePath);

            Console.WriteLine($"wave file '{_filePath}'");
            Console.WriteLine($"duration {wav.FileTimeLength}");
            Console.WriteLine($"length {wav.FullLength}");
            Console.WriteLine($"sample rate {wav.SampleRate}");
            Console.WriteLine($"channels {wav.ChannelsCount}:");

            _sampleRate = wav.SampleRate;

            if (wav.ChannelsCount == 1)
            {
                _channelY = _channelX = wav.GetChannel(0);
            }
            else
            {
                switch (_channelMode)
                {
                case WaveFileImageSourceChannelMode.LeftX_RightY:
                    _channelX = wav.GetChannel(0);
                    _channelY = wav.GetChannel(1);
                    break;

                case WaveFileImageSourceChannelMode.LeftY_RightX:
                    _channelX = wav.GetChannel(1);
                    _channelY = wav.GetChannel(0);
                    break;

                default:
                    throw new ArgumentException($"Unknown channel mode {channelMode}");
                }
            }


            MaxValues = new ImageMaxValues()
            {
                MaxRGB = 1,
                MinX   = short.MinValue,
                MinY   = short.MinValue,
                MinZ   = 0,

                MaxX = short.MaxValue,
                MaxY = short.MaxValue,
                MaxZ = 1
            };

            // foreach (var i in _channelX)
            // {
            //     Console.WriteLine(i);
            // }
        }
Пример #11
0
 public SolidRectangleImageSource(ImageMaxValues maxValues)
 {
     MaxValues = maxValues;
 }
 public GrayscaleFrameProcessor(ImageMaxValues maxValues, GrayscaleFrameProcessorMapMode mapMode, bool invertResult)
 {
     _maxValues    = maxValues;
     _mapMode      = mapMode;
     _invertResult = invertResult;
 }
 public SpruceImageSource(ImageMaxValues maxValues)
 {
     MaxValues = maxValues;
 }
 public GammaCorrectionFrameProcessor(IDictionary <GammaCorrectionFrameProcessorChannel, float> gammaMap, ImageMaxValues maxValues)
 {
     _gammaMap  = gammaMap;
     _maxValues = maxValues;
 }
Пример #15
0
 public RandomImageSource(ImageMaxValues maxValues)
 {
     MaxValues = maxValues;
 }
 public MirrorFrameProcessor(ImageMaxValues maxValues, MirrorFrameProcessorMode mode)
 {
     _maxValues = maxValues;
     _mode      = mode;
 }
Пример #17
0
 public ScaleMaxValuesFrameProcessor(ImageMaxValues maxValues, ImageMaxValues targetMaxValues)
 {
     _maxValues       = maxValues;
     _targetMaxValues = targetMaxValues;
 }