Список форумов Конференция САПР Bentley MicroStation Конференция САПР Bentley MicroStation
www.ustation.ru
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Поворот элемента

 
Начать новую тему   Ответить на тему    Список форумов Конференция САПР Bentley MicroStation -> Прикладное
Предыдущая тема :: Следующая тема  
Автор Сообщение
Rus77



Зарегистрирован: 06.03.2006
Сообщения: 53

СообщениеДобавлено: Вт Янв 27, 2009 12:44 pm    Заголовок сообщения: Поворот элемента Ответить с цитатой

Помогите, запутался совсем.
Задача на первый взгляд элементарная - развернуть элемент на заданный угол в плоскости XY (в принципе работа идет в PowerDraft-е).
Элементом является фрагмент (CellElement). В справке есть пример функции RotateElementAboutZ. После ее применения фрагмент-то повернулся, только "ручки" остались на прежнем месте.
Как можно развернуть фрагмент, чтоб он после этого оставался нормальным?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Rus77



Зарегистрирован: 06.03.2006
Сообщения: 53

СообщениеДобавлено: Вт Янв 27, 2009 3:37 pm    Заголовок сообщения: Ответить с цитатой

Откопал один вариант - поворачивать каждый элемент фрагмента "вручную"
Код:

Public Sub ElementRotateAboutZ(ElementRotate As Element, PointsOrigin As Point3d, AngleRadians As Double)
    Dim curElement As Element
    If ElementRotate.IsCellElement Then
        ElementRotate.AsCellElement.ResetElementEnumeration
        While ElementRotate.AsCellElement.MoveToNextElement(True)
            Set curElement = ElementRotate.AsCellElement.CopyCurrentElement
            ElementRotateAboutZ curElement, PointsOrigin, AngleRadians
            ElementRotate.AsCellElement.ReplaceCurrentElement curElement
        Wend
    Else
        ElementRotate.RotateAboutZ PointsOrigin, AngleRadians
    End If
End Sub

Может можно как-то попроще??
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Конференция САПР Bentley MicroStation -> Прикладное Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group