1、绘制一个圆形;
添加形状层,点开add,添加Ellipse,添加Stroke
ps:如果是直接用鼠标+shift绘制圆形,其属性里没有size,这个属性后面要用到,所以用这种方法制作圆形。这种方式的另外好处是能够得到一个圆形绝对在画面正中心的圆,方便后续控制。
2、给圆形所在的形状层添加Slider Control,随便给个值,比如10,目的是方便观察;
3、双击Dashes(Ellipse-Srtoke)旁边的小加号,展开Dash,Gap,Offset三个属性,dash是虚线每段的长度值,给Dash添加表达式:
src = effect("Slider Control")("Slider"); rad = content("Ellipse Path 1").size[0] / 2; gap = content("Stroke 1").dash.gap; seg = src <= 0 ? 1 : src; 2 * Math.PI * rad / seg - gap
第一行:拾取Slider Control;
第二行:定义半径(radius),拾取size的x轴,这里的size是直径值,除以2,得到半径值;
第三行:定义虚线间的间隙(gap),拾取gap值;
第四行:定义分段数(segment),src小于等于0时候输出为1,其他时候则取其本身的值,这里实际是用slider control来控制分段数;
TIPS:
格式: 表达式1?表达式2:表达式3
说明:如果表达式1为true ,则整个表达式的结果就是表达式2的值,如果表达式false,则整个表达式的结果就是表达式3的值.
格式: 表达式1?表达式2:表达式3
说明:如果表达式1为true ,则整个表达式的结果就是表达式2的值,如果表达式false,则整个表达式的结果就是表达式3的值.
第五行:圆的周长 = 直径 × 圆周率 = 半径 × 2 × 圆周率
周长/分段数 - 间隙值 = 每个分段的长度
周长C = 2πR = πD ,用半径值来计算周长是惯性思维,这里用直径值也是可以的:
src = effect("Slider Control")("Slider"); rad = content("Ellipse Path 1").size[0]; gap = content("Stroke 1").dash.gap; seg = src <= 0 ? 1 : src; Math.PI * rad / seg - gap
请登录以参与评论
现在登录