Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Rus77
Зарегистрирован: 06.03.2006 Сообщения: 53
|
Добавлено: Пт Май 16, 2008 10:50 am Заголовок сообщения: Штриховка элемента программно в MS 08.05 под VBA |
|
|
Здравствуйте!
Возникла такая задача - заштриховать замкнутый (isClosedElement) элемент обычной штриховкой, не трафаретом. По справочнику за это отвечает класс HatchPattern, который создается функцией Function CreateHatchPattern1(Space As Double, Angle As Double) As HatchPattern. Все бы хорошо, только в справочнике не написано главное - как эту штриховку повесить на объект?? Метод ClosedElement.SetPattern требует трафаретную штриховку, а для обычной не нашел методов....Помогите пожалуйста, заранее благодарен...
_________________
Руслан |
|
Вернуться к началу |
|
|
Leonid давно здесь сидим
Зарегистрирован: 28.01.2006 Сообщения: 598 Откуда: С.-Петербург
|
Добавлено: Пн Май 19, 2008 3:24 pm Заголовок сообщения: |
|
|
5 минут лазанья в хелпе, и вот что имеем:
Код: |
Dim oEnumerator As ElementEnumerator
Set oEnumerator = ActiveModelReference.GetSelectedElements
Do While oEnumerator.MoveNext
Dim oElement As Element
Dim ptrn As CrossHatchPattern
Set oElement = oEnumerator.Current
If oElement.IsClosedElement Then
Set ptrn = CreateCrossHatchPattern(200, 200, 45, 45)
oElement.AsClosedElement.SetPattern ptrn, Matrix3dIdentity
oElement.Redraw msdDrawingModeNormal
oElement.Rewrite
End If
Loop
ActiveModelReference.UnselectAllElements
|
|
|
Вернуться к началу |
|
|
Rus77
Зарегистрирован: 06.03.2006 Сообщения: 53
|
Добавлено: Пн Май 19, 2008 4:02 pm Заголовок сообщения: |
|
|
Ок, спасибо, заработало....по крайней мере на моей машине...
Еще потестим.... |
|
Вернуться к началу |
|
|
|