我在C#中有一条曲线的X和Y值,我希望它们使用相同的C#项目以dxf或dwg文件格式绘制。
有办法吗?
谢谢。
答案 0 :(得分: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的一些数值类型不一致(float
和double
之间)的结果是好的。 DXF的原始代码取自其他地方(见评论),并根据我的需要进行调整。
答案 1 :(得分:1)
CadLib可以编写DXF和DWG文件,这绝对比自己通过DXF规范更容易。还有一些免费的库可用于编写DXF。如果您的要求是基本的,那么这些可能就足够了。
答案 2 :(得分:0)
如果使用C#生成数据,在AutoCAD中获得结果的最简单方法是编写dxf文件。 dxf文件是文本文件。 Autodesk(AutoCAD的制造商)发布了dxf规范here。您将需要一些基本的AutoCAD知识(块/图层/组等)来理解规范。