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

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

Программно создать несколько файлов с их дальнейшей анимацией?

Ответ
Поиск в этой теме
Непрочитано 02.12.2011, 19:08 #1
Программно создать несколько файлов с их дальнейшей анимацией?
solo123
 
Регистрация: 19.08.2009
Сообщений: 91

Надо создать анимацию: раздвигается дверь.

Вобщем сам процесс анимации я буду осуществлять в проге GIF animator, но для этой проги мне нужны исходные bmp файлы котырые я получаю, экспортируя из акада каждый DWG файл рисунка, тоесть каждый кадр я экспортирую в bmp и далее собираю их в GIF animator-е в анимацию.Сложность заключается в том, что этим надо очень долго и упорно заниматься. Нарисовать для меня программно раздвижную дверь не проблема. Но как программно сохранить каждый кадр после перемещения двери хотябы в dwg формате? Буду очень благодарен за помощь, в решении этой проблемы.
Просмотров: 6080
 
Непрочитано 02.12.2011, 20:00
#2
BoogeyMan

Архитектор
 
Регистрация: 13.09.2008
Екатеринбург
Сообщений: 1,208


полотно (движущуюся часть двери) раскопировать на разные слои под разными углами открывания
и включать их поочередно
(но как это сделать програмно и в Автокад я незнаю)
__________________
BIM for SIPs construction
BoogeyMan вне форума  
 
Непрочитано 02.12.2011, 22:38
#3
Кулик Алексей aka kpblc
Moderator

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


Проще тогда уж программно через Rotate менять вхождение полотна и формировать выходные файлы.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.12.2011, 22:54
#4
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


а почему это не делать в специализированном софте, например в 3D Max? Как-то у народа в последнее время обострилось желание использовать AutoCAD не по назначению...
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 03.12.2011, 10:44
#5
BoogeyMan

Архитектор
 
Регистрация: 13.09.2008
Екатеринбург
Сообщений: 1,208


3Д Макс еще изучить надо
а перед этим еще достать дистрибутив
русификатор

а тут программа в которой ты каждый день работаешь
__________________
BIM for SIPs construction
BoogeyMan вне форума  
 
Непрочитано 03.12.2011, 16:53
#6
Oliver_88

"ценный кадр"
 
Регистрация: 02.12.2010
Сообщений: 115
<phrase 1=


