processing - 如何在 ProcessingJS 中绘制星形
问题描述
这是我当前的项目代码:
size(500,500);
background(255, 255, 255);
fill(250,0,0);
ellipse(150, 230, 100, 200);
fill(10,0,0);
ellipse(180, 233, 30, 30);
fill(10,0,0);
ellipse(120, 233, 30, 30);
fill(250,250,250);
ellipse(120,233,10,20);
fill(250,250,250);
ellipse(180,233,10,20);
arc(150, 280, 60, 90, 0, PI/1);
fill(250,0,0);
rect(100,330,100,100);
fill(10,10,10);
rect(50,330,50,50);
fill(10,10,10);
rect(200,330,50,50);
fill(250,0,0);
rect(90,430,50,100);
fill(250,0,0);
rect(160,430,50,100);
fill(10,0,0);
triangle(60, 300, 101, 10, 50, 450);
有人可以提供有关如何在死侍角色旁边绘制基本 5 角星的代码吗?(在大小 500,500 维度内)
解决方案
PShapes
请参阅自定义 PShapes 部分中关于星形的非常简单实现的处理文档。
请参阅非常相似的p5.js示例。
该代码也可以在processing.js中使用。您必须分别更改createCanvas(500,500)
为size(500,500)
和push()
分别pop()
为:pushMatrix()
popMatrix()
function setup() {
createCanvas(500,500);
}
function draw() {
background(255, 255, 255);
// star
push();
translate(280, 290); // center of the star
fill(102);
beginShape();
vertex(0, -50);
vertex(14, -20);
vertex(47, -15);
vertex(23, 7);
vertex(29, 40);
vertex(0, 25);
vertex(-29, 40);
vertex(-23, 7);
vertex(-47, -15);
vertex(-14, -20);
endShape(CLOSE);
translate(100, 100);
pop();
// character
fill(250,0,0);
ellipse(150, 230, 100, 200);
fill(10,0,0);
ellipse(180, 233, 30, 30);
fill(10,0,0);
ellipse(120, 233, 30, 30);
fill(250,250,250);
ellipse(120,233,10,20);
fill(250,250,250);
ellipse(180,233,10,20);
arc(150, 280, 60, 90, 0, PI/1);
fill(250,0,0);
rect(100,330,100,100);
fill(10,10,10);
rect(50,330,50,50);
fill(10,10,10);
rect(200,330,50,50);
fill(250,0,0);
rect(90,430,50,100);
fill(250,0,0);
rect(160,430,50,100);
fill(10,0,0);
triangle(60, 300, 101, 10, 50, 450);
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.6.1/p5.js"></script>
推荐阅读
- autodesk-forge - viewer.model.getpropertySet 使用类别过滤器
- vulkan - Vulkan:如何编写非脆性测试用例
- azure - 如何在 azure 上删除已删除 Windows 服务器的服务器端点
- excel - ms word vba如何检测段落结尾
- java - 想在单个页面中添加多个视频视图
- r - ggplot2分组条形图上的绘图线
- r - 每隔一列的数据框
- python - 嵌套生成器表达式调用动态引用的函数
- flutter - Flutter:graphql_flutter FetchPolicy.noCache 返回来自不同用户的缓存数据
- apache - 在 httpd.conf 中设置适用于所有服务站点的重写规则