十五年专注于
液压缸筒生产

全国咨询热线:
400-086-9833

   热门关键词修理 加工 活塞杆 缸筒 不锈钢

无标题文档

天圆液压产品中心

当前位置:主页 > 行业资讯 >

AutoCADamp;nbsp;绗磨管在有限元前处理赏罚中的应用

时间:2016-11-05 08:00来源:来自网络 作者:天圆液压 点击:
前处理赏罚宣布时刻:2006-08-02 要害字: 处理赏罚 有限 应用 文件 fprintf dxf 节点 code wf 网格 AutoCAD是一种通用的交互式图形软件。对AutoCAD举办二次开拓,通过获取AutoCAD体系提供的用于图形信息互换的文件(文件扩显现名为“.dxf”),而且体例响应的接口程

  { fprintf(wf,\\\\"%f\\\\",doty[i]);

  图3 在AutoCAD平台上表现天生的网格

  fscanf(dxf,\\\\"%d\\\\",&code);

  四、措施声名

  for( i=1;i<=(nd-1);i++)

  scanf(\\\\"%s\\\\",fname);

  }

  printf(\\\\" the points'number is %d\\\\",nd-1);

  void output(void);

     fprintf(fp,\\\\" 20 %f \\\\",doty[sanjiao[i1][i2]-1]);

  exit(0);}

  {

  }while(code!=20);

    for(i2=0;i2<=2;i2++)

  }

  { int i;

  void extpoint(void) 获取节点的坐标

  fscanf(dxf,\\\\"%s\\\\",value);

  char fname[24];

       }

  printf(\\\\" input the name of DXF :\\\\"); 输入dxf文件名

  2.中分工具

  {

  wf=fopen(\\\\"shuju.dat\\\\",\\\\"w\\\\") ; 节点信息生涯在文件“shuju.dat”里

  1.节点的配置

  output();  输出节点信息的子措施

  else {if(code==20){fscanf(dxf,\\\\"%f\\\\",&doty[nd]);nd++;} 获取Y轴坐标

    { fprintf(fp,\\\\" 0 LINE  8 0 \\\\");

  图2 界线线中分及配置网格密度节制点

  fprintf(wf,\\\\"float dotx[1000]={0,\\\\"};依照C说话名目输出数据

  #include \\\\"shuju.h\\\\" 

  char value[64];

  Select object to divide: (选择中分工具);

  图 1 Point Style设定对话框

  fp=fopen(\\\\"drawout.dxf\\\\",\\\\"w\\\\");  成立一个图形交互文件

前处理赏罚宣布时刻:2006-08-02 要害字: 处理赏罚 有限 应用 文件 fprintf dxf 节点 code wf 网格 AutoCAD是一种通用的交互式图形软件。对AutoCAD举办二次开拓,通过获取AutoCAD体系提供的用于图形信息互换的文件(文件扩显现名为“.dxf”),而且体例响应的接口措施,可以利便地举办有限元说明的界线节点的配置,还可操作AutoCAD平台表现已天生的网格,这样大大减轻了有限元说明师的事变量,并能随时节制天生网格的品格。

  }

  for( i=1;i<=(nd-1);i++)

  void output()

  行使“Divide”呼吁实现中分工具。

  fscanf(dxf,\\\\"%f\\\\",&dotx[nd]);

  void extract()

  一、界线节点的自动分别

     fprintf(fp,\\\\" 21 %f \\\\",doty[sanjiao[i1][i2+1]-1]);

  #include

  }

  fprintf(wf,\\\\"};\\\\");

  Enter the number of segments or[block]: (用户输入中分数);

  fprintf(fp,\\\\" 0 SECTION  2 ENTITIES \\\\"); 写入实体开始段

  float dotx[1000],doty[1000]; 存储节点坐标的数组

  }

  二、获取界线节点坐标的接口措施

  fprintf(fp,\\\\" 0 ENDSEC  0 EOF \\\\"); 写入DXF文件竣事段

  int code;

     }

  在AutoCAD的“Command:”提醒下,挪用DXFIN呼吁,导入drawout.dxf,即可获得天生网格的图形,如图3所示。

  fscanf(dxf,\\\\"%d\\\\",&code);

  fclose(fp);

  fscanf(dxf,\\\\"%s\\\\",value);

  void extpoint(void);

  if(code==10)   获取X轴坐标

  int nl=0,nd=1;

  main()

  #include

  strcat(fname,\\\\".dxf\\\\");

  void extract(void);

  {printf(\\\\"fail \\\\");

  fclose(wf);

  for(i1=1;i1<=nsan;i1++)

  FILE *dxf,*wf ; 文件指针声名

  if(i<(nd-1)) fprintf(wf,\\\\",\\\\");

  fscanf(dxf,\\\\"%d\\\\",&code);

  { fprintf(wf,\\\\"%f\\\\",dotx[i]);

     fprintf(fp,\\\\" 10 %f \\\\",dotx[sanjiao[i1][i2]-1]);

  Command: _divide (或键盘输入Divide呼吁);

  extract();  获取节点坐标的子措施 

  }while((code!=0)||(strcmp(value,\\\\"ENDSEC\\\\")!=0));声名实体段竣事

  将弹出“Save Drawing As”对话框,输入文件名即可。

  五、 结论

  AutoCAD可以接管穷乏恣意一些表、段的DXF文件,因此,编写只天生“ENTITIES”段和文件末了的DXF文件,可以利便地写入表现三角形网格的DXF文件。头文件shuju.h里包括有已天生的网格各三角形单位的的极点编号,缸筒,它们生涯在数组sanjiao[1000][4]以及三角形单位的总数nsan,各节点的坐标dotx[1000],doty[1000]。措施运行后天生AutoCAD可以或许识此外DXF文件,文件名为”drawout.dxf”。

  3.文件生涯

  #include

  #include

     }while((code!=0)||strcmp(value,\\\\"SECTION\\\\")!=0);声名实体段开始

  fclose(dxf);

  }

  将图形文件生涯为DXF文件。

  从现实应用环境看,本文给出的措施可以或许利便精确地完成有限元网格天生中界线节点的配置以及表现已天生网格的图形。

  可中分工具包罗直线、圆、圆弧、椭圆、椭圆弧、多义线和样条曲线。为了节制网格密度,可以在图形上插手节制点,如图2所示。

  }while((code!=2)||strcmp(value,\\\\"ENTITIES\\\\")!=0);

  Command: Dxfout (键盘输入)

  }

  }

  if(code==0&&strcmp(value,\\\\"POINT\\\\")==0) extpoint(); “code”和 “POINT”为声名点的组代码及跟从值

     fprintf(fp,\\\\" 11 %f \\\\",dotx[sanjiao[i1][i2+1]-1]);

  #include

       else fscanf(dxf,\\\\"%s\\\\",value);

  do{

  fprintf(wf,\\\\"};\\\\");

  操作AutoCAD为用户提供的“Point Style”菜单呼吁,配置节点的表现状态和尺寸巨细,配置对话框如图1所示。执行键盘输入呼吁名目如下:Command: Ddptype(键盘输入)。

  printf(\\\\" ok! \\\\");

  三、在AutoCAD平台上表现网格的接口措施

  { do{

  fprintf(wf,\\\\" float doty[1000]={0,\\\\");

  选择点的范例可以通过选择图形菜单中的点,而且在“Point Size”编辑框中设定点的巨细。

  { FILE *fp;

  main()

  {

  do{

     fscanf(dxf,\\\\"%d\\\\",&code);

  int i1,i2;

  do{

     fscanf(dxf,\\\\"%s\\\\",value);

  if(i<(nd-1)) fprintf(wf,\\\\",\\\\");

  if((dxf=fopen(fname,\\\\"r\\\\"))==NULL)

缸筒 (责任编辑:admin)
分享按钮
------分隔线----------------------------