小编Kar*_*ish的帖子

opengl多个五边形

我试图产生多个五边形但由于某种原因五边形相互连接.有什么建议?

GLfloat arr[] = {100,200,340,230,130,190,200,190,260,120,200};

glColor3f(1.0, 1.0, 1.0);
GLfloat angle2, r2, r_big_circle2, r_small_circle2, step2 = 3.14 / 5.0;
r_big_circle2 = 25;
r_small_circle2 = 20;

glPushMatrix();

glBegin(GL_LINE_LOOP);
for (int n = 0; n < 5; n++){
    for (int i = 0; i < 10; i++)
    {
        r2 = (i % 2 == 0 ? r_small_circle2 : r_big_circle2);
        angle2 = step2 * i;
        glVertex3f(r2 * cos(angle2)-arr[n], r2 * sin(angle2)-arr[n], -500);
    }

}
glEnd();
glPopMatrix();
Run Code Online (Sandbox Code Playgroud)

c++ opengl graphics

3
推荐指数
1
解决办法
131
查看次数

赋值运算符和条件语句

我很难理解以下代码buffer[i] = arr ? arr[i] : 0;.这是否意味着如果arr包含任何东西然后它等于buffer[i],如果不包含它等于0

#include <iostream>
using namespace std;
int main ()
{
    int arr[5]={11,22,33,44,55};
    int * buffer;
    buffer = new int [5];

    for(int i=0;i<5;i++){
        buffer[i] = arr ? arr[i] : 0;//true/falls
        cout<<buffer[i]<<",";
    }
    cout<<endl;

    int arr2[5]={};
    int * buffer2;
    buffer2 = new int [5];

    for(int i=0;i<5;i++){
        buffer2[i] = arr2 ? arr2[i] : 0;//true/falls
        cout<<buffer2[i]<<",";
    }
    cout<<endl;
}
Run Code Online (Sandbox Code Playgroud)

c++ if-statement dynamic

0
推荐指数
1
解决办法
93
查看次数

具有多个setTimeout的JavaScript动画

我试图用setTimeout动画3种不同的形状,我的问题是如何使用多个setTimeout来动画3种不同的形状也有更好的方法来做这个可能使用setInterval

window.onload = draw;
var x = 5;
var y = 5;

radius = 50;

var x2 = 50;
var y2 = 120;

var x3 = 53;
var y3 = 230;
var context;

var loopTimer;

function draw(){
var canvas = document.getElementById('canvas');
 context = canvas.getContext('2d');
context.save();
context.clearRect(0,0,720,550);

rectangle(x,y);
circle(x2,y2);
circle2(x3,y3);

}

function rectangle(x,y){
//drawing a rectangle 
context.fillStyle = "rgba(93,119,188,237)";
context.clearRect(0,0,720,550);
context.rect(x, y, 50, 50);
context.fill();
context.lineWidth = 7;
context.strokeStyle = 'yellow';
context.stroke();
x += 1;
loopTimer = setTimeout('rectangle('+x+','+y+')',50);
}

function circle(x2,y2){ …
Run Code Online (Sandbox Code Playgroud)

javascript html5 canvas

0
推荐指数
1
解决办法
1745
查看次数

标签 统计

c++ ×2

canvas ×1

dynamic ×1

graphics ×1

html5 ×1

if-statement ×1

javascript ×1

opengl ×1