Herramientas de usuario

Herramientas del sitio


wiki2:graphics

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
wiki2:graphics [2015/10/10 10:32]
alfred [Draw sinus]
wiki2:graphics [2020/05/09 09:25] (actual)
Línea 30: Línea 30:
 auto angle = .0; auto angle = .0;
 auto x = 0, y = 0; auto x = 0, y = 0;
-while (angle < 360 * PI) {+auto radio = 300; 
 +while (angle < 360) {
         // calculate x, y from a vector with known length and angle         // calculate x, y from a vector with known length and angle
-        x = 300 * cos (angle); +        x = radio * cos (angle ​* DEG_TO_RAD); 
-        y = 300 * sin (angle);+        y = radio * sin (angle ​* DEG_TO_RAD);
         ofCircle(x + ofGetWidth() / 2, y + ofGetHeight() / 2, 3);         ofCircle(x + ofGetWidth() / 2, y + ofGetHeight() / 2, 3);
         angle += 10;         angle += 10;
 } }
 </​code>​ </​code>​
 +==== Rotate figure when its center is 0,0 ==== 
 +<code cpp> 
 +vector<​ofPoint>​ points = { 
 + ofPoint(x-50,​ y-50), 
 + ofPoint(x+50,​ y-50), 
 + ofPoint(x+50,​ y+50), 
 + ofPoint(x-50,​ y+50), 
 + ofPoint(x-50,​ y-50) 
 +}; 
 +ofSetLineWidth(3);​ 
 +ofNoFill();​ 
 +ofBeginShape();​ 
 +for (auto& vertex : points) { 
 + x = vertex.x*cos(angle * DEG_TO_RAD) - vertex.y*sin(angle * DEG_TO_RAD);​ 
 + y = vertex.y*cos(angle * DEG_TO_RAD) + vertex.x*sin(angle * DEG_TO_RAD);​ 
 + x += 250; 
 + y += 250; 
 + ofVertex(x,​ y); 
 +
 +ofEndShape();​ 
 +</​code>​
wiki2/graphics.1444473121.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)