コード例 #1
0
        /// <summary>
        /// Initializes the 2D view with the given ImageStack
        /// </summary>
        public void Initialize(ImageStack imageStack)
        {
            foreach (var type in Enum.GetValues(typeof(SliceType)).Cast <SliceType>())
            {
                _selection[type] = 0;
            }

            if (_pixelClickHandler == null)
            {
                _pixelClickHandler = gameObject.GetComponentInChildren <PixelClickHandler>();
            }

            _imageStack = imageStack;

            SliceSlider.MaximumValue = _imageStack.GetMaxValue(CurrentSliceType);
            SliceSlider.CurrentInt   = _selection.GetValue(CurrentSliceType, 0);

            _pixelClickHandler.OnPixelClick.AddListener(OnPixelClicked);

            try
            {
                // key might not be present in dictionary
                Display.texture = _imageStack.GetTexture2D(CurrentSliceType, _selection.GetValue(CurrentSliceType));
            }
            finally
            {
                ResetClickDisplay(_imageStack.Width, _imageStack.Height);
                ClickDisplay.color = new Color32(255, 255, 255, 255);
            }
        }
コード例 #2
0
        /// <summary>
        /// Swaps the displayed SliceType for the given SliceType
        /// </summary>
        /// <param name="type">SliceType to display.</param>
        public void Show(SliceType type)
        {
            CurrentSliceType         = type;
            _ignoreSliderChanges     = true;
            SliceSlider.MaximumValue = _imageStack.GetMaxValue(CurrentSliceType);
            _ignoreSliderChanges     = false;
            SliceSlider.CurrentInt   = _selection[CurrentSliceType];

            Display.texture = _imageStack.GetTexture2D(CurrentSliceType, _selection[CurrentSliceType]);

            if (ClickDisplay.texture.width != Display.texture.width ||
                ClickDisplay.texture.height != Display.texture.height)
            {
                ResetClickDisplay(Display.texture.width, Display.texture.height);
            }
            else
            {
                ResetClick();
            }
        }
コード例 #3
0
ファイル: OrthoSlices.cs プロジェクト: mrcdnk/dicomholo
        public void OnTransSliderChanged()
        {
            var local = TransImage.GetComponent <Transform>().localPosition;

            local.y = TransSlider.value * _transStep;

            TransImage.GetComponent <Transform>().localPosition = local;
            //Sprite current = transImage.GetComponent<Sprite>();
            var currentRenderer = TransImage.GetComponent <SpriteRenderer>();

            currentRenderer.material.mainTexture = _imageStack.GetTexture2D(SliceType.Transversal, (int)TransSlider.value);
            currentRenderer.material.shader      = Shader.Find("Sprites/Transparent Unlit");
        }