'Center graph' и 'Reframe On'

Программирование для CATIA.

'Center graph' и 'Reframe On'

Сообщение file » 08 авг 2012 13:09

Добрый день.

Подскажите, есть ли стандартная (или нестандартная) возможность оперировать командами 'Center graph' и 'Reframe On' применительно к выделенному объекту?

По всей видимости нужно копать в сторону Viewer и Camera. Но непонятно как выполнить прицел на выделенный элемент...
file
Новичок
Новичок
 
Сообщения: 47
Зарегистрирован: 02 янв 2011 22:44

Re: 'Center graph' и 'Reframe On'

Сообщение Wireless_Fidelity » 08 авг 2012 14:51

Reframe On можно выполнить, зная координаты объекта. В этом случае следует воспользоваться методами PutOrigin, FocusDistance и Zoom у Viewpoint2d/3d.
С Center graph сложнее, дерево двигать мы можем, но вот работать без WinApi с ним тяжко.

Я бы использовал вызовы стандартных команд, не вижу в этом ничего плохого.
Аватара пользователя
Wireless_Fidelity
Активный участник
Активный участник
 
Сообщения: 394
Зарегистрирован: 10 апр 2010 00:11

Re: 'Center graph' и 'Reframe On'

Сообщение file » 08 авг 2012 15:07

Спасибо :)
Я бы использовал вызовы стандартных команд, не вижу в этом ничего плохого.
Имеются ввиду PutOrigin, FocusDistance и Zoom у Viewpoint2d/3d?
file
Новичок
Новичок
 
Сообщения: 47
Зарегистрирован: 02 янв 2011 22:44

Re: 'Center graph' и 'Reframe On'

Сообщение Wireless_Fidelity » 08 авг 2012 15:10

Да.
Аватара пользователя
Wireless_Fidelity
Активный участник
Активный участник
 
Сообщения: 394
Зарегистрирован: 10 апр 2010 00:11

Re: 'Center graph' и 'Reframe On'

Сообщение file » 08 авг 2012 15:55

А как узнать координаты объекта, и относительно чего? И как они соотносятся со значениями свойств Viewpoint3d?
file
Новичок
Новичок
 
Сообщения: 47
Зарегистрирован: 02 янв 2011 22:44

Re: 'Center graph' и 'Reframe On'

Сообщение Wireless_Fidelity » 08 авг 2012 18:18

Координаты нужно засунуть в массив и передать в PutOrigin.
Получение же координат зависит от типа объекта.
Аватара пользователя
Wireless_Fidelity
Активный участник
Активный участник
 
Сообщения: 394
Зарегистрирован: 10 апр 2010 00:11

Re: 'Center graph' и 'Reframe On'

Сообщение file » 08 авг 2012 19:53

Пока применил простейшее решение: StartCommand с параметрами "Reframe On" и "Center graph"
file
Новичок
Новичок
 
Сообщения: 47
Зарегистрирован: 02 янв 2011 22:44

Re: 'Center graph' и 'Reframe On'

Сообщение timkaam » 14 апр 2018 14:45

Подскажите, не могу добиться стабильной работы StartCommand...работает через раз..вот пример кода, что не так? пару раз отработает, а потом выделяет и не кадрирует...
Spoiler :
Sub CATMain()
Dim productDocument1 As Document
Set productDocument1 = CATIA.ActiveDocument
Dim fullname, newfullname As String
fullname = CATIA.ActiveDocument.Name
lenchName = Len(fullname)
newfullname = Left(fullname, lenchName - 11)
'MsgBox newfullname
Dim selection1 As Selection
Set selection1 = productDocument1.Selection
selection1.Clear
selection1.Search ("Name='" + newfullname + "',in")
CATIA.StartCommand ("центрирование графического изображения")
End Sub
timkaam
Новичок
Новичок
 
Сообщения: 69
Зарегистрирован: 02 дек 2014 16:15

Re: 'Center graph' и 'Reframe On'

Сообщение Wireless_Fidelity » 30 апр 2018 16:23

А что приведенный код должен хочется отцентрировать? Корневое изделие текущего активного документа?
Аватара пользователя
Wireless_Fidelity
Активный участник
Активный участник
 
Сообщения: 394
Зарегистрирован: 10 апр 2010 00:11

Re: 'Center graph' и 'Reframe On'

Сообщение timkaam » 19 янв 2019 12:06

Wireless_Fidelity писал(а):А что приведенный код должен хочется отцентрировать? Корневое изделие текущего активного документа?

цель в том чтобы подвесить на хоткей макрос центрирования начало дерева сборки, чтобы не скролить мышкой
timkaam
Новичок
Новичок
 
Сообщения: 69
Зарегистрирован: 02 дек 2014 16:15

Re: 'Center graph' и 'Reframe On'

Сообщение Artem » 29 янв 2019 12:54

А так...:
Код: Выделить всё
Sub CATMain()
Call CATIA.StartCommand("CATAfrReframeOnHSOHdr")
Call CATIA.StartCommand("CATCafCenterGraphHdr")
End Sub

...не могу добиться стабильной работы StartCommand...
- может с DoEvents поиграться...
animae scrinium servitus
Аватара пользователя
Artem
Активный участник
Активный участник
 
Сообщения: 387
Зарегистрирован: 14 сен 2007 07:14

Re: 'Center graph' и 'Reframe On'

Сообщение timkaam » 01 мар 2019 16:12

Artem писал(а):А так...:
Код: Выделить всё
Sub CATMain()
Call CATIA.StartCommand("CATAfrReframeOnHSOHdr")
Call CATIA.StartCommand("CATCafCenterGraphHdr")
End Sub

...не могу добиться стабильной работы StartCommand...
- может с DoEvents поиграться...

Спасибо, работает!!!
timkaam
Новичок
Новичок
 
Сообщения: 69
Зарегистрирован: 02 дек 2014 16:15


Вернуться в CAA-RADE

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron