自定义Translator add-in - 2

本文介绍如何创建并实现一个自定义的Translator插件,用于处理*.abc文件。导入过程根据文件中逗号分隔的数字创建球体,并更新【零件号】;导出则读取球体信息及【零件号】,写入新的*.abc文件。提供了Open和SaveCopyAs方法的实现。
摘要由CSDN通过智能技术生成

前文提到,我们可通过模板创建一个Translator插件的框架。现在我们看看如何实现基本的导入导出流程。假定我们的文件*.abc有三项数据(为简单起见,该文件实际为纯文本)。 

1.  三个以逗号分隔的数字。
2. 一个数字
3. 一个字串

导入流程将创建一个零件,并根据1和2创建一个球体,1提供球体圆心坐标,2提供球体半径。接着将根据3的字串更新文件的【零件号】。而导出流程假定有个已有的零件,它包含至少一个回转体(并且是完整的球体),Translator插件将会读取球体信息,以及文档的【零件号】信息,将它们写入到一个新的*.abc文件。

以下是需要实现的Open和SaveCopyAs方法。完整工程可下载:Download MyTranslator

publicvoid Open(DataMedium SourceData,
    TranslationContext Context,
    NameValueMap Options,
    refobject TargetObject)
{   
    // When Open *.abc, this function will
    // be invoked
 
    //the file name of the data source
    string fileName = SourceData.FileName;
 
    // the params read from the data source
 
    //center point of sphere
    Inventor.Point oCenterPt =
        m_inventorApplication.TransientGeometry.CreatePoint();
    //radius of sphere
    double radius = 0;
    //part number
    string partNumber = "";
 
    try
    {
        //read the data source
        using (StreamReader sr = newStr
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值