C#开发PACS医学影像处理系统(八):单元格变换

 

先看效果:

 

再看结构,Viewer(影像控件)分为N个Cell(单元格),每个单元格分为N个Box(影像容器),

当默认情况为2x2的行列时,结构如下图:

    

 

其中,我们在WPF设计器中创建一个用户控件叫Viewer,使用Grid容器,默认2x2,再根据自己的业务需要创建用户控件Cell和用户控件Box,

在Viewer中声明变量集合来记录Cell,同理,在Cell中声明变量集合来记录Box:

     /// <summary>
        /// 图像单元格集合
        /// </summary>
        public List<ET_MedicalCell> Cells = new List<ET_MedicalCell>();

 

 

 

 

情况1:变换行列,例如从2x2 变换到3x3:

 

 

 

思路:在集合中添加子控件,为行列属性设置触发器,

复制代码
   private int rowsCount = 2;
        /// <summary>
        /// 单元格的行数
        /// </summary>
        public int RowsCount
        {
            get { return rowsCount; }
            set
            {if (value < -1)
                {
                    rowsCount = 0;
                }
                else if (value > 10)
                {
                    rowsCount = 10;
                }
                else
                {
                    rowsCount = value;
                }
                SetLayout();
                SetCellCount();
            }
        }
复制代码

添加Cell:

ET_MedicalCell cell = new ET_MedicalCell(1, 1, this);
MdiGrid.Children.Add(cell);
Cells.Add(cell);

 

 

 

情况2:变换行列,平铺与层叠切换:

思路:Cell数量始终为1,Box数量变为行列数量

 

 

 

情况3:单元格双击放大:

思路:Cell数量始终为1,Box数量始终为1

 

情况4:医生实际使用中的复合操作:

思路:控制Cell和Box的数量,记录好变换之前的位置,因为有可能会变回去,直接引用变换前的对象和位置即可,无需重新加载Dicom影像而浪费效率和资源。

 

C#开发PACS、RIS、3D医学影像处理系统系列教程 目录整理:

菜鸟入门篇

医学影像三维篇

PACS三维处理医学图像:

C#开发PACS医学影像三维重建(一):使用VTK重建3D影像

C#开发PACS医学影像三维重建(二):使用VTK进行体绘制

C#开发PACS医学影像三维重建(三):纹理映射与颜色传输

C#开发PACS医学影像三维重建(四):3D网格平滑效果

C#开发PACS医学影像三维重建(五):基于梯度透明的组织漫游

C#开发PACS医学影像三维重建(六):三维光源与阴影效果

C#开发PACS医学影像三维重建(七):空间测量与标注

C#开发PACS医学影像三维重建(八):VR体绘制

C#开发PACS医学影像三维重建(九):MPR三视图切面重建

C#开发PACS医学影像三维重建(十):MIP最小密度投影

C#开发PACS医学影像三维重建(十一):CPR曲面重建

C#开发PACS医学影像三维重建(十二):VE虚拟内镜技术

C#开发PACS医学影像三维重建(十三):基于人体CT值从皮肤渐变到骨骼的梯度透明思路

C#开发PACS医学影像三维重建(十四):基于能量模型算法将曲面牙床展开至二维平面

熟手进阶篇

登峰造极篇

C#开发基于Python人工智能的肺结节自动检测

C#开发基于Python人工智能的脊柱侧弯曲率算法

C#开发基于Python机器学习的医学影像骨骼仿真动画

C#开发基于Python机器学习的术后恢复模拟

C#开发基于U3D的VR眼镜设备虚拟人体三维重建

C#开发基于全息投影的裸眼3D医学影像显示技术

医疗影像软件产品友情链接

posted @   乔克灬叔叔  阅读(2872)  评论(2编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 一文读懂知识蒸馏
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示