Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
List<TypedValue> allBlocks = new List<TypedValue>();
allBlocks.Add(new TypedValue((short)DxfCode.Start, "INSERT"));
allBlocks.Add(new TypedValue((short)DxfCode.LayoutName, "Model"));
allBlocks.Add(new TypedValue(-4, "<AND"));
allBlocks.Add(new TypedValue((short)DxfCode.ColorName, "какой-нибудь цвет"));
allBlocks.Add(new TypedValue(-4, "AND>"));
allBlocks.Add(new TypedValue(-4, "<OR"));
allBlocks.Add(new TypedValue((short)DxfCode.ColorName, "какой-нибудь цвет2"));
allBlocks.Add(new TypedValue(-4, "OR>"));
SelectionFilter allBlocksFilter = new SelectionFilter(allBlocks.ToArray());
PromptSelectionResult prResult= Acad.Document.Editor.SelectAll(allBlocksFilter);
if (prResult.Status == PromptStatus.OK)
{
}
PromptStatus я использовал нечасто (в основном когда работал с вводом пользователя), а с CurrentUserCoordinateSystem и Jig не работал никогда.)Open() напрямую, а открываю элемент из транзакции с помощью метода GetObject(), и дальше она сама заботится о закрытии объектов. Закрывать открытые в транзакции объекты методом Close() нельзя.
Создание плагинов для AutoCAD с помощью .NET API (часть 4 – вставка примитивных объектов)