示例#1
0
        public void BuildHistogram()
        {
            var range = new Extension.Range()
            {
                VMax = this.MeredionalMax,
                VMin = this.MeredionalMin
            };

            long NBINS = 1000;

            double step = (Math.Abs(range.VMax - range.VMin) / NBINS);

            m_Histogram = Extension.Histogram(this.Points.Select(p => p.x), range, this.PixelSize);
            m_current_histogram_step = this.PixelSize;
        }
示例#2
0
        public void BuildHeatMap()
        {
            var xrange = new Extension.Range()
            {
                VMax = this.MaxDetectorPositionMer,
                VMin = this.MinDetectorPositionMer
            };

            var yrange = new Extension.Range()
            {
                VMax = this.MaxDetectorPositionSag,
                VMin = this.MinDetectorPositionSag
            };

            m_HeatMap = Extension.Histogram2D(this.Points.Select(p => p.x), Points.Select(p => p.z), xrange, yrange, PixelSize);
        }
示例#3
0
        private void SaveCrystalPlane(string path)
        {
            var xrange = new Extension.Range()
            {
                VMax = m_SysConf.crystalW / 2,
                VMin = -m_SysConf.crystalW / 2
            };

            var yrange = new Extension.Range()
            {
                VMax = m_SysConf.crystalH / 2,
                VMin = -m_SysConf.crystalH / 2
            };

            var heatMap = Extension.Histogram2D(m_CrystalPlot.Points.Select(p => p.X), m_CrystalPlot.Points.Select(p => p.Y), xrange, yrange, m_SysConf.crystalW / 1000);

            var w = heatMap.GetLength(0);
            var h = heatMap.GetLength(1) - 2;

            var unbounded = RemoveBound(heatMap);

            Extension.SaveTiff(path, unbounded, w, h);
        }
示例#4
0
        private void SaveDetectorPlane(string path)
        {
            var xrange = new Extension.Range()
            {
                VMax = m_Detector.MaxDetectorPositionMer,
                VMin = m_Detector.MinDetectorPositionMer
            };

            var yrange = new Extension.Range()
            {
                VMax = m_Detector.MaxDetectorPositionSag,
                VMin = m_Detector.MinDetectorPositionSag
            };

            var heatMap = Extension.Histogram2D(m_Detector.Points.Select(p => p.x), m_Detector.Points.Select(p => p.y), xrange, yrange, m_Detector.PixelSize);

            var w = heatMap.GetLength(0);
            var h = heatMap.GetLength(1) - 2;

            var unbounded = RemoveBound(heatMap);

            Extension.SaveTiff(path, unbounded, w, h);
        }