Degrafa Bezier сплайн привязка данных к строке - PullRequest
0 голосов
/ 08 июня 2009

Я хочу вставить сплайн Безье в мой Canvas с помощью этого кода

<mx:Canvas 
id="graphCanvas" 
width="100%" 
height="100%" 
preinitialize="preInit()"
/>
<BezierSpline id="mySpline" graphicsTarget="{[graphCanvas]}"  data="points"

verticalCenter = "0" horizontalCenter = "0" >

points - это строка, которую я инициализирую в методе preInit ()

[Bindable]public var points : String;
private function preInit() : void {
        points = "200,100 200,300 100,300 300,500 500,300 400,300 400,100";
    }

Но когда я сейчас строю проект, на моем холсте сплайн не рисуется, тогда как прямая интеграция данных в mxml работает

<BezierSpline id="mySpline" graphicsTarget="{[graphCanvas]}"  data="200,100 200,300 100,300 300,500 500,300 400,300 400,100"

verticalCenter = "0" horizontalCenter = "0" >

Может ли кто-нибудь мне помочь? Мне нужно динамически изменить данные сплайна. Также приветствуются ответы, которые обрабатывают это программно, поскольку я не знаю, как перерисовать сплайн на холсте с помощью кода (не знаю, как использовать метод draw () сплайна).

Заранее спасибо

Себастьян

1 Ответ

1 голос
/ 08 июня 2009

У меня работает этот код:

[Bindable]
private var points:String;
private function preinit ():void
{
    points = "200,100 200,300 100,300 300,500 500,300 400,300 400,100";
}

<degrafa:BezierSpline id="mySpline" graphicsTarget="{[graphCanvas]}" data="{points}">
    <degrafa:stroke>
        <degrafa:SolidStroke weight="2" color="#0000FF"/>
    </degrafa:stroke>
</degrafa:BezierSpline>
...