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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > как получить список всех видов в чертеже

как получить список всех видов в чертеже

Ответ
Поиск в этой теме
Непрочитано 21.02.2006, 06:24 #1
как получить список всех видов в чертеже
Димас
 
джедай
 
Магадан
Регистрация: 31.01.2005
Сообщений: 460

Собственно сабж
Как можно получить список всех видов в чертеже?
Просмотров: 5457
 
Непрочитано 21.02.2006, 07:27
#2
_Andre_

механизатор
 
Регистрация: 28.12.2004
Самара
Сообщений: 312
<phrase 1=


Вроде бы функция (vports) возвращает список видовых окон и координат нижнего левого и верхнего правого углов.
_Andre_ вне форума  
 
Автор темы   Непрочитано 21.02.2006, 07:31
#3
Димас

джедай
 
Регистрация: 31.01.2005
Магадан
Сообщений: 460
<phrase 1=


немного не точно выразился.
нужно получить список всех Named Views (не знаю как будет в русской версии). т.е. список всех систем координат.

точнее список всех пользовательских систем координат.
Димас вне форума  
 
Непрочитано 21.02.2006, 09:17
#4
maxw


 
Сообщений: n/a


Присоединяюсь к вопросу. Я в свое время задавал аналогичный вопрос и к сожалению никто подобного решения не предложил. Хотел иметь функционал просмотра поименованных видов по по кругу. Может кто что накопал за это время?
 
 
Непрочитано 21.02.2006, 09:24
#5
Лентяй

Project Engineer
 
Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392


Цитата:
Сообщение от Димас
немного не точно выразился.
нужно получить список всех Named Views (не знаю как будет в русской версии). т.е. список всех систем координат.
точнее список всех пользовательских систем координат.
Это не просто, а очень просто.
Код:
[Выделить все]
(vlax-for us (vla-get-UserCoordinateSystems
               (vla-get-ActiveDocument (vlax-get-acad-object)))
  (print (vla-get-name us)))
А вы хочите функций, то так.
Код:
[Выделить все]
(defun UCSLst ( / us_lst)
  (setq adoc (vla-get-ActiveDocument (vlax-get-acad-object))
        ucss (vla-get-UserCoordinateSystems adoc))
  (vlax-for us ucss (setq us_lst (cons (vla-get-name us) us_lst)))
    (foreach n us_lst (print n))
);end
Лентяй вне форума  
 
Непрочитано 21.02.2006, 09:31
#6
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,835


Код:
[Выделить все]
;|=============================================================================
*    Возвращает список имен Named Views активного документа.
* Если именованные виды не определены, вернет nil
*    Параметры вызова:
*	Нет
*    Примеры вызова:
(_kpblc-views-get-names)
=============================================================================|;
(defun _kpblc-views-get-names (/ adoc res)
  (vl-load-com)
  (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
  (vlax-for item (vla-get-views adoc)
    (setq res (append res (list (vla-get-name item))))
    ) ;_ end of vlax-for
  res
  ) ;_ end of defun
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 21.02.2006, 09:56
#7
VVA

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


;;;Список элементов символьных таблиц АвтоКАДа
;;; - s- имя таблицы
;;;Пример - список всех слоев - (setq all_layers (tablelist "LAYER"))
Код:
[Выделить все]
(defun tablelist (s / d r)
  (while (setq d (tblnext s (null d)))
    (setq r (cons (cdr (assoc 2 d)) r)))
)
(tablelist "VIEW")-список именованных видов
VVA вне форума  
 
Автор темы   Непрочитано 21.02.2006, 10:11
#8
Димас

джедай
 
Регистрация: 31.01.2005
Магадан
Сообщений: 460
<phrase 1=


Цитата:
Сообщение от VVA
;;;Список элементов символьных таблиц АвтоКАДа
;;; - s- имя таблицы
;;;Пример - список всех слоев - (setq all_layers (tablelist "LAYER"))
Код:
[Выделить все]
(defun tablelist (s / d r)
  (while (setq d (tblnext s (null d)))
    (setq r (cons (cdr (assoc 2 d)) r)))
)
(tablelist "VIEW")-список именованных видов
спасибо огромное, насколько понял - tablelist это массив?
к сожалению на в лиспе я не особо, может подскажете возможно ли тоже самое на basic'е? ((
Димас вне форума  
 
Непрочитано 21.02.2006, 10:48
#9
fixo

Lisp/VBA/VB.NET Hobbyist
 
Регистрация: 24.03.2005
Славен Град Петров
Сообщений: 367


Будет корректней сохранять имя автора этого шедевра

Авторский вариант:
Код:
[Выделить все]
;Written By Michael Puckett.
(defun Table (s / d r)
(while (setq d (tblnext s (null d)))
(setq r (cons (cdr (assoc 2 d)) r))
)
)
~'J'~
fixo вне форума  
 
Непрочитано 21.02.2006, 10:57
#10
VVA

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


>Fatty Пользуюсь давно, а имя не удосужился сохранить
Оплошность исправил
VVA вне форума  
 
Непрочитано 21.02.2006, 11:07
#11
VVA

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


>Димас tablelist - это список.
Код:
[Выделить все]
(setq view_list (tablelist "VIEW")) ;_запоминаем им. виды в список
(foreach item view_list
(princ "\nИменованный вид : ")(princ item)
)
(princ "\nВсего :")(princ (length view_list))
К сожалению я на basice не особо.
VVA вне форума  
 
Непрочитано 21.02.2006, 11:09
#12
fixo

Lisp/VBA/VB.NET Hobbyist
 
Регистрация: 24.03.2005
Славен Град Петров
Сообщений: 367


Цитата:
Сообщение от VVA
>Fatty Пользуюсь давно, а имя не удосужился сохранить
Оплошность исправил
Кстати, очень интересный стиль у этого достопочтенного
джентльмена, не говоря уже об уровне
Можно посмотреть здесь (его nickname MP):
http://www.theswamp.org/forum/index.php?board=2.0

(нужна регистрация)

~'J'~
fixo вне форума  
 
Автор темы   Непрочитано 22.02.2006, 02:29
#13
Димас

джедай
 
Регистрация: 31.01.2005
Магадан
Сообщений: 460
<phrase 1=


Спасибо буду разбираться)
Димас вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > как получить список всех видов в чертеже

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

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