|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Можно ли прикрепить ВЭ к объекту в модели?
Регистрация: 10.04.2014
Сообщений: 170
|
||
Просмотров: 8954
|
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
Может, эта программа поможет
http://experement.spb.ru/wiki/doku.php?id=vport_pp и посмотрите страницу форума - программа, собственно, оттуда |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
Offtop: Вот о чем говорил - программно. Насколько понимаю - тоже от hwd
![]() Создавать layout не нужно, нужно лишь привязаться к ВЭ (наверно, по хэндлу) и найти новый центр видового экрана vp.ViewCenter = new Point2d(Новый центр.X, Новый центр.Y); А запоминать координаты примитива по его рамкам (прямоугольнику, куда он вписан)-для единообразия. Хранить можно в расширенных данных самого примитива, например. Только все это на лиспе бы надо писать - для кросс-платформенности |
|||
![]() |
|
||||
Регистрация: 10.04.2014
Сообщений: 170
|
Цитата:
|
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
Ну лиспа я тоже фактически не знаю, слишком там своебразный синтаксис и подход) На netapi половину задачи уже накидал по быстрому - отслеживает переключение с модели на листы и находит на активном листе все видовые экраны, их хэндлы и центры виды. Осталось привязать к центру выбранных примитивов. Но там сразу будет два ограничения - не будет редактирования списка привязок (лень писать менеджера привязок со списками выбора и позиционирования по примитивам, да и по сути это просто тестовая программка) и под 2012 х64 будет - рабочий комп)
|
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
Получился тестовый образец. Откомпилирован под 2012 x64, как и говорил. Вроде работает)
Принцип работы: в комстроке через NetLoad загрузить распакованную dll. Далее на пространстве листа ввести команду "Привязка_ВЭ_Примитив", она предложит выбрать ВЭ, затем автоматически переключит на модель и предложить выбрать примитив для привязки. И все - теперь при переключении на соответствующий лист, если привязка-примитив сдвинулся - центр ВЭ автоматически за ним подрулит. Если привязка-примитив будет удален случайно - в комстроке будет выводиться сообщение об ошибке "eWasErased" при переключении на соответствующий лист. Ограничения: 1.Привязки сохраняются лишь в пределах приложения (чтобы не усложнять код), причем их можно делать в нескольких разных файлах *.dwg - программа различает их по полным именам файлов. Закрыли файл, но не закрыли сам Аutocad - при открытии файла с тем же именем привязки автоматически подхватятся (должны, во всяком случае ![]() 2.Удалить привязки можно лишь для всего чертежа в целом командой "Удалить_все_привязки_ВЭ_из_текущего_чертежа". Последний раз редактировалось Сергей812, 13.03.2025 в 14:33. |
|||
![]() |
|
||||
Регистрация: 10.04.2014
Сообщений: 170
|
При команде "Удалить_все_привязки_ВЭ_из_текущего_чертежа".
Подробная информация об использовании оперативной (JIT) отладки вместо данного диалогового окна содержится в конце этого сообщения. ************** Текст исключения ************** System.ArgumentOutOfRangeException: Индекс за пределами диапазона. Индекс должен быть положительным числом, а его размер не должен превышать размер коллекции. Имя параметра: index в System.Collections.Generic.List`1.get_Item(Int32 index) в Прикленный_ВЭ.MainClass.RemoveAllLinkPV() в Autodesk.AutoCAD.Runtime.CommandClass.InvokeWorker(MethodInfo mi, Object commandObject, Boolean bLispFunction) в Autodesk.AutoCAD.Runtime.CommandClass.InvokeWorkerWithExceptionFilter(MethodInfo mi, Object commandObject, Boolean bLispFunction) в Autodesk.AutoCAD.Runtime.PerDocumentCommandClass.Invoke(MethodInfo mi, Boolean bLispFunction) в Autodesk.AutoCAD.Runtime.CommandClass.CommandThunk.Invoke() ************** Загруженные сборки ************** mscorlib Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll ---------------------------------------- AdApplicationFrame Версия сборки: 0.0.0.0 Версия Win32: 3.2.23.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/AdApplicationFrame.DLL ---------------------------------------- Acdbmgd Версия сборки: 18.2.0.0 Версия Win32: 18.2.51.0.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/AcdbMgd.DLL ---------------------------------------- System Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll ---------------------------------------- msvcm90 Версия сборки: 9.0.30729.6161 Версия Win32: 9.00.30729.6161 CodeBase: file:///C:/Windows/WinSxS/amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_08e61857a83bc251/msvcm90.dll ---------------------------------------- AdWindows Версия сборки: 3.2.25.0 Версия Win32: 3.2.25.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/AdWindows.DLL ---------------------------------------- PresentationFramework Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/PresentationFramework/v4.0_4.0.0.0__31bf3856ad364e35/PresentationFramework.dll ---------------------------------------- WindowsBase Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/WindowsBase/v4.0_4.0.0.0__31bf3856ad364e35/WindowsBase.dll ---------------------------------------- PresentationCore Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/PresentationCore/v4.0_4.0.0.0__31bf3856ad364e35/PresentationCore.dll ---------------------------------------- System.Xaml Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xaml/v4.0_4.0.0.0__b77a5c561934e089/System.Xaml.dll ---------------------------------------- System.Xml Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll ---------------------------------------- AdWindows.resources Версия сборки: 3.2.23.0 Версия Win32: 3.2.23.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/ru-RU/AdWindows.resources.DLL ---------------------------------------- PresentationFramework.Aero Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/PresentationFramework.Aero/v4.0_4.0.0.0__31bf3856ad364e35/PresentationFramework.Aero.dll ---------------------------------------- System.Drawing Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ---------------------------------------- PresentationCore.resources Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.1 built by: RTMRel CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/PresentationCore.resources/v4.0_4.0.0.0_ru_31bf3856ad364e35/PresentationCore.resources.dll ---------------------------------------- Acmgd Версия сборки: 18.2.0.0 Версия Win32: 18.2.107.0.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/Acmgd.DLL ---------------------------------------- System.Core Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll ---------------------------------------- System.Configuration Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll ---------------------------------------- AcWindows Версия сборки: 18.2.0.0 Версия Win32: 18.2.107.0.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/AcWindows.DLL ---------------------------------------- AcCui Версия сборки: 18.2.0.0 Версия Win32: 18.2.51.0.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/AcCui.DLL ---------------------------------------- PresentationFramework.resources Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.1 CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/PresentationFramework.resources/v4.0_4.0.0.0_ru_31bf3856ad364e35/PresentationFramework.resources.dll ---------------------------------------- PresentationFramework-SystemXml Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/PresentationFramework-SystemXml/v4.0_4.0.0.0__b77a5c561934e089/PresentationFramework-SystemXml.dll ---------------------------------------- WindowsFormsIntegration Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/WindowsFormsIntegration/v4.0_4.0.0.0__31bf3856ad364e35/WindowsFormsIntegration.dll ---------------------------------------- AcWindows.resources Версия сборки: 18.2.0.0 Версия Win32: 18.2.51.0.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/ru-RU/AcWindows.resources.DLL ---------------------------------------- PresentationFramework-SystemCore Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/PresentationFramework-SystemCore/v4.0_4.0.0.0__b77a5c561934e089/PresentationFramework-SystemCore.dll ---------------------------------------- UIAutomationTypes Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/UIAutomationTypes/v4.0_4.0.0.0__31bf3856ad364e35/UIAutomationTypes.dll ---------------------------------------- ManagedMC3 Версия сборки: 5.8.0.0 Версия Win32: 5.8.0.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/ManagedMC3.DLL ---------------------------------------- AcLayer Версия сборки: 18.2.0.0 Версия Win32: 18.2.51.0.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/AcLayer.DLL ---------------------------------------- System.Windows.Forms Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ---------------------------------------- AcLayer.resources Версия сборки: 18.2.0.0 Версия Win32: 18.2.51.0.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/ru-RU/AcLayer.resources.DLL ---------------------------------------- AcButterflyExt Версия сборки: 1.0.0.23 Версия Win32: 1.0.0.23 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/AcButterflyExt.DLL ---------------------------------------- AcButterflyExt.resources Версия сборки: 1.0.0.23 Версия Win32: 1.0.0.23 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/ru-RU/AcButterflyExt.resources.DLL ---------------------------------------- System.resources Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.1 built by: RTMRel CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/System.resources.dll ---------------------------------------- UIAutomationProvider Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.18408 built by: FX451RTMGREL CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/UIAutomationProvider/v4.0_4.0.0.0__31bf3856ad364e35/UIAutomationProvider.dll ---------------------------------------- AcDialogToolTips Версия сборки: 18.2.0.0 Версия Win32: 18.2.51.0.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/AcDialogToolTips.DLL ---------------------------------------- AcDialogTooltips.resources Версия сборки: 18.2.0.0 Версия Win32: 18.2.51.0.0 CodeBase: file:///C:/Program%20Files/Autodesk/AutoCAD%202012%20-%20Russian/ru-RU/AcDialogToolTips.resources.DLL ---------------------------------------- Привязанный_ВЭ Версия сборки: 1.0.0.0 Версия Win32: 1.0.0.0 CodeBase: file:///C:/Users/i.demakov/%D0%9C%D0%BE%D0%B8%20%D0%BF%D1%80%D0%BE%D0%B3%D0%B8/AutoCAD%202010%20Ru/%D0%9F%D1%80%D0%B8%D0%B2%D1%8F%D0%B7%D0%BA%D0%B0%20%D0%92%D0%AD%20%D0%BA%20%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D1%83%20%D0%B2%20%D0%BC%D0%BE%D0%B4%D0%B5%D0%BB%D0%B8/%D0%9F%D1%80%D0%B8%D0%B2%D1%8F%D0%B7%D0%B0%D0%BD%D0%BD%D1%8B%D0%B9_%D0%92%D0%AD_2012_x64.dll ---------------------------------------- mscorlib.resources Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.1 (RTMRel.030319-0100) CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/mscorlib.resources.dll ---------------------------------------- System.Windows.Forms.resources Версия сборки: 4.0.0.0 Версия Win32: 4.0.30319.1 built by: RTMRel CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ru_b77a5c561934e089/System.Windows.Forms.resources.dll ---------------------------------------- ************** Оперативная отладка (JIT) ************** Для подключения оперативной (JIT) отладки файл .config данного приложения или компьютера (machine.config) должен иметь значение jitDebugging, установленное в секции system.windows.forms. Приложение также должно быть скомпилировано с включенной отладкой. Например: <configuration> <system.windows.forms jitDebugging="true" /> </configuration> При включенной отладке JIT любое необрабатываемое исключение пересылается отладчику JIT, зарегистрированному на данном компьютере, вместо того чтобы обрабатываться данным диалоговым окном. ----- добавлено через ~48 мин. ----- А какой принцип привязки? Потому как я к ВЭ примитив привязал не по центру. После перемещения примитива - ВЭ переместился с той же привязкой, т.е. центр ВЭ не совпал с центром ВЭ. Можно сделать как-то выбор привязки ВЭ к примитиву? |
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
1. С удалением посмотрю потом, основное внимание было на отлавливание ошибок в механизме отслеживания ВЭ)
Цитата:
3. Можно сделать как-то выбор привязки ВЭ к примитиву? А какая разница - сейчас считается вектор смещения ВЭ относительно геом.центра примитива, а будет просто двойная операция - сначала координаты выбранной точки транслируются после перемещения от геом. центра примитива, потом по полученным новым координатам точки по вектору смещения высчитывается новый центр ВЭ. Причем, смотрю по отладочной информации - у вас Autocad x86 похоже? Последний раз редактировалось Сергей812, 18.08.2014 в 09:56. |
|||
![]() |
|
||||
Регистрация: 18.08.2014
Сообщений: 14
|
Цитата:
|
|||
![]() |
|
||||
Регистрация: 10.04.2014
Сообщений: 170
|
Неа x64. 2012-й. просто классический интерфейс.
центр ВЭ не совпал с центром ВЭ центром объекта - очепятка блин. Центр не совпадает, потому как от балды создал ВЭ чуть более области печати. В нем в масштабе нашел рамку и на глаз в область печати её уместил. Как предварительно совместить центр ВЭ с центром объекта? потому как если они не совпадают изначально, то после Ваших команд тож не совпадают. |
|||
![]() |
|
||||
Регистрация: 18.08.2014
Сообщений: 14
|
Сергей, ну если не сложно, попробуй библиотечку сделать на х86. Хочется посмотреть возможности взаимосвязи между Моделью и Листом. Плохо, "бывалые" проетировщики работают в Акаде, как на том же кульмане, не понимают всех прелестей, хотелось бы показать много, чтобы заинтересовать "правильно работать". Акад у меня русский, библиотека загружается, дальше - (Привязка_ВЭ_Примитив), первые две еще может понять, а Примитив??? Что скажешь?
|
|||
![]() |
|
||||
Регистрация: 10.08.2013
Сообщений: 11,499
|
Буду искать ошибку. Интерфейс не влияет. А вот загрузка x64 версии под x86 - возможно проблемы.
С геометрическим центром совместить легко - ввести команду типа "Совмещать_центр_ВЭ_с_центром_примитива" и значениями: 0 - не совмещать, 1 - совмещать.+небольшая корректировка в одном месте. С указанием точки на объекте - это посложнее. Переписывать придется код и привязки, и отслеживания. Сделаю - но не быстро, когда будет время. Не обещаю, может библиотеки то еще найду для перекомпиляции - а тестировать не на чем пока. |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ваши сканы, наша обработка и перевод в DJVU. | Armin | Поиск литературы, чертежей, моделей и прочих материалов | 3866 | 02.04.2025 09:21 |
VBA Можно ли обратиться к нужному объекту? | alex77755 | AutoCAD | 2 | 09.05.2013 12:16 |
Autodesk Revit | Sett | Revit | 37 | 10.09.2009 11:41 |
Мониторы LCD CRT | Разное | 94 | 17.06.2008 10:51 | |
Можно ли прикрепить растр к DWG чтобы все было в одном файл | Andrei | AutoCAD | 14 | 06.07.2005 11:21 |