明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1053|回复: 4

C——〉DXF 程序个模块 索求

[复制链接]
发表于 2010-12-30 17:44:43 | 显示全部楼层 |阅读模式
谁有比较完整的 基于 dxf 用 C语言 编写dxf文件的各个模块  例如
#include "stdio.h"
#include "string.h"
FILE *fp;
/*接口程序*/
/*建立一个DXF新文件,并生成实体段标题段的函数*/
begin()
{
char fname[50];
printf("Enter DXF file name:\n");
    scanf("%s",fname);
strcat(fname,".dxf");
fp=fopen(fname,"w+");
fprintf(fp,"  0\nSECTION\n  2\nENTITIES\n");
}
/*写直线实体*/
line(float xs,float ys,float xe,float ye)
{
fprintf(fp,"  0\nLINE\n  8\n0\n");
    fprintf(fp," 10\n%f\n",xs);
fprintf(fp," 20\n%f\n",ys);
fprintf(fp," 30\n0.0\n");
fprintf(fp," 11\n%f\n",xe);
fprintf(fp," 21\n%f\n",ye);
fprintf(fp," 31\n0.0\n");
}
/*写圆实体函数,已知圆心和半径*/
circle(float xc,float yc ,float r)
{
fprintf(fp,"  0\nCIRCLE\n  8\n0\n");
    fprintf(fp," 10\n%f\n",xc);
fprintf(fp," 20\n%f\n",yc);
fprintf(fp," 30\n0.0\n");
fprintf(fp," 40\n%f\n",r);
}
/*写圆弧实体函数,已知圆心,半径,起始角和终止角*/
arc(float xc,float yc,float r,float ang1, float ang2)
{
fprintf(fp,"  0\nARC\n  8\n0\n");
    fprintf(fp," 10\n%f\n",xc);
fprintf(fp," 20\n%f\n",yc);
fprintf(fp," 30\n0.0\n");
fprintf(fp," 40\n%f\n",r);
fprintf(fp," 50\n%f\n",ang1);
    fprintf(fp," 51\n%f\n",ang2);
}
/*生成段尾和文件结束符号的函数,并关闭DXF文件*/
ending()
{
fprintf(fp,"  0\nENDSEC\n  0\nEOF\n");
fclose(fp);
}

main()
{
float x0=0,y0=0,b=50,h=70,d=25;
// printf("Enter x0,y0,b,h,d:\n");
// scanf("%f,%f,%f,%f,%f",&x0,&y0,&b,&h,&d);
begin();
line(x0,y0,x0+b,y0);
line(x0+b,y0,x0+b,y0+h);
arc(x0+b/2,y0+h,b/2,0,180);
line(x0,y0+h,x0,y0);
circle(x0+b/2,y0+h,d/2);
ending();
}

有的话分享一下吧  

发表于 2011-1-3 14:54:40 | 显示全部楼层
你可以先自己看看DXF Reference
 楼主| 发表于 2011-1-3 23:46:30 | 显示全部楼层
回复 cdinten 的帖子

是在这个论坛里面吗 ?在哪?
发表于 2011-1-4 12:06:04 | 显示全部楼层
 楼主| 发表于 2011-1-4 19:33:49 | 显示全部楼层
回复 cdinten 的帖子

thank you very much
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 22:29 , Processed in 0.172710 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表