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

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

Можно ли прикрепить ВЭ к объекту в модели?

Ответ
Поиск в этой теме
Непрочитано 07.08.2014, 06:32 #1
Можно ли прикрепить ВЭ к объекту в модели?
Иван Скиф
 
Регистрация: 10.04.2014
Сообщений: 170

Т.е. ВЭ - обычно прикреплен к конкретной области пространства модели.
А нельзя ли прикрепить ВЭ к объекту в модели?
Чтобы при перемещении объекта и в ВЭ смещалось всё?
Просмотров: 8960
 
Непрочитано 08.08.2014, 08:45
#2
Домовой


 
Регистрация: 28.02.2011
Провинциальный городок
Сообщений: 71


Насколько я знаю нет.
Домовой вне форума  
 
Автор темы   Непрочитано 08.08.2014, 14:57
#3
Иван Скиф


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


ОК, спасибо
Иван Скиф вне форума  
 
Непрочитано 09.08.2014, 10:55
#4
Сергей812


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


Если только программно. У видового экрана есть центр, если запомнить координаты примитива и потом высчитывать при переключении на лист вектор смещения и "дергать" этот центр ВЭ по нему.
Сергей812 вне форума  
 
Автор темы   Непрочитано 11.08.2014, 06:12
#5
Иван Скиф


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


Спасибо за совет. Сложно это, не выдюжу!
Иван Скиф вне форума  
 
Непрочитано 11.08.2014, 12:38
#6
Сергей812


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


Может, эта программа поможет
http://experement.spb.ru/wiki/doku.php?id=vport_pp
и посмотрите страницу форума - программа, собственно, оттуда
Сергей812 вне форума  
 
Автор темы   Непрочитано 12.08.2014, 06:08
#7
Иван Скиф


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


Спасибо!
Иван Скиф вне форума  
 
Непрочитано 12.08.2014, 06:16
#8
Fogel

люблю мастерить
 
Регистрация: 21.01.2005
Челябинск
Сообщений: 10,332


В свое время писали програмку, лисп и Си - делала видовые экраны по объектам, думаю что только через программирование выйдет
Fogel вне форума  
 
Автор темы   Непрочитано 12.08.2014, 10:40
#9
Иван Скиф


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


Понятно.
Вообщем жду новых версий автокада!! А пока по старинке буду.
Иван Скиф вне форума  
 
Непрочитано 12.08.2014, 15:46
#10
Сергей812


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


Offtop: Вот о чем говорил - программно. Насколько понимаю - тоже от hwd
Создавать layout не нужно, нужно лишь привязаться к ВЭ (наверно, по хэндлу) и найти новый центр видового экрана
vp.ViewCenter = new Point2d(Новый центр.X, Новый центр.Y);
А запоминать координаты примитива по его рамкам (прямоугольнику, куда он вписан)-для единообразия. Хранить можно в расширенных данных самого примитива, например. Только все это на лиспе бы надо писать - для кросс-платформенности
Сергей812 вне форума  
 
Автор темы   Непрочитано 13.08.2014, 09:09
#11
Иван Скиф


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


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Вот о чем говорил - программно. Насколько понимаю - тоже от hwd
Создавать layout не нужно, нужно лишь привязаться к ВЭ (наверно, по хэндлу) и найти новый центр видового экрана
vp.ViewCenter = new Point2d(Новый центр.X, Новый центр.Y);
А запоминать координаты примитива по его рамкам (прямоугольнику, куда он вписан)-для единообразия. Хранить можно в расширенных данных самого примитива, например. Только все это на лиспе бы надо писать - для кросс-платформенности
Я ламер. Мне бы кнопку какую-нибудь в стандартной панели (ну или кульман - как вариант). А Вы Лисп!
Иван Скиф вне форума  
 
Непрочитано 13.08.2014, 10:19
#12
Сергей812


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


Ну лиспа я тоже фактически не знаю, слишком там своебразный синтаксис и подход) На netapi половину задачи уже накидал по быстрому - отслеживает переключение с модели на листы и находит на активном листе все видовые экраны, их хэндлы и центры виды. Осталось привязать к центру выбранных примитивов. Но там сразу будет два ограничения - не будет редактирования списка привязок (лень писать менеджера привязок со списками выбора и позиционирования по примитивам, да и по сути это просто тестовая программка) и под 2012 х64 будет - рабочий комп)
Сергей812 вне форума  
 
Непрочитано 17.08.2014, 12:44
#13
Сергей812


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


Получился тестовый образец. Откомпилирован под 2012 x64, как и говорил. Вроде работает)

Принцип работы: в комстроке через NetLoad загрузить распакованную dll. Далее на пространстве листа ввести команду "Привязка_ВЭ_Примитив", она предложит выбрать ВЭ, затем автоматически переключит на модель и предложить выбрать примитив для привязки. И все - теперь при переключении на соответствующий лист, если привязка-примитив сдвинулся - центр ВЭ автоматически за ним подрулит. Если привязка-примитив будет удален случайно - в комстроке будет выводиться сообщение об ошибке "eWasErased" при переключении на соответствующий лист.

Ограничения:
1.Привязки сохраняются лишь в пределах приложения (чтобы не усложнять код), причем их можно делать в нескольких разных файлах *.dwg - программа различает их по полным именам файлов. Закрыли файл, но не закрыли сам Аutocad - при открытии файла с тем же именем привязки автоматически подхватятся (должны, во всяком случае). Закрыли AutoCAD - все. Загружать через NetLoad нужно только для самого первого файла, при открытии следующих новых файлов обработчики подцепляются автоматом.
2.Удалить привязки можно лишь для всего чертежа в целом командой "Удалить_все_привязки_ВЭ_из_текущего_чертежа".

Последний раз редактировалось Сергей812, 13.03.2025 в 14:33.
Сергей812 вне форума  
 
Автор темы   Непрочитано 18.08.2014, 06:30
#14
Иван Скиф


 
Регистрация: 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 мин. -----
А какой принцип привязки?
Потому как я к ВЭ примитив привязал не по центру.
После перемещения примитива - ВЭ переместился с той же привязкой, т.е. центр ВЭ не совпал с центром ВЭ.
Можно сделать как-то выбор привязки ВЭ к примитиву?
Изображения
Тип файла: jpg 01.jpg (179.1 Кб, 299 просмотров)
Иван Скиф вне форума  
 
Непрочитано 18.08.2014, 09:47
#15
Сергей812


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


1. С удалением посмотрю потом, основное внимание было на отлавливание ошибок в механизме отслеживания ВЭ)
Цитата:
Потому как я к ВЭ примитив привязал не по центру.
После перемещения примитива - ВЭ переместился с той же привязкой, т.е. центр ВЭ не совпал с центром ВЭ.
Можно сделать как-то выбор привязки ВЭ к примитиву?
2. Привязывается к центру геометрического прямоугольника, в который вписан выбранный примитив. И как у вас центр ВЭ не может совпасть с центром ВЭ?
3. Можно сделать как-то выбор привязки ВЭ к примитиву? А какая разница - сейчас считается вектор смещения ВЭ относительно геом.центра примитива, а будет просто двойная операция - сначала координаты выбранной точки транслируются после перемещения от геом. центра примитива, потом по полученным новым координатам точки по вектору смещения высчитывается новый центр ВЭ.

Причем, смотрю по отладочной информации - у вас Autocad x86 похоже?

Последний раз редактировалось Сергей812, 18.08.2014 в 09:56.
Сергей812 вне форума  
 
Непрочитано 18.08.2014, 10:37
#16
gip_gip


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


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Получился тестовый образец. Откомпилирован под 2012 x64, как и говорил. Вроде работает)

Принцип работы: в комстроке через NetLoad загрузить распакованную dll. Далее на пространстве листа ввести команду "Привязка_ВЭ_Примитив", она предложит выбрать ВЭ, затем автоматически переключит на модель и предложить выбрать примитив для привязки. И все - теперь при переключении на соответствующий лист, если привязка-примитив сдвинулся - центр ВЭ автоматически за ним подрулит. Если привязка-примитив будет удален случайно - в комстроке будет выводиться сообщение об ошибке "eWasErased" при переключении на соответствующий лист.

