Exemple #1
0
        private void DrawSample(Graphics g, Size clientArea, CalibratedInkSample sample)
        {
            CalibratedInkSample lastSample;

            if (_Ink.Count == 0)  //no previous ink samples
            {
                lastSample = new CalibratedInkSample(0, 0, 0, -1);
            }
            else
            {
                lastSample = _Ink[_Ink.Count - 1];
            }

            RawInkSample raw     = InkCalibration.Current.CalibratedToRaw(g, sample, clientArea); //the current raw sample
            RawInkSample lastRaw = (lastSample.IsInvalid()
                                    ? raw : InkCalibration.Current.CalibratedToRaw(g, lastSample, clientArea));

            _InkPen.Draw(
                g,
                DrawPressureMode,
                lastSample,
                sample,
                lastRaw,
                raw);

            _Ink.Add(sample);
        }
        protected override CalibratedInkSample PipelinedCalibratedToRawConversion(Graphics g, CalibratedInkSample sample, Size clientArea)
        {
            sample = base.PipelinedCalibratedToRawConversion(g, sample, clientArea);

            Point areaVector = new Point(clientArea.Width, clientArea.Height);
            InkRenderer.PixelToInkSpace(g, ref areaVector);

            sample.X += areaVector.X >> 1;
            sample.Y += areaVector.Y >> 1;

            return sample;
        }
        /// <summary>
        /// Converts a CalibratedInkSample to a RawInkSample.
        /// </summary>
        /// <param name="g">The capture- or display- surface graphics object.</param>
        /// <param name="sample">The calibrated sample to convert.</param>
        /// <param name="clientArea">The capture- or display- surface size in pixels.</param>
        /// <returns>The RawInkSample.</returns>
        public RawInkSample CalibratedToRaw(Graphics g, CalibratedInkSample sample, Size clientArea)
        {
            //don't bother calibrating invalid samples
            if (sample.IsInvalid())
            {
                return(new RawInkSample(sample.Time, sample.X, sample.Y, sample.Pressure));
            }

            //next apply this instance's calibration
            sample = PipelinedCalibratedToRawConversion(g, sample, clientArea);

            //return a raw sample
            return(new RawInkSample(sample.Time, sample.X, sample.Y, sample.Pressure));
        }
Exemple #4
0
        protected void DrawSample(CalibratedInkSample cal)
        {
            if (!DrawInk)
            {
                return;
            }

            using (Graphics g = CreateGraphics())
            {
                g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

                DrawSample(g, Size, cal);
            }
        }
 protected override CalibratedInkSample PipelinedCalibratedToRawConversion(System.Drawing.Graphics g, CalibratedInkSample sample, System.Drawing.Size clientArea)
 {
     //TODO: implement
     return(base.PipelinedCalibratedToRawConversion(g, sample, clientArea));
 }
        protected virtual CalibratedInkSample PipelinedCalibratedToRawConversion(Graphics g, CalibratedInkSample sample, Size clientArea)
        {
            //invoke the base calibration
            if (_BaseCalibration != null)
                sample = _BaseCalibration.PipelinedCalibratedToRawConversion(g, sample, clientArea);

            //default implementation does no calibration
            return sample;
        }
        /// <summary>
        /// Converts a CalibratedInkSample to a RawInkSample.
        /// </summary>
        /// <param name="g">The capture- or display- surface graphics object.</param>
        /// <param name="sample">The calibrated sample to convert.</param>
        /// <param name="clientArea">The capture- or display- surface size in pixels.</param>
        /// <returns>The RawInkSample.</returns>
        public RawInkSample CalibratedToRaw(Graphics g, CalibratedInkSample sample, Size clientArea)
        {
            //don't bother calibrating invalid samples
            if (sample.IsInvalid()) return new RawInkSample(sample.Time, sample.X, sample.Y, sample.Pressure);

            //next apply this instance's calibration
            sample = PipelinedCalibratedToRawConversion(g, sample, clientArea);

            //return a raw sample
            return new RawInkSample(sample.Time, sample.X, sample.Y, sample.Pressure);
        }
 protected override CalibratedInkSample PipelinedCalibratedToRawConversion(System.Drawing.Graphics g, CalibratedInkSample sample, System.Drawing.Size clientArea)
 {
     //TODO: implement
     return base.PipelinedCalibratedToRawConversion(g, sample, clientArea);
 }
Exemple #9
0
 private void InputControl_NewInkSample(CalibratedInkSample s)
 {
     DrawSample(s);
 }
Exemple #10
0
        protected override CalibratedInkSample PipelinedCalibratedToRawConversion(Graphics g, CalibratedInkSample sample, Size clientArea)
        {
            sample = base.PipelinedCalibratedToRawConversion(g, sample, clientArea);

            Point areaVector = new Point(clientArea.Width, clientArea.Height);

            InkRenderer.PixelToInkSpace(g, ref areaVector);

            sample.X += areaVector.X >> 1;
            sample.Y += areaVector.Y >> 1;

            return(sample);
        }
        protected virtual CalibratedInkSample PipelinedCalibratedToRawConversion(Graphics g, CalibratedInkSample sample, Size clientArea)
        {
            //invoke the base calibration
            if (_BaseCalibration != null)
            {
                sample = _BaseCalibration.PipelinedCalibratedToRawConversion(g, sample, clientArea);
            }

            //default implementation does no calibration
            return(sample);
        }