У меня есть значения X и Y для кривой в С#, и я хочу, чтобы они были нарисованы в формате файла dxf или dwg с использованием одного и того же проекта С#.
Есть ли способ сделать это?
Спасибо.
У меня есть значения X и Y для кривой в С#, и я хочу, чтобы они были нарисованы в формате файла dxf или dwg с использованием одного и того же проекта С#.
Есть ли способ сделать это?
Спасибо.
CadLib может создавать файлы DXF и DWG, что определенно проще, чем самостоятельное изучение спецификации DXF. Также есть несколько бесплатных библиотек для написания DXF. Если ваши требования являются базовыми, то этого может быть достаточно.
Давным-давно я написал программу записи DXF на VB.NET 2003, которую я преобразовал в 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 был взят откуда-то (см. комментарии) и адаптирован под мои нужды.
Если вы генерируете данные на C#, самый простой способ получить результаты в AutoCAD — это написать файл dxf. Файл dxf представляет собой текстовый файл. Autodesk (разработчик AutoCAD) публикует спецификацию dxf здесь. Вам понадобятся некоторые базовые знания AutoCAD (блоки/слои/группы и т. д.), чтобы понять спецификацию.