Ограничения:
1.Привязки сохраняются лишь в пределах приложения (чтобы не усложнять код), причем их можно делать в нескольких разных файлах *.dwg - программа различает их по полным именам файлов. Закрыли файл, но не закрыли сам Аutocad - при открытии файла с тем же именем привязки автоматически подхватятся (должны, во всяком случае). Закрыли AutoCAD - все. Загружать через NetLoad нужно только для самого первого файла, при открытии следующих новых файлов обработчики подцепляются автоматом.
2.Удалить привязки можно лишь для всего чертежа в целом командой "Удалить_все_привязки_ВЭ_из_текущего_чертежа".
Тема интересная, хотелось бы попробовать, но на 32-разр. и Акад2013
gip_gip вне форума  
 
Автор темы   Непрочитано 18.08.2014, 11:00
#17
Иван Скиф


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


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Причем, смотрю по отладочной информации - у вас Autocad x86 похоже?
Неа x64. 2012-й. просто классический интерфейс.

центр ВЭ не совпал с центром ВЭ центром объекта - очепятка блин.

Центр не совпадает, потому как от балды создал ВЭ чуть более области печати. В нем в масштабе нашел рамку и на глаз в область печати её уместил.
Как предварительно совместить центр ВЭ с центром объекта? потому как если они не совпадают изначально, то после Ваших команд тож не совпадают.
Иван Скиф вне форума  
 
Непрочитано 18.08.2014, 11:02
#18
gip_gip


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


Сергей, ну если не сложно, попробуй библиотечку сделать на х86. Хочется посмотреть возможности взаимосвязи между Моделью и Листом. Плохо, "бывалые" проетировщики работают в Акаде, как на том же кульмане, не понимают всех прелестей, хотелось бы показать много, чтобы заинтересовать "правильно работать". Акад у меня русский, библиотека загружается, дальше - (Привязка_ВЭ_Примитив), первые две еще может понять, а Примитив??? Что скажешь?
gip_gip вне форума  
 
Непрочитано 18.08.2014, 11:29
2 | #19
Сергей812


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


Цитата:
Сообщение от Иван Скиф Посмотреть сообщение
Неа x64. 2012-й. просто классический интерфейс.
Буду искать ошибку. Интерфейс не влияет. А вот загрузка x64 версии под x86 - возможно проблемы.

Цитата:
Сообщение от Иван Скиф Посмотреть сообщение
центр ВЭ не совпал с центром объекта.
С геометрическим центром совместить легко - ввести команду типа "Совмещать_центр_ВЭ_с_центром_примитива" и значениями: 0 - не совмещать, 1 - совмещать.+небольшая корректировка в одном месте.
С указанием точки на объекте - это посложнее. Переписывать придется код и привязки, и отслеживания. Сделаю - но не быстро, когда будет время.

Цитата:
Сообщение от gip_gip Посмотреть сообщение
попробуй библиотечку сделать на х86
Не обещаю, может библиотеки то еще найду для перекомпиляции - а тестировать не на чем пока.
Сергей812 вне форума  
 
Непрочитано 18.08.2014, 11:53
#20
gip_gip


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


Спасибо, Сергей, если не найдешь, то хоть, может, посоветуешь.
Однако прав был при написании, что-то засовнвался...
Сергей, вопрос, дело в русской команде или в разряде?

Последний раз редактировалось gip_gip, 18.08.2014 в 12:05.
gip_gip вне форума  
 
Автор темы   Непрочитано 18.08.2014, 12:08
#21
Иван Скиф


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



Огромное спасибо за уже выполненную работу!
Сам я в лиспе ни бум-бум.
Иван Скиф вне форума  
 
Непрочитано 18.08.2014, 12:28
#22
Сергей812


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


Цитата:
Сообщение от gip_gip Посмотреть сообщение
Сергей, вопрос, дело в русской команде или в разряде?
Русская команда - не должна особо влиять, по идее. Это же не код, а просто идентификатор для возможности вызова из комстроки.
Разрядность - да. Поскольку при сборке и компиляции проекта идут ссылки на конкретные *.dll библиотеки из каталога AutoCAD (и учитывая, что 2013 уже с новым форматом данных файлов, то библиотеки в какой то степени тоже изменились), и сборка идет под активную платформу - x64.

Цитата:
Сообщение от Иван Скиф Посмотреть сообщение
Сам я в лиспе ни бум-бум.
Я пока тоже - Хотя уже поглядываю в его сторону, у него есть определенные плюсы.
Сергей812 вне форума  
 
