dwg.ru forum rss xml
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму |

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

LISP. Компоновка видовых экранов на лист.

Версия для печати
 
Ответ
Опции темы Поиск в этой теме
Непрочитано 25.08.2011, 11:22 3 |
LISP. Компоновка видовых экранов на лист.
YRat
 
Support - ACD, ASD, ACA, ACM, RAC, RST
 
Stuttgart-Петербург
Регистрация: 19.10.2004
Сообщений: 238

YRat вне форума Вставить имя

Смысл и применение

Идем в пространство листа, жмем кнопку или вводим с клавиатуры AF
Программа прыгвет в модель, вы задаете область модели, которую хотите разместить в видовом экране, масштаб и.. и расополагаете разещенный уже на вашем курсоре видовой экран.

Код:
[Выделить все]
;Ansichtsfenster erzeugen.
;(c)2011 iLkraret (ilkraret@gmail.com)

(defun c:af ( / )
	(setvar "cmdecho" 0) ; Turn off command line echoing
	(setq layoutname (getvar "ctab")); Store current tab name

	(if (/= layoutname "Model") ; Must be started from a layout tab to establish destination, quit quietly if on Model tab
		(progn
			(setvar "tilemode" 1) 
			(setq modellunitsmulti 1)
			
			(setq p1 (getpoint "\nУкажите одну из вершин области: "))  
			(setq p2 (getcorner p1 "\nУкажите противоположную вершину области: "))

			(setq units (getvar "insunits")); Store current insunits

			(if (equal units 1) (setq modellunitsmulti 25.4))
			(if (equal units 2) (setq modellunitsmulti 304.8))
			(if (equal units 3) (setq modellunitsmulti 1609344))
			(if (equal units 5) (setq modellunitsmulti 10))
			(if (equal units 6) (setq modellunitsmulti 1000))
			(if (equal units 7) (setq modellunitsmulti 1000000))
			(if (equal units 8) (setq modellunitsmulti 25400000))
			(if (equal units 9) (setq modellunitsmulti 25400))
			(if (equal units 10) (setq modellunitsmulti 914.4))
			(if (equal units 11) (setq modellunitsmulti 0.0000001))
			(if (equal units 12) (setq modellunitsmulti 0.000001))
			(if (equal units 13) (setq modellunitsmulti 0.001))
			(if (equal units 14) (setq modellunitsmulti 100))
			(if (equal units 15) (setq modellunitsmulti 10000))
			(if (equal units 16) (setq modellunitsmulti 100000))
			(if (equal units 17) (setq modellunitsmulti 10000000000000))
			(if (equal units 18) (setq modellunitsmulti 149597806297768))
			(if (equal units 19) (setq modellunitsmulti 9460469428493040000))
			(if (equal units 20) (setq modellunitsmulti 30856959478640800000))

			(setq mass (getreal  "\nMasstab - 1:"))
			(setq vpxd (* (/ (abs (- (car p1) (car p2))) mass) modellunitsmulti)) ; Determine horizontal length of selected window
			(setq vpyd (* (/ (abs (- (cadr p1) (cadr p2))) mass) modellunitsmulti)) ; Determine vertical height of selected window
			(setq vpc (list (/ (+ (car p1) (car p2)) 2.0) (/ (+ (cadr p1) (cadr p2)) 2.0) 0.0)) ; Determine center point of selected model window
			(setvar "ctab" layoutname)
			(command "_mview" "0,0" (strcat "@" (rtos vpxd) "," (rtos vpyd))) ; Create Paper Space viewport
			(setq ssvp (ssget "_L")) ; Start selection set with last viewport frame
			(command "_mspace") ; Open viewport window to Model Space
			(command "_zoom" "_C" vpc (rtos vpyd)) ; Center view of viewport window using determined point
			(command "_zoom" "_SCALE" (strcat (rtos (/ modellunitsmulti mass)) "xp")) ; Set zoom scale of viewport window
			(command "_vports" "_LOCK" "_ON" ssvp "") ; Lock scale and position of model in viewport
			(command "_pspace") ; Close viewport window
 
			(command "._move" ssvp "" "0,0" pause )
		)
		(princ "\nThis command must be started from a layout sheet!") ; Need to start on a layout tab so program knows where to create the new viewports
	) 
(setvar "cmdecho" 1) ; Turn on command line echoing
)
__________________
без DWG мы никуда - и не туда, и не сюда...
Спасибо за то, что Вы есть, коллеги ;)

