iCAx开思工具箱

标题: 唉,还是来求UG画一条直线的代码吧。。 [打印本页]

作者: poncho_wang    时间: 2004-8-4 15:45
标题: 唉,还是来求UG画一条直线的代码吧。。
偶得代码:
extern "C" DllExport void ufsta( char *param, int *returnCode, int rlen )
{
    /* Initialize the API environment */
    int errorCode = UF_initialize();
  
    if ( 0 == errorCode )
    {
        /* TODO: Add your application code here */
    UF_PART_load_status_t error_status;
    char part_name[133] = "G:\\design\\test.prt";
        int units = 1;
    tag_t part;
  
    UF_PART_new(part_name,units,[$part)]
    if(part == NULL_TAG){
      uc1601("创建Part错误",1);
      UF_PART_close_all();
      /* Terminate the API environment */
      errorCode = UF_terminate();
      return;
    }else{
      uc1601("成功创建Part",1);
    }
  
      UF_CURVE_line_t sline1;
  tag_t line1;
  
  sline1.start_point[0] = 0.0;
  sline1.start_point[1] = 0.0;
  sline1.start_point[2] = 0.0;
  sline1.end_point[0] = 0.0;
  sline1.end_point[1] = 5.0;
  sline1.end_point[2] = 6.0;
  
     UF_CURVE_create_line([$sline1,&line1)]
  
    }
  
    /* Print out any error messages */
   &nbsprintErrorMessage( errorCode );
}
  
part是成功创建的,不过线看不到,有什么地方不对吗?
作者: 深夜摔键盘    时间: 2004-8-4 15:59
代码没错误。
作者: tari    时间: 2004-8-4 16:03
poncho_wang wrote:
偶得代码:  
  extern "C" DllExport void ufsta( char *param, int *returnCode, int rlen )  
  {  
      /* Initialize the API environment */  
      int errorCode = UF_initialize();  
  
      if ( 0 == errorCode )  
      {  
          /* TODO: Add your application code here */  
      UF_PART_load_status_t error_status;  
      char part_name[133] = "G:\\design\\test.prt";  
          int units = 1;  
      tag_t part;  
  
      UF_PART_new(part_name,units,[$part)]  
      if(part == NULL_TAG)
    {  
        uc1601("创建Part错误",1);  
        UF_PART_close_all();  
    }
    else
    {     
       uc1601("成功创建Part",1);  
       UF_CURVE_line_t sline1;  
      tag_t line1;   
     sline1.start_point[0] = 0.0;  
     sline1.start_point[1] = 0.0;  
     sline1.start_point[2] = 0.0;  
     sline1.end_point[0] = 0.0;  
     sline1.end_point[1] = 5.0;  
     sline1.end_point[2] = 6.0;   
      UF_CURVE_create_line([$sline1,&line1)]   
    }
        /* Terminate the API environment */  
        errorCode = UF_terminate();  
        return;  
      }  
  
      /* Print out any error messages */  
      PrintErrorMessage( errorCode );  
  }  
  

我把你的代码移动了一下顺序,你看看
作者: poncho_wang    时间: 2004-8-4 16:08
还是一样啊
汗。。。
按照这种进度,偶是来不及了。。
作者: tari    时间: 2004-8-4 16:11
你单步执行一下看看,什么地方出了问题?
作者: poncho_wang    时间: 2004-8-4 16:20
可是。。。编译是没有问题的阿
作者: suye007    时间: 2004-8-4 16:22
给你改了一下,重新贴上,试试吧
extern "C" DllExport void ufsta( char *param, int *returnCode, int rlen )  
{  
    /* Initialize the API environment */  
    int errorCode = UF_initialize();  
  
    if ( 0 == errorCode )  
    {  
        /* TODO: Add your application code here */  
      
    char part_name[133] = "D:test.prt";  
        int units = 1;  
    tag_t part;  
    
    UF_PART_new(part_name,units,[$part)]  
    if(part == NULL_TAG)
    {  
      uc1601("创建Part错误",1);  
      UF_PART_close_all();  
      /* Terminate the API environment */  
      errorCode = UF_terminate();  
      return;  
    }
    else
    {  
  
    UF_CURVE_line_t sline1;  
    tag_t line1;  
    sline1.start_point[0] = 0.0;  
    sline1.start_point[1] = 0.0;  
    sline1.start_point[2] = 0.0;  
    sline1.end_point[0] = 0.0;  
    sline1.end_point[1] = 5.0;  
    sline1.end_point[2] = 6.0;  
    
    UF_CURVE_create_line([$sline1,&line1)]  
    uc1601("成功创建Part",1);  
    }  
  }  
  
    /* Print out any error messages */  
    
}
作者: tari    时间: 2004-8-4 16:25
poncho_wang wrote:
可是。。。编译是没有问题的阿

编译基本上只能检查语法错误
作者: poncho_wang    时间: 2004-8-4 16:26
还是成功创建part阿
我想知道,这个UF_CURVE_create_line函数如何判断是否执行成功?
会不会已经创建成功了,但是要通过一些操作才能看到?
作者: poncho_wang    时间: 2004-8-4 16:28
to tari:
偶知道只能检查语法阿,偶是说这种函数(UF_CURVE_create_line)是无法单步跟进去的阿
作者: suye007    时间: 2004-8-4 16:28
是啊,你用鼠标中键放大视图,稍微旋转一下就可以看见划出的直线了!
作者: poncho_wang    时间: 2004-8-4 16:30
好像是的哦,谢谢大家
唉,偶在UG方面真是一个白痴~~~~阿
作者: tari    时间: 2004-8-4 16:32
我用你的代码执行了一下,有结果啊
哈哈,大家忙活了半天,原来是正确的代码
作者: tari    时间: 2004-8-4 16:36
poncho_wang wrote:
好像是的哦,谢谢大家  
  唉,偶在UG方面真是一个白痴~~~~阿

如果你要用UG二次开发的话,需要懂一点UG
作者: guxiongfei    时间: 2004-8-4 17:30
线太短而已。
作者: capp301    时间: 2004-8-6 11:39
我用你的代码在我的机器上 part却不能成功创建 为什么?




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3