Код:
[Выделить все]
 (defun test ( / *active_document* acad_obj l1 l2 util selset_p_doc x)
  (vl-load-com)
  (setq
    *active_document* (vla-get-ActiveDocument
			(setq acad_obj
			       (vlax-get-acad-object)
			      )
			)
    )
  (setq model_p_doc (vla-get-ModelSpace *active_document*))
  (setq util (vla-get-Utility *active_document*))
  (vla-AddLine
    model_p_doc
    (vlax-3d-point '(-50.0 0.0 0.0))
    (vlax-3d-point '(50.0 0.0 0.0))
    )
  (setq l1
	 (vla-AddLine
	   model_p_doc
	   (vlax-3d-point '(0.0 0.0 0.0))
	   (vlax-3d-point '(0.0 50.0 0.0))
	   )
	)
  (setq l2
	 (vla-AddLine
	   model_p_doc
	   (vlax-3d-point '(0.0 0.0 0.0))
	   (vlax-3d-point '(0.0 50.0 0.0))
	   )
	)
  (if
    (vl-catch-all-error-p
      (setq selset_p_doc
	     (vl-catch-all-apply
	       'vla-Add
	       (list
		 (vla-get-SelectionSets *active_document*) "1"
		 )
	       )
	    )
      )
    (setq selset_p_doc (vla-Item (vla-get-SelectionSets *active_document*) "1"))
    )
  (setq x 5)
  (repeat 10
	(vla-Move
	  l1
	  (vlax-3d-point '(0.0 0.0 0.0))
	  (vla-PolarPoint util
	    (vlax-3d-point '(0.0 0.0 0.0))
	    0 5)
	  )
	(vla-Move
	  l2
	  (vlax-3d-point '(0.0 0.0 0.0))
	  (vla-PolarPoint util
	    (vlax-3d-point '(0.0 0.0 0.0))
	    pi 5)
	  )
;;;	(vla-SaveAs *active_document* (strcat "E:\\doc\\анимация"
;;;					      (vl-princ-to-string (setq x (+ 5 x)))
;;;					      )
;;;	  acNative
;;;	  )
	(vla-ZoomExtents acad_obj)
	(vla-Clear selset_p_doc)
	(vla-Select selset_p_doc acSelectionSetAll nil nil)
	(vla-Export
	  *active_document*
	  (strcat "E:\\doc\\анимация"
		  (vl-princ-to-string (setq x (+ 5 x)))
		  )
	  "bmp"
	  ;"wmf"
	  selset_p_doc
	  )
	)
      )

Последний раз редактировалось Oliver_88, 04.12.2011 в 19:43. Причина: поменял версию сохраняемого файла
Oliver_88 вне форума  
 
Автор темы   Непрочитано 03.12.2011, 17:00
#7
solo123


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


Спасибо всем! Сразу поясню дверь раздвижная применяю move,
далее ближе к проблеме: вот к примеру применил я эту функцию к моему виртуальному полотну, и оно сместилось на одну единицу, далее мне нужно чтобы этот кадр(файл) сохранился вкакой нибудь папке, а если его ещё и можно программно экпортироватиь в формат bmp, то по моему, можно без проблем делать анимацию того с чем ты работаешь в акаде и выгружать свои работы в инет с наименьшим весом файлов, ну а количество кадров наверное надо применить reperat?

AutoCad 2004, изучаю и применяю функции Active X пользуюсь DXF кодами c ObjectARX незнаком.

Последний раз редактировалось solo123, 03.12.2011 в 17:55.
solo123 вне форума  
 
Непрочитано 03.12.2011, 20:46
#8
BoogeyMan

Архитектор
 
Регистрация: 13.09.2008
Екатеринбург
Сообщений: 1,208


BMP это не наименьший вес кадров
есть же бесплатные програмы для создания видео с экрана
__________________
BIM for SIPs construction
BoogeyMan вне форума  
 
Автор темы   Непрочитано 04.12.2011, 13:34
#9
solo123


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


Файлы в формате bmp нужны только для работы в проге Gif Animator, тоесть из этих файлов мы сотавляем поочерёдно кадры анимации, а на выходе анимацию можно сохранить и в формате GIF, а они получаются довольно лёгкие. Если у Вас есть предложения о использовании какой нибудь другой программы с удовольствием выслушаю!

Последний раз редактировалось solo123, 04.12.2011 в 13:39.
solo123 вне форума  
 
Непрочитано 04.12.2011, 18:44
#10
BoogeyMan

Архитектор
 
Регистрация: 13.09.2008
Екатеринбург
Сообщений: 1,208


))) наверное Вы правы
__________________
BIM for SIPs construction
BoogeyMan вне форума  
 
Автор темы   Непрочитано 05.12.2011, 16:54
#11
solo123


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


Огромное спасибо BoogeyMan! Это именно то, что надо, после вашего редактирования всё заработало!
solo123 вне форума  
 
Непрочитано 05.12.2011, 18:22
#12
BoogeyMan

Архитектор
 
Регистрация: 13.09.2008
Екатеринбург
Сообщений: 1,208


я вроде ничего такого не сказал
__________________
BIM for SIPs construction
BoogeyMan вне форума  
 
Автор темы   Непрочитано 06.12.2011, 18:26
#13
solo123


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


Извиняюсь, спасибо конечно же Oliver_88!
solo123 вне форума  
 
Непрочитано 06.12.2011, 18:34
#14
BoogeyMan

Архитектор
 
Регистрация: 13.09.2008
Екатеринбург
Сообщений: 1,208


вот так значить
а BoogeyMan пошел на Х..
да )))
__________________
BIM for SIPs construction
BoogeyMan вне форума  
 
Непрочитано 13.12.2011, 21:54
#15
proektant-minsk

Проектировщик ОВ
 
Регистрация: 15.10.2010
Минск
Сообщений: 42


Мне необходимо сделать примерно то же что solo123, НО... Меня такое решение задачи не устраивает, т.к 1)низкое разрешение картинок, 2) на картинках отображается цвет фона 3) нельзя регулировать разрешение данных файликов на выходе. Можно ли данный набор растровых изображений получить путем печати (_plot) в файл, используя расширенные настройки доступные при такой печати. Или сформулирую вопрос иначе: есть ли функция в ActiveX которая позволяет осуществлять печать фрагмента чертежа программно на внешнее устройство или в файл (в нашем случае в файл), Может эту задачу можно решить при помощи функции command (у меня не получилось). Очень давно бьюсь над этой задачей, пока бесрезультатно . Если кто поможет - буду оч. благодарен

p.s. http://www.youtube.com/watch?v=w0lRdyXwTPE
кому интересно, для чего я это спрашиваю))) пришлось делать печать в файл более 200 раз((( автоматизировать бы....

Последний раз редактировалось proektant-minsk, 13.12.2011 в 22:02.
proektant-minsk вне форума  
 
Непрочитано 13.12.2011, 22:26
#16
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Цитата:
Сообщение от proektant-minsk Посмотреть сообщение
есть ли функция в ActiveX которая позволяет осуществлять печать фрагмента чертежа
А, для начала, справку ActiveX посмотреть совсем никак?
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 13.12.2011, 22:32
#17
proektant-minsk

Проектировщик ОВ
 
Регистрация: 15.10.2010
Минск
Сообщений: 42


Дима_, смотрел, но не нашел
proektant-minsk вне форума  
 
Непрочитано 14.12.2011, 08:19
#18
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Объект Plot
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 14.12.2011, 09:36
#19
proektant-minsk

Проектировщик ОВ
 
Регистрация: 15.10.2010
Минск
Сообщений: 42


ась?
proektant-minsk вне форума  
 
Непрочитано 14.12.2011, 10:05
#20
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Так и написали бы что и справкой пользоваться не умеете:
Миниатюры
Нажмите на изображение для увеличения
Название: Снимок.GIF
Просмотров: 63
Размер:	206.1 Кб
ID:	71391  
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Программно создать несколько файлов с их дальнейшей анимацией?



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как распечатать несколько файлов за один раз. Lenich AutoCAD 35 27.06.2012 10:53
Как объдинить несколько файлов AutoCAD в один! Geodezist74 AutoCAD 28 14.05.2009 21:13
как с помощью vba создать несколько цифр и вставить их в чертёж... vasyavip Программирование 1 02.04.2009 23:05
Как объеденить несколько файлов PAT в один? Borikv AutoCAD 16 06.08.2008 11:37