Последний раз редактировалось YRat, 08.11.2011 в 23:12.
Просмотров: 18155
 
Непрочитано 27.02.2014, 10:33
#41
RNB

Проектирование мостов
 
Регистрация: 29.01.2014
Новосибирск
Сообщений: 389


Цитата:
Сообщение от San-_-13 Посмотреть сообщение
А суть моей проблемы по поводу Lispa заключается в следующем...я ввожу команду "AF" из пространства листа, меня автоматически перебрасывает в пространство модели, где мне нужно обвести нужную мне область рамкой и указать нужный мне масштаб ( в котором будем размещена моя деталь например). Например, я обвожу рамкой какую-то область и вписываю масштаб 1:20, в пространстве листа создается видовой экран но в каком-то непонятном масштабе, далеко не в 1:20.
У кого нибудь была проблема такого рода? как-то лечил это?
Вводить нужно не 1:20, а 20
RNB вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 27.02.2014, 11:09
#42
San-_-13


 
Регистрация: 21.02.2014
Сообщений: 7


Цитата:
Сообщение от RNB Посмотреть сообщение
Вводить нужно не 1:20, а 20
Ну это понятно, я так и делаю (видимо не корректно написал в предыдущем посте). Видовой экран создается либо в масштабе 1:1 или вообще в произвольном(((
San-_-13 вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 27.02.2014, 11:35
#43
RNB

Проектирование мостов
 
Регистрация: 29.01.2014
Новосибирск
Сообщений: 389


Цитата:
Сообщение от San-_-13 Посмотреть сообщение
Ну это понятно, я так и делаю (видимо не корректно написал в предыдущем посте). Видовой экран создается либо в масштабе 1:1 или вообще в произвольном(((
У меня команда вела себя некорректно однажды. Не знаю, как это влияло на программу, но очень сильно отдалена была область печати на листе. Когда приблизил область печати, всё встало на свои места.
Как вариант, попробуйте область печати настроить и приблизить (танцы с бубном какие-то, но может быть поможет...)
RNB вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 27.02.2014, 12:27
#44
maratovich


 
Регистрация: 12.07.2009
г. Самара
Сообщений: 2,112
Отправить сообщение для maratovich с помощью Skype™


Цитата:
Сообщение от San-_-13 Посмотреть сообщение
Ну это понятно, я так и делаю (видимо не корректно написал в предыдущем посте). Видовой экран создается либо в масштабе 1:1 или вообще в произвольном(((
Подтверждаю - глюк присутствует.
Почему не знаю, в лиспе не шарю, но у меня лечится так (в одной вкладке выполнять подряд):
1. Пробую вставить с масштабом 20 - фигня
2. Пробую вставить с масштабом 1 - норма
3. Это и последующие вставить с масштабом 20 - норма.

----- добавлено через ~2 мин. -----
San-_-13 сервис пак установлен ?
__________________
Вопрос : Где находится Тургай ? Ответ : Между Парагваем и Уругваем.....
maratovich вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 05.03.2014, 17:23
#45
San-_-13


 
Регистрация: 21.02.2014
Сообщений: 7


Цитата:
Сообщение от maratovich Посмотреть сообщение
Подтверждаю - глюк присутствует.
Почему не знаю, в лиспе не шарю, но у меня лечится так (в одной вкладке выполнять подряд):
1. Пробую вставить с масштабом 20 - фигня
2. Пробую вставить с масштабом 1 - норма
3. Это и последующие вставить с масштабом 20 - норма.

----- добавлено через ~2 мин. -----
San-_-13 сервис пак установлен ?
Сервис пак установлен первый, хотя не совсем понимаю связь. Попробовал ваш метод, к сожалению он не работает( в масштабе 1:1 вставляется нормально все, но если указывать какой-то другой масштаб происходит то, что я описал выши. Да и вообще я думаю, что если человек выкладывает это как "готовый" продукт, то и это должно работать, так как написано в "пособию по применению". Жаль, что решение проблемы видимо тут не будет(.
San-_-13 вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 05.03.2014, 18:03
#46
Лада Калина Универсал


 
Регистрация: 05.03.2014
Сообщений: 14


А у меня программа делает ошибку:

Команда: af Восстановление кэшированных видовых экранов.

Укажите одну из вершин области:
Укажите противоположную вершину области:
Masstab - 1:
; ошибка: неверный тип аргумента: numberp: nil
Лада Калина Универсал вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 08.04.2014, 10:41
#47
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,413


Когда то писал для себя такое. Теперь приходится поддерживать и развивать по замечаниям трудящихся.
Если интересно, то скачать можно тут :http://experement.spb.ru/wiki/doku.php?id=vport_pp
Видео тут: http://youtu.be/JRU4YrkzDPc
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 08.04.2014, 11:11
#48
maratovich


 
Регистрация: 12.07.2009
г. Самара
Сообщений: 2,112
Отправить сообщение для maratovich с помощью Skype™


Boxa, спасибо, интересный вариант, добавил в общий список
Думаю против не будешь
__________________
Вопрос : Где находится Тургай ? Ответ : Между Парагваем и Уругваем.....
maratovich вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 08.04.2014, 12:18
#49
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,413


Цитата:
Сообщение от maratovich Посмотреть сообщение
Boxa, спасибо, интересный вариант, добавил в общий список
Думаю против не будешь
не буду. =) Потому и дал ссылку.
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 09.04.2014, 10:40
#50
San-_-13


 
Регистрация: 21.02.2014
Сообщений: 7


Цитата:
Сообщение от Boxa Посмотреть сообщение
Когда то писал для себя такое. Теперь приходится поддерживать и развивать по замечаниям трудящихся.
Если интересно, то скачать можно тут :http://experement.spb.ru/wiki/doku.php?id=vport_pp
Видео тут: http://youtu.be/JRU4YrkzDPc
Спасибо большое, это куда интереснее..но, есть несколько вопросов и пожеланий.
1. Можно ли сделать, что-бы при создания видового экрана он сразу блокировался??
2. И может быть офтопный вопрос, но не подскажете, как добавить .dll фаил в автозагрузку(аналог автозагрузки .lisp)?
Спасибо.
San-_-13 вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 09.04.2014, 20:23
#51
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,413


1. Можно, а вот нужно ли?
2. Вот тут расписывал: http://experement.spb.ru/wiki/doku.php?id=setup_acaddll
Не за что.
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 17.04.2014, 18:21
#52
shartal


 
Регистрация: 12.08.2009
Сообщений: 314


Для nik_mb. Задается только стандартный масштаб видового экрана. Масштаб аннотаций остается неизменным. Можно это исправить, иначе при использовании аннотац. объектов вся процедура теряет смысл.
shartal вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 03.07.2017, 12:37
#53
tujn08


 
Регистрация: 26.12.2013
Сообщений: 210


Кто мне поможет с созданием многоугольных видовых экранов?
_-vports - какое обращение к функции?
tujn08 вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 03.07.2017, 13:49
#54
Сергей812


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


Цитата:
Сообщение от tujn08 Посмотреть сообщение
_-vports - какое обращение к функции?
ну, как минимум, с точкой:
Цитата:
_.-VPORTS
ключи - "_P" - многоугольный, в конце построения закрыть - "_C".
Сергей812 вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 03.07.2017, 13:54
#55
tujn08


 
Регистрация: 26.12.2013
Сообщений: 210


Код:
[Выделить все]
 (command "_-vports" "_p" point point2 point3 point4 point5 "_C")
Спасибо! вот искал ключ "_C"
tujn08 вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 03.07.2017, 14:20
#56
Сергей812


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


А чего его искать, с вероятностью 90% - "Close")
Сергей812 вне форума вставить имя Обратить внимание модератора на это сообщение  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > LISP. Компоновка видовых экранов на лист.

Инженерные консультации
Опции темы Поиск в этой теме
Поиск в этой теме:

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

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Копирование видовых экранов с листа на др. лист Алексий K AutoCAD 23 14.05.2015 13:31
Фатал эррор при переходе с модели на лист с большим количеством видовых окон Serikdjan AutoCAD 14 28.04.2011 10:03
Ищу листы Специальной карты Европейской России М:1дюйм-10верст KSI Поиск литературы, чертежей, моделей и прочих материалов 6 19.04.2009 12:04
Содержимое видовых экранов (в ПЛ) плавает при кручении колеса мыши JokerrSergh AutoCAD 29 29.12.2008 13:16

|| Главная || Каталог САПР || Тендеры || Публикации || Объявления || Биржа труда || Download || Галерея ||
|| Библиотека || Кунсткамера || Каталог предприятий || Контакты || Файлообменник || Блоги ||


Размещение рекламы