| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как с командами LISP или VBA удалить видовой экран с листа?

Как с командами LISP или VBA удалить видовой экран с листа?

Ответ
Поиск в этой теме
Непрочитано 24.01.2012, 10:49 #1
Как с командами LISP или VBA удалить видовой экран с листа?
Leo_fmf
 
Инженер-программист
 
Стерлитамак
Регистрация: 26.12.2011
Сообщений: 38

Помогите пожалуйста: как с командами LISP или VBA удалить видовой экран с листа?
Просмотров: 4993
 
Непрочитано 24.01.2012, 11:30
#2
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Код:
[Выделить все]
(if (setq ss (ssget "_X" (list(cons 0 "VIEWPORT")(cons 410 (getvar "CTAB")))))
  (command "_.ERASE" ss "")
  )
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 26.01.2012, 23:28
#3
Leo_fmf

Инженер-программист
 
Регистрация: 26.12.2011
Стерлитамак
Сообщений: 38


Спасибо большое, это как раз то что мне надо, еще и проверка есть
Leo_fmf вне форума  
 
Непрочитано 13.11.2016, 03:53
#4
Theodor


 
Регистрация: 16.04.2009
Петрозаводск
Сообщений: 323


А как удалить ВЭ при помощи VBA?
Создал при помощи VBA лист, на нем по умолчанию создался ВЭ. Я создаю свой ВЭ, и тот, что по умолчанию хочу удалить.
Ну или как обратится к свойствам ВЭ, который создан по умолчанию?
Theodor вне форума  
 
Непрочитано 13.11.2016, 09:58
#5
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,004


Цитата:
Сообщение от Theodor Посмотреть сообщение
А как удалить ВЭ при помощи VBA?
Создал при помощи VBA лист, на нем по умолчанию создался ВЭ. Я создаю свой ВЭ, и тот, что по умолчанию хочу удалить.
Ну или как обратится к свойствам ВЭ, который создан по умолчанию?
Как добавляете ВЭ в коллекцию ВЭ листа - так и удаляете из этой же коллекции)
Сергей812 вне форума  
 
Непрочитано 13.11.2016, 13:46
#6
Автон

СЦБ
 
Регистрация: 09.03.2006
Иркутск
Сообщений: 78


Цитата:
Сообщение от Theodor Посмотреть сообщение
А как удалить ВЭ при помощи VBA?
Создал при помощи VBA лист, на нем по умолчанию создался ВЭ. Я создаю свой ВЭ, и тот, что по умолчанию хочу удалить.
Ну или как обратится к свойствам ВЭ, который создан по умолчанию?
Это вам лучше при создании листа переменную LAYOUTCREATEVIEWPORT в 0
Автон вне форума  
 
Непрочитано 14.11.2016, 17:40
#7
Theodor


 
Регистрация: 16.04.2009
Петрозаводск
Сообщений: 323


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Как добавляете ВЭ в коллекцию ВЭ листа - так и удаляете из этой же коллекции
Добавляю так:

Код:
[Выделить все]
Dim ViewScr As AcadPViewport
Dim VPInsert(0 To 2) As Double
VPInsert(0) = 21000 / 2 'настройка координат видового экрана на листе
VPInsert(1) = 29700 / 2
VPInsert(2) = 0
Set ViewScr = ThisDrawing.PaperSpace.AddPViewport(VPInsert, 21000, 29700)
И дальше имею определение нужного ВЭ
А как найти существующий, ненужный. И удалить?

Цитата:
Сообщение от Автон Посмотреть сообщение
Это вам лучше при создании листа переменную LAYOUTCREATEVIEWPORT в 0
Что-то ругается на переменную. Она походу в 2008 автокаде отсутствует. Хотя думаю пригодилась бы мне в данном случае.
Theodor вне форума  
 
Непрочитано 14.11.2016, 18:13
#8
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,004


Ну так навскидку, у коллекции PaperSpace есть свойство Item. Перебираете коллекцию, находите видовые экраны, если не первый и не добавленный - удаляете.
Сергей812 вне форума  
 
Непрочитано 15.11.2016, 18:12
#9
Theodor


 
Регистрация: 16.04.2009
Петрозаводск
Сообщений: 323


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Ну так навскидку, у коллекции PaperSpace есть свойство Item. Перебираете коллекцию, находите видовые экраны, если не первый и не добавленный - удаляете.
Спасибо, попробую разобраться, как отделить мой видовой от не моего.
Theodor вне форума  
 
Непрочитано 15.11.2016, 20:41
#10
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,004


Цитата:
Сообщение от Theodor Посмотреть сообщение
попробую разобраться, как отделить мой видовой от не моего.
Насколько помню, первый видовой экран - это сам лист, а затем в порядке добавления.
Сергей812 вне форума  
 
Непрочитано 17.11.2016, 21:20
#11
Theodor


 
Регистрация: 16.04.2009
Петрозаводск
Сообщений: 323


А как получить набор видовых экранов? И в каком типе этот набор искать AcadViewport или AcadPViewport?
Theodor вне форума  
 
Непрочитано 17.11.2016, 22:19
#12
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,004


в NetApi есть функция Layout.GetViewports) Не ленитесь, сделайте цикл и пошагово в цикле посмотрите - какие типы выдает коллекция Item
Сергей812 вне форума  
 
Непрочитано 18.11.2016, 15:17
#13
Автон

СЦБ
 
Регистрация: 09.03.2006
Иркутск
Сообщений: 78


здесь кое-что
http://forums.autodesk.com/t5/visual...a/td-p/1850443
Автон вне форума  
 
Непрочитано 18.11.2016, 23:40
#14
Theodor


 
Регистрация: 16.04.2009
Петрозаводск
Сообщений: 323


Сергей812, Автон, коллеги, спасибо. Вроде разобрался.
Theodor вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как с командами LISP или VBA удалить видовой экран с листа?

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как повернуть на листе видовой экран модели на 90 градусов? andrey25 AutoCAD 33 05.11.2013 09:41
Плохо видно внешнюю ссылку через видовой экран на листе casaatik AutoCAD 3 02.11.2011 12:11
Почему не работает видовой экран? n0str0m0 AutoCAD 14 21.07.2011 02:42
Как создать на "листе" нужное мне "окно " в модель? (видовой экран) azetown Программирование 8 09.06.2011 09:16
Установка масштаба при перходе в видовой экран??? scatler Программирование 3 11.05.2010 10:45