Непрочитано 19.08.2014, 09:06
#23
gip_gip


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


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Разрядность - да
Спасибо, понял. Буду попробовать дома, если мои девушки пустят
gip_gip вне форума  
 
Непрочитано 21.08.2014, 09:46
#24
Сергей812


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


Ошибку в методе удаления исправлена.
Реализована: ""Совмещать_центр_ВЭ_с_центром_примитива" и значениями: 0 - не совмещать, 1 - совмещать". Но работает через раз почему-то. Поэтому буду искать, где блокируется. Найду когда - выложу финальный вариант. Упирается, опять, в свободное время

Сразу вопрос: какое значение по умолчанию предпочтительнее - 0 или 1?
Сергей812 вне форума  
 
Автор темы   Непрочитано 21.08.2014, 10:09
#25
Иван Скиф


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


Жду с нетерпением.
Мне удобнее когда 1 - совмещать.
Потому как люблю знать как работает команда.
Иван Скиф вне форума  
 
Непрочитано 26.08.2014, 10:21
#26
Сергей812


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


Тестируйте.
AutoCAD 2012 x64.

Команды:
"Привязка_ВЭ_Примитив" - привязка ВЭ к примитиву (теперь переключается обратно на ВЭ после выбора примитива)
"Удалить_все_привязки_ВЭ_из_текущего_чертежа" - удаление привязок для активного чертежа
"Совмещать_центр_ВЭ_с_центром_примитива" - значения: 1 (по умолчанию) - совмещать, 0 - не совмещать

Последний раз редактировалось Сергей812, 13.03.2025 в 14:33.
Сергей812 вне форума  
 
Автор темы   Непрочитано 26.08.2014, 11:18
#27
Иван Скиф


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


Большое, огромное спасибо.
Всё работает.
Ошибок не выдает.
Пожелание такое -
1. А можно сделать так, чтобы это приложение работало постоянно (в автозагрузку чтоб можно было поставить)?
2. И чтоб привязки сохранялись при закрытии файла и автокада, а также при переименовании файла.
А то мартышкин труд какой-то. Наделал привязок. Закрыл автокад. Открыл заново - привязок нет.
3. При команде Совмещать_центр_ВЭ_с_центром_примитива во всех ВЭ перерисовывает объекты. Было бы неплохо, если
бы к каждому ВЭ было индивидуально. Т.е. на одних - совмещал центра, а на других - нет.
Иван Скиф вне форума  
 
Непрочитано 26.08.2014, 11:55
#28
Сергей812


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


1. Смотрим у уважаемого hwd - как это сделать через реестр .
2 и 3. Нет. Для меня это лишь тестовая программа - изначально об этом предупреждал.
Сергей812 вне форума  
 
Автор темы   Непрочитано 26.08.2014, 12:18
#29
Иван Скиф


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


ОК, всё равно спасибки!
Иван Скиф вне форума  
 
Непрочитано 26.08.2014, 13:07
#30
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,917
<phrase 1=


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Тестируйте.
AutoCAD 2012 x64.

Команды:
"Привязка_ВЭ_Примитив" - привязка ВЭ к примитиву (теперь переключается обратно на ВЭ после выбора примитива)
"Удалить_все_привязки_ВЭ_из_текущего_чертежа" - удаление привязок для активного чертежа
"Совмещать_центр_ВЭ_с_центром_примитива" - значения: 1 (по умолчанию) - совмещать, 0 - не совмещать
Цитата:
Команда: NETLOAD
Не удалось загрузить сборку. Сведения об ошибке: System.IO.FileLoadException:
Невозможно загрузить файл или сборку
"file:///D:\AUTOCAD\Programms\Привязанный_ВЭ_2012_x64.dll" или один из
зависимых от них компонентов. Операция не поддерживается. (Исключение из
HRESULT: 0x80131515)
Имя файла: "file:///D:\AUTOCAD\Programms\Привязанный_ВЭ_2012_x64.dll" --->
System.NotSupportedException: Предпринята попытка загрузить сборку из сетевого
ресурса, что в предыдущих версиях .NET Framework могло привести к помещению
сборки в "песочницу". Этот выпуск .NET Framework не включает политику CAS по
умолчанию, поэтому данная загрузка может быть опасной. Если эта нагрузка не
предназначена для изоляции сборки, включите переключатель
loadFromRemoteSources. Дополнительные сведения см. на странице
http://go.microsoft.com/fwlink/?LinkId=155569.
в System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String
codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint,
StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean
forIntrospection, Boolean suppressSecurityChecks)
в System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName
assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean
forIntrospection, Boolean suppressSecurityChecks)
в System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile,
Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm
hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks,
StackCrawlMark& stackMark)
в System.Reflection.Assembly.LoadFrom(String assemblyFile)
в Autodesk.AutoCAD.Runtime.ExtensionLoader.Load(String fileName)
в loadmgd()
Что не так??
Win7_64bit AutoCAD2012 64bit
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Непрочитано 26.08.2014, 13:19
#31
Сергей812


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


