写入dxf或dwg格式?

问题描述 投票:2回答:3

我在C#中有一条曲线的X和Y值,我希望它们使用相同的C#项目以dxf或dwg文件格式绘制。

有没有办法做到这一点?

谢谢。

c# autocad dxf dwg
3个回答
1
投票

CadLib可以编写DXF和DWG文件,绝对比自己通过DXF规范更容易。还有一些免费的库可用于编写DXF。如果您的要求是基本的,那么这些可能就足够了。


5
投票

很久以前我用VB.NET 2003编写了一个DXF编写器,我已经转换为C#。它有线,圆,弧,文本,尺寸,矩形,折线和点的方法。你这样使用它:

DxfMaker dxf = new DxfMaker();

float[,] points = new float[,]
{
    { 0, 10 },
    { 1, 12 },
    { 2, 17 },
    { 3, 14 },
    { 4, 9  }
};
int N = points.GetLength(0);
for (int i = 1; i < N; i++)
{
    dxf.DXF_Line(
        points[i - 1, 0], points[i - 1, 1], 0,
        points[i, 0], points[i, 1], 0);
}

dxf.DXF_Save("curve.dxf");

包含源代码的项目是共享的here。警告是因为它原来是VB的一些数值类型不一致(floatdouble之间)的结果都不错。 DXF的原始代码取自其他地方(见评论),并根据我的需要进行调整。


0
投票

如果要使用C#生成数据,则在AutoCAD中获得结果的最简单方法是编写dxf文件。 dxf文件是文本文件。 Autodesk(AutoCAD的制造商)发布了dxf规范here。您将需要一些基本的AutoCAD知识(块/层/组等)来理解规范。

© www.soinside.com 2019 - 2024. All rights reserved.