newx = a*x + b*y + c*z
newy = d*x + e*y + f*z
newz = g*x + h*y + i*zMatrix3D(x, y, pos2, direction, new_pos);stock GreateSpiral(float StartPos[3], float EndPos[3], float angles[3], float radius) {
	float Cos, Sin;
	Cos = Cosine(degree);    //  degree угол на коорый поворачиваю(в радианы наверно нужно перевести)
	Sin = Sine(degree);
	vx = angles[0];
	vy = angles[1];
	vz = angles[2];
	while(degree <= PI * t) {
        float a = Cos + (1 - Cos) * vx * vx;
		float b = (1 - Cos)) * vx * vy - Sin * vz;
        float c = (1 - Cos) * vx * vz + Sin * vy;
        float d = (1 - Cos) * vy * vx + Sin * vz;
        float e = Cos + (1 - Cos) * vy * vy;
        float f = (1 - Cos) * vy * vz - Sin * vx;
        float g = (1 - Cos) * vz * vx - Sin * vy;
        float h = (a - Cos) * vz * vy + Sin * vx;
        float i = Cos + (1 - Cos) * vz * vz;
        ......
        ......
        ......
        Здесь отрисовка линии......
        
        degree += PI/10.0;
    }
}float a=cos(a)+(1-cos(a))*vx*vx;
float b=(1-cos(a))*vx*vy-sin(a)*vz;
float c=(1-cos(a))*vx*vz+sin(a)*vy;
float d=(1-cos(a))*vy*vx+sin(a)*vz;
float e=cos(a)+(1-cos(a))*vy*vy;
float f=(1-cos(a))*vy*vz-sin(a)*vx;
float g=(1-cos(a))*vz*vx-sin(a)*vy;
float h=(a-cos(a))*vz*vy+sin(a)*vx;
float i=cos(a)+(1-cos(a))*vz*vz;{
{cos(a)+(1-cos(a))*vx*vx, (1-cos(a))*vx*vy-sin(a)*vz, (1-cos(a))*vx*vz+sin(a)*vy, 0},
{(1-cos(a))*vy*vx+sin(a)*vz, cos(a)+(1-cos(a))*vy*vy, (1-cos(a))*vy*vz-sin(a)*vx, 0},
{(1-cos(a))*vz*vx-sin(a)*vy, (a-cos(a))*vz*vy+sin(a)*vx, cos(a)+(1-cos(a))*vz*vz, 0},
{0, 0, 0, 1}
}
матрицу довольно просто самому расписать.
Достаточно посмотреть что класть в ячейки матрицы поворота.
Как бы объяснить, попытка применения матрицы плавно трансформировалась в направления векторов, из полученных векторов: вектор направления, вектор вверх и вбок. Из них получилось некое подобие матрицы. Отлично работает!
Александр Павлюк Александр Павлюк Огромное спасибо за ответ. Вообще впервые вижу подробный ответ.
Спасибо за матрицу, хоть и не пришлось её применить, но я с ней обязательно поэксперементирую, такое обязательно нужно использовать.
Здесь у меня видео с результатом того, что я и хотел получить.
Цилиндрическая винтовая линия