Сообщество программистов Autodesk в СНГ

ADN Club => VBA => Тема начата: Пашин Евгений от 24-08-2015, 11:06:33

Название: Как переместить объекты из пространства модели в листы?
Отправлено: Пашин Евгений от 24-08-2015, 11:06:33
Требуется переместить объекты из пространства модели в листы.

1. Имеется чертеж с оформленными рамками в виде динамических блоков и объектами внутри них.
2. Требуется скопировать объекты, входящие в рамки (вместе с рамками) в листы. Объекты в пространстве модели должны остаться!!!
Название: Re: Как переместить объекты из пространства модели в листы?
Отправлено: Александр Ривилис от 24-08-2015, 22:53:14
Почитай в документации про метод CopyObjects.
Название: Re: Как переместить объекты из пространства модели в листы?
Отправлено: Александр Ривилис от 24-08-2015, 23:23:45
Ну а это для затравки:
Код - Visual Basic [Выбрать]
  1. ' Этот код копирует все примитивы из Model
  2. ' в активный Layout
  3. ' Масштабы примитивов не меняются, так что
  4. ' они вероятно окажутся за пределами вида
  5. Sub CopyModelToActiveLayout()
  6.   Dim ents() As AcadEntity
  7.   ReDim ents(ThisDrawing.ModelSpace.Count - 1)
  8.   For i = 0 To ThisDrawing.ModelSpace.Count - 1
  9.    Set ents(i) = ThisDrawing.ModelSpace.Item(i)
  10.   Next
  11.   Dim layout As AcadLayout
  12.   Set layout = ThisDrawing.ActiveLayout
  13.   ThisDrawing.CopyObjects ents, layout.Block
  14. End Sub
Название: Re: Как переместить объекты из пространства модели в листы?
Отправлено: Windcastle от 25-08-2015, 05:35:04
Ничиге себе затравочка )))) Обязательно посмотрю и попробую!!! Сегодня ответственный день. Сегодня сдача задач. И там уже решится - оставят меня или нет ))) А от этого будет зависеть - буду я Вас беспокоить или нет в дальнейшем.

P.S. Я уже нашел другое решение. Сработает - поделюсь. Проверю Ваше и отпишусь.
Название: Re: Как переместить объекты из пространства модели в листы?
Отправлено: Пашин Евгений от 25-08-2015, 12:36:41
Код - Visual Basic [Выбрать]
  1. ThisDrawing.CopyObjects ents, layout.Block

Крутая штука!!!
Название: Re: Как переместить объекты из пространства модели в листы?
Отправлено: Александр Ривилис от 25-08-2015, 12:50:43
Можно скопировать примитивы сами на себя, а потом запустить для копии команду _CHSPACE
Название: Re: Как переместить объекты из пространства модели в листы?
Отправлено: Пашин Евгений от 25-08-2015, 13:36:42
А это интересно!