Запись в формат DXF или DWG? - PullRequest
       120

Запись в формат DXF или DWG?

2 голосов
/ 04 декабря 2011

У меня есть значения X и Y для кривой в C #, и я хочу, чтобы они отображались в формате файла dxf или dwg с использованием того же проекта C #.

Есть ли способ сделать это?

Спасибо.

Ответы [ 3 ]

5 голосов
/ 05 декабря 2011

Давным-давно я написал 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 был взят из других источников (см. Комментарии) и адаптирован к моим потребностям.

1 голос
/ 02 мая 2012

CadLib может записывать файлы DXF и DWG, что определенно проще, чем выполнять спецификацию DXF самостоятельно.Есть также несколько бесплатных библиотек для написания DXF.Если ваши требования являются базовыми, то они могут быть достаточно хорошими.

0 голосов
/ 05 декабря 2011

Если вы генерируете данные в C #, самый простой способ получить результаты в AutoCAD - это написать файл dxf.Файл DXF является текстовым файлом.Autodesk (производитель AutoCAD) публикует спецификацию dxf здесь .Вам понадобятся некоторые базовые знания AutoCAD (блоки / слои / группы и т. Д.), Чтобы понять спецификацию.

...