Solved

# In Flash MX2004, how do I turn this linear gradient box into a radial gradient circle?

Posted on 2007-11-28
234 Views
How do I modify this action script so that it produces a circle with a concentric radial gradient, instead of a box with a linear gradient?

Thanks,
John
``````import flash.geom.*
//

var colors = [0x79986B, 0xDCE0B6, 0x79986B, 0x000000];
var alphas = [100, 100, 100,100];
var ratios = [0, 15, 30,45];
var matrix = {matrixType:"box", x:100, y:100, w:200, h:200, r:(45/180)*Math.PI};
mc.moveTo(100,100);
mc.lineTo(100,300);
mc.lineTo(300,300);
mc.lineTo(300,100);
mc.lineTo(100,100);
mc.endFill();
``````
0
Question by:gabrielPennyback
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• 4
• 2

LVL 34

Expert Comment

ID: 20367595

you can also play with "ratios" array, to change the size of gradient circle.
for example, try replacing existing "radios" array with following:
var ratios = [0, 50, 100, 200];

here is the updated code:
``````import flash.geom.*;
//

var colors = [0x79986B, 0xDCE0B6, 0x79986B, 0x000000];
var alphas = [100, 100, 100, 100];
var ratios = [0, 15, 30, 45];

var matrix = {matrixType:"box", x:100, y:100, w:200, h:200, r:(45/180)*Math.PI};
mc.moveTo(100,100);
mc.lineTo(100,300);
mc.lineTo(300,300);
mc.lineTo(300,100);
mc.lineTo(100,100);
mc.endFill();
``````
0

LVL 1

Author Comment

ID: 20368510
Hi aneesh,

Yes that was the first thing i tried, but I still get a 200x200 black box around the much smaller circle gradient.bIs "box" an ActionScript defined term?  I thought maybe "circle" would get rid of the black box, but that produces no shape at all.

John
0

LVL 34

Accepted Solution

Aneesh Chopra earned 500 total points
ID: 20371147

"
you can also play with "ratios" array, to change the size of gradient circle.
for example, try replacing existing "radios" array with following:
var ratios = [0, 50, 100, 200];
"

ratios defines the area each gradient color will occupy

ratio value must be in between 0 to 255

to get rid of black color you can set last color alpha to 0

just try follwoing code and see the output:
``````import flash.geom.*;
//

var colors = [0x79986B, 0xDCE0B6, 0x79986B, 0x000000];
var alphas = [100, 100, 100, 0];
var ratios = [0, 50, 150, 200];

var matrix = {matrixType:"box", x:100, y:100, w:200, h:200, r:(45/180)*Math.PI};
mc.moveTo(100,100);
mc.lineTo(100,300);
mc.lineTo(300,300);
mc.lineTo(300,100);
mc.lineTo(100,100);
mc.endFill();
``````
0

LVL 34

Expert Comment

ID: 20371179
another point,
"ratios" Array value should be set in incremental to each previous element of the array
and value should be inbetween 0 to 255

0

LVL 1

Author Comment

ID: 20374870
Thanks, aneesh. The main key was making that last alpha zero. Thanks for the continuing education.

Please take a look at this related quesion. If you have the time to post an answer now that would be awesome.

http://www.experts-exchange.com/Software/Photos_Graphics/Web_Graphics/Macromedia_Flash/Q_22990904.html
0

LVL 34

Expert Comment

ID: 20375432
welcome,

secondly,
if you are satisfy with my comment on this question.
Please close this question by accepting the appropriate comment

0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

I have been doing hardcore actionscripting for some time; and needless to say I have faced a lot of problems in just understanding others' code rather than understanding what the code executes. A programmer's life can become hell when there are a lo…
The last time I worked with Flash and Socket connections was in AS1. A recent project required flash connecting to a Socket, and sending receiving information - we figured it would be easy enough - we all know about the socket policy documents and c…
In this tutorial viewers will learn how to create a basic motion tween animation in Flash Open a new document in Flash: Draw/import an image: Press CTRL + F8 to convert it into a graphic symbol: Select a frame (how long you want the tween to last): …
The goal of the tutorial is to teach the user how to how to record live broadcast.
###### Suggested Courses
Course of the Month3 days, 10 hours left to enroll