如何使用处理在30度处绘制彼此的线?我读过二维变换页面,但我不想旋转网格,我只想在30度之间画线。我怎样做呢?
下面我包含了一个示例图像,很抱歉用油漆画得很糟糕(不想使用处理),我该怎么做呢?

发布于 2014-02-05 14:26:19
也许用简单的三角法?
void setup() {
size(400, 400);
PVector center = new PVector(width/2, height/2);
for (int i = 360; i >= 180; i-=30) {
float x = center.x + cos(radians(i))*50;
float y = center.y + sin(radians(i))*50;
line(center.x, center.y, x, y);
}
}发布于 2014-02-05 08:32:44
下面的程序生成随机单元向量输入,并返回顺时针方向旋转的输出向量outputShift半径。如果你想逆时针旋转,只需使用负值。
PVector input, output;
float inputAngle, outputShift, radius;
void setup () {
size(500, 500);
load();
}
void draw () {
background(255);
translate(width/2, height/2);
ellipse (0, 0, radius*2, radius*2);
line(0, 0, input.x, input.y);
line(0, 0, output.x, output.y);
}
void load () {
input = PVector.random2D();
inputAngle = atan2(input.y, input.x);
outputShift = PI/6;
output = new PVector (
cos(inputAngle+outputShift),
sin(inputAngle+outputShift)
);
radius = 200;
input.setMag(radius);
output.setMag(radius);
}
void keyReleased () {
load();
}https://stackoverflow.com/questions/21568643
复制相似问题