zoukankan      html  css  js  c++  java
  • NX二次开发-UFUN修改当前导出CGM文件选项设置UF_CGM_set_session_export_options

     1 文章转载自唐康林NX二次开发论坛,原文出处: http://www.nxopen.cn/thread-126-1-1.html
     2 
     3 刚才有同学问到这个问题,如果是用NXOpen来做,直接录制一下就可以了;
     4 在UFUN里面没有直接的函数;
     5 思路就是:
     6 1、先将工程图转换为cgm
     7 2、调用系统的cgm2pdf.exe工具,将上一步转换的cgm再转成PDF格式;
     8 以下是我写的一个例子。大家可以拿一个工程图测试以下代码,最后会在C盘生成tkl.cgm与tkl.pdf两个文件。
     9 
    10 
    11 #include <uf.h>
    12 #include <uf_draw.h>
    13 #include <uf_cgm.h>
    14 #include <windows.h>
    15 
    16 
    17 
    18 UF_initialize();
    19 
    20 tag_t drawing_tag = NULL_TAG;
    21 UF_DRAW_ask_current_drawing(&drawing_tag);
    22 
    23 if (drawing_tag != NULL_TAG)
    24 {
    25     UF_CGM_export_options_t export_options;
    26     UF_CGM_ask_default_export_options(&export_options);
    27     //UF_CGM_ask_session_export_options(&export_options);//用这个函数也可以初始化
    28     export_options.reason = UF_CGM_pdf_reason;
    29     UF_CGM_set_session_export_options(&export_options);
    30 
    31     char outFilePath[UF_CFI_MAX_FILE_NAME_BUFSIZE] = "c:\tkl.cgm";
    32     UF_CGM_export_cgm(drawing_tag, &export_options, outFilePath); //导出成CGM文件
    33 
    34     //将CGM转换成PDF
    35     char outPdfFilePath[UF_CFI_MAX_FILE_NAME_BUFSIZE] = "c:\tkl.pdf";
    36     NXOpen::NXString nxbasedir = theSession->GetEnvironmentVariableValue("UGII_BASE_DIR");//获取NX主目录
    37     std::ostringstream tempstring;
    38     tempstring << nxbasedir.GetLocaleText() << "\NXPLOT\bin\pdf\cgm2pdf.exe " << outFilePath << " " << outPdfFilePath;
    39     std::string covertvalule = tempstring.str();
    40     WinExec(covertvalule.c_str(), SW_HIDE); //打开PDF转换器,并转换
    41     tempstring.str("");
    42     tempstring.clear();
    43 }
    44 
    45 UF_terminate();

  • 相关阅读:
    js一次性删除一个数组中多个元素
    js防抖,节流
    js 生成一个永不重复的ID
    mavon-editor 使用方法以及回显
    导出---后台返回二进制流文件数据,前端转换格式进行下载
    vue 监控enter键触发
    上传视频到阿里云
    前端图片压缩
    向后台传输表情时,手机自带输入法emoji表情的输入,提交及显示——前端解决方案
    vue 之this.$router.push、replace、go的区别
  • 原文地址:https://www.cnblogs.com/nxopen2018/p/10957390.html
Copyright © 2011-2022 走看看