Chuyển đổi tài sản26. 010. 016. 06. 112. 1chuyển tiếp-trễ26. 010. 016. 06. 112. 1thời gian chuyển đổi26. 010. 016. 06. 112. 1transition-property26. 010. 016. 06. 112. 1chức năng thời gian chuyển tiếp26. 010. 016. 06. 112. 1
Làm cách nào để sử dụng Chuyển tiếp CSS?
Để tạo hiệu ứng chuyển tiếp, bạn phải chỉ định hai điều
- thuộc tính CSS mà bạn muốn thêm hiệu ứng vào
- thời gian tác dụng
Ghi chú. Nếu phần thời lượng không được chỉ định, quá trình chuyển đổi sẽ không có hiệu lực vì giá trị mặc định là 0
Ví dụ sau hiển thị màu đỏ 100px * 100px
yếu tố. Các
phần tử cũng đã chỉ định hiệu ứng chuyển tiếp cho thuộc tính chiều rộng, với thời lượng là 2 giây
Thí dụ
div {
chiều rộng. 100px;
chiều cao. 100px;
nền. màu đỏ;
chuyển tiếp. chiều rộng 2 giây;
}
Hiệu ứng chuyển tiếp sẽ bắt đầu khi thuộc tính CSS được chỉ định [chiều rộng] thay đổi giá trị
Bây giờ, chúng ta hãy chỉ định một giá trị mới cho thuộc tính chiều rộng khi người dùng di chuột qua
yếu tố
Lưu ý rằng khi con trỏ chuột ra khỏi phần tử, nó sẽ dần dần trở lại kiểu ban đầu
Thay đổi một số giá trị thuộc tính
Ví dụ sau thêm hiệu ứng chuyển tiếp cho cả thuộc tính chiều rộng và chiều cao, với thời lượng là 2 giây cho chiều rộng và 4 giây cho chiều cao
Những gì tôi đang làm ở đây là tính góc giữa x=0, y=1 [đó là phần line_xy] và sau đó xoay nó quanh trục z bằng cách sử dụng phần đầu tiên của hàm xoay
v1_new = [vector[0]*np.cos[theta]] - [vector[1]*np.sin[theta]]
v2_new = [vector[1]*np.cos[theta]] + [vector[0]*np.sin[theta]]
z_trans = [v1_new,v2_new,vector[2]]
sau đó lặp lại quy trình nhưng lần này xoay quanh trục x bằng cách sử dụng phần thứ hai của chức năng xoay
line_yz= [0.,1.]
theta2 = angle_between[line_yz, [z_trans[1],z_trans[2]]]
v1_new = [z_trans[0]*np.cos[theta2]] - [z_trans[1]*np.sin[theta2]]
v2_new = [z_trans[1]*np.cos[theta2]] + [z_trans[0]*np.sin[theta2]]
y_trans = np.array[[z_trans[0],v1_new,v2_new]]
Các phép quay được thực hiện thông qua các phương trình xoay 2D tiêu chuẩn
x' = x cos[theta] - y sin[theta] y' = y cos[theta] + x sin[theta]
Nhưng vì lý do nào đó, sau lần quay thứ hai, đường [màu vàng] không thẳng hàng với đường màu xanh lá cây [mục tiêu ban đầu của việc quay vectơ này]
Trong bài viết này, chúng ta sẽ thảo luận về cách xoay và chia tỷ lệ một vectơ trong Python. Các vectơ cho phép chúng tôi thực hiện các phép tính toán học nâng cao như tích vô hướng và tích chéo trong đại số tuyến tính. Hãy xem cách Python thực hiện các vectơ
nội dung
- Vectơ là gì?
- Làm cách nào để triển khai một Vector trong Python?
- Véc Tơ Ngang
- Véc Tơ Dọc
- Cách xoay một vectơ quanh trục của nó trong Python
- Cách xoay một vectơ bằng Quaternion
- Cách chia tỷ lệ vectơ bằng dãy số trong Python
- câu hỏi thường gặp
- Phần kết luận
- Xu hướng bài viết Python
Vectơ là gì?
Một vectơ không là gì ngoài cấu trúc mảng một chiều. Tuy nhiên, trong Python, một vectơ là một mảng danh sách một chiều có các thuộc tính tương tự như danh sách Python. Trong vật lý, các giá trị của vectơ biểu thị hướng và độ lớn. Nó biểu thị vị trí của một điểm trong không gian so với các điểm khác
Trong Python, chúng ta có thể thực hiện các thao tác sau với sự trợ giúp của vectơ
- Phép cộng
- phép trừ
- Phép nhân
- Phân công
- chấm sản phẩm
- tích vô hướng
Các hoạt động này cho phép chúng tôi làm việc với dữ liệu trong Mạng thần kinh và Kết xuất 3D
Làm cách nào để triển khai một Vector trong Python?
Sử dụng mô-đun NumPy , chúng ta có thể tạo các vectơ. Vectơ có 2 loại.
- Nằm ngang
- Thẳng đứng
Với sự giúp đỡ của. array[], chúng ta có thể tạo các vectơ từ danh sách
xu hướng
[Đã sửa] ModuleNotFoundError. Không có mô-đun nào có tên Dotenv
Véc Tơ Ngang
Các vectơ ngang có thể được tạo bằng dấu ngoặc vuông đơn
import numpy as np sampleList = [2, 4, 6, 8, 10] myVector = np.array[sampleList] print[myVector]
đầu ra
[ 2 4 6 8 10]
Véc Tơ Dọc
Sử dụng dấu ngoặc vuông kép, chúng ta có thể tạo các vectơ dọc vectors
import numpy as np sampleList = [[7], [3], [25], [12]] myVector = np.array[sampleList] print[myVector]
đầu ra
[[ 7] [ 3] [25] [12]]
Cách xoay một vectơ quanh trục của nó trong Python
Cho
[ 2 4 6 8 10]7 là một vectơ đơn vị dọc theo một trục
[ 2 4 6 8 10]8. Sau đó
[ 2 4 6 8 10]9. Đặt
import numpy as np sampleList = [[7], [3], [25], [12]] myVector = np.array[sampleList] print[myVector]0 =
import numpy as np sampleList = [[7], [3], [25], [12]] myVector = np.array[sampleList] print[myVector]1, tích chéo của
[ 2 4 6 8 10]7 với một ma trận nhận dạng
import numpy as np sampleList = [[7], [3], [25], [12]] myVector = np.array[sampleList] print[myVector]3. Khi đó
import numpy as np sampleList = [[7], [3], [25], [12]] myVector = np.array[sampleList] print[myVector]4 là ma trận xoay. Cuối cùng, chấm ma trận xoay với vectơ sẽ xoay vectơ.
Với sự trợ giúp của mô-đun scipy, chúng tôi có thể đạt được điều này. Cụ thể là hàm
import numpy as np sampleList = [[7], [3], [25], [12]] myVector = np.array[sampleList] print[myVector]5. Trong đó rotvec là trục quay nhân với radian góc quay. Chúng ta có thể áp dụng phép quay cho vectơ bằng cách gọi
import numpy as np sampleList = [[7], [3], [25], [12]] myVector = np.array[sampleList] print[myVector]6. Hãy xem chương trình sau
line_yz= [0.,1.]
theta2 = angle_between[line_yz, [z_trans[1],z_trans[2]]]
v1_new = [z_trans[0]*np.cos[theta2]] - [z_trans[1]*np.sin[theta2]]
v2_new = [z_trans[1]*np.cos[theta2]] + [z_trans[0]*np.sin[theta2]]
y_trans = np.array[[z_trans[0],v1_new,v2_new]]
6đầu ra
line_yz= [0.,1.]
theta2 = angle_between[line_yz, [z_trans[1],z_trans[2]]]
v1_new = [z_trans[0]*np.cos[theta2]] - [z_trans[1]*np.sin[theta2]]
v2_new = [z_trans[1]*np.cos[theta2]] + [z_trans[0]*np.sin[theta2]]
y_trans = np.array[[z_trans[0],v1_new,v2_new]]
7Phổ biến bây giờ
Sử dụng hàm create_api[] của Pycaret để tạo API học máy
Cách xoay một vectơ bằng Quaternion
Quaternions là gì?
line_yz= [0.,1.]
theta2 = angle_between[line_yz, [z_trans[1],z_trans[2]]]
v1_new = [z_trans[0]*np.cos[theta2]] - [z_trans[1]*np.sin[theta2]]
v2_new = [z_trans[1]*np.cos[theta2]] + [z_trans[0]*np.sin[theta2]]
y_trans = np.array[[z_trans[0],v1_new,v2_new]]
8Một bậc bốn là phép cộng một giá trị vô hướng [w] vào một vectơ 3D [xi + yj + zk]. Không gian của phép quay 3D được thể hiện đầy đủ bằng không gian của đơn vị quaternions. Do đó, bạn nên đảm bảo rằng các bậc bốn được chuẩn hóa. Tham khảo chức năng này thực hiện chính xác điều đó
line_yz= [0.,1.]
theta2 = angle_between[line_yz, [z_trans[1],z_trans[2]]]
v1_new = [z_trans[0]*np.cos[theta2]] - [z_trans[1]*np.sin[theta2]]
v2_new = [z_trans[1]*np.cos[theta2]] + [z_trans[0]*np.sin[theta2]]
y_trans = np.array[[z_trans[0],v1_new,v2_new]]
9Mỗi phép quay được biểu thị bằng một bậc bốn đơn vị và phép nối các phép quay tương ứng với phép nhân của bậc bốn đơn vị. Chúng ta hãy xem công thức được biểu diễn dưới dạng hàm
import numpy as np sampleList = [2, 4, 6, 8, 10] myVector = np.array[sampleList] print[myVector]0
Để quay vectơ theo một bậc bốn, chúng ta sẽ cần liên hợp của nó
import numpy as np sampleList = [2, 4, 6, 8, 10] myVector = np.array[sampleList] print[myVector]1
Phép nhân vectơ bậc bốn liên quan đến việc chuyển đổi vectơ thành bậc bốn và sau đó nhân
import numpy as np sampleList = [[7], [3], [25], [12]] myVector = np.array[sampleList] print[myVector]7
[ 2 4 6 8 10]0
Cuối cùng, điều cần thiết là chúng ta chuyển đổi các phép quay góc trục thành bậc bốn và ngược lại. Sử dụng
import numpy as np sampleList = [[7], [3], [25], [12]] myVector = np.array[sampleList] print[myVector]8 trước đây của chúng tôi, vectơ được chuẩn hóa
[ 2 4 6 8 10]1
Bây giờ, ngược lại
[ 2 4 6 8 10]2
Hãy đưa triển khai của chúng tôi vào sử dụng. Trong ví dụ này, chúng ta sẽ thực hiện một chuỗi các phép quay 90 độ quanh các trục x, y và z. Điều này sẽ trả lại một vectơ trên trục y về vị trí ban đầu của nó
[ 2 4 6 8 10]3
Đầu ra mẫu
[ 2 4 6 8 10]4
Cách chia tỷ lệ vectơ bằng dãy số trong Python
Giả sử chúng ta cần chia tỷ lệ vectơ
import numpy as np sampleList = [[7], [3], [25], [12]] myVector = np.array[sampleList] print[myVector]9 nhiều lần với một dãy số
[[ 7] [ 3] [25] [12]]0. Với sự trợ giúp của thư viện NumPy, điều này đã đạt được. Cụ thể, hàm
[[ 7] [ 3] [25] [12]]1
[ 2 4 6 8 10]5
đầu ra
[ 2 4 6 8 10]6
xu hướng
Hướng dẫn cơ bản về Python __all__
câu hỏi thường gặp
Làm cách nào để xoay 90 độ trong Python?
Sử dụng hàm
[[ 7] [ 3] [25] [12]]2 từ NumPy, chúng ta có thể xoay một mảng 90 độ so với các trục của nó
Làm cách nào để xoay hình ảnh 90 độ ngược chiều kim đồng hồ trong Python?
Với sự trợ giúp của hàm
[[ 7] [ 3] [25] [12]]3 trong mô-đun PIL, bạn có thể xoay hình ảnh . Phải mất hai đối số.
– Góc [int]
– Mở rộng [bool]
Phần kết luận
Trong bài viết này, chúng ta đã thảo luận về cách xoay và chia tỷ lệ một vectơ trong Python. Một lời giải thích khoa học cho một vectơ đã được cung cấp. Chúng ta đã thảo luận về quaternion là gì và cách xoay vectơ bằng cách sử dụng chúng. Cuối cùng, chúng tôi đã thảo luận về quy mô vectơ