□ 何婧妍 □ 张 潇 □ 陈贤帅 □ 冯 伟
1.广州市健齿生物科技有限公司 广州 511458 2.佛山市安齿生物科技有限公司 广东佛山 528251 3.中国科学院深圳先进技术研究院 广东深圳 518055
对于缺齿患者而言,牙体牙列缺失不仅会使正常咀嚼功能受损,而且有碍口腔健康与美观。随着口腔种植技术的日渐成熟,义齿种植已经成为口腔缺齿患者的首选治疗方案之一。虽然市面上成品种植体和基台型号众多,但是依然不能精准匹配患者的不同口腔环境,从而无法满足个性化的种植和修复需求。
因人而异的口腔环境催生了个性化基台与牙种植体需求,个性化关键技术参数需要医师根据临床经验确定。医师临床为病人定制种植牙时,会根据病人的颌骨骨量、牙龈厚薄、植入角度等决定牙种植体和基台的参数规格。传统牙种植体及基台设计多为制造厂工程人员应用常见市售三维计算机辅助设计软件制作,如SolidWorks、Pro/Engineering、Unigraphics等。个性化模型千姿百态,利用三维设计软件从零开始建模耗时耗力,并且医师无法参与其中,个性化牙科种植体和基台设计由此遇到瓶颈。
尽管目前预成基台和种植体发展已经趋于成熟,但仍有不足之处。据统计,由于骨结合失败导致的早期种植失败病例占1%~2%[1]。由于牙科基台形态过于单一,无法良好贴合患者牙龈软组织剖面,会导致修复患者的种植义齿与邻牙间丧失牙龈乳头。可见,牙种植体与基台的结构设计和制造工艺存在改进的空间,个性化设计成为首选。
为了加强医工结合,提高设计效率,弥补现有牙种植体与牙科基台的功能性不足,笔者以C#为开发语言,设计了基于SolidWorks软件的牙种植体和牙科基台个性化设计平台,医师只需要输入关键特征参数,就能设计出所需的个性化牙种植体和牙科基台。
SolidWorks应用程序接口是SolidWorks三维绘图软件提供的二次开发接口,接口语言包括VB、VBA、C++、C#等,支持对象连接与嵌入程序语言、组件对象模型程序语言。通过调用应用程序接口命令,开发人员可以建立在SolidWorks中使用的插件,或外部调用SolidWorks的视窗界面,笔者开发的个性化设计平台属于后者。SolidWorks应用程序接口的对象可以分为应用程序对象、配置文件对象、事件对象、注解对象、模型对象、特征对象、草图对象等大类[2]。在个性化设计平台中,主要使用到的应用程序接口命令SldWorks、ModelDoc2属于应用程序对象。其中,SldWorks为最顶端对象,其它所有应用程序接口对象都是SldWorks的子对象,二次开发过程中的接口访问都需要通过SldWorks对象。ModelDoc2对象提供了文档模型的打开、关闭、保存等方法,它的子对象包括PartDoc、AssemblyDoc、DrawingDoc,通过这些对象可以实现对模型、装配体、工程图文档的操作和编辑等功能[3]。
计算机辅助设计二次开发是一种常用的根据领域特点建立建模系统及数据库的方法,已被广泛应用于电子、机械、建筑等领域[4-6]。计算机辅助设计二次开发建立模型主要分为模型驱动法和尺寸驱动法两种。模型驱动法指用程序实现模型的整个建立过程,包括绘制草图、拉伸模型、切除模型等。尺寸驱动法为通用模型设定尺寸变量,通过修改通用模型的尺寸变量得到新模型,新模型都是从同一个模板派生出来的。模型驱动法的适用范围更广,适用于建立没有标准库的模型。模型驱动法需要的程序代码量大,通常需要通过宏预录的方式生成基础部分建模代码,从零开始使用程序建模,更耗费SolidWorks的内核资源。尺寸驱动法适用于设计具有相似形状但尺寸多样的同族零件,只需要编写修改特征尺寸的代码,对计算机性能要求不高,平台运行效率更高。笔者在个性化设计平台中设计的模型均为牙种植体和牙科基台的同族模型,因此采用尺寸驱动法[3]。
牙科种植系统通常由牙种植体、牙科基台、基台螺栓、义齿牙冠组成,用于恢复患者的咀嚼功能。牙种植体又称人工牙根,用于植入颌骨取代缺失的牙齿,为义齿提供支撑。牙科基台为牙种植体上部的连接结构,用于连接牙种植体与义齿牙冠,并固定牙冠。
一般而言,人体口腔正常咀嚼食物产生的载荷为30~300 N[7]。 在患者骨量足够的情况下,长度和直径更大的牙种植体能承受更大的咀嚼载荷。同时,牙种植体直径与长度增大,可以使牙种植体的表面积增大,从而增大牙种植体与骨组织的接触面积。在患者骨量不足的情况下,倾斜种植能有效增大牙种植体的骨内段长度,使种植更加稳固。采取倾斜种植的方式需要结合使用角度基台。牙槽骨组织分为皮质骨与松质骨,均为疏松多孔状结构,弹性模量为1 GPa~30 GPa,牙种植体的材料钛金属弹性模量则约为110 GPa[8]。 两者间巨大的弹性模量差异,导致咀嚼载荷产生的应力集中在牙种植体上,无法传递到骨组织中,产生应力屏障,骨组织得不到应有的锻炼,易形成骨吸收,使牙种植体在骨内的长度减小,有松动的风险[10-12]。 随着生产工艺的发展,通过激光选区熔化或激光选区烧结金属三维打印技术,能够生产具有多孔结构的牙种植体。已有研究表明,激光选区熔化和激光选区烧结三维打印多孔牙种植体在机械强度与骨结合性能方面都能达到良好的水平[10-12]。 牙种植体表面多孔设计能有效降低牙种植体的弹性模量,使骨组织与牙种植体的应力分布更为平均,减少骨吸收的发生。同时,多孔表面结构也利于骨细胞的生长与附着。多孔结构还能够携带药物,实现消炎抗菌,促进骨组织生长[13]。 义齿种植在恢复患者咀嚼功能的同时,需要兼顾美观的修复效果。比起成品基台有限的穿龈规格,个性化基台与牙龈协调的曲面肩台设计能形成更为理想的穿龈轮廓,与周围的软组织贴合[14]。
个性化多孔牙种植体表面采用自攻螺纹设计,螺纹间距0.6 mm,使牙种植体与周围骨质有效锁紧。牙种植体表面设计有平均间隙为0.3 mm的微孔多孔段,为骨组织生长提供空间,加强牙种植体与骨组织的结合,同时降低牙种植体整体的弹性模量,避免骨组织产生应力屏障效应。多孔段的孔隙图案可以根据制造条件选择正六角模型或金刚石模型,多孔段的长度与直径亦可以根据患者种植条件,在宽度3.4~6 mm、长度2.8~5.5 mm中自由选择。牙种植体直径与牙种植体长度可基于患者骨质骨量及不同的种植区域进行参数化设计。前牙区牙龈薄,容易产生种植反青现象,影响美观,加之前牙区咀嚼载荷小,可以选择表面积较小的窄植体。后牙区对美观要求相对较低,咀嚼载荷较大,义齿需要的支撑强度高,可以选择使用表面积更大的宽植体。牙种植体直径有3.5 mm窄植体和5.0 mm宽植体两种选择,牙种植体长度设计范围为9.5~14.5 mm。牙种植体与牙科基台间由六角接口和双边24°莫氏锥度连接,再由基台螺栓紧固。六角接口用于抗旋,莫氏锥度使牙科基台与牙种植体紧密结合,防止发生渗漏,避免引起松动及细菌感染现象。
所设计的个性化多孔牙种植体与一般牙种植体如图1所示。
▲图1 牙种植体
个性化牙科基台与牙种植体间为平台转移类型的内连接结构,牙科基台直径为4~6 mm,可根据牙种植体设置。牙科基台连接义齿牙冠部分的工作高度为4~6.5 mm,牙科基台角度可在0°~30°间自由调节。为适应高低不平的牙龈软组织,牙科基台的穿龈肩台为曲面设计,肩台宽度约为0.5 mm。曲面由六个高度不同且在垂直投影面上共圆的点定义,曲面高度范围为1~5 mm,舌侧、颊侧和牙科基台两边侧的穿龈高度都可以通过曲面进行自由定义。
相比一般牙种植体表面,个性化多孔牙种植体的多孔段表面网状结构更有利于成骨细胞的附着生长,同时孔隙也给骨细胞的生长提供了空间。疏松的孔隙与颌骨中的骨小梁结构类似,能降低牙种植体的弹性模量,有效减少颌骨生长过程中应力屏障效应的产生。相比一般预成牙科基台中穿龈肩台为平面,个性化牙科基台的穿龈肩台为曲面,更能贴合牙龈软组织。目前牙科种植系统普遍存在修复后义齿与邻牙间丧失牙龈乳头的状况,个性化牙科基台的穿龈曲面将更有利于诱导牙龈乳头的生长。
个性化牙科基台与一般牙科基台如图2所示。
▲图2 牙科基台
牙种植体和牙科基台个性化设计平台通过用户输入的目标特征参数修改通用模型,实现个性化模型的设计[15]。在设计过程中,通用模型库预先嵌入个性化设计平台。打开个性化设计平台后,将自动释放通用模型库,并于后台运行SolidWorks。用户选择所需模块后,SolidWorks将会从后台模型库中加载对应的通用模型。待用户完成参数输入后,个性化设计平台依据用户的要求,修改通用模型为符合用户需求的个性化模型,并自行保存,最后通过eDrawing插件在平台上显示,实现实时预览。生成的模型通过菜单栏的“另存为”功能,可以导出用于后续加工等。另外,个性化设计平台还预留了ANSYS有限元分析软件的接口,待进一步完善平台架构后,能够对生成的模型进行有限元模拟,得到可靠度分析结果。个性化设计平台运行逻辑如图3所示。
▲图3 个性化设计平台运行逻辑
牙种植体和牙科基台个性化设计平台由两个模块组成,分别为个性化牙科基台设计模块和个性化牙种植体设计模块。用户可以在参数设计分页中选择设计牙科基台或设计牙种植体。两个模块都由菜单栏、参数设计栏、预览窗口、状态栏构成。个性化设计平台界面如图4所示。
▲图4 个性化设计平台界面
为达到个性化设计平台与SolidWorks实时联动、实时预览模型的目的,需要利用程序关联个性化设计平台与SolidWorks,再插入SolidWorks附带的eDrawing插件作为预览窗口使用。在Visual Studio软件中引入SolidWorks和eDrawing的.dll格式数据库,通过实例化对象运行软件。C#语言主要代码如下:
SldWorks.SldWorks swApp=new SldWorks.SolidWorks();
//实例化SolidWorks对象,运行SolidWorks。
eDrawingControl1=newe DrawingControl();
//实例化eDrawing对象,运行eDdrawing。
菜单栏用于保存生成的个性化牙种植体模型或牙科基台模型,并关闭窗口,主要代码如下:
private void saveAsToolStripMenuItem_Click(object sender,EventArgs e)
{
//菜单栏另存为动作。
FolderBrowserDialog dialog=new FolderBrowserDialog();
dialog.Description="请选择文件路径";
string foldPath="";
if (dialog.ShowDialog()==DialogResult.OK)
{
foldPath=dialog.SelectedPath;
DirectoryInfo theFolder=new DirectoryInfo(foldPath);
}
//用户选择另存路径。
ModelDoc2 ActiveModel=(ModelDoc2)swApp.ActiveDoc;
string filepath=ActiveModel.GetPathName();
string savepath=foldPath +filepath.Remove(0,36);
ActiveModel.SaveAs(savepath);
}
//当前模型保存 。
private void Form1_FormClosing(object sender,FormClosingEventArgs e)
{
//窗口关闭动作。
Process[] proc;
proc=Process.GetProcesses();
for (int i=1;i <=proc.Length - 1;i++)
{
if (proc[i].ProcessName=="SLDWORKS")
{
proc[i].Kill();
break;
}
}
//关闭后台联动的SolidWorks程序。
e.Cancel=true;
}
//关闭平台窗口界面。
考虑个性化牙种植体和牙科基台的设计需求,个性化设计平台在个性化牙科基台设计模块中提供了牙科基台角度、牙科基台直径、工作高度,以及由六个点的高度定义的穿龈肩台曲面,作为设计参数;并在个性化牙种植体设计模块中提供了牙种植体长度、牙种植体直径、多孔段直径、多孔段长度、多孔段微孔样式作为设计参数。个性化牙种植体与牙科基台结构设计特征参数及符号如图5、表1所示。
▲图5 结构设计特征参数
表1 结构设计特征参数及符号
在个性化设计平台界面中,特征参数由用户在参数设计栏的textBox中赋值,修改模型尺寸,具体代码如下:
double d1=double.Parse(textBox.Text);
//将textBox中用户键入的特征参数赋值至d1。
Dimension v1=(Dimension)spt.Parameter("D1@Sketch1");
//定义草图中的尺寸特征D1为v1。
v1.Value=d1;
//将d1赋值到v1。
特征参数赋值完成后,需要保存并重建模型,主要代码如下:
spt.EditRebuild3();
//重建模型。
spt.Save();
//保存修改特征。
应用eDrawing插件在个性化设计平台上预览模型,完成整个设计流程。eDrawing插件执行预览功能的代码如下:
eDrawingControl1.eDrawingControlWrapper.OpenDoc(filepath,false,false,true,"");
个性化设计平台界面使用效果如图6所示。
▲图6 个性化设计平台界面使用效果
笔者在Visual Studio中以C#为开发语言,利用SolidWorks应用程序接口的二次开发技术建立了牙种植体和牙科基台的个性化设计平台。这一个性化设计平台简洁简单,没有复杂的安装过程,在任何安装SolidWorks的计算机中皆可运行。个性化设计平台应用参数化设计方式,使用户不需要任何工程软件经验,只需根据需求输入关键特征尺寸参数,即可完成个性化定制的牙种植体和牙科基台设计。所设计的牙种植体和牙科基台模型后续可用于机械加工或仿真分析等,从而节省个性化设计的时间,使医师在设计中起主导作用。个性化设计平台实现了个性化牙种植体和牙科基台的参数化快速建模,简化了设计步骤,使个性化牙种植体和牙科基台的设计效率得到了大幅提高。