Skip to content

Instantly share code, notes, and snippets.

@SergiyOsadchyy
Last active January 27, 2018 06:44
Show Gist options
  • Save SergiyOsadchyy/fb98acc0dda92e9605fcabe245157f41 to your computer and use it in GitHub Desktop.
Save SergiyOsadchyy/fb98acc0dda92e9605fcabe245157f41 to your computer and use it in GitHub Desktop.
Geometric Modelling Lab_3
// lab_3
//
// Created by Sergiy on 24.01.18.
#include <GLUT/GLUT.h>
#include <stdio.h>
#include <iostream>
#include <math.h>
#define PI 3.14159265
std::string myXaxis = "X";
std::string myYaxis = "Y";
std::string myZaxis = "Z";
std::string my50value = "50";
std::string my100value = "100";
std::string myMenu1line = "Q-Exit A-Left D-Right W-Up S-Down Z-RotateLeft X-RotateRight";
std::string myMenu2line = " J-Left L-Right I-Up K-Down";
float betaAngle = -70.0;
float betaAngleRadian = betaAngle * PI / 180;
float alphaAngle = 15.0;
float alphaAngleRadian = alphaAngle * PI / 180;
float thetaAngle = 5.0;
float thetaAngleRadian = thetaAngle * PI / 180;
float horizontalMove = 0.0;
float verticalMove = 0.0;
float deltaMove = 3.0;
float rotateDegree = 1.5;
float rotateDegreeRadian = 0.0;
float angle15 = 15.0;
float angle15radian = angle15 * PI / 180;
float mytempX = 0.0;
float mytempY = 0.0;
float mytempZ = 0.0;
float precision = 0.005;
//float radius = 50.0;
float radius = 100.0;
float uMove = 0.0;
float vMove = 0.0;
float point1x = 0.0;
float point1y = 50.0;
float point1z = 50.0;
float point2x = 0.0;
float point2y = 50.0;
float point2z = point1z + radius;
float point_00_00_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 0);
float point_00_00_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 0);
float point_00_00_z = point1z + radius * sin(angle15radian * 0);
float point_00_01_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 1);
float point_00_01_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 1);
float point_00_01_z = point1z + radius * sin(angle15radian * 0);
float point_00_02_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 2);
float point_00_02_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 2);
float point_00_02_z = point1z + radius * sin(angle15radian * 0);
float point_00_03_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 3);
float point_00_03_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 3);
float point_00_03_z = point1z + radius * sin(angle15radian * 0);
float point_00_04_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 4);
float point_00_04_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 4);
float point_00_04_z = point1z + radius * sin(angle15radian * 0);
float point_00_05_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 5);
float point_00_05_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 5);
float point_00_05_z = point1z + radius * sin(angle15radian * 0);
float point_00_06_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 6);
float point_00_06_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 6);
float point_00_06_z = point1z + radius * sin(angle15radian * 0);
float point_00_07_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 7);
float point_00_07_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 7);
float point_00_07_z = point1z + radius * sin(angle15radian * 0);
float point_00_08_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 8);
float point_00_08_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 8);
float point_00_08_z = point1z + radius * sin(angle15radian * 0);
float point_00_09_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 9);
float point_00_09_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 9);
float point_00_09_z = point1z + radius * sin(angle15radian * 0);
float point_00_10_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 10);
float point_00_10_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 10);
float point_00_10_z = point1z + radius * sin(angle15radian * 0);
float point_00_11_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 11);
float point_00_11_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 11);
float point_00_11_z = point1z + radius * sin(angle15radian * 0);
float point_00_12_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 12);
float point_00_12_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 12);
float point_00_12_z = point1z + radius * sin(angle15radian * 0);
float point_00_13_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 13);
float point_00_13_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 13);
float point_00_13_z = point1z + radius * sin(angle15radian * 0);
float point_00_14_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 14);
float point_00_14_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 14);
float point_00_14_z = point1z + radius * sin(angle15radian * 0);
float point_00_15_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 15);
float point_00_15_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 15);
float point_00_15_z = point1z + radius * sin(angle15radian * 0);
float point_00_16_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 16);
float point_00_16_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 16);
float point_00_16_z = point1z + radius * sin(angle15radian * 0);
float point_00_17_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 17);
float point_00_17_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 17);
float point_00_17_z = point1z + radius * sin(angle15radian * 0);
float point_00_18_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 18);
float point_00_18_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 18);
float point_00_18_z = point1z + radius * sin(angle15radian * 0);
float point_00_19_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 19);
float point_00_19_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 19);
float point_00_19_z = point1z + radius * sin(angle15radian * 0);
float point_00_20_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 20);
float point_00_20_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 20);
float point_00_20_z = point1z + radius * sin(angle15radian * 0);
float point_00_21_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 21);
float point_00_21_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 21);
float point_00_21_z = point1z + radius * sin(angle15radian * 0);
float point_00_22_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 22);
float point_00_22_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 22);
float point_00_22_z = point1z + radius * sin(angle15radian * 0);
float point_00_23_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 23);
float point_00_23_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 23);
float point_00_23_z = point1z + radius * sin(angle15radian * 0);
float point_00_24_x = point1x + radius * cos(angle15radian * 0) * cos(angle15radian * 24);
float point_00_24_y = point1y + radius * cos(angle15radian * 0) * sin(angle15radian * 24);
float point_00_24_z = point1z + radius * sin(angle15radian * 0);
//
float point_01_00_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 0);
float point_01_00_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 0);
float point_01_00_z = point1z + radius * sin(angle15radian * 1);
float point_01_01_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 1);
float point_01_01_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 1);
float point_01_01_z = point1z + radius * sin(angle15radian * 1);
float point_01_02_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 2);
float point_01_02_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 2);
float point_01_02_z = point1z + radius * sin(angle15radian * 1);
float point_01_03_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 3);
float point_01_03_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 3);
float point_01_03_z = point1z + radius * sin(angle15radian * 1);
float point_01_04_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 4);
float point_01_04_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 4);
float point_01_04_z = point1z + radius * sin(angle15radian * 1);
float point_01_05_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 5);
float point_01_05_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 5);
float point_01_05_z = point1z + radius * sin(angle15radian * 1);
float point_01_06_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 6);
float point_01_06_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 6);
float point_01_06_z = point1z + radius * sin(angle15radian * 1);
float point_01_07_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 7);
float point_01_07_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 7);
float point_01_07_z = point1z + radius * sin(angle15radian * 1);
float point_01_08_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 8);
float point_01_08_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 8);
float point_01_08_z = point1z + radius * sin(angle15radian * 1);
float point_01_09_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 9);
float point_01_09_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 9);
float point_01_09_z = point1z + radius * sin(angle15radian * 1);
float point_01_10_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 10);
float point_01_10_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 10);
float point_01_10_z = point1z + radius * sin(angle15radian * 1);
float point_01_11_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 11);
float point_01_11_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 11);
float point_01_11_z = point1z + radius * sin(angle15radian * 1);
float point_01_12_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 12);
float point_01_12_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 12);
float point_01_12_z = point1z + radius * sin(angle15radian * 1);
float point_01_13_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 13);
float point_01_13_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 13);
float point_01_13_z = point1z + radius * sin(angle15radian * 1);
float point_01_14_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 14);
float point_01_14_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 14);
float point_01_14_z = point1z + radius * sin(angle15radian * 1);
float point_01_15_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 15);
float point_01_15_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 15);
float point_01_15_z = point1z + radius * sin(angle15radian * 1);
float point_01_16_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 16);
float point_01_16_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 16);
float point_01_16_z = point1z + radius * sin(angle15radian * 1);
float point_01_17_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 17);
float point_01_17_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 17);
float point_01_17_z = point1z + radius * sin(angle15radian * 1);
float point_01_18_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 18);
float point_01_18_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 18);
float point_01_18_z = point1z + radius * sin(angle15radian * 1);
float point_01_19_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 19);
float point_01_19_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 19);
float point_01_19_z = point1z + radius * sin(angle15radian * 1);
float point_01_20_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 20);
float point_01_20_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 20);
float point_01_20_z = point1z + radius * sin(angle15radian * 1);
float point_01_21_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 21);
float point_01_21_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 21);
float point_01_21_z = point1z + radius * sin(angle15radian * 1);
float point_01_22_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 22);
float point_01_22_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 22);
float point_01_22_z = point1z + radius * sin(angle15radian * 1);
float point_01_23_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 23);
float point_01_23_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 23);
float point_01_23_z = point1z + radius * sin(angle15radian * 1);
float point_01_24_x = point1x + radius * cos(angle15radian * 1) * cos(angle15radian * 24);
float point_01_24_y = point1y + radius * cos(angle15radian * 1) * sin(angle15radian * 24);
float point_01_24_z = point1z + radius * sin(angle15radian * 1);
//
float point_02_00_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 0);
float point_02_00_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 0);
float point_02_00_z = point1z + radius * sin(angle15radian * 2);
float point_02_01_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 1);
float point_02_01_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 1);
float point_02_01_z = point1z + radius * sin(angle15radian * 2);
float point_02_02_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 2);
float point_02_02_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 2);
float point_02_02_z = point1z + radius * sin(angle15radian * 2);
float point_02_03_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 3);
float point_02_03_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 3);
float point_02_03_z = point1z + radius * sin(angle15radian * 2);
float point_02_04_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 4);
float point_02_04_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 4);
float point_02_04_z = point1z + radius * sin(angle15radian * 2);
float point_02_05_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 5);
float point_02_05_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 5);
float point_02_05_z = point1z + radius * sin(angle15radian * 2);
float point_02_06_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 6);
float point_02_06_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 6);
float point_02_06_z = point1z + radius * sin(angle15radian * 2);
float point_02_07_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 7);
float point_02_07_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 7);
float point_02_07_z = point1z + radius * sin(angle15radian * 2);
float point_02_08_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 8);
float point_02_08_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 8);
float point_02_08_z = point1z + radius * sin(angle15radian * 2);
float point_02_09_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 9);
float point_02_09_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 9);
float point_02_09_z = point1z + radius * sin(angle15radian * 2);
float point_02_10_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 10);
float point_02_10_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 10);
float point_02_10_z = point1z + radius * sin(angle15radian * 2);
float point_02_11_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 11);
float point_02_11_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 11);
float point_02_11_z = point1z + radius * sin(angle15radian * 2);
float point_02_12_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 12);
float point_02_12_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 12);
float point_02_12_z = point1z + radius * sin(angle15radian * 2);
float point_02_13_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 13);
float point_02_13_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 13);
float point_02_13_z = point1z + radius * sin(angle15radian * 2);
float point_02_14_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 14);
float point_02_14_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 14);
float point_02_14_z = point1z + radius * sin(angle15radian * 2);
float point_02_15_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 15);
float point_02_15_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 15);
float point_02_15_z = point1z + radius * sin(angle15radian * 2);
float point_02_16_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 16);
float point_02_16_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 16);
float point_02_16_z = point1z + radius * sin(angle15radian * 2);
float point_02_17_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 17);
float point_02_17_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 17);
float point_02_17_z = point1z + radius * sin(angle15radian * 2);
float point_02_18_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 18);
float point_02_18_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 18);
float point_02_18_z = point1z + radius * sin(angle15radian * 2);
float point_02_19_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 19);
float point_02_19_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 19);
float point_02_19_z = point1z + radius * sin(angle15radian * 2);
float point_02_20_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 20);
float point_02_20_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 20);
float point_02_20_z = point1z + radius * sin(angle15radian * 2);
float point_02_21_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 21);
float point_02_21_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 21);
float point_02_21_z = point1z + radius * sin(angle15radian * 2);
float point_02_22_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 22);
float point_02_22_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 22);
float point_02_22_z = point1z + radius * sin(angle15radian * 2);
float point_02_23_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 23);
float point_02_23_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 23);
float point_02_23_z = point1z + radius * sin(angle15radian * 2);
float point_02_24_x = point1x + radius * cos(angle15radian * 2) * cos(angle15radian * 24);
float point_02_24_y = point1y + radius * cos(angle15radian * 2) * sin(angle15radian * 24);
float point_02_24_z = point1z + radius * sin(angle15radian * 2);
//
float point_03_00_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 0);
float point_03_00_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 0);
float point_03_00_z = point1z + radius * sin(angle15radian * 3);
float point_03_01_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 1);
float point_03_01_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 1);
float point_03_01_z = point1z + radius * sin(angle15radian * 3);
float point_03_02_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 2);
float point_03_02_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 2);
float point_03_02_z = point1z + radius * sin(angle15radian * 3);
float point_03_03_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 3);
float point_03_03_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 3);
float point_03_03_z = point1z + radius * sin(angle15radian * 3);
float point_03_04_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 4);
float point_03_04_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 4);
float point_03_04_z = point1z + radius * sin(angle15radian * 3);
float point_03_05_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 5);
float point_03_05_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 5);
float point_03_05_z = point1z + radius * sin(angle15radian * 3);
float point_03_06_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 6);
float point_03_06_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 6);
float point_03_06_z = point1z + radius * sin(angle15radian * 3);
float point_03_07_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 7);
float point_03_07_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 7);
float point_03_07_z = point1z + radius * sin(angle15radian * 3);
float point_03_08_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 8);
float point_03_08_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 8);
float point_03_08_z = point1z + radius * sin(angle15radian * 3);
float point_03_09_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 9);
float point_03_09_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 9);
float point_03_09_z = point1z + radius * sin(angle15radian * 3);
float point_03_10_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 10);
float point_03_10_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 10);
float point_03_10_z = point1z + radius * sin(angle15radian * 3);
float point_03_11_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 11);
float point_03_11_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 11);
float point_03_11_z = point1z + radius * sin(angle15radian * 3);
float point_03_12_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 12);
float point_03_12_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 12);
float point_03_12_z = point1z + radius * sin(angle15radian * 3);
float point_03_13_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 13);
float point_03_13_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 13);
float point_03_13_z = point1z + radius * sin(angle15radian * 3);
float point_03_14_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 14);
float point_03_14_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 14);
float point_03_14_z = point1z + radius * sin(angle15radian * 3);
float point_03_15_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 15);
float point_03_15_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 15);
float point_03_15_z = point1z + radius * sin(angle15radian * 3);
float point_03_16_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 16);
float point_03_16_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 16);
float point_03_16_z = point1z + radius * sin(angle15radian * 3);
float point_03_17_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 17);
float point_03_17_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 17);
float point_03_17_z = point1z + radius * sin(angle15radian * 3);
float point_03_18_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 18);
float point_03_18_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 18);
float point_03_18_z = point1z + radius * sin(angle15radian * 3);
float point_03_19_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 19);
float point_03_19_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 19);
float point_03_19_z = point1z + radius * sin(angle15radian * 3);
float point_03_20_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 20);
float point_03_20_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 20);
float point_03_20_z = point1z + radius * sin(angle15radian * 3);
float point_03_21_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 21);
float point_03_21_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 21);
float point_03_21_z = point1z + radius * sin(angle15radian * 3);
float point_03_22_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 22);
float point_03_22_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 22);
float point_03_22_z = point1z + radius * sin(angle15radian * 3);
float point_03_23_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 23);
float point_03_23_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 23);
float point_03_23_z = point1z + radius * sin(angle15radian * 3);
float point_03_24_x = point1x + radius * cos(angle15radian * 3) * cos(angle15radian * 24);
float point_03_24_y = point1y + radius * cos(angle15radian * 3) * sin(angle15radian * 24);
float point_03_24_z = point1z + radius * sin(angle15radian * 3);
//
float point_04_00_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 0);
float point_04_00_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 0);
float point_04_00_z = point1z + radius * sin(angle15radian * 4);
float point_04_01_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 1);
float point_04_01_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 1);
float point_04_01_z = point1z + radius * sin(angle15radian * 4);
float point_04_02_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 2);
float point_04_02_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 2);
float point_04_02_z = point1z + radius * sin(angle15radian * 4);
float point_04_03_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 3);
float point_04_03_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 3);
float point_04_03_z = point1z + radius * sin(angle15radian * 4);
float point_04_04_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 4);
float point_04_04_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 4);
float point_04_04_z = point1z + radius * sin(angle15radian * 4);
float point_04_05_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 5);
float point_04_05_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 5);
float point_04_05_z = point1z + radius * sin(angle15radian * 4);
float point_04_06_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 6);
float point_04_06_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 6);
float point_04_06_z = point1z + radius * sin(angle15radian * 4);
float point_04_07_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 7);
float point_04_07_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 7);
float point_04_07_z = point1z + radius * sin(angle15radian * 4);
float point_04_08_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 8);
float point_04_08_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 8);
float point_04_08_z = point1z + radius * sin(angle15radian * 4);
float point_04_09_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 9);
float point_04_09_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 9);
float point_04_09_z = point1z + radius * sin(angle15radian * 4);
float point_04_10_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 10);
float point_04_10_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 10);
float point_04_10_z = point1z + radius * sin(angle15radian * 4);
float point_04_11_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 11);
float point_04_11_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 11);
float point_04_11_z = point1z + radius * sin(angle15radian * 4);
float point_04_12_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 12);
float point_04_12_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 12);
float point_04_12_z = point1z + radius * sin(angle15radian * 4);
float point_04_13_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 13);
float point_04_13_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 13);
float point_04_13_z = point1z + radius * sin(angle15radian * 4);
float point_04_14_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 14);
float point_04_14_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 14);
float point_04_14_z = point1z + radius * sin(angle15radian * 4);
float point_04_15_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 15);
float point_04_15_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 15);
float point_04_15_z = point1z + radius * sin(angle15radian * 4);
float point_04_16_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 16);
float point_04_16_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 16);
float point_04_16_z = point1z + radius * sin(angle15radian * 4);
float point_04_17_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 17);
float point_04_17_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 17);
float point_04_17_z = point1z + radius * sin(angle15radian * 4);
float point_04_18_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 18);
float point_04_18_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 18);
float point_04_18_z = point1z + radius * sin(angle15radian * 4);
float point_04_19_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 19);
float point_04_19_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 19);
float point_04_19_z = point1z + radius * sin(angle15radian * 4);
float point_04_20_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 20);
float point_04_20_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 20);
float point_04_20_z = point1z + radius * sin(angle15radian * 4);
float point_04_21_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 21);
float point_04_21_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 21);
float point_04_21_z = point1z + radius * sin(angle15radian * 4);
float point_04_22_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 22);
float point_04_22_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 22);
float point_04_22_z = point1z + radius * sin(angle15radian * 4);
float point_04_23_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 23);
float point_04_23_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 23);
float point_04_23_z = point1z + radius * sin(angle15radian * 4);
float point_04_24_x = point1x + radius * cos(angle15radian * 4) * cos(angle15radian * 24);
float point_04_24_y = point1y + radius * cos(angle15radian * 4) * sin(angle15radian * 24);
float point_04_24_z = point1z + radius * sin(angle15radian * 4);
//
//float point1_x = point1x + radius * cos(angle15radian * 0.4) * cos(angle15radian * 1.8);
//float point1_y = point1y + radius * cos(angle15radian * 0.4) * sin(angle15radian * 1.8);
//float point1_z = point1z + radius * sin(angle15radian * 0.4);
float point1_x = 40.0;
float point1_y = 180.0;
float vector1x = 40.0;
float vector1y = 40.0;
float point2_x = 80.0;
float point2_y = 160.0;
float vector2x = -40.0;
float vector2y = -50.0;
float vector2_3x = 10.0;
float vector2_3y = 10.0;
float point3x = 96.0;
float point3y = 155.0;
float vector3x = 0.0;
float vector3y = -10.0;
float point4x = 115.0;
float point4y = 150.0;
float vector4x = -15.0;
float vector4y = -20.0;
float point5x = 82.0;
float point5y = 203.0;
float vector5x = 40.0;
float vector5y = 0.0;
float point6x = 190.0;
float point6y = 190.0;
float vector6x = 45.0;
float vector6y = 35.0;
float point7x = 105.0;
float point7y = 200.0;
float vector7x = 0.0;
float vector7y = 0.0;
float point8x = 119.0;
float point8y = 209.0;
float vector8x = -5.0;
float vector8y = 5.0;
float point9x = 167.0;
float point9y = 190.0;
float vector9x = -5.0;
float vector9y = 0.0;
float point10x = 165.0;
float point10y = 198.0;
float vector10x = -50.0;
float vector10y = -10.0;
float vector10_9x = 10.0;
float vector10_9y = -10.0;
float vector10_13x = 100.0;
float vector10_13y = -10.0;
float point11x = 37.0;
float point11y = 257.0;
float vector11x = -35.0;
float vector11y = -95.0;
float point12x = 120.0;
float point12y = 210.0;
float vector12x = 20.0;
float vector12y = -25.0;
float vector12_10x = -10.0;
float vector12_10y = 3.0;
float point13x = 200.0;
float point13y = 205.0;
float vector13x = 3.0;
float vector13y = 10.0;
float vector13_14x = 10.0;
float vector13_14y = 20.0;
float point14x = 180.0;
float point14y = 218.0;
float vector14x = -15.0;
float vector14y = 20.0;
float point15x = 120.0;
float point15y = 232.0;
float vector15x = -70.0;
float vector15y = -30.0;
float vector15_16x = 10.0;
float vector15_16y = 10.0;
float point16x = 47.0;
float point16y = 243.0;
float vector16x = 0.0;
float vector16y = 0.0;
float vector16_17x = 20.0;
float vector16_17y = -10.0;
float point17x = 40.0;
float point17y = 257.0;
float vector17x = 15.0;
float vector17y = -15.0;
float point18x = 178.0;
float point18y = 213.0;
float vector18x = 0.0;
float vector18y = 0.0;
float point19x = 163.0;
float point19y = 214.0;
float vector19x = 0.0;
float vector19y = 0.0;
float point20x = 163.0;
float point20y = 227.0;
float vector20x = 10.0;
float vector20y = -10.0;
float point21x = 170.0;
float point21y = 225.0;
float vector21x = 0.0;
float vector21y = 0.0;
float point22x = 159.0;
float point22y = 216.0;
float vector22x = 10.0;
float vector22y = 10.0;
float point23x = 161.0;
float point23y = 227.0;
float vector23x = -5.0;
float vector23y = 10.0;
float point24x = 158.0;
float point24y = 216.0;
float vector24x = -10.0;
float vector24y = -5.0;
float point25x = 143.0;
float point25y = 218.0;
float vector25x = -5.0;
float vector25y = 3.0;
float point26x = 142.0;
float point26y = 218.0;
float vector26x = 10.0;
float vector26y = 45.0;
float point27x = 159.0;
float point27y = 229.0;
float vector27x = 15.0;
float vector27y = 3.0;
float point28x = 161.0;
float point28y = 212.0;
float vector28x = -100.0;
float vector28y = -50.0;
float point29x = 144.0;
float point29y = 231.0;
float vector29x = 30.0;
float vector29y = 20.0;
float point30x = 168.0;
float point30y = 258.0;
float vector30x = -30.0;
float vector30y = -5.0;
float point31x = 140.0;
float point31y = 264.0;
float vector31x = 30.0;
float vector31y = 20.0;
float vector31_32x = -20.0;
float vector31_32y = -10.0;
float point32x = 192.0;
float point32y = 253.0;
float vector32x = -30.0;
float vector32y = -50.0;
float vector32_31x = 10.0;
float vector32_31y = 30.0;
float point33x = 104.0;
float point33y = 269.0;
float vector33x = 10.0;
float vector33y = 50.0;
float vector33_34x = -20.0;
float vector33_34y = -40.0;
float point34x = 218.0;
float point34y = 248.0;
float vector34x = -30.0;
float vector34y = -80.0;
float vector34_33x = 10.0;
float vector34_33y = 60.0;
float point35x = 74.0;
float point35y = 276.0;
float vector35x = 10.0;
float vector35y = 50.0;
float vector35_36x = 10.0;
float vector35_36y = -20.0;
float point36x = 128.0;
float point36y = 279.0;
float vector36x = -10.0;
float vector36y = 3.0;
float yAxisRotationMatrix11 = cos(betaAngleRadian);
float yAxisRotationMatrix12 = 0.0;
float yAxisRotationMatrix13 = sin(betaAngleRadian);
float yAxisRotationMatrix14 = 0.0;
float yAxisRotationMatrix21 = 0.0;
float yAxisRotationMatrix22 = 1.0;
float yAxisRotationMatrix23 = 0.0;
float yAxisRotationMatrix24 = 0.0;
float yAxisRotationMatrix31 = -sin(betaAngleRadian);
float yAxisRotationMatrix32 = 0.0;
float yAxisRotationMatrix33 = cos(betaAngleRadian);
float yAxisRotationMatrix34 = 0.0;
float yAxisRotationMatrix41 = 0.0;
float yAxisRotationMatrix42 = 0.0;
float yAxisRotationMatrix43 = 0.0;
float yAxisRotationMatrix44 = 1.0;
float xAxisRotationMatrix11 = 1.0;
float xAxisRotationMatrix12 = 0.0;
float xAxisRotationMatrix13 = 0.0;
float xAxisRotationMatrix14 = 0.0;
float xAxisRotationMatrix21 = 0.0;
float xAxisRotationMatrix22 = cos(alphaAngleRadian);
float xAxisRotationMatrix23 = -sin(alphaAngleRadian);
float xAxisRotationMatrix24 = 0.0;
float xAxisRotationMatrix31 = 0.0;
float xAxisRotationMatrix32 = sin(alphaAngleRadian);
float xAxisRotationMatrix33 = cos(alphaAngleRadian);
float xAxisRotationMatrix34 = 0.0;
float xAxisRotationMatrix41 = 0.0;
float xAxisRotationMatrix42 = 0.0;
float xAxisRotationMatrix43 = 0.0;
float xAxisRotationMatrix44 = 1.0;
float x0projectionMatrix11 = 0.0;
float x0projectionMatrix12 = 0.0;
float x0projectionMatrix13 = 0.0;
float x0projectionMatrix14 = 0.0;
float x0projectionMatrix21 = 0.0;
float x0projectionMatrix22 = 1.0;
float x0projectionMatrix23 = 0.0;
float x0projectionMatrix24 = 0.0;
float x0projectionMatrix31 = 0.0;
float x0projectionMatrix32 = 0.0;
float x0projectionMatrix33 = 1.0;
float x0projectionMatrix34 = 0.0;
float x0projectionMatrix41 = 0.0;
float x0projectionMatrix42 = 0.0;
float x0projectionMatrix43 = 0.0;
float x0projectionMatrix44 = 1.0;
void init();
void axis();
void myTrimetricAxis(float originX, float originY, float originZ, float destinationX, float destinationY, float destinationZ);
void myTrimetricDrawing(float originX, float originY, float originZ, float destinationX, float destinationY, float destinationZ);
void myDrawText(const char *text, int length, int x, int y);
void keyboard(unsigned char key, int x, int y);
void myHorizontalMove();
void myVerticalMove();
void myRotation();
void myAnimation(int t);
void myFergusonCurve(float point_1_x, float point_1_y, float vector1x, float vector1y, float point_2_x, float point_2_y, float vector2x, float vector2y, float precision);
int main(int argc, char * argv[])
{
glutInit(&argc, argv); // Initialize GLUT
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB); // Set display mode
glutInitWindowPosition(50, 100); // Set top-left display-window position
glutInitWindowSize(800, 600); // Set display-window width and height
glutCreateWindow("Lab 1"); // Create display window
init(); // Execute initialization procedure
glutDisplayFunc(axis); // Send graphics to display window
glutKeyboardFunc(keyboard);
glutMainLoop(); // Display everything and wait
return 0;
}
void init()
{
glClearColor(1.0, 1.0, 1.0, 0.0); // Set display window color to white
glMatrixMode(GL_PROJECTION); // Set projection parameters
glOrtho(-200.0, 200.0, -150.0, 150.0, -150.0, 150.0);
}
void axis()
{
glClear(GL_COLOR_BUFFER_BIT); // Clear display window
glColor3f(0.0, 0.0, 0.0); // Set linegegment color to black
glBegin(GL_LINES);
// Specify y-axis
myTrimetricAxis(0.0, 0.0, 0.0, 0.0, 120.0, 0.0);
myTrimetricAxis(-5.0, 113.0, 0.0, 0.0, 120.0, 0.0);
myTrimetricAxis(5.0, 113.0, 0.0, 0.0, 120.0, 0.0);
// Specify x-axis
myTrimetricAxis(0.0, 0.0, 0.0, 120.0, 0.0, 0.0);
myTrimetricAxis(113.0, 5.0, 0.0, 120.0, 0.0, 0.0);
myTrimetricAxis(113.0, -5.0, 0.0, 120.0, 0.0, 0.0);
// Specify z-axis
myTrimetricAxis(0.0, 0.0, 0.0, 0.0, 0.0, 120.0);
myTrimetricAxis(0.0, 5.0, 113.0, 0.0, 0.0, 120.0);
myTrimetricAxis(0.0, -5.0, 113.0, 0.0, 0.0, 120.0);
// Specify 50 point on x-axis
myTrimetricAxis(50.0, 3.0, 0.0, 50.0, -3.0, 0.0);
// Specify 100 point on x-axis
myTrimetricAxis(100.0, 3.0, 0.0, 100.0, -3.0, 0.0);
// Specify 50 point on y-axis
myTrimetricAxis(-3.0, 50.0, 0.0, 3.0, 50.0, 0.0);
// Specify 100 point on y-axis
myTrimetricAxis(-3.0, 100.0, 0.0, 3.0, 100.0, 0.0);
// Specify 50 point on z-axis
myTrimetricAxis(0.0, 3.0, 50.0, 0.0, -3.0, 50.0);
// Specify 100 point on z-axis
myTrimetricAxis(0.0, 3.0, 100.0, 0.0, -3.0, 100.0);
glEnd();
// x-axis text
myDrawText(myXaxis.data(), myXaxis.size(), 250, 120);
// y-axis text
myDrawText(myYaxis.data(), myYaxis.size(), 210, 270);
// z-axis text
myDrawText(myZaxis.data(), myZaxis.size(), 70, 140);
// 50 point text
myDrawText(my50value.data(), my50value.size(), 210, 128);
myDrawText(my50value.data(), my50value.size(), 187, 198);
myDrawText(my50value.data(), my50value.size(), 150, 135);
// 100 point text
myDrawText(my100value.data(), my100value.size(), 223, 116);
myDrawText(my100value.data(), my100value.size(), 182, 245);
myDrawText(my100value.data(), my100value.size(), 100, 130);
// menu
myDrawText(myMenu1line.data(), myMenu1line.size(), 10, 20);
myDrawText(myMenu2line.data(), myMenu2line.size(), 10, 10);
// surface drawing
myTrimetricAxis(point1x, point1y, point1z, point2x, point2y, point2z);
myTrimetricAxis(point_00_00_x, point_00_00_y, point_00_00_z, point_00_01_x, point_00_01_y, point_00_01_z);
myTrimetricAxis(point_00_01_x, point_00_01_y, point_00_01_z, point_00_02_x, point_00_02_y, point_00_02_z);
myTrimetricAxis(point_00_02_x, point_00_02_y, point_00_02_z, point_00_03_x, point_00_03_y, point_00_03_z);
myTrimetricAxis(point_00_03_x, point_00_03_y, point_00_03_z, point_00_04_x, point_00_04_y, point_00_04_z);
myTrimetricAxis(point_00_04_x, point_00_04_y, point_00_04_z, point_00_05_x, point_00_05_y, point_00_05_z);
myTrimetricAxis(point_00_05_x, point_00_05_y, point_00_05_z, point_00_06_x, point_00_06_y, point_00_06_z);
myTrimetricAxis(point_00_06_x, point_00_06_y, point_00_06_z, point_00_07_x, point_00_07_y, point_00_07_z);
myTrimetricAxis(point_00_07_x, point_00_07_y, point_00_07_z, point_00_08_x, point_00_08_y, point_00_08_z);
myTrimetricAxis(point_00_08_x, point_00_08_y, point_00_08_z, point_00_09_x, point_00_09_y, point_00_09_z);
myTrimetricAxis(point_00_09_x, point_00_09_y, point_00_09_z, point_00_10_x, point_00_10_y, point_00_10_z);
myTrimetricAxis(point_00_10_x, point_00_10_y, point_00_10_z, point_00_11_x, point_00_11_y, point_00_11_z);
myTrimetricAxis(point_00_11_x, point_00_11_y, point_00_11_z, point_00_12_x, point_00_12_y, point_00_12_z);
myTrimetricAxis(point_00_12_x, point_00_12_y, point_00_12_z, point_00_13_x, point_00_13_y, point_00_13_z);
myTrimetricAxis(point_00_13_x, point_00_13_y, point_00_13_z, point_00_14_x, point_00_14_y, point_00_14_z);
myTrimetricAxis(point_00_14_x, point_00_14_y, point_00_14_z, point_00_15_x, point_00_15_y, point_00_15_z);
myTrimetricAxis(point_00_15_x, point_00_15_y, point_00_15_z, point_00_16_x, point_00_16_y, point_00_16_z);
myTrimetricAxis(point_00_16_x, point_00_16_y, point_00_16_z, point_00_17_x, point_00_17_y, point_00_17_z);
myTrimetricAxis(point_00_17_x, point_00_17_y, point_00_17_z, point_00_18_x, point_00_18_y, point_00_18_z);
myTrimetricAxis(point_00_18_x, point_00_18_y, point_00_18_z, point_00_19_x, point_00_19_y, point_00_19_z);
myTrimetricAxis(point_00_19_x, point_00_19_y, point_00_19_z, point_00_20_x, point_00_20_y, point_00_20_z);
myTrimetricAxis(point_00_20_x, point_00_20_y, point_00_20_z, point_00_21_x, point_00_21_y, point_00_21_z);
myTrimetricAxis(point_00_21_x, point_00_21_y, point_00_21_z, point_00_22_x, point_00_22_y, point_00_22_z);
myTrimetricAxis(point_00_22_x, point_00_22_y, point_00_22_z, point_00_23_x, point_00_23_y, point_00_23_z);
myTrimetricAxis(point_00_23_x, point_00_23_y, point_00_23_z, point_00_24_x, point_00_24_y, point_00_24_z);
//
myTrimetricAxis(point_01_00_x, point_01_00_y, point_01_00_z, point_01_01_x, point_01_01_y, point_01_01_z);
myTrimetricAxis(point_01_01_x, point_01_01_y, point_01_01_z, point_01_02_x, point_01_02_y, point_01_02_z);
myTrimetricAxis(point_01_02_x, point_01_02_y, point_01_02_z, point_01_03_x, point_01_03_y, point_01_03_z);
myTrimetricAxis(point_01_03_x, point_01_03_y, point_01_03_z, point_01_04_x, point_01_04_y, point_01_04_z);
myTrimetricAxis(point_01_04_x, point_01_04_y, point_01_04_z, point_01_05_x, point_01_05_y, point_01_05_z);
myTrimetricAxis(point_01_05_x, point_01_05_y, point_01_05_z, point_01_06_x, point_01_06_y, point_01_06_z);
myTrimetricAxis(point_01_06_x, point_01_06_y, point_01_06_z, point_01_07_x, point_01_07_y, point_01_07_z);
myTrimetricAxis(point_01_07_x, point_01_07_y, point_01_07_z, point_01_08_x, point_01_08_y, point_01_08_z);
myTrimetricAxis(point_01_08_x, point_01_08_y, point_01_08_z, point_01_09_x, point_01_09_y, point_01_09_z);
myTrimetricAxis(point_01_09_x, point_01_09_y, point_01_09_z, point_01_10_x, point_01_10_y, point_01_10_z);
myTrimetricAxis(point_01_10_x, point_01_10_y, point_01_10_z, point_01_11_x, point_01_11_y, point_01_11_z);
myTrimetricAxis(point_01_11_x, point_01_11_y, point_01_11_z, point_01_12_x, point_01_12_y, point_01_12_z);
myTrimetricAxis(point_01_12_x, point_01_12_y, point_01_12_z, point_01_13_x, point_01_13_y, point_01_13_z);
myTrimetricAxis(point_01_13_x, point_01_13_y, point_01_13_z, point_01_14_x, point_01_14_y, point_01_14_z);
myTrimetricAxis(point_01_14_x, point_01_14_y, point_01_14_z, point_01_15_x, point_01_15_y, point_01_15_z);
myTrimetricAxis(point_01_15_x, point_01_15_y, point_01_15_z, point_01_16_x, point_01_16_y, point_01_16_z);
myTrimetricAxis(point_01_16_x, point_01_16_y, point_01_16_z, point_01_17_x, point_01_17_y, point_01_17_z);
myTrimetricAxis(point_01_17_x, point_01_17_y, point_01_17_z, point_01_18_x, point_01_18_y, point_01_18_z);
myTrimetricAxis(point_01_18_x, point_01_18_y, point_01_18_z, point_01_19_x, point_01_19_y, point_01_19_z);
myTrimetricAxis(point_01_19_x, point_01_19_y, point_01_19_z, point_01_20_x, point_01_20_y, point_01_20_z);
myTrimetricAxis(point_01_20_x, point_01_20_y, point_01_20_z, point_01_21_x, point_01_21_y, point_01_21_z);
myTrimetricAxis(point_01_21_x, point_01_21_y, point_01_21_z, point_01_22_x, point_01_22_y, point_01_22_z);
myTrimetricAxis(point_01_22_x, point_01_22_y, point_01_22_z, point_01_23_x, point_01_23_y, point_01_23_z);
myTrimetricAxis(point_01_23_x, point_01_23_y, point_01_23_z, point_01_24_x, point_01_24_y, point_01_24_z);
myTrimetricAxis(point_01_00_x, point_01_00_y, point_01_00_z, point_00_00_x, point_00_00_y, point_00_00_z);
myTrimetricAxis(point_01_01_x, point_01_01_y, point_01_01_z, point_00_01_x, point_00_01_y, point_00_01_z);
myTrimetricAxis(point_01_02_x, point_01_02_y, point_01_02_z, point_00_02_x, point_00_02_y, point_00_02_z);
myTrimetricAxis(point_01_03_x, point_01_03_y, point_01_03_z, point_00_03_x, point_00_03_y, point_00_03_z);
myTrimetricAxis(point_01_04_x, point_01_04_y, point_01_04_z, point_00_04_x, point_00_04_y, point_00_04_z);
myTrimetricAxis(point_01_05_x, point_01_05_y, point_01_05_z, point_00_05_x, point_00_05_y, point_00_05_z);
myTrimetricAxis(point_01_06_x, point_01_06_y, point_01_06_z, point_00_06_x, point_00_06_y, point_00_06_z);
myTrimetricAxis(point_01_07_x, point_01_07_y, point_01_07_z, point_00_07_x, point_00_07_y, point_00_07_z);
myTrimetricAxis(point_01_08_x, point_01_08_y, point_01_08_z, point_00_08_x, point_00_08_y, point_00_08_z);
myTrimetricAxis(point_01_09_x, point_01_09_y, point_01_09_z, point_00_09_x, point_00_09_y, point_00_09_z);
myTrimetricAxis(point_01_10_x, point_01_10_y, point_01_10_z, point_00_10_x, point_00_10_y, point_00_10_z);
myTrimetricAxis(point_01_11_x, point_01_11_y, point_01_11_z, point_00_11_x, point_00_11_y, point_00_11_z);
myTrimetricAxis(point_01_12_x, point_01_12_y, point_01_12_z, point_00_12_x, point_00_12_y, point_00_12_z);
myTrimetricAxis(point_01_13_x, point_01_13_y, point_01_13_z, point_00_13_x, point_00_13_y, point_00_13_z);
myTrimetricAxis(point_01_14_x, point_01_14_y, point_01_14_z, point_00_14_x, point_00_14_y, point_00_14_z);
myTrimetricAxis(point_01_15_x, point_01_15_y, point_01_15_z, point_00_15_x, point_00_15_y, point_00_15_z);
myTrimetricAxis(point_01_16_x, point_01_16_y, point_01_16_z, point_00_16_x, point_00_16_y, point_00_16_z);
myTrimetricAxis(point_01_17_x, point_01_17_y, point_01_17_z, point_00_17_x, point_00_17_y, point_00_17_z);
myTrimetricAxis(point_01_18_x, point_01_18_y, point_01_18_z, point_00_18_x, point_00_18_y, point_00_18_z);
myTrimetricAxis(point_01_19_x, point_01_19_y, point_01_19_z, point_00_19_x, point_00_19_y, point_00_19_z);
myTrimetricAxis(point_01_20_x, point_01_20_y, point_01_20_z, point_00_20_x, point_00_20_y, point_00_20_z);
myTrimetricAxis(point_01_21_x, point_01_21_y, point_01_21_z, point_00_21_x, point_00_21_y, point_00_21_z);
myTrimetricAxis(point_01_22_x, point_01_22_y, point_01_22_z, point_00_22_x, point_00_22_y, point_00_22_z);
myTrimetricAxis(point_01_23_x, point_01_23_y, point_01_23_z, point_00_23_x, point_00_23_y, point_00_23_z);
//
myTrimetricAxis(point_02_00_x, point_02_00_y, point_02_00_z, point_02_01_x, point_02_01_y, point_02_01_z);
myTrimetricAxis(point_02_01_x, point_02_01_y, point_02_01_z, point_02_02_x, point_02_02_y, point_02_02_z);
myTrimetricAxis(point_02_02_x, point_02_02_y, point_02_02_z, point_02_03_x, point_02_03_y, point_02_03_z);
myTrimetricAxis(point_02_03_x, point_02_03_y, point_02_03_z, point_02_04_x, point_02_04_y, point_02_04_z);
myTrimetricAxis(point_02_04_x, point_02_04_y, point_02_04_z, point_02_05_x, point_02_05_y, point_02_05_z);
myTrimetricAxis(point_02_05_x, point_02_05_y, point_02_05_z, point_02_06_x, point_02_06_y, point_02_06_z);
myTrimetricAxis(point_02_06_x, point_02_06_y, point_02_06_z, point_02_07_x, point_02_07_y, point_02_07_z);
myTrimetricAxis(point_02_07_x, point_02_07_y, point_02_07_z, point_02_08_x, point_02_08_y, point_02_08_z);
myTrimetricAxis(point_02_08_x, point_02_08_y, point_02_08_z, point_02_09_x, point_02_09_y, point_02_09_z);
myTrimetricAxis(point_02_09_x, point_02_09_y, point_02_09_z, point_02_10_x, point_02_10_y, point_02_10_z);
myTrimetricAxis(point_02_10_x, point_02_10_y, point_02_10_z, point_02_11_x, point_02_11_y, point_02_11_z);
myTrimetricAxis(point_02_11_x, point_02_11_y, point_02_11_z, point_02_12_x, point_02_12_y, point_02_12_z);
myTrimetricAxis(point_02_12_x, point_02_12_y, point_02_12_z, point_02_13_x, point_02_13_y, point_02_13_z);
myTrimetricAxis(point_02_13_x, point_02_13_y, point_02_13_z, point_02_14_x, point_02_14_y, point_02_14_z);
myTrimetricAxis(point_02_14_x, point_02_14_y, point_02_14_z, point_02_15_x, point_02_15_y, point_02_15_z);
myTrimetricAxis(point_02_15_x, point_02_15_y, point_02_15_z, point_02_16_x, point_02_16_y, point_02_16_z);
myTrimetricAxis(point_02_16_x, point_02_16_y, point_02_16_z, point_02_17_x, point_02_17_y, point_02_17_z);
myTrimetricAxis(point_02_17_x, point_02_17_y, point_02_17_z, point_02_18_x, point_02_18_y, point_02_18_z);
myTrimetricAxis(point_02_18_x, point_02_18_y, point_02_18_z, point_02_19_x, point_02_19_y, point_02_19_z);
myTrimetricAxis(point_02_19_x, point_02_19_y, point_02_19_z, point_02_20_x, point_02_20_y, point_02_20_z);
myTrimetricAxis(point_02_20_x, point_02_20_y, point_02_20_z, point_02_21_x, point_02_21_y, point_02_21_z);
myTrimetricAxis(point_02_21_x, point_02_21_y, point_02_21_z, point_02_22_x, point_02_22_y, point_02_22_z);
myTrimetricAxis(point_02_22_x, point_02_22_y, point_02_22_z, point_02_23_x, point_02_23_y, point_02_23_z);
myTrimetricAxis(point_02_23_x, point_02_23_y, point_02_23_z, point_02_24_x, point_02_24_y, point_02_24_z);
myTrimetricAxis(point_01_00_x, point_01_00_y, point_01_00_z, point_02_00_x, point_02_00_y, point_02_00_z);
myTrimetricAxis(point_01_01_x, point_01_01_y, point_01_01_z, point_02_01_x, point_02_01_y, point_02_01_z);
myTrimetricAxis(point_01_02_x, point_01_02_y, point_01_02_z, point_02_02_x, point_02_02_y, point_02_02_z);
myTrimetricAxis(point_01_03_x, point_01_03_y, point_01_03_z, point_02_03_x, point_02_03_y, point_02_03_z);
myTrimetricAxis(point_01_04_x, point_01_04_y, point_01_04_z, point_02_04_x, point_02_04_y, point_02_04_z);
myTrimetricAxis(point_01_05_x, point_01_05_y, point_01_05_z, point_02_05_x, point_02_05_y, point_02_05_z);
myTrimetricAxis(point_01_06_x, point_01_06_y, point_01_06_z, point_02_06_x, point_02_06_y, point_02_06_z);
myTrimetricAxis(point_01_07_x, point_01_07_y, point_01_07_z, point_02_07_x, point_02_07_y, point_02_07_z);
myTrimetricAxis(point_01_08_x, point_01_08_y, point_01_08_z, point_02_08_x, point_02_08_y, point_02_08_z);
myTrimetricAxis(point_01_09_x, point_01_09_y, point_01_09_z, point_02_09_x, point_02_09_y, point_02_09_z);
myTrimetricAxis(point_01_10_x, point_01_10_y, point_01_10_z, point_02_10_x, point_02_10_y, point_02_10_z);
myTrimetricAxis(point_01_11_x, point_01_11_y, point_01_11_z, point_02_11_x, point_02_11_y, point_02_11_z);
myTrimetricAxis(point_01_12_x, point_01_12_y, point_01_12_z, point_02_12_x, point_02_12_y, point_02_12_z);
myTrimetricAxis(point_01_13_x, point_01_13_y, point_01_13_z, point_02_13_x, point_02_13_y, point_02_13_z);
myTrimetricAxis(point_01_14_x, point_01_14_y, point_01_14_z, point_02_14_x, point_02_14_y, point_02_14_z);
myTrimetricAxis(point_01_15_x, point_01_15_y, point_01_15_z, point_02_15_x, point_02_15_y, point_02_15_z);
myTrimetricAxis(point_01_16_x, point_01_16_y, point_01_16_z, point_02_16_x, point_02_16_y, point_02_16_z);
myTrimetricAxis(point_01_17_x, point_01_17_y, point_01_17_z, point_02_17_x, point_02_17_y, point_02_17_z);
myTrimetricAxis(point_01_18_x, point_01_18_y, point_01_18_z, point_02_18_x, point_02_18_y, point_02_18_z);
myTrimetricAxis(point_01_19_x, point_01_19_y, point_01_19_z, point_02_19_x, point_02_19_y, point_02_19_z);
myTrimetricAxis(point_01_20_x, point_01_20_y, point_01_20_z, point_02_20_x, point_02_20_y, point_02_20_z);
myTrimetricAxis(point_01_21_x, point_01_21_y, point_01_21_z, point_02_21_x, point_02_21_y, point_02_21_z);
myTrimetricAxis(point_01_22_x, point_01_22_y, point_01_22_z, point_02_22_x, point_02_22_y, point_02_22_z);
myTrimetricAxis(point_01_23_x, point_01_23_y, point_01_23_z, point_02_23_x, point_02_23_y, point_02_23_z);
//
myTrimetricAxis(point_03_00_x, point_03_00_y, point_03_00_z, point_03_01_x, point_03_01_y, point_03_01_z);
myTrimetricAxis(point_03_01_x, point_03_01_y, point_03_01_z, point_03_02_x, point_03_02_y, point_03_02_z);
myTrimetricAxis(point_03_02_x, point_03_02_y, point_03_02_z, point_03_03_x, point_03_03_y, point_03_03_z);
myTrimetricAxis(point_03_03_x, point_03_03_y, point_03_03_z, point_03_04_x, point_03_04_y, point_03_04_z);
myTrimetricAxis(point_03_04_x, point_03_04_y, point_03_04_z, point_03_05_x, point_03_05_y, point_03_05_z);
myTrimetricAxis(point_03_05_x, point_03_05_y, point_03_05_z, point_03_06_x, point_03_06_y, point_03_06_z);
myTrimetricAxis(point_03_06_x, point_03_06_y, point_03_06_z, point_03_07_x, point_03_07_y, point_03_07_z);
myTrimetricAxis(point_03_07_x, point_03_07_y, point_03_07_z, point_03_08_x, point_03_08_y, point_03_08_z);
myTrimetricAxis(point_03_08_x, point_03_08_y, point_03_08_z, point_03_09_x, point_03_09_y, point_03_09_z);
myTrimetricAxis(point_03_09_x, point_03_09_y, point_03_09_z, point_03_10_x, point_03_10_y, point_03_10_z);
myTrimetricAxis(point_03_10_x, point_03_10_y, point_03_10_z, point_03_11_x, point_03_11_y, point_03_11_z);
myTrimetricAxis(point_03_11_x, point_03_11_y, point_03_11_z, point_03_12_x, point_03_12_y, point_03_12_z);
myTrimetricAxis(point_03_12_x, point_03_12_y, point_03_12_z, point_03_13_x, point_03_13_y, point_03_13_z);
myTrimetricAxis(point_03_13_x, point_03_13_y, point_03_13_z, point_03_14_x, point_03_14_y, point_03_14_z);
myTrimetricAxis(point_03_14_x, point_03_14_y, point_03_14_z, point_03_15_x, point_03_15_y, point_03_15_z);
myTrimetricAxis(point_03_15_x, point_03_15_y, point_03_15_z, point_03_16_x, point_03_16_y, point_03_16_z);
myTrimetricAxis(point_03_16_x, point_03_16_y, point_03_16_z, point_03_17_x, point_03_17_y, point_03_17_z);
myTrimetricAxis(point_03_17_x, point_03_17_y, point_03_17_z, point_03_18_x, point_03_18_y, point_03_18_z);
myTrimetricAxis(point_03_18_x, point_03_18_y, point_03_18_z, point_03_19_x, point_03_19_y, point_03_19_z);
myTrimetricAxis(point_03_19_x, point_03_19_y, point_03_19_z, point_03_20_x, point_03_20_y, point_03_20_z);
myTrimetricAxis(point_03_20_x, point_03_20_y, point_03_20_z, point_03_21_x, point_03_21_y, point_03_21_z);
myTrimetricAxis(point_03_21_x, point_03_21_y, point_03_21_z, point_03_22_x, point_03_22_y, point_03_22_z);
myTrimetricAxis(point_03_22_x, point_03_22_y, point_03_22_z, point_03_23_x, point_03_23_y, point_03_23_z);
myTrimetricAxis(point_03_23_x, point_03_23_y, point_03_23_z, point_03_24_x, point_03_24_y, point_03_24_z);
myTrimetricAxis(point_03_00_x, point_03_00_y, point_03_00_z, point_02_00_x, point_02_00_y, point_02_00_z);
myTrimetricAxis(point_03_01_x, point_03_01_y, point_03_01_z, point_02_01_x, point_02_01_y, point_02_01_z);
myTrimetricAxis(point_03_02_x, point_03_02_y, point_03_02_z, point_02_02_x, point_02_02_y, point_02_02_z);
myTrimetricAxis(point_03_03_x, point_03_03_y, point_03_03_z, point_02_03_x, point_02_03_y, point_02_03_z);
myTrimetricAxis(point_03_04_x, point_03_04_y, point_03_04_z, point_02_04_x, point_02_04_y, point_02_04_z);
myTrimetricAxis(point_03_05_x, point_03_05_y, point_03_05_z, point_02_05_x, point_02_05_y, point_02_05_z);
myTrimetricAxis(point_03_06_x, point_03_06_y, point_03_06_z, point_02_06_x, point_02_06_y, point_02_06_z);
myTrimetricAxis(point_03_07_x, point_03_07_y, point_03_07_z, point_02_07_x, point_02_07_y, point_02_07_z);
myTrimetricAxis(point_03_08_x, point_03_08_y, point_03_08_z, point_02_08_x, point_02_08_y, point_02_08_z);
myTrimetricAxis(point_03_09_x, point_03_09_y, point_03_09_z, point_02_09_x, point_02_09_y, point_02_09_z);
myTrimetricAxis(point_03_10_x, point_03_10_y, point_03_10_z, point_02_10_x, point_02_10_y, point_02_10_z);
myTrimetricAxis(point_03_11_x, point_03_11_y, point_03_11_z, point_02_11_x, point_02_11_y, point_02_11_z);
myTrimetricAxis(point_03_12_x, point_03_12_y, point_03_12_z, point_02_12_x, point_02_12_y, point_02_12_z);
myTrimetricAxis(point_03_13_x, point_03_13_y, point_03_13_z, point_02_13_x, point_02_13_y, point_02_13_z);
myTrimetricAxis(point_03_14_x, point_03_14_y, point_03_14_z, point_02_14_x, point_02_14_y, point_02_14_z);
myTrimetricAxis(point_03_15_x, point_03_15_y, point_03_15_z, point_02_15_x, point_02_15_y, point_02_15_z);
myTrimetricAxis(point_03_16_x, point_03_16_y, point_03_16_z, point_02_16_x, point_02_16_y, point_02_16_z);
myTrimetricAxis(point_03_17_x, point_03_17_y, point_03_17_z, point_02_17_x, point_02_17_y, point_02_17_z);
myTrimetricAxis(point_03_18_x, point_03_18_y, point_03_18_z, point_02_18_x, point_02_18_y, point_02_18_z);
myTrimetricAxis(point_03_19_x, point_03_19_y, point_03_19_z, point_02_19_x, point_02_19_y, point_02_19_z);
myTrimetricAxis(point_03_20_x, point_03_20_y, point_03_20_z, point_02_20_x, point_02_20_y, point_02_20_z);
myTrimetricAxis(point_03_21_x, point_03_21_y, point_03_21_z, point_02_21_x, point_02_21_y, point_02_21_z);
myTrimetricAxis(point_03_22_x, point_03_22_y, point_03_22_z, point_02_22_x, point_02_22_y, point_02_22_z);
myTrimetricAxis(point_03_23_x, point_03_23_y, point_03_23_z, point_02_23_x, point_02_23_y, point_02_23_z);
//
myTrimetricAxis(point_04_00_x, point_04_00_y, point_04_00_z, point_04_01_x, point_04_01_y, point_04_01_z);
myTrimetricAxis(point_04_01_x, point_04_01_y, point_04_01_z, point_04_02_x, point_04_02_y, point_04_02_z);
myTrimetricAxis(point_04_02_x, point_04_02_y, point_04_02_z, point_04_03_x, point_04_03_y, point_04_03_z);
myTrimetricAxis(point_04_03_x, point_04_03_y, point_04_03_z, point_04_04_x, point_04_04_y, point_04_04_z);
myTrimetricAxis(point_04_04_x, point_04_04_y, point_04_04_z, point_04_05_x, point_04_05_y, point_04_05_z);
myTrimetricAxis(point_04_05_x, point_04_05_y, point_04_05_z, point_04_06_x, point_04_06_y, point_04_06_z);
myTrimetricAxis(point_04_06_x, point_04_06_y, point_04_06_z, point_04_07_x, point_04_07_y, point_04_07_z);
myTrimetricAxis(point_04_07_x, point_04_07_y, point_04_07_z, point_04_08_x, point_04_08_y, point_04_08_z);
myTrimetricAxis(point_04_08_x, point_04_08_y, point_04_08_z, point_04_09_x, point_04_09_y, point_04_09_z);
myTrimetricAxis(point_04_09_x, point_04_09_y, point_04_09_z, point_04_10_x, point_04_10_y, point_04_10_z);
myTrimetricAxis(point_04_10_x, point_04_10_y, point_04_10_z, point_04_11_x, point_04_11_y, point_04_11_z);
myTrimetricAxis(point_04_11_x, point_04_11_y, point_04_11_z, point_04_12_x, point_04_12_y, point_04_12_z);
myTrimetricAxis(point_04_12_x, point_04_12_y, point_04_12_z, point_04_13_x, point_04_13_y, point_04_13_z);
myTrimetricAxis(point_04_13_x, point_04_13_y, point_04_13_z, point_04_14_x, point_04_14_y, point_04_14_z);
myTrimetricAxis(point_04_14_x, point_04_14_y, point_04_14_z, point_04_15_x, point_04_15_y, point_04_15_z);
myTrimetricAxis(point_04_15_x, point_04_15_y, point_04_15_z, point_04_16_x, point_04_16_y, point_04_16_z);
myTrimetricAxis(point_04_16_x, point_04_16_y, point_04_16_z, point_04_17_x, point_04_17_y, point_04_17_z);
myTrimetricAxis(point_04_17_x, point_04_17_y, point_04_17_z, point_04_18_x, point_04_18_y, point_04_18_z);
myTrimetricAxis(point_04_18_x, point_04_18_y, point_04_18_z, point_04_19_x, point_04_19_y, point_04_19_z);
myTrimetricAxis(point_04_19_x, point_04_19_y, point_04_19_z, point_04_20_x, point_04_20_y, point_04_20_z);
myTrimetricAxis(point_04_20_x, point_04_20_y, point_04_20_z, point_04_21_x, point_04_21_y, point_04_21_z);
myTrimetricAxis(point_04_21_x, point_04_21_y, point_04_21_z, point_04_22_x, point_04_22_y, point_04_22_z);
myTrimetricAxis(point_04_22_x, point_04_22_y, point_04_22_z, point_04_23_x, point_04_23_y, point_04_23_z);
myTrimetricAxis(point_04_23_x, point_04_23_y, point_04_23_z, point_04_24_x, point_04_24_y, point_04_24_z);
myTrimetricAxis(point_03_00_x, point_03_00_y, point_03_00_z, point_04_00_x, point_04_00_y, point_04_00_z);
myTrimetricAxis(point_03_01_x, point_03_01_y, point_03_01_z, point_04_01_x, point_04_01_y, point_04_01_z);
myTrimetricAxis(point_03_02_x, point_03_02_y, point_03_02_z, point_04_02_x, point_04_02_y, point_04_02_z);
myTrimetricAxis(point_03_03_x, point_03_03_y, point_03_03_z, point_04_03_x, point_04_03_y, point_04_03_z);
myTrimetricAxis(point_03_04_x, point_03_04_y, point_03_04_z, point_04_04_x, point_04_04_y, point_04_04_z);
myTrimetricAxis(point_03_05_x, point_03_05_y, point_03_05_z, point_04_05_x, point_04_05_y, point_04_05_z);
myTrimetricAxis(point_03_06_x, point_03_06_y, point_03_06_z, point_04_06_x, point_04_06_y, point_04_06_z);
myTrimetricAxis(point_03_07_x, point_03_07_y, point_03_07_z, point_04_07_x, point_04_07_y, point_04_07_z);
myTrimetricAxis(point_03_08_x, point_03_08_y, point_03_08_z, point_04_08_x, point_04_08_y, point_04_08_z);
myTrimetricAxis(point_03_09_x, point_03_09_y, point_03_09_z, point_04_09_x, point_04_09_y, point_04_09_z);
myTrimetricAxis(point_03_10_x, point_03_10_y, point_03_10_z, point_04_10_x, point_04_10_y, point_04_10_z);
myTrimetricAxis(point_03_11_x, point_03_11_y, point_03_11_z, point_04_11_x, point_04_11_y, point_04_11_z);
myTrimetricAxis(point_03_12_x, point_03_12_y, point_03_12_z, point_04_12_x, point_04_12_y, point_04_12_z);
myTrimetricAxis(point_03_13_x, point_03_13_y, point_03_13_z, point_04_13_x, point_04_13_y, point_04_13_z);
myTrimetricAxis(point_03_14_x, point_03_14_y, point_03_14_z, point_04_14_x, point_04_14_y, point_04_14_z);
myTrimetricAxis(point_03_15_x, point_03_15_y, point_03_15_z, point_04_15_x, point_04_15_y, point_04_15_z);
myTrimetricAxis(point_03_16_x, point_03_16_y, point_03_16_z, point_04_16_x, point_04_16_y, point_04_16_z);
myTrimetricAxis(point_03_17_x, point_03_17_y, point_03_17_z, point_04_17_x, point_04_17_y, point_04_17_z);
myTrimetricAxis(point_03_18_x, point_03_18_y, point_03_18_z, point_04_18_x, point_04_18_y, point_04_18_z);
myTrimetricAxis(point_03_19_x, point_03_19_y, point_03_19_z, point_04_19_x, point_04_19_y, point_04_19_z);
myTrimetricAxis(point_03_20_x, point_03_20_y, point_03_20_z, point_04_20_x, point_04_20_y, point_04_20_z);
myTrimetricAxis(point_03_21_x, point_03_21_y, point_03_21_z, point_04_21_x, point_04_21_y, point_04_21_z);
myTrimetricAxis(point_03_22_x, point_03_22_y, point_03_22_z, point_04_22_x, point_04_22_y, point_04_22_z);
myTrimetricAxis(point_03_23_x, point_03_23_y, point_03_23_z, point_04_23_x, point_04_23_y, point_04_23_z);
// object drawing
//myTrimetricAxis(point1_x, point1_y, point1_z, point2_x, point2_y, point2_z);
myFergusonCurve(point1_x, point1_y, vector1x, vector1y, point2_x, point2_y, vector2x, vector2y, precision);
myFergusonCurve(point2_x, point2_y, vector2_3x, vector2_3y, point3x, point3y, vector3x, vector3y, precision);
myFergusonCurve(point3x, point3y, vector2_3x, vector2_3y, point4x, point4y, vector4x, vector4y, precision);
myFergusonCurve(point5x, point5y, vector5x, vector5y, point6x, point6y, vector6x, vector6y, precision);
myFergusonCurve(point7x, point7y, vector7x, vector7y, point8x, point8y, vector8x, vector8y, precision);
myFergusonCurve(point9x, point9y, vector9x, vector9y, point10x, point10y, vector10_9x, vector10_9y, precision);
myFergusonCurve(point11x, point11y, vector11x, vector11y, point12x, point12y, vector12x, vector12y, precision);
myFergusonCurve(point10x, point10y, vector10x, vector10y, point12x, point12y, vector12_10x, vector12_10y, precision);
myFergusonCurve(point10x, point10y, vector10_13x, vector10_13y, point13x, point13y, vector13x, vector13y, precision);
myFergusonCurve(point13x, point13y, vector13_14x, vector13_14y, point14x, point14y, vector14x, vector14y, precision);
myFergusonCurve(point14x, point14y, vector14x, vector14y, point15x, point15y, vector15x, vector15y, precision);
myFergusonCurve(point16x, point16y, vector16x, vector16y, point15x, point15y, vector15_16x, vector15_16y, precision);
myFergusonCurve(point17x, point17y, vector17x, vector17y, point16x, point16y, vector16_17x, vector16_17y, precision);
myFergusonCurve(point18x, point18y, vector18x, vector18y, point19x, point19y, vector19x, vector19y, precision);
myFergusonCurve(point20x, point20y, vector20x, vector20y, point19x, point19y, vector19x, vector19y, precision);
myFergusonCurve(point20x, point20y, vector20x, vector20y, point21x, point21y, vector21x, vector21y, precision);
myFergusonCurve(point22x, point22y, vector22x, vector22y, point23x, point23y, vector23x, vector23y, precision);
myFergusonCurve(point24x, point24y, vector24x, vector24y, point25x, point25y, vector25x, vector25y, precision);
myFergusonCurve(point26x, point26y, vector26x, vector26y, point27x, point27y, vector27x, vector27y, precision);
myFergusonCurve(point28x, point28y, vector28x, vector28y, point29x, point29y, vector29x, vector29y, precision);
myFergusonCurve(point30x, point30y, vector30x, vector30y, point31x, point31y, vector31x, vector31y, precision);
myFergusonCurve(point32x, point32y, vector32_31x, vector32_31y, point31x, point31y, vector31_32x, vector31_32y, precision);
myFergusonCurve(point32x, point32y, vector32x, vector32y, point33x, point33y, vector33x, vector33y, precision);
myFergusonCurve(point34x, point34y, vector34_33x, vector34_33y, point33x, point33y, vector33_34x, vector33_34y, precision);
myFergusonCurve(point34x, point34y, vector34x, vector34y, point35x, point35y, vector35x, vector35y, precision);
myFergusonCurve(point36x, point36y, vector36x, vector36y, point35x, point35y, vector35_36x, vector35_36y, precision);
glFlush(); // Process all OpenGL routines as quickly as possible
glutSwapBuffers();
}
void myTrimetricAxis(float originX, float originY, float originZ, float destinationX, float destinationY, float destinationZ)
{
float yRotatedOriginX = yAxisRotationMatrix11 * originX + yAxisRotationMatrix12 * originY + yAxisRotationMatrix13 * originZ + yAxisRotationMatrix14 * 1;
float yRotatedOriginY = yAxisRotationMatrix21 * originX + yAxisRotationMatrix22 * originY + yAxisRotationMatrix23 * originZ + yAxisRotationMatrix24 * 1;
float yRotatedOriginZ = yAxisRotationMatrix31 * originX + yAxisRotationMatrix32 * originY + yAxisRotationMatrix33 * originZ + yAxisRotationMatrix34 * 1;
float yRotatedOriginH = yAxisRotationMatrix41 * originX + yAxisRotationMatrix42 * originY + yAxisRotationMatrix43 * originZ + yAxisRotationMatrix44 * 1;
float yRotatedDestinationX = yAxisRotationMatrix11 * destinationX + yAxisRotationMatrix12 * destinationY + yAxisRotationMatrix13 * destinationZ + yAxisRotationMatrix14 * 1;
float yRotatedDestinationY = yAxisRotationMatrix21 * destinationX + yAxisRotationMatrix22 * destinationY + yAxisRotationMatrix23 * destinationZ + yAxisRotationMatrix24 * 1;
float yRotatedDestinationZ = yAxisRotationMatrix31 * destinationX + yAxisRotationMatrix32 * destinationY + yAxisRotationMatrix33 * destinationZ + yAxisRotationMatrix34 * 1;
float yRotatedDestinationH = yAxisRotationMatrix41 * destinationX + yAxisRotationMatrix42 * destinationY + yAxisRotationMatrix43 * destinationZ + yAxisRotationMatrix44 * 1;
float xRotatedOriginX = xAxisRotationMatrix11 * yRotatedOriginX + xAxisRotationMatrix12 * yRotatedOriginY + xAxisRotationMatrix13 * yRotatedOriginZ + xAxisRotationMatrix14 * yRotatedOriginH;
float xRotatedOriginY = xAxisRotationMatrix21 * yRotatedOriginX + xAxisRotationMatrix22 * yRotatedOriginY + xAxisRotationMatrix23 * yRotatedOriginZ + xAxisRotationMatrix24 * yRotatedOriginH;
float xRotatedOriginZ = xAxisRotationMatrix31 * yRotatedOriginX + xAxisRotationMatrix32 * yRotatedOriginY + xAxisRotationMatrix33 * yRotatedOriginZ + xAxisRotationMatrix34 * yRotatedOriginH;
float xRotatedOriginH = xAxisRotationMatrix41 * yRotatedOriginX + xAxisRotationMatrix42 * yRotatedOriginY + xAxisRotationMatrix43 * yRotatedOriginZ + xAxisRotationMatrix44 * yRotatedOriginH;
float xRotatedDestinationX = xAxisRotationMatrix11 * yRotatedDestinationX + xAxisRotationMatrix12 * yRotatedDestinationY + xAxisRotationMatrix13 * yRotatedDestinationZ + xAxisRotationMatrix14 * yRotatedDestinationH;
float xRotatedDestinationY = xAxisRotationMatrix21 * yRotatedDestinationX + xAxisRotationMatrix22 * yRotatedDestinationY + xAxisRotationMatrix23 * yRotatedDestinationZ + xAxisRotationMatrix24 * yRotatedDestinationH;
float xRotatedDestinationZ = xAxisRotationMatrix31 * yRotatedDestinationX + xAxisRotationMatrix32 * yRotatedDestinationY + xAxisRotationMatrix33 * yRotatedDestinationZ + xAxisRotationMatrix34 * yRotatedDestinationH;
float xRotatedDestinationH = xAxisRotationMatrix41 * yRotatedDestinationX + xAxisRotationMatrix42 * yRotatedDestinationY + xAxisRotationMatrix43 * yRotatedDestinationZ + xAxisRotationMatrix44 * yRotatedDestinationH;
glBegin(GL_LINES);
glVertex3f(xRotatedOriginX, xRotatedOriginY, xRotatedOriginZ);
glVertex3f(xRotatedDestinationX, xRotatedDestinationY, xRotatedDestinationZ);
glEnd();
glFlush(); // Process all OpenGL routines as quickly as possible
}
void myTrimetricDrawing(float originX, float originY, float originZ, float destinationX, float destinationY, float destinationZ)
{
float x0projectedOriginX = x0projectionMatrix11 * originX + x0projectionMatrix12 * originY + x0projectionMatrix13 * originZ + x0projectionMatrix14 * 1;
float x0projectedOriginY = x0projectionMatrix21 * originX + x0projectionMatrix22 * originY + x0projectionMatrix23 * originZ + x0projectionMatrix24 * 1;
float x0projectedOriginZ = x0projectionMatrix31 * originX + x0projectionMatrix32 * originY + x0projectionMatrix33 * originZ + x0projectionMatrix34 * 1;
float x0projectedOriginH = x0projectionMatrix41 * originX + x0projectionMatrix42 * originY + x0projectionMatrix43 * originZ + x0projectionMatrix44 * 1;
float x0projectedDestinationX = x0projectionMatrix11 * destinationX + x0projectionMatrix12 * destinationY + x0projectionMatrix13 * destinationZ + x0projectionMatrix14 * 1;
float x0projectedDestinationY = x0projectionMatrix21 * destinationX + x0projectionMatrix22 * destinationY + x0projectionMatrix23 * destinationZ + x0projectionMatrix24 * 1;
float x0projectedDestinationZ = x0projectionMatrix31 * destinationX + x0projectionMatrix32 * destinationY + x0projectionMatrix33 * destinationZ + x0projectionMatrix34 * 1;
float x0projectedDestinationH = x0projectionMatrix41 * destinationX + x0projectionMatrix42 * destinationY + x0projectionMatrix43 * destinationZ + x0projectionMatrix44 * 1;
float yRotatedOriginX = yAxisRotationMatrix11 * x0projectedOriginX + yAxisRotationMatrix12 * x0projectedOriginY + yAxisRotationMatrix13 * x0projectedOriginZ + yAxisRotationMatrix14 * x0projectedOriginH;
float yRotatedOriginY = yAxisRotationMatrix21 * x0projectedOriginX + yAxisRotationMatrix22 * x0projectedOriginY + yAxisRotationMatrix23 * x0projectedOriginZ + yAxisRotationMatrix24 * x0projectedOriginH;
float yRotatedOriginZ = yAxisRotationMatrix31 * x0projectedOriginX + yAxisRotationMatrix32 * x0projectedOriginY + yAxisRotationMatrix33 * x0projectedOriginZ + yAxisRotationMatrix34 * x0projectedOriginH;
float yRotatedOriginH = yAxisRotationMatrix41 * x0projectedOriginX + yAxisRotationMatrix42 * x0projectedOriginY + yAxisRotationMatrix43 * x0projectedOriginZ + yAxisRotationMatrix44 * x0projectedOriginH;
float yRotatedDestinationX = yAxisRotationMatrix11 * x0projectedDestinationX + yAxisRotationMatrix12 * x0projectedDestinationY + yAxisRotationMatrix13 * x0projectedDestinationZ + yAxisRotationMatrix14 * x0projectedDestinationH;
float yRotatedDestinationY = yAxisRotationMatrix21 * x0projectedDestinationX + yAxisRotationMatrix22 * x0projectedDestinationY + yAxisRotationMatrix23 * x0projectedDestinationZ + yAxisRotationMatrix24 * x0projectedDestinationH;
float yRotatedDestinationZ = yAxisRotationMatrix31 * x0projectedDestinationX + yAxisRotationMatrix32 * x0projectedDestinationY + yAxisRotationMatrix33 * x0projectedDestinationZ + yAxisRotationMatrix34 * x0projectedDestinationH;
float yRotatedDestinationH = yAxisRotationMatrix41 * x0projectedDestinationX + yAxisRotationMatrix42 * x0projectedDestinationY + yAxisRotationMatrix43 * x0projectedDestinationZ + yAxisRotationMatrix44 * x0projectedDestinationH;
float xRotatedOriginX = xAxisRotationMatrix11 * yRotatedOriginX + xAxisRotationMatrix12 * yRotatedOriginY + xAxisRotationMatrix13 * yRotatedOriginZ + xAxisRotationMatrix14 * yRotatedOriginH;
float xRotatedOriginY = xAxisRotationMatrix21 * yRotatedOriginX + xAxisRotationMatrix22 * yRotatedOriginY + xAxisRotationMatrix23 * yRotatedOriginZ + xAxisRotationMatrix24 * yRotatedOriginH;
float xRotatedOriginZ = xAxisRotationMatrix31 * yRotatedOriginX + xAxisRotationMatrix32 * yRotatedOriginY + xAxisRotationMatrix33 * yRotatedOriginZ + xAxisRotationMatrix34 * yRotatedOriginH;
float xRotatedOriginH = xAxisRotationMatrix41 * yRotatedOriginX + xAxisRotationMatrix42 * yRotatedOriginY + xAxisRotationMatrix43 * yRotatedOriginZ + xAxisRotationMatrix44 * yRotatedOriginH;
float xRotatedDestinationX = xAxisRotationMatrix11 * yRotatedDestinationX + xAxisRotationMatrix12 * yRotatedDestinationY + xAxisRotationMatrix13 * yRotatedDestinationZ + xAxisRotationMatrix14 * yRotatedDestinationH;
float xRotatedDestinationY = xAxisRotationMatrix21 * yRotatedDestinationX + xAxisRotationMatrix22 * yRotatedDestinationY + xAxisRotationMatrix23 * yRotatedDestinationZ + xAxisRotationMatrix24 * yRotatedDestinationH;
float xRotatedDestinationZ = xAxisRotationMatrix31 * yRotatedDestinationX + xAxisRotationMatrix32 * yRotatedDestinationY + xAxisRotationMatrix33 * yRotatedDestinationZ + xAxisRotationMatrix34 * yRotatedDestinationH;
float xRotatedDestinationH = xAxisRotationMatrix41 * yRotatedDestinationX + xAxisRotationMatrix42 * yRotatedDestinationY + xAxisRotationMatrix43 * yRotatedDestinationZ + xAxisRotationMatrix44 * yRotatedDestinationH;
glBegin(GL_LINES);
glVertex3f(xRotatedOriginX, xRotatedOriginY, xRotatedOriginZ);
glVertex3f(xRotatedDestinationX, xRotatedDestinationY, xRotatedDestinationZ);
glEnd();
glFlush(); // Process all OpenGL routines as quickly as possible
}
void myDrawText(const char *text, int length, int x, int y)
{
glMatrixMode(GL_PROJECTION);
double *matrix = new double[16];
glGetDoublev(GL_PROJECTION_MATRIX, matrix);
glLoadIdentity();
gluOrtho2D(0.0, 400.0, 0.0, 300.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glPushMatrix();
glLoadIdentity();
glRasterPos2f(x, y);
for (int i = 0; i < length; i++)
{
glutBitmapCharacter(GLUT_BITMAP_9_BY_15, (int)text[i]);
}
glPopMatrix();
glMatrixMode(GL_PROJECTION);
glLoadMatrixd(matrix);
glMatrixMode(GL_MODELVIEW);
}
void keyboard(unsigned char key, int x, int y)
{
switch (key)
{
case 'a' | 'A':
horizontalMove = deltaMove;
myHorizontalMove();
glutPostRedisplay();
break;
case 'd' | 'D':
horizontalMove = -deltaMove;
myHorizontalMove();
glutPostRedisplay();
break;
case 'w' | 'W':
verticalMove = deltaMove;
myVerticalMove();
glutPostRedisplay();
break;
case 's' | 'S':
verticalMove = -1 * deltaMove;
myVerticalMove();
glutPostRedisplay();
break;
case 'z' | 'Z':
rotateDegreeRadian = rotateDegree * PI / 180;
myRotation();
glutPostRedisplay();
break;
case 'x' | 'X':
rotateDegreeRadian = -rotateDegree * PI / 180;
myRotation();
glutPostRedisplay();
break;
case 'n' | 'N':
glutTimerFunc(100, myAnimation, 0);
//myAnimation(0);
glutPostRedisplay();
break;
case 'i' | 'I':
vMove += angle15radian * 0.1;
glutPostRedisplay();
break;
case 'k' | 'K':
vMove -= angle15radian * 0.1;
glutPostRedisplay();
break;
case 'j' | 'J':
uMove += angle15radian * 0.1;
glutPostRedisplay();
break;
case 'l' | 'L':
uMove -= angle15radian * 0.1;
glutPostRedisplay();
break;
case 'q' | 'Q':
exit(0);
break;
}
}
void myHorizontalMove()
{
point1z += horizontalMove;
point2z += horizontalMove;
point_00_00_z += horizontalMove;
point_00_01_z += horizontalMove;
point_00_02_z += horizontalMove;
point_00_03_z += horizontalMove;
point_00_04_z += horizontalMove;
point_00_05_z += horizontalMove;
point_00_06_z += horizontalMove;
point_00_07_z += horizontalMove;
point_00_08_z += horizontalMove;
point_00_09_z += horizontalMove;
point_00_10_z += horizontalMove;
point_00_11_z += horizontalMove;
point_00_12_z += horizontalMove;
point_00_13_z += horizontalMove;
point_00_14_z += horizontalMove;
point_00_15_z += horizontalMove;
point_00_16_z += horizontalMove;
point_00_17_z += horizontalMove;
point_00_18_z += horizontalMove;
point_00_19_z += horizontalMove;
point_00_20_z += horizontalMove;
point_00_21_z += horizontalMove;
point_00_22_z += horizontalMove;
point_00_23_z += horizontalMove;
point_00_24_z += horizontalMove;
point_01_00_z += horizontalMove;
point_01_01_z += horizontalMove;
point_01_02_z += horizontalMove;
point_01_03_z += horizontalMove;
point_01_04_z += horizontalMove;
point_01_05_z += horizontalMove;
point_01_06_z += horizontalMove;
point_01_07_z += horizontalMove;
point_01_08_z += horizontalMove;
point_01_09_z += horizontalMove;
point_01_10_z += horizontalMove;
point_01_11_z += horizontalMove;
point_01_12_z += horizontalMove;
point_01_13_z += horizontalMove;
point_01_14_z += horizontalMove;
point_01_15_z += horizontalMove;
point_01_16_z += horizontalMove;
point_01_17_z += horizontalMove;
point_01_18_z += horizontalMove;
point_01_19_z += horizontalMove;
point_01_20_z += horizontalMove;
point_01_21_z += horizontalMove;
point_01_22_z += horizontalMove;
point_01_23_z += horizontalMove;
point_01_24_z += horizontalMove;
point_02_00_z += horizontalMove;
point_02_01_z += horizontalMove;
point_02_02_z += horizontalMove;
point_02_03_z += horizontalMove;
point_02_04_z += horizontalMove;
point_02_05_z += horizontalMove;
point_02_06_z += horizontalMove;
point_02_07_z += horizontalMove;
point_02_08_z += horizontalMove;
point_02_09_z += horizontalMove;
point_02_10_z += horizontalMove;
point_02_11_z += horizontalMove;
point_02_12_z += horizontalMove;
point_02_13_z += horizontalMove;
point_02_14_z += horizontalMove;
point_02_15_z += horizontalMove;
point_02_16_z += horizontalMove;
point_02_17_z += horizontalMove;
point_02_18_z += horizontalMove;
point_02_19_z += horizontalMove;
point_02_20_z += horizontalMove;
point_02_21_z += horizontalMove;
point_02_22_z += horizontalMove;
point_02_23_z += horizontalMove;
point_02_24_z += horizontalMove;
point_03_00_z += horizontalMove;
point_03_01_z += horizontalMove;
point_03_02_z += horizontalMove;
point_03_03_z += horizontalMove;
point_03_04_z += horizontalMove;
point_03_05_z += horizontalMove;
point_03_06_z += horizontalMove;
point_03_07_z += horizontalMove;
point_03_08_z += horizontalMove;
point_03_09_z += horizontalMove;
point_03_10_z += horizontalMove;
point_03_11_z += horizontalMove;
point_03_12_z += horizontalMove;
point_03_13_z += horizontalMove;
point_03_14_z += horizontalMove;
point_03_15_z += horizontalMove;
point_03_16_z += horizontalMove;
point_03_17_z += horizontalMove;
point_03_18_z += horizontalMove;
point_03_19_z += horizontalMove;
point_03_20_z += horizontalMove;
point_03_21_z += horizontalMove;
point_03_22_z += horizontalMove;
point_03_23_z += horizontalMove;
point_03_24_z += horizontalMove;
point_04_00_z += horizontalMove;
point_04_01_z += horizontalMove;
point_04_02_z += horizontalMove;
point_04_03_z += horizontalMove;
point_04_04_z += horizontalMove;
point_04_05_z += horizontalMove;
point_04_06_z += horizontalMove;
point_04_07_z += horizontalMove;
point_04_08_z += horizontalMove;
point_04_09_z += horizontalMove;
point_04_10_z += horizontalMove;
point_04_11_z += horizontalMove;
point_04_12_z += horizontalMove;
point_04_13_z += horizontalMove;
point_04_14_z += horizontalMove;
point_04_15_z += horizontalMove;
point_04_16_z += horizontalMove;
point_04_17_z += horizontalMove;
point_04_18_z += horizontalMove;
point_04_19_z += horizontalMove;
point_04_20_z += horizontalMove;
point_04_21_z += horizontalMove;
point_04_22_z += horizontalMove;
point_04_23_z += horizontalMove;
point_04_24_z += horizontalMove;
}
void myVerticalMove()
{
point1y += verticalMove;
point2y += verticalMove;
point_00_00_y += verticalMove;
point_00_01_y += verticalMove;
point_00_02_y += verticalMove;
point_00_03_y += verticalMove;
point_00_04_y += verticalMove;
point_00_05_y += verticalMove;
point_00_06_y += verticalMove;
point_00_07_y += verticalMove;
point_00_08_y += verticalMove;
point_00_09_y += verticalMove;
point_00_10_y += verticalMove;
point_00_11_y += verticalMove;
point_00_12_y += verticalMove;
point_00_13_y += verticalMove;
point_00_14_y += verticalMove;
point_00_15_y += verticalMove;
point_00_16_y += verticalMove;
point_00_17_y += verticalMove;
point_00_18_y += verticalMove;
point_00_19_y += verticalMove;
point_00_20_y += verticalMove;
point_00_21_y += verticalMove;
point_00_22_y += verticalMove;
point_00_23_y += verticalMove;
point_00_24_y += verticalMove;
point_01_00_y += verticalMove;
point_01_01_y += verticalMove;
point_01_02_y += verticalMove;
point_01_03_y += verticalMove;
point_01_04_y += verticalMove;
point_01_05_y += verticalMove;
point_01_06_y += verticalMove;
point_01_07_y += verticalMove;
point_01_08_y += verticalMove;
point_01_09_y += verticalMove;
point_01_10_y += verticalMove;
point_01_11_y += verticalMove;
point_01_12_y += verticalMove;
point_01_13_y += verticalMove;
point_01_14_y += verticalMove;
point_01_15_y += verticalMove;
point_01_16_y += verticalMove;
point_01_17_y += verticalMove;
point_01_18_y += verticalMove;
point_01_19_y += verticalMove;
point_01_20_y += verticalMove;
point_01_21_y += verticalMove;
point_01_22_y += verticalMove;
point_01_23_y += verticalMove;
point_01_24_y += verticalMove;
point_02_00_y += verticalMove;
point_02_01_y += verticalMove;
point_02_02_y += verticalMove;
point_02_03_y += verticalMove;
point_02_04_y += verticalMove;
point_02_05_y += verticalMove;
point_02_06_y += verticalMove;
point_02_07_y += verticalMove;
point_02_08_y += verticalMove;
point_02_09_y += verticalMove;
point_02_10_y += verticalMove;
point_02_11_y += verticalMove;
point_02_12_y += verticalMove;
point_02_13_y += verticalMove;
point_02_14_y += verticalMove;
point_02_15_y += verticalMove;
point_02_16_y += verticalMove;
point_02_17_y += verticalMove;
point_02_18_y += verticalMove;
point_02_19_y += verticalMove;
point_02_20_y += verticalMove;
point_02_21_y += verticalMove;
point_02_22_y += verticalMove;
point_02_23_y += verticalMove;
point_02_24_y += verticalMove;
point_03_00_y += verticalMove;
point_03_01_y += verticalMove;
point_03_02_y += verticalMove;
point_03_03_y += verticalMove;
point_03_04_y += verticalMove;
point_03_05_y += verticalMove;
point_03_06_y += verticalMove;
point_03_07_y += verticalMove;
point_03_08_y += verticalMove;
point_03_09_y += verticalMove;
point_03_10_y += verticalMove;
point_03_11_y += verticalMove;
point_03_12_y += verticalMove;
point_03_13_y += verticalMove;
point_03_14_y += verticalMove;
point_03_15_y += verticalMove;
point_03_16_y += verticalMove;
point_03_17_y += verticalMove;
point_03_18_y += verticalMove;
point_03_19_y += verticalMove;
point_03_20_y += verticalMove;
point_03_21_y += verticalMove;
point_03_22_y += verticalMove;
point_03_23_y += verticalMove;
point_03_24_y += verticalMove;
point_04_00_y += verticalMove;
point_04_01_y += verticalMove;
point_04_02_y += verticalMove;
point_04_03_y += verticalMove;
point_04_04_y += verticalMove;
point_04_05_y += verticalMove;
point_04_06_y += verticalMove;
point_04_07_y += verticalMove;
point_04_08_y += verticalMove;
point_04_09_y += verticalMove;
point_04_10_y += verticalMove;
point_04_11_y += verticalMove;
point_04_12_y += verticalMove;
point_04_13_y += verticalMove;
point_04_14_y += verticalMove;
point_04_15_y += verticalMove;
point_04_16_y += verticalMove;
point_04_17_y += verticalMove;
point_04_18_y += verticalMove;
point_04_19_y += verticalMove;
point_04_20_y += verticalMove;
point_04_21_y += verticalMove;
point_04_22_y += verticalMove;
point_04_23_y += verticalMove;
point_04_24_y += verticalMove;
}
void myRotation()
{
float yAxisRotationMatrix11 = cos(rotateDegreeRadian);
float yAxisRotationMatrix12 = 0.0;
float yAxisRotationMatrix13 = sin(rotateDegreeRadian);
float yAxisRotationMatrix14 = 0.0;
float yAxisRotationMatrix21 = 0.0;
float yAxisRotationMatrix22 = 1.0;
float yAxisRotationMatrix23 = 0.0;
float yAxisRotationMatrix24 = 0.0;
float yAxisRotationMatrix31 = -sin(rotateDegreeRadian);
float yAxisRotationMatrix32 = 0.0;
float yAxisRotationMatrix33 = cos(rotateDegreeRadian);
float yAxisRotationMatrix34 = 0.0;
float yAxisRotationMatrix41 = 0.0;
float yAxisRotationMatrix42 = 0.0;
float yAxisRotationMatrix43 = 0.0;
float yAxisRotationMatrix44 = 1.0;
mytempX = point1x;
mytempY = point1y;
mytempZ = point1z;
point1x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point1y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point1z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point2x;
mytempY = point2y;
mytempZ = point2z;
point2x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point2y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point2z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_00_x;
mytempY = point_00_00_y;
mytempZ = point_00_00_z;
point_00_00_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_00_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_00_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_01_x;
mytempY = point_00_01_y;
mytempZ = point_00_01_z;
point_00_01_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_01_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_01_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_02_x;
mytempY = point_00_02_y;
mytempZ = point_00_02_z;
point_00_02_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_02_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_02_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_03_x;
mytempY = point_00_03_y;
mytempZ = point_00_03_z;
point_00_03_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_03_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_03_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_04_x;
mytempY = point_00_04_y;
mytempZ = point_00_04_z;
point_00_04_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_04_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_04_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_05_x;
mytempY = point_00_05_y;
mytempZ = point_00_05_z;
point_00_05_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_05_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_05_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_06_x;
mytempY = point_00_06_y;
mytempZ = point_00_06_z;
point_00_06_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_06_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_06_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_07_x;
mytempY = point_00_07_y;
mytempZ = point_00_07_z;
point_00_07_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_07_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_07_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_08_x;
mytempY = point_00_08_y;
mytempZ = point_00_08_z;
point_00_08_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_08_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_08_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_09_x;
mytempY = point_00_09_y;
mytempZ = point_00_09_z;
point_00_09_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_09_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_09_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_10_x;
mytempY = point_00_10_y;
mytempZ = point_00_10_z;
point_00_10_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_10_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_10_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_11_x;
mytempY = point_00_11_y;
mytempZ = point_00_11_z;
point_00_11_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_11_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_11_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_12_x;
mytempY = point_00_12_y;
mytempZ = point_00_12_z;
point_00_12_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_12_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_12_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_13_x;
mytempY = point_00_13_y;
mytempZ = point_00_13_z;
point_00_13_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_13_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_13_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_14_x;
mytempY = point_00_14_y;
mytempZ = point_00_14_z;
point_00_14_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_14_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_14_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_15_x;
mytempY = point_00_15_y;
mytempZ = point_00_15_z;
point_00_15_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_15_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_15_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_16_x;
mytempY = point_00_16_y;
mytempZ = point_00_16_z;
point_00_16_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_16_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_16_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_17_x;
mytempY = point_00_17_y;
mytempZ = point_00_17_z;
point_00_17_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_17_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_17_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_18_x;
mytempY = point_00_18_y;
mytempZ = point_00_18_z;
point_00_18_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_18_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_18_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_19_x;
mytempY = point_00_19_y;
mytempZ = point_00_19_z;
point_00_19_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_19_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_19_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_20_x;
mytempY = point_00_20_y;
mytempZ = point_00_20_z;
point_00_20_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_20_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_20_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_21_x;
mytempY = point_00_21_y;
mytempZ = point_00_21_z;
point_00_21_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_21_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_21_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_22_x;
mytempY = point_00_22_y;
mytempZ = point_00_22_z;
point_00_22_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_22_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_22_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_23_x;
mytempY = point_00_23_y;
mytempZ = point_00_23_z;
point_00_23_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_23_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_23_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_00_24_x;
mytempY = point_00_24_y;
mytempZ = point_00_24_z;
point_00_24_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_00_24_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_00_24_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
//
mytempX = point_01_00_x;
mytempY = point_01_00_y;
mytempZ = point_01_00_z;
point_01_00_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_00_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_00_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_01_x;
mytempY = point_01_01_y;
mytempZ = point_01_01_z;
point_01_01_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_01_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_01_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_02_x;
mytempY = point_01_02_y;
mytempZ = point_01_02_z;
point_01_02_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_02_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_02_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_03_x;
mytempY = point_01_03_y;
mytempZ = point_01_03_z;
point_01_03_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_03_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_03_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_04_x;
mytempY = point_01_04_y;
mytempZ = point_01_04_z;
point_01_04_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_04_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_04_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_05_x;
mytempY = point_01_05_y;
mytempZ = point_01_05_z;
point_01_05_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_05_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_05_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_06_x;
mytempY = point_01_06_y;
mytempZ = point_01_06_z;
point_01_06_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_06_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_06_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_07_x;
mytempY = point_01_07_y;
mytempZ = point_01_07_z;
point_01_07_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_07_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_07_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_08_x;
mytempY = point_01_08_y;
mytempZ = point_01_08_z;
point_01_08_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_08_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_08_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_09_x;
mytempY = point_01_09_y;
mytempZ = point_01_09_z;
point_01_09_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_09_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_09_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_10_x;
mytempY = point_01_10_y;
mytempZ = point_01_10_z;
point_01_10_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_10_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_10_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_11_x;
mytempY = point_01_11_y;
mytempZ = point_01_11_z;
point_01_11_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_11_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_11_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_12_x;
mytempY = point_01_12_y;
mytempZ = point_01_12_z;
point_01_12_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_12_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_12_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_13_x;
mytempY = point_01_13_y;
mytempZ = point_01_13_z;
point_01_13_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_13_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_13_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_14_x;
mytempY = point_01_14_y;
mytempZ = point_01_14_z;
point_01_14_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_14_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_14_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_15_x;
mytempY = point_01_15_y;
mytempZ = point_01_15_z;
point_01_15_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_15_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_15_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_16_x;
mytempY = point_01_16_y;
mytempZ = point_01_16_z;
point_01_16_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_16_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_16_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_17_x;
mytempY = point_01_17_y;
mytempZ = point_01_17_z;
point_01_17_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_17_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_17_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_18_x;
mytempY = point_01_18_y;
mytempZ = point_01_18_z;
point_01_18_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_18_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_18_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_19_x;
mytempY = point_01_19_y;
mytempZ = point_01_19_z;
point_01_19_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_19_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_19_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_20_x;
mytempY = point_01_20_y;
mytempZ = point_01_20_z;
point_01_20_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_20_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_20_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_21_x;
mytempY = point_01_21_y;
mytempZ = point_01_21_z;
point_01_21_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_21_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_21_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_22_x;
mytempY = point_01_22_y;
mytempZ = point_01_22_z;
point_01_22_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_22_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_22_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_23_x;
mytempY = point_01_23_y;
mytempZ = point_01_23_z;
point_01_23_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_23_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_23_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_01_24_x;
mytempY = point_01_24_y;
mytempZ = point_01_24_z;
point_01_24_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_01_24_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_01_24_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
//
mytempX = point_02_00_x;
mytempY = point_02_00_y;
mytempZ = point_02_00_z;
point_02_00_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_00_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_00_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_01_x;
mytempY = point_02_01_y;
mytempZ = point_02_01_z;
point_02_01_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_01_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_01_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_02_x;
mytempY = point_02_02_y;
mytempZ = point_02_02_z;
point_02_02_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_02_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_02_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_03_x;
mytempY = point_02_03_y;
mytempZ = point_02_03_z;
point_02_03_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_03_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_03_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_04_x;
mytempY = point_02_04_y;
mytempZ = point_02_04_z;
point_02_04_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_04_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_04_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_05_x;
mytempY = point_02_05_y;
mytempZ = point_02_05_z;
point_02_05_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_05_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_05_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_06_x;
mytempY = point_02_06_y;
mytempZ = point_02_06_z;
point_02_06_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_06_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_06_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_07_x;
mytempY = point_02_07_y;
mytempZ = point_02_07_z;
point_02_07_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_07_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_07_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_08_x;
mytempY = point_02_08_y;
mytempZ = point_02_08_z;
point_02_08_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_08_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_08_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_09_x;
mytempY = point_02_09_y;
mytempZ = point_02_09_z;
point_02_09_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_09_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_09_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_10_x;
mytempY = point_02_10_y;
mytempZ = point_02_10_z;
point_02_10_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_10_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_10_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_11_x;
mytempY = point_02_11_y;
mytempZ = point_02_11_z;
point_02_11_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_11_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_11_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_12_x;
mytempY = point_02_12_y;
mytempZ = point_02_12_z;
point_02_12_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_12_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_12_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_13_x;
mytempY = point_02_13_y;
mytempZ = point_02_13_z;
point_02_13_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_13_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_13_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_14_x;
mytempY = point_02_14_y;
mytempZ = point_02_14_z;
point_02_14_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_14_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_14_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_15_x;
mytempY = point_02_15_y;
mytempZ = point_02_15_z;
point_02_15_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_15_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_15_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_16_x;
mytempY = point_02_16_y;
mytempZ = point_02_16_z;
point_02_16_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_16_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_16_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_17_x;
mytempY = point_02_17_y;
mytempZ = point_02_17_z;
point_02_17_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_17_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_17_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_18_x;
mytempY = point_02_18_y;
mytempZ = point_02_18_z;
point_02_18_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_18_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_18_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_19_x;
mytempY = point_02_19_y;
mytempZ = point_02_19_z;
point_02_19_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_19_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_19_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_20_x;
mytempY = point_02_20_y;
mytempZ = point_02_20_z;
point_02_20_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_20_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_20_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_21_x;
mytempY = point_02_21_y;
mytempZ = point_02_21_z;
point_02_21_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_21_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_21_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_22_x;
mytempY = point_02_22_y;
mytempZ = point_02_22_z;
point_02_22_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_22_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_22_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_23_x;
mytempY = point_02_23_y;
mytempZ = point_02_23_z;
point_02_23_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_23_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_23_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_02_24_x;
mytempY = point_02_24_y;
mytempZ = point_02_24_z;
point_02_24_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_02_24_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_02_24_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
//
mytempX = point_03_00_x;
mytempY = point_03_00_y;
mytempZ = point_03_00_z;
point_03_00_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_00_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_00_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_01_x;
mytempY = point_03_01_y;
mytempZ = point_03_01_z;
point_03_01_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_01_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_01_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_02_x;
mytempY = point_03_02_y;
mytempZ = point_03_02_z;
point_03_02_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_02_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_02_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_03_x;
mytempY = point_03_03_y;
mytempZ = point_03_03_z;
point_03_03_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_03_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_03_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_04_x;
mytempY = point_03_04_y;
mytempZ = point_03_04_z;
point_03_04_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_04_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_04_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_05_x;
mytempY = point_03_05_y;
mytempZ = point_03_05_z;
point_03_05_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_05_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_05_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_06_x;
mytempY = point_03_06_y;
mytempZ = point_03_06_z;
point_03_06_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_06_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_06_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_07_x;
mytempY = point_03_07_y;
mytempZ = point_03_07_z;
point_03_07_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_07_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_07_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_08_x;
mytempY = point_03_08_y;
mytempZ = point_03_08_z;
point_03_08_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_08_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_08_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_09_x;
mytempY = point_03_09_y;
mytempZ = point_03_09_z;
point_03_09_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_09_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_09_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_10_x;
mytempY = point_03_10_y;
mytempZ = point_03_10_z;
point_03_10_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_10_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_10_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_11_x;
mytempY = point_03_11_y;
mytempZ = point_03_11_z;
point_03_11_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_11_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_11_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_12_x;
mytempY = point_03_12_y;
mytempZ = point_03_12_z;
point_03_12_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_12_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_12_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_13_x;
mytempY = point_03_13_y;
mytempZ = point_03_13_z;
point_03_13_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_13_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_13_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_14_x;
mytempY = point_03_14_y;
mytempZ = point_03_14_z;
point_03_14_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_14_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_14_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_15_x;
mytempY = point_03_15_y;
mytempZ = point_03_15_z;
point_03_15_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_15_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_15_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_16_x;
mytempY = point_03_16_y;
mytempZ = point_03_16_z;
point_03_16_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_16_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_16_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_17_x;
mytempY = point_03_17_y;
mytempZ = point_03_17_z;
point_03_17_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_17_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_17_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_18_x;
mytempY = point_03_18_y;
mytempZ = point_03_18_z;
point_03_18_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_18_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_18_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_19_x;
mytempY = point_03_19_y;
mytempZ = point_03_19_z;
point_03_19_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_19_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_19_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_20_x;
mytempY = point_03_20_y;
mytempZ = point_03_20_z;
point_03_20_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_20_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_20_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_21_x;
mytempY = point_03_21_y;
mytempZ = point_03_21_z;
point_03_21_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_21_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_21_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_22_x;
mytempY = point_03_22_y;
mytempZ = point_03_22_z;
point_03_22_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_22_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_22_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_23_x;
mytempY = point_03_23_y;
mytempZ = point_03_23_z;
point_03_23_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_23_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_23_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_03_24_x;
mytempY = point_03_24_y;
mytempZ = point_03_24_z;
point_03_24_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_03_24_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_03_24_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
//
mytempX = point_04_00_x;
mytempY = point_04_00_y;
mytempZ = point_04_00_z;
point_04_00_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_00_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_00_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_01_x;
mytempY = point_04_01_y;
mytempZ = point_04_01_z;
point_04_01_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_01_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_01_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_02_x;
mytempY = point_04_02_y;
mytempZ = point_04_02_z;
point_04_02_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_02_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_02_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_03_x;
mytempY = point_04_03_y;
mytempZ = point_04_03_z;
point_04_03_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_03_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_03_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_04_x;
mytempY = point_04_04_y;
mytempZ = point_04_04_z;
point_04_04_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_04_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_04_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_05_x;
mytempY = point_04_05_y;
mytempZ = point_04_05_z;
point_04_05_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_05_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_05_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_06_x;
mytempY = point_04_06_y;
mytempZ = point_04_06_z;
point_04_06_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_06_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_06_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_07_x;
mytempY = point_04_07_y;
mytempZ = point_04_07_z;
point_04_07_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_07_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_07_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_08_x;
mytempY = point_04_08_y;
mytempZ = point_04_08_z;
point_04_08_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_08_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_08_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_09_x;
mytempY = point_04_09_y;
mytempZ = point_04_09_z;
point_04_09_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_09_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_09_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_10_x;
mytempY = point_04_10_y;
mytempZ = point_04_10_z;
point_04_10_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_10_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_10_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_11_x;
mytempY = point_04_11_y;
mytempZ = point_04_11_z;
point_04_11_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_11_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_11_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_12_x;
mytempY = point_04_12_y;
mytempZ = point_04_12_z;
point_04_12_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_12_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_12_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_13_x;
mytempY = point_04_13_y;
mytempZ = point_04_13_z;
point_04_13_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_13_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_13_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_14_x;
mytempY = point_04_14_y;
mytempZ = point_04_14_z;
point_04_14_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_14_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_14_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_15_x;
mytempY = point_04_15_y;
mytempZ = point_04_15_z;
point_04_15_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_15_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_15_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_16_x;
mytempY = point_04_16_y;
mytempZ = point_04_16_z;
point_04_16_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_16_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_16_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_17_x;
mytempY = point_04_17_y;
mytempZ = point_04_17_z;
point_04_17_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_17_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_17_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_18_x;
mytempY = point_04_18_y;
mytempZ = point_04_18_z;
point_04_18_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_18_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_18_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_19_x;
mytempY = point_04_19_y;
mytempZ = point_04_19_z;
point_04_19_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_19_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_19_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_20_x;
mytempY = point_04_20_y;
mytempZ = point_04_20_z;
point_04_20_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_20_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_20_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_21_x;
mytempY = point_04_21_y;
mytempZ = point_04_21_z;
point_04_21_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_21_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_21_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_22_x;
mytempY = point_04_22_y;
mytempZ = point_04_22_z;
point_04_22_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_22_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_22_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_23_x;
mytempY = point_04_23_y;
mytempZ = point_04_23_z;
point_04_23_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_23_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_23_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
mytempX = point_04_24_x;
mytempY = point_04_24_y;
mytempZ = point_04_24_z;
point_04_24_x = yAxisRotationMatrix11 * mytempX + yAxisRotationMatrix12 * mytempY + yAxisRotationMatrix13 * mytempZ + yAxisRotationMatrix14 * 1;
point_04_24_y = yAxisRotationMatrix21 * mytempX + yAxisRotationMatrix22 * mytempY + yAxisRotationMatrix23 * mytempZ + yAxisRotationMatrix24 * 1;
point_04_24_z = yAxisRotationMatrix31 * mytempX + yAxisRotationMatrix32 * mytempY + yAxisRotationMatrix33 * mytempZ + yAxisRotationMatrix34 * 1;
//
}
void myFergusonCurve(float point_1_x, float point_1_y, float vector1x, float vector1y, float point_2_x, float point_2_y, float vector2x, float vector2y, float precision)
{
int hermitianMatrix11 = 1;
int hermitianMatrix12 = 0;
int hermitianMatrix13 = 0;
int hermitianMatrix14 = 0;
int hermitianMatrix21 = 0;
int hermitianMatrix22 = 0;
int hermitianMatrix23 = 1;
int hermitianMatrix24 = 0;
int hermitianMatrix31 = -3;
int hermitianMatrix32 = 3;
int hermitianMatrix33 = -2;
int hermitianMatrix34 = -1;
int hermitianMatrix41 = 2;
int hermitianMatrix42 = -2;
int hermitianMatrix43 = 1;
int hermitianMatrix44 = 1;
float paramA10 = hermitianMatrix11 * point_1_x + hermitianMatrix12 * point_2_x + hermitianMatrix13 * vector1x + hermitianMatrix14 * vector2x;
float paramA11 = hermitianMatrix21 * point_1_x + hermitianMatrix22 * point_2_x + hermitianMatrix23 * vector1x + hermitianMatrix24 * vector2x;
float paramA12 = hermitianMatrix31 * point_1_x + hermitianMatrix32 * point_2_x + hermitianMatrix33 * vector1x + hermitianMatrix34 * vector2x;
float paramA13 = hermitianMatrix41 * point_1_x + hermitianMatrix42 * point_2_x + hermitianMatrix43 * vector1x + hermitianMatrix44 * vector2x;
float paramA20 = hermitianMatrix11 * point_1_y + hermitianMatrix12 * point_2_y + hermitianMatrix13 * vector1y + hermitianMatrix14 * vector2y;
float paramA21 = hermitianMatrix21 * point_1_y + hermitianMatrix22 * point_2_y + hermitianMatrix23 * vector1y + hermitianMatrix24 * vector2y;
float paramA22 = hermitianMatrix31 * point_1_y + hermitianMatrix32 * point_2_y + hermitianMatrix33 * vector1y + hermitianMatrix34 * vector2y;
float paramA23 = hermitianMatrix41 * point_1_y + hermitianMatrix42 * point_2_y + hermitianMatrix43 * vector1y + hermitianMatrix44 * vector2y;
float originPointX = 0.0;
float originPointY = 0.0;
float destinationPointX = point_1_x;
float destinationPointY = point_1_y;
float temp = precision;
float tempOriginPointX = 0.0;
float tempOriginPointY = 0.0;
float tempOriginPointZ = 0.0;
float tempDestinationPointX = 0.0;
float tempDestinationPointY = 0.0;
float tempDestinationPointZ = 0.0;
glBegin(GL_LINES);
for (float i = precision; i < 1; i = i + precision)
{
originPointX = destinationPointX;
originPointY = destinationPointY;
destinationPointX = paramA10 + paramA11 * temp + paramA12 * temp*temp + paramA13 * temp*temp*temp;
destinationPointY = paramA20 + paramA21 * temp + paramA22 * temp*temp + paramA23 * temp*temp*temp;
tempOriginPointX = point1x + radius * cos(angle15radian * originPointX / 100 + uMove) * cos(angle15radian * originPointY / 100 + vMove);
tempOriginPointY = point1y + radius * cos(angle15radian * originPointX / 100 + uMove) * sin(angle15radian * originPointY / 100 + vMove);
tempOriginPointZ = point1z + radius * sin(angle15radian * originPointX / 100 + uMove);
tempDestinationPointX = point1x + radius * cos(angle15radian * destinationPointX / 100 + uMove) * cos(angle15radian * destinationPointY / 100 + vMove);
tempDestinationPointY = point1y + radius * cos(angle15radian * destinationPointX / 100 + uMove) * sin(angle15radian * destinationPointY / 100 + vMove);
tempDestinationPointZ = point1z + radius * sin(angle15radian * destinationPointX / 100 + uMove);
myTrimetricAxis(tempOriginPointX, tempOriginPointY, tempOriginPointZ, tempDestinationPointX, tempDestinationPointY, tempDestinationPointZ);
temp = i + precision;
}
glEnd();
glFlush(); // Process all OpenGL routines as quickly as possible
}
void myAnimation(int t)
{
myRotation();
//vMove += angle15radian * 0.1;
glutPostRedisplay();
glutTimerFunc(100, myAnimation, 0);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment