Здравствуйте. Скажите, можно ли в autoCAD объекты чертежа редактировать по его ID. Постараюсь кратко ввести в курс дело:
1. У меня есть метод, который должен изменить координаты точки/окружности/линии(2 точки) и их высоту.
2. Со слоем проблем нет, я просто вызываю метод, блокирую чертеж, проверяю id_слоя и по нахождению нужного мне ID меняю его атрибуты
3. Не нашел хорошего примера, как можно по такому же принципу редактировать графические примитивы.
пытался работать с текущим набором через SelectAll(), брал entity. Но проблема в том, что entity, как я понимаю, это некий абстрактный объект, а не конкретный. И через нее я не могу задать новые значения координат для объекта. Пытался сделать так:
PromptSelectionResult getSel = doc.Editor.SelectAll();
if (getSel.Status == PromptStatus.OK)
{
SelectionSet selSet = getSel.Value;
foreach (SelectedObject selObj in selSet)
{
if (selObj.ObjectId != null)
{
DBPoint point = trans.GetObject(selObj.ObjectId, OpenMode.ForWrite) as DBPoint;
if (point != null)
{
point.Position.X = X1;
}
}
}
}
Но столкнулся с такой проблемой, что свойства DBPoint.X не имеет возможности установки (has no setter)
Подскажите пожалуйста, можно ли по такому принципу, как я хочу редактировать объекты, и если да, то как именно?
Возможно нужно делать данную процедуру иным способом?
Буду благодарен за помощь