нарисовать круговую дугу в MXML Graphics - PullRequest
2 голосов
/ 20 февраля 2011

Есть ли простой способ нарисовать дугу окружности в графике MXML, в которой не используются кривые Безье?Или я должен создать свой собственный компонент?

спасибо!

f

Ответы [ 4 ]

3 голосов
/ 22 февраля 2011

В итоге я создал собственный графический компонент mxml для рисования дуг. Я переопределяю примитив Ellipse Spark и использую AS для математики - в основном копирую этот замечательный пост , который указывает этот код .

2 голосов
/ 12 сентября 2011
<s:Ellipse height="16" width="16">
    <s:stroke>
        <s:SolidColorStroke color="0x000000" joints="square" caps="square"/>
    </s:stroke>
    <s:fill>
        <s:SolidColor color="0x000000"/>
    </s:fill>
</s:Ellipse>
1 голос
/ 20 февраля 2011

Вы можете рисовать кривые, используя класс Path.Вы устанавливаете его свойство data как строку, содержащую чередующиеся команды и числовые значения, которые выполняют размещение курсора и операции рисования.Команды:

  • C - рисует кривую Безье.
  • H - рисует горизонтальную линию.
  • L - рисует линию.
  • M - Перемещает курсор.
  • Q - Рисует квадратичную кривую Безье.
  • V - Рисует вертикальную линию.
  • Z - Закрывает путь.

Пример использования этого с FXG выглядит следующим образом:

<s:Path data="M 20 0
        C 50 0 50 35 20 35
        L 15 35 L 15 45
        L 0 32 L 15 19
        L 15 29 L 20 29
        C 44 29 44 6 20 6">
    <s:stroke>
        <s:SolidColorStroke color="0x000000" weight="1"/>
    </s:stroke> 
</s:Path>

Более подробную информацию вы можете найти здесь:

http://help.adobe.com/en_US/flex/using/WS5B6A8436-0FF5-4029-8524-C7C1106C483D.html

0 голосов
/ 20 февраля 2011

Да, есть. Если имеет смысл заключить код для рисования в отдельный класс, решать только вам и речь идет о программной архитектуре.

Рисование кривых можно управлять с помощью API рисования. проверить это ссылка

BR Frank

РЕДАКТИРОВАТЬ: 20.02.2011 - 21: 12 Еще одной идеей без Безье может быть математический класс. Вот пример для рисования синусоиды Ссылка

...