In the actual problem, we may encounter a lot of problems related to the calculation of geometry, one of the problems is the rotation of the vector problem, let us discuss in detail about the rotation of the problem.
First of all, let's simplify the problem first, and we'll start with a point around the other point to rotate a certain angle. Given the point coordinates (X1,Y1) and the B-point coordinates (X2,Y2), we need to find the position of a point around the B-point rotation θ.
The point at which a point rotates the θ angle around the b point, the question is how we can get the coordinates of the A ' point. (Counterclockwise rotation angle positive, inverse negative) to study a point around another point of rotation, we can first simplify the rotation of a point around the origin of the problem, so it is more convenient for our research. Then we can generalize the conclusion to the general form.
Make B is the origin, we first take a point counterclockwise rotation for example, we cross a ' to do ab vertical line, cross AB C, over C do x-axis parallel lines cross a ' do X axis perpendicular to D. Over point c do x axis perpendicular to the x axis at point E.
coordinates of a (x, y), a ' coordinate (x1,y1), b coordinates (0,0). We can easily get the length of AB, and it is obvious that a ' B length equals AB. Assuming we know the size of the theta angle, we can quickly find the length of BC and a ' C. Bc=a ' B x cosθ,a ' c=a ' B x sinθθ.
Because ∠a ' CB and ∠DCE are at right angles (obvious conclusion), then ∠a ' CD +∠DCB =∠ecd +∠dcb=90 degrees.
Then ∠a ' cd=∠ecd,∠a ' dc=∠ceb=90 degrees, so you can infer ⊿ca ' d∽⊿cbe. The conclusions that can be withdrawn from this are:
Bc/be=a ' c/a ' d and Bc/ce=a ' C/CD
Of course, both DC and a ' d are unknown quantities and need to be solved, but we can obtain the length of a ' C and CD indirectly by finding the C-point coordinates and the e-point coordinates. We should use similar knowledge to solve C-point coordinates.
The C-point horizontal axis equals: (| ab| x cosθ)/| ab|) * x = x*cosθ
The C-point ordinate equals: (| ab| x cosθ)/| ab|) * y = y*cosθ
The length of the CE and be can be determined.
We can derive from the phase ⊿ca ' D∽⊿CBE:
AD = x * sinθdc = y * sinθθ
Then it's easy to come up with the following:
X1 = x*cosθ-Y * sinθy1 = y*cosθ+ x * sinθθ
The coordinates of a ' are (x*cosθ-y * sinθθ, y*cosθ+ x * sinθθ)
We can think of this: for any point a (x, y), a non-origin, the coordinates of the point after the rotation of θ around the origin are: (x*cosθ-y * sinθθ, y*cosθ+ x * sinθθ)
Next we make a simple generalization of this conclusion, for any two different points A and B (a B coincident is obviously not significant for the coordinates of the rotation of the point around the other point), for a point around the b point rotation θ angle coordinates, we can see the B point as the Origin point, A and B translation transformation, After calculating the point coordinates, the horizontal ordinate of the original B point is added to its horizontal ordinate, which is the coordinate of a '.
Generalization conclusion: For any two different points A and b,a around B rotation θ angle coordinates are:
(Δx*cosθ-δy * sinθ+ xb,δy*cosθ+δx * sinθ+ YB)
Note: XB, YB is the b point coordinate.
Further generalization of the conclusion: for any non-zero vector ab (0 vector Research is of little significance), for Point C to rotate, we only need to point A and B for point C to rotate a certain angle coordinates can find the rotated vector a ' B ', because the vector rotation is still a directed line segment. Similarly, this is true for polygon rotation on any two-dimensional plane.
Rotation of the vector