Цитата:
Сообщение от zenon Посмотреть сообщение
Предпринята попытка загрузить сборку из сетевого ресурса,
Хотя почему диск D: воспринимает как сетевой...
Сергей812 вне форума  
 
Непрочитано 26.08.2014, 14:21
#32
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,917
<phrase 1=


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Хотя почему диск D: воспринимает как сетевой...
Аналогично с диска С:
Цитата:
Команда: NETLOAD
Не удалось загрузить сборку. Сведения об ошибке: System.IO.FileLoadException:
Невозможно загрузить файл или сборку "file:///C:\Program Files\Autodesk\AutoCAD
2012 - Russian\Support\Привязанный_ВЭ_2012_x64.dll" или один из зависимых от
них компонентов. Операция не поддерживается. (Исключение из HRESULT: 0x80131515)
Имя файла: "file:///C:\Program Files\Autodesk\AutoCAD 2012 -
Russian\Support\Привязанный_ВЭ_2012_x64.dll" ---> System.NotSupportedException:
Предпринята попытка загрузить сборку из сетевого ресурса, что в предыдущих
версиях .NET Framework могло привести к помещению сборки в "песочницу". Этот
выпуск .NET Framework не включает политику CAS по умолчанию, поэтому данная
загрузка может быть опасной. Если эта нагрузка не предназначена для изоляции
сборки, включите переключатель loadFromRemoteSources. Дополнительные сведения
см. на странице http://go.microsoft.com/fwlink/?LinkId=155569.
в System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String
codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint,
StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean
forIntrospection, Boolean suppressSecurityChecks)
в System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName
assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean
forIntrospection, Boolean suppressSecurityChecks)
в System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile,
Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm
hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks,
StackCrawlMark& stackMark)
в System.Reflection.Assembly.LoadFrom(String assemblyFile)
в Autodesk.AutoCAD.Runtime.ExtensionLoader.Load(String fileName)
в loadmgd()
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Непрочитано 26.08.2014, 14:42
#33
Сергей812


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


zenon
Проверьте - не стоит ли в свойствах файла .dll типа: файл скачен из сети и заблокирован для защиты компьютера
Сергей812 вне форума  
 
Непрочитано 26.08.2014, 17:51
#34
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,917
<phrase 1=


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
zenon
Проверьте - не стоит ли в свойствах файла .dll типа: файл скачен из сети и заблокирован для защиты компьютера
Получилось


Еще пожелание, можно как-нить автоматически масштабировать под размеры ВЭ???
PS и автоматическое центрирование как-то странно работает
Изображения
Тип файла: jpg 1111.jpg (79.2 Кб, 301 просмотров)
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Непрочитано 26.08.2014, 19:08
#35
Сергей812


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


Цитата:
Сообщение от zenon Посмотреть сообщение
Еще пожелание, можно как-нить автоматически масштабировать под размеры ВЭ???
Что именно масштабировать?)

Цитата:
Сообщение от zenon Посмотреть сообщение
PS и автоматическое центрирование как-то странно работает
Центрирует очень просто-геометрический центр прямоугольника, в который вписан Полностью якорь-примитив - совмещается с центром ВЭ. Что именно странно работает?
Сергей812 вне форума  
 
Непрочитано 01.09.2014, 14:31
#36
Сергей812


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


Хотя работает странно, согласен - то центрирует, то приходить удалять привязки в чертеже и заново привязывать. При этом для трех видовых экранов находит при удалении 4 привязки, например. Прошерстю код при возможности.
Сергей812 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Можно ли прикрепить ВЭ к объекту в модели?



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ваши сканы, наша обработка и перевод в 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