2009年11月9日 星期一

以 C 建立 DXF 圖檔

以 C 建立 DXF 圖檔:

#include <stdio.h>
#include <stdlib.h>
void dxf_begin(void);
void dxf_end(void);
void dxf_circle(float x,float y,float r);
//outfile 為全域變數
FILE *outfile;

int main()
{
outfile = fopen("c:\\temp\\out.dxf","w");
dxf_begin();
dxf_circle(10.0,10.0,10.0);
dxf_end();
printf("successful\n");
fclose(outfile);
return 0;
}

void dxf_begin(void)
{
fprintf(outfile,"0\nSECTION\n2\nENTITIES\n");
}


void dxf_end(void)
{
fprintf(outfile,"0\nENDSEC\n0\nEOF");
}


void dxf_circle(float x,float y,float r)
{
fprintf(outfile,"0\nCIRCLE\n8\n0\n10\n%f\n20\n%f\n30\n0.0\n40\n%f\n",x,y,r);
}



C程式產生出來的dxf文件內容如下:

0
SECTION
2
ENTITIES
0
CIRCLE
8
0
10
10.000000
20
10.000000
30
0.0
40
10.000000
0
ENDSEC
0
EOF


各行說明:

0 後面接SECTION
SECTION 這是個開始
2 後面接ENTITIES
ENTITIES 實體段
0 開始
CIRCLE 化緣的指令...POLYLINE是畫線的指令...等

8 表明以下是一個新的實體
0 後面接畫圓的參數

10 後面接圓心的x座標
10.000000
20 後面接圓心的y座標

10.000000
30 後面接圓心的z座標

0.0
40 後面接圓的半徑
10.000000
0
ENDSEC 結束指令
0
EOF 關閉文件



PS:A.I.P.繪圖指令 - 20092010

沒有留言:

張貼留言