在MXML Graphics中绘制圆弧

时间:2011-02-20 15:45:07

标签: flex graphics flex4 mxml

有没有一种简单的方法可以在不涉及贝塞尔的MXML图形中绘制圆弧?或者我应该创建自己的组件吗?

谢谢你!

˚F

4 个答案:

答案 0 :(得分:3)

我最终创建了自己的mxml图形组件来绘制弧线。我重写了Ellipse Spark原语并使用AS作为弧数学 - 主要是复制this great post,它指向this code

答案 1 :(得分:2)

<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>

答案 2 :(得分:1)

您可以使用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

答案 3 :(得分:0)

是的。如果在单独的类中包含用于绘制的代码是有意义的,这取决于你并且是软件架构的问题。

您可以使用绘图API管理绘图曲线。看看link

BR Frank

编辑:20.02.2011 - 21:12 没有beziers的另一个想法可能是数学课。这是绘制正弦曲线Link

的示例