• 谈谈UG的external模式


    有人问我UG的external模式.

    这是UG二次开发不需要UG界面时使用的一种模式。UG Open只开放了部分的API提供支持。

    internal模式是UG的插件方式调用。

    所以,即使是external模式也不能够脱离UG运行。

    以前,使用C/C++开发时,internal的程序是dll,而external的程序是exe。

    采用.net语言,internal也可以写成exe。

    internal使用的是UG规定的入口函数,比如Main、Starup

    external只有一个入口函数Main

    虽然UG两种开发模式都使用同一套API,但是支持与否要看说明。

    比如

    UF_PART_open (view source)

    Defined in: uf_part.h

    Overview

    Retrieves an existing NX part or Solid Edge part into the session and
    makes it the work and display part. Solid Edge parts (.par, .psm, .pwd or .asm
    file extension) are opened by extracting the Parasolids data from the Solid
    Edge part and then importing this data into a new NX part
    with a .prt extension. The file name of the new NX part has the Solid
    Edge part name and a ".prt" file extension. If there is an existing NX
    part with the same name as the Solid Edge part, then this function
    returns an error.
    The NX part file that you create by opening a Solid Edge part
    file contains one or more unparameterized solid bodies.
    Other files can be opened with this call. The following
    extensions are valid - .udf, .bkm, .xpk and .jt. Foreign files with the
    following extensions can also be opened with UF_PART_open - .igs, .stp,
    .dxf, .dwg and .model.
    If a part is a read-only part, and the part retrieval modifies the part,
    you will receive the error code UF_PART_err_read_only_modified, for that
    part when you call UF_PART_open. In this case UF_PART_open will not
    return a zero status.

    Environment

    Internal and External

    ==========================

    UF_DISP_create_image (view source)

    Defined in: uf_disp_ugopenint.h

    Overview

    Export a PNG/JPEG/TIFF/GIF/XWD/BMP full window area image
    Creates an image file with the file type you specify using the image
    currently displayed in the graphics window.

    Return

    Return code:
    = 0 No error
    = not 0 Error code, including:
    UF_DISP_err_failed_to_create_image_file
    Standard UF error codes

    Environment

    Internal
    UF_DISP_create_image (view source)

    Defined in: uf_disp_ugopenint.h

    Overview

    Export a PNG/JPEG/TIFF/GIF/XWD/BMP full window area image
    Creates an image file with the file type you specify using the image
    currently displayed in the graphics window.

    Return

    Return code:
    = 0 No error
    = not 0 Error code, including:
    UF_DISP_err_failed_to_create_image_file
    Standard UF error codes

    Environment

    Internal

    另外,如果要运行external模式,需要把UGII目录加入到Windows的Path路径下,否则运行时找不到dll

    这是用.net做的external程序示例

    view plaincopy to clipboardprint?

    1. try
    2.         { 
    3.             Session theSession = Session.GetSession(); 
    4.             Console.WriteLine("OK"); 
    5.             Part thePart = theSession.Parts.NewDisplay(@"E:\UGNX6\test.prt", Part.Units.Millimeters); 
    6.             PartSaveStatus ps = thePart.Save(NXOpen.BasePart.SaveComponents.True, NXOpen.BasePart.CloseAfterSave.True); 
    7.             Console.WriteLine(ps.ToString()); 
    8.         } 
    9. catch (NXOpen.NXException ex) 
    10.         { 
    11.             Console.WriteLine(ex.ToString()); 
    12.         } 

    try { Session theSession = Session.GetSession(); Console.WriteLine("OK"); Part thePart = theSession.Parts.NewDisplay(@"E:\UGNX6\test.prt", Part.Units.Millimeters); PartSaveStatus ps = thePart.Save(NXOpen.BasePart.SaveComponents.True, NXOpen.BasePart.CloseAfterSave.True); Console.WriteLine(ps.ToString()); } catch (NXOpen.NXException ex) { Console.WriteLine(ex.ToString()); }

     

    原帖:http://blog.csdn.net/begtostudy/archive/2009/01/25/3852773.aspx

    image

    欢迎访问我的专业知识博客!
    博主:白途思(begtostudy)
    微信/QQ:370566617
    Email:begtostudy#gmail.com
    欢迎访问我的其他博客:我的编程知识博客 我的学术知识博客

  • 相关阅读:
    golang入门--一个简单的http client
    Linux 安装JDK1.8
    spring boot配置拦截器和过滤器
    spring boot swagger配置
    spring boot语言国际化
    element-ui 中为表头添加tooltips
    spring boot定时任务的使用
    Windows编译运行webrtc全过程,并实现屏幕共享
    WLYX官方团队の规则
    AVL树的平衡算法(JAVA实现)
  • 原文地址:https://www.cnblogs.com/begtostudy/p/1882014.html
Copyright © 2020-2023  润新知