我有 C# 中曲线的 X 和 Y 值,我希望它们使用相同的 C# 项目以 dxf 或 dwg 文件格式绘制。
有没有办法做到这一点?
谢谢你。
很久以前,我用 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");
带有源代码的项目在这里共享。需要注意的是因为它原本是 VB 中的一些数值类型不一致(介于float
和之间double
),所以结果很好。DXF 的原始代码取自其他地方(见评论)并适应了我的需要。
CadLib可以编写 DXF 和 DWG 文件,绝对比自己通过 DXF 规范更容易。还有一些免费的库可以用来编写 DXF。如果您的要求是基本的,那么这些可能就足够了。
如果您在 C# 中生成数据,在 AutoCAD 中生成结果的最简单方法是编写 dxf 文件。dxf 文件是一个文本文件。Autodesk(AutoCAD 的制造商)在此处发布 dxf 规范。您将需要一些基本的 AutoCAD 知识(块/层/组等)来理解规范。