Tôi đang sử dụng jupyter-cadquery
để trực quan hóa một số mô hình 3D được tạo bằng CadQuery .
Khi hình dung các mô hình trên máy tính xách tay Jupyter, mọi thứ hoạt động như mong đợi.
Nhưng khi cố gắng nhúng widget trong tài liệu HTML, có vẻ như máy ảnh, khi đang tải, đang chỉ vào (0, 0, 0)
, không như mong đợi. Khi bạn tương tác với widget, máy ảnh sẽ trỏ đến tọa độ dự kiến.
Đây là mã để tái tạo lỗi và hình ảnh động của vấn đề được đề cập (xem hướng dẫn dưới đây về cách tái tạo nó bằng Binder):
from cadquery import Workplane
from ipywidgets import embed
from jupyter_cadquery.cad_view import CadqueryView
from jupyter_cadquery.cadquery import Assembly
from jupyter_cadquery.cadquery import Part
# Create a simple assembly
box1 = Workplane('XY').box(10, 10, 10).translate((0, 0, 5))
a1 = Assembly([Part(box1)], "example 1")
# Generate HTML
a1.collect_shapes()
view = CadqueryView()
for shape in a1.collect_shapes():
view.add_shape(shape["name"], shape["shape"], shape["color"])
renderer = view.render()
embed.embed_minimal_html('export.html', views=renderer, title='Renderer')
renderer
Lưu ý cách xem khối lập phương "nhảy" đột ngột khi tương tác.
Nó có thể là một vấn đề với ipywidgets
? Vì chế độ xem ổn khi hiển thị trong sổ ghi chép.
Làm thế nào nó có thể được sửa chữa?
Cách sinh sản
Bạn có thể tái tạo nó bằng Binder mà không cần tạo môi trường cục bộ (thú nhận, cài đặt CadQuery / jupyter-cadquery không phải là điều dễ nhất / nhanh nhất để làm):
Chỉ cần thực thi mã ở trên trong một máy tính xách tay trống mới. Xem cách renderer
hiển thị mô hình 3D mà không có bất kỳ sự cố nào trên sổ ghi chép:
Sau khi thực hiện, một export.html
tài liệu cũng sẽ xuất hiện trong danh sách tập tin bên trái. Mở nó và đảm bảo nhấp vào nút "Tin cậy HTML" trên đầu trình xem và nhấn refresh. Nếu bạn tương tác với chế độ xem, bạn có thể tái tạo vấn đề.
Lưu ý rằng, cũng, phối cảnh bị mất (đó không phải là một quan điểm trực giao). Sửa chữa đó sẽ là một lợi thế! ^^