LINUX.ORG.RU

История изменений

Исправление bad_master, (текущая версия) :

я уже сделал, там надо умножить на 0.0175 - но в 90 градусов выдает -0.002 по z координате из-за этого получается что картинку по диагонали режет https://ibb.co/r2QK3jF - взял round и срезал числа после 2 знаков запятой, а потом сравнил с -0 и поменял на 0

                glBegin(GL_POLYGON);

		int n = 10;
		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(1.0f, (float)i / n);
			glVertex3d(xleft, (0.68f * sin((90.0 - 60.0 / n * i) *0.0175)), (-0==round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175)*100)/100)?0: round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << (float)i / n<<" "<< (0.68f * sin((90.0 - 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		if (b)
			std::cout << "------------" << std::endl;

		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(0.0f, 1.0f - (float)i / n);
			glVertex3d(xright, (0.68f * sin((30.0 + 60.0 / n * i)*0.0175)), (-0 == round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100) ? 0 : round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << 1.0f - (float)i / n<<" "<< (0.68f * sin((30.0 + 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		b = false;

		glEnd();
Теперь другая проблема - картинка искривлена https://ibb.co/0ckc18k

Исправление bad_master, :

я уже сделал, там надо умножить на 0.0175 - но в 90 градусов выдает -0.002 по z координате из-за этого получается что картинку по диагонали режет - взял round и срезал числа после 2 знаков запятой, а потом сравнил с -0 и поменял на 0

                glBegin(GL_POLYGON);

		int n = 10;
		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(1.0f, (float)i / n);
			glVertex3d(xleft, (0.68f * sin((90.0 - 60.0 / n * i) *0.0175)), (-0==round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175)*100)/100)?0: round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << (float)i / n<<" "<< (0.68f * sin((90.0 - 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		if (b)
			std::cout << "------------" << std::endl;

		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(0.0f, 1.0f - (float)i / n);
			glVertex3d(xright, (0.68f * sin((30.0 + 60.0 / n * i)*0.0175)), (-0 == round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100) ? 0 : round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << 1.0f - (float)i / n<<" "<< (0.68f * sin((30.0 + 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		b = false;

		glEnd();
Теперь другая проблема - картинка искривлена https://ibb.co/r2QK3jF https://ibb.co/0ckc18k

Исправление bad_master, :

я уже сделал, там надо умножить на 0.0175 - но в 90 градусов выдает -0.002 по z координате из-за этого получается что картинку по диагонали режет - взял round и срезал числа после 2 знаков запятой, а потом сравнил с -0 и поменял на 0

                glBegin(GL_POLYGON);

		int n = 10;
		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(1.0f, (float)i / n);
			glVertex3d(xleft, (0.68f * sin((90.0 - 60.0 / n * i) *0.0175)), (-0==round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175)*100)/100)?0: round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << (float)i / n<<" "<< (0.68f * sin((90.0 - 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		if (b)
			std::cout << "------------" << std::endl;

		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(0.0f, 1.0f - (float)i / n);
			glVertex3d(xright, (0.68f * sin((30.0 + 60.0 / n * i)*0.0175)), (-0 == round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100) ? 0 : round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << 1.0f - (float)i / n<<" "<< (0.68f * sin((30.0 + 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		b = false;

		glEnd();
Теперь другая проблема - картинка искривлена

Исправление bad_master, :

я уже сделал, там надо умножить на 0.0175 - но в 0 по игрек координате выдает -0.002 по z координате из-за этого получается что картинку по диагонали режет - взял round и срезал числа после 2 знаков запятой, а потом сравнил с -0 и поменял на 0

                glBegin(GL_POLYGON);

		int n = 10;
		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(1.0f, (float)i / n);
			glVertex3d(xleft, (0.68f * sin((90.0 - 60.0 / n * i) *0.0175)), (-0==round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175)*100)/100)?0: round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << (float)i / n<<" "<< (0.68f * sin((90.0 - 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		if (b)
			std::cout << "------------" << std::endl;

		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(0.0f, 1.0f - (float)i / n);
			glVertex3d(xright, (0.68f * sin((30.0 + 60.0 / n * i)*0.0175)), (-0 == round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100) ? 0 : round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << 1.0f - (float)i / n<<" "<< (0.68f * sin((30.0 + 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		b = false;

		glEnd();
Теперь другая проблема - картинка искривлена

Исправление bad_master, :

я уже сделал, там надо умножить на 0.0175 - но в 0 по игрек координате выдает -0.002 по z координате из-за этого получается что картинку по диагонали режет - взял round и срезал числа после 2 знаков запятой, а потом сравнил с -0 и поменял на 0

                glBegin(GL_POLYGON);

		int n = 10;
		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(1.0f, (float)i / n);
			glVertex3d(xleft, (0.68f * sin((90.0 - 60.0 / n * i) *0.0175)), (-0==round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175)*100)/100)?0: round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << (float)i / n<<" "<< (0.68f * sin((90.0 - 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		if (b)
			std::cout << "------------" << std::endl;

		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(0.0f, 1.0f - (float)i / n);
			glVertex3d(xright, (0.68f * sin((30.0 + 60.0 / n * i)*0.0175)), (-0 == round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100) ? 0 : round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << 1.0f - (float)i / n<<" "<< (0.68f * sin((30.0 + 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		b = false;

		glEnd();

Исправление bad_master, :

я уже сделал, там надо умножить на 0.0175 - но в 0 по игрек координате выдает -0.002 по z координате из-за этого получается что картинку по диагонали режет - взял round и срезал числа после 2 знаков запятой, а потом сравнил с -0 и поменял знак

                glBegin(GL_POLYGON);

		int n = 10;
		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(1.0f, (float)i / n);
			glVertex3d(xleft, (0.68f * sin((90.0 - 60.0 / n * i) *0.0175)), (-0==round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175)*100)/100)?0: round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << (float)i / n<<" "<< (0.68f * sin((90.0 - 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		if (b)
			std::cout << "------------" << std::endl;

		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(0.0f, 1.0f - (float)i / n);
			glVertex3d(xright, (0.68f * sin((30.0 + 60.0 / n * i)*0.0175)), (-0 == round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100) ? 0 : round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << 1.0f - (float)i / n<<" "<< (0.68f * sin((30.0 + 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		b = false;

		glEnd();

Исходная версия bad_master, :

я уже сделал, там надо умножить на 0.0175 - но в 0 по игрек координате выдает -0.002 по z координате из-за этого получается что картинку по диагонали режет - взял round и срезал числа после 2 знаков запятой, а потом сравнил с -0 и поменял знак

                glBegin(GL_POLYGON);

		int n = 10;
		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(1.0f, (float)i / n);
			glVertex3d(xleft, (0.68f * sin((90.0 - 60.0 / n * i) *0.0175)), (-0==round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175)*100)/100)?0: round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << (float)i / n<<" "<< (0.68f * sin((90.0 - 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((90.0 - 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		if (b)
			std::cout << "------------" << std::endl;

		for (int i = 0; i < n+1; i++)
		{
			glTexCoord2d(0.0f, 1.0f - (float)i / n);
			glVertex3d(xright, (0.68f * sin((30.0 + 60.0 / n * i)*0.0175)), (-0 == round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100) ? 0 : round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100);
			if (b)
				std::cout << 1.0f - (float)i / n<<" "<< (0.68f * sin((30.0 + 60.0 / n * i) * 0.0175)) << " " << round(0.68f * cos((30.0 + 60.0 / n * i) * 0.0175) * 100) / 100<< std::endl;
		}
		b = false;

		glEnd();