|
def | __init__ (self, model, w=1024, h=768) |
|
def | controls_3d (self, dx, dy, zooming_one_shot=False) |
|
def | cycle_cameras (self) |
|
def | get_color_id (self) |
|
def | get_hovered_node (self, mousex, mousey) |
|
def | glize (self, scene, node) |
|
def | load_model (self, path, postprocess=aiProcessPreset_TargetRealtime_MaxQuality) |
|
def | loop (self) |
|
def | move_selected_node (self, up, strafe) |
|
def | prepare_shaders (self) |
|
def | process_events (self) |
|
def | process_keystroke (self, key, mod) |
|
def | recursive_render (self, node, shader, mode=BASE, with_normals=True) |
|
def | render (self, wireframe=False, twosided=False) |
|
def | render_axis (self, transformation=numpy.identity(4, dtype=numpy.float32), label=None, size=0.2, selected=False) |
|
def | render_colors (self) |
|
def | select_node (self, node) |
|
def | set_camera_projection (self, camera=None) |
|
def | set_overlay_projection (self) |
|
def | set_shaders_v120 (self) |
|
def | set_shaders_v130 (self) |
|
def | switch_from_overlay (self) |
|
def | switch_to_overlay (self) |
|
def | update_node_select (self, node) |
|
def | update_view_camera (self) |
|
◆ __init__()
def 3d_viewer_py3.PyAssimp3DViewer.__init__ |
( |
|
self, |
|
|
|
model, |
|
|
|
w = 1024 , |
|
|
|
h = 768 |
|
) |
| |
◆ controls_3d()
def 3d_viewer_py3.PyAssimp3DViewer.controls_3d |
( |
|
self, |
|
|
|
dx, |
|
|
|
dy, |
|
|
|
zooming_one_shot = False |
|
) |
| |
Orbiting the camera is implemented the following way:
- the rotation is split into a rotation around the *world* Z axis
(controlled by the horizontal mouse motion along X) and a
rotation around the *X* axis of the camera (pitch) *shifted to
the focal origin* (the world origin for now). This is controlled
by the vertical motion of the mouse (Y axis).
- as a result, the resulting transformation of the camera in the
world frame C' is:
C' = (T · Rx · T⁻¹ · (Rz · C)⁻¹)⁻¹
where:
- C is the original camera transformation in the world frame,
- Rz is the rotation along the Z axis (in the world frame)
- T is the translation camera -> world (ie, the inverse of the
translation part of C
- Rx is the rotation around X in the (translated) camera frame
◆ cycle_cameras()
def 3d_viewer_py3.PyAssimp3DViewer.cycle_cameras |
( |
|
self | ) |
|
◆ get_color_id()
def 3d_viewer_py3.PyAssimp3DViewer.get_color_id |
( |
|
self | ) |
|
◆ get_hovered_node()
def 3d_viewer_py3.PyAssimp3DViewer.get_hovered_node |
( |
|
self, |
|
|
|
mousex, |
|
|
|
mousey |
|
) |
| |
Attention: The performances of this method relies heavily on the size of the display!
◆ get_rgb_from_colorid()
def 3d_viewer_py3.PyAssimp3DViewer.get_rgb_from_colorid |
( |
|
colorid | ) |
|
|
static |
◆ glize()
def 3d_viewer_py3.PyAssimp3DViewer.glize |
( |
|
self, |
|
|
|
scene, |
|
|
|
node |
|
) |
| |
◆ load_model()
◆ loop()
def 3d_viewer_py3.PyAssimp3DViewer.loop |
( |
|
self | ) |
|
◆ move_selected_node()
def 3d_viewer_py3.PyAssimp3DViewer.move_selected_node |
( |
|
self, |
|
|
|
up, |
|
|
|
strafe |
|
) |
| |
◆ prepare_gl_buffers()
def 3d_viewer_py3.PyAssimp3DViewer.prepare_gl_buffers |
( |
|
mesh | ) |
|
|
static |
◆ prepare_shaders()
def 3d_viewer_py3.PyAssimp3DViewer.prepare_shaders |
( |
|
self | ) |
|
◆ process_events()
def 3d_viewer_py3.PyAssimp3DViewer.process_events |
( |
|
self | ) |
|
◆ process_keystroke()
def 3d_viewer_py3.PyAssimp3DViewer.process_keystroke |
( |
|
self, |
|
|
|
key, |
|
|
|
mod |
|
) |
| |
◆ recursive_render()
def 3d_viewer_py3.PyAssimp3DViewer.recursive_render |
( |
|
self, |
|
|
|
node, |
|
|
|
shader, |
|
|
|
mode = BASE , |
|
|
|
with_normals = True |
|
) |
| |
Main recursive rendering method.
◆ render()
def 3d_viewer_py3.PyAssimp3DViewer.render |
( |
|
self, |
|
|
|
wireframe = False , |
|
|
|
twosided = False |
|
) |
| |
◆ render_axis()
def 3d_viewer_py3.PyAssimp3DViewer.render_axis |
( |
|
self, |
|
|
|
transformation = numpy.identity(4, dtype=numpy.float32) , |
|
|
|
label = None , |
|
|
|
size = 0.2 , |
|
|
|
selected = False |
|
) |
| |
◆ render_camera()
def 3d_viewer_py3.PyAssimp3DViewer.render_camera |
( |
|
camera, |
|
|
|
transformation |
|
) |
| |
|
static |
◆ render_colors()
def 3d_viewer_py3.PyAssimp3DViewer.render_colors |
( |
|
self | ) |
|
◆ render_grid()
def 3d_viewer_py3.PyAssimp3DViewer.render_grid |
( |
| ) |
|
|
static |
◆ select_node()
def 3d_viewer_py3.PyAssimp3DViewer.select_node |
( |
|
self, |
|
|
|
node |
|
) |
| |
◆ set_camera_projection()
def 3d_viewer_py3.PyAssimp3DViewer.set_camera_projection |
( |
|
self, |
|
|
|
camera = None |
|
) |
| |
◆ set_overlay_projection()
def 3d_viewer_py3.PyAssimp3DViewer.set_overlay_projection |
( |
|
self | ) |
|
◆ set_shader_accessors()
def 3d_viewer_py3.PyAssimp3DViewer.set_shader_accessors |
( |
|
uniforms, |
|
|
|
attributes, |
|
|
|
shader |
|
) |
| |
|
static |
◆ set_shaders_v120()
def 3d_viewer_py3.PyAssimp3DViewer.set_shaders_v120 |
( |
|
self | ) |
|
◆ set_shaders_v130()
def 3d_viewer_py3.PyAssimp3DViewer.set_shaders_v130 |
( |
|
self | ) |
|
◆ showtext()
def 3d_viewer_py3.PyAssimp3DViewer.showtext |
( |
|
text, |
|
|
|
x = 0 , |
|
|
|
y = 0 , |
|
|
|
z = 0 , |
|
|
|
size = 20 |
|
) |
| |
|
static |
◆ switch_from_overlay()
def 3d_viewer_py3.PyAssimp3DViewer.switch_from_overlay |
( |
|
self | ) |
|
◆ switch_to_overlay()
def 3d_viewer_py3.PyAssimp3DViewer.switch_to_overlay |
( |
|
self | ) |
|
◆ update_node_select()
def 3d_viewer_py3.PyAssimp3DViewer.update_node_select |
( |
|
self, |
|
|
|
node |
|
) |
| |
◆ update_view_camera()
def 3d_viewer_py3.PyAssimp3DViewer.update_view_camera |
( |
|
self | ) |
|
◆ base_name
string 3d_viewer_py3.PyAssimp3DViewer.base_name = "PyASSIMP 3D viewer" |
|
static |
◆ BASIC_FRAGMENT_SHADER
3d_viewer_py3.PyAssimp3DViewer.BASIC_FRAGMENT_SHADER |
◆ BASIC_VERTEX_SHADER
3d_viewer_py3.PyAssimp3DViewer.BASIC_VERTEX_SHADER |
◆ bb_max
3d_viewer_py3.PyAssimp3DViewer.bb_max |
◆ cameras
3d_viewer_py3.PyAssimp3DViewer.cameras |
◆ colorid2node
3d_viewer_py3.PyAssimp3DViewer.colorid2node |
◆ current_cam
3d_viewer_py3.PyAssimp3DViewer.current_cam |
◆ current_cam_index
3d_viewer_py3.PyAssimp3DViewer.current_cam_index |
◆ currently_selected
3d_viewer_py3.PyAssimp3DViewer.currently_selected |
◆ default_camera
3d_viewer_py3.PyAssimp3DViewer.default_camera |
◆ FLAT_VERTEX_SHADER
3d_viewer_py3.PyAssimp3DViewer.FLAT_VERTEX_SHADER |
◆ flatshader
3d_viewer_py3.PyAssimp3DViewer.flatshader |
◆ focal_point
3d_viewer_py3.PyAssimp3DViewer.focal_point |
◆ GOOCH_FRAGMENT_SHADER
3d_viewer_py3.PyAssimp3DViewer.GOOCH_FRAGMENT_SHADER |
◆ gooch_shader
3d_viewer_py3.PyAssimp3DViewer.gooch_shader |
◆ GOOCH_VERTEX_SHADER
3d_viewer_py3.PyAssimp3DViewer.GOOCH_VERTEX_SHADER |
3d_viewer_py3.PyAssimp3DViewer.h |
◆ is_panning
3d_viewer_py3.PyAssimp3DViewer.is_panning |
◆ is_rotating
3d_viewer_py3.PyAssimp3DViewer.is_rotating |
◆ is_zooming
3d_viewer_py3.PyAssimp3DViewer.is_zooming |
◆ meshes
3d_viewer_py3.PyAssimp3DViewer.meshes |
◆ moving
3d_viewer_py3.PyAssimp3DViewer.moving |
◆ moving_situation
3d_viewer_py3.PyAssimp3DViewer.moving_situation |
◆ node2colorid
3d_viewer_py3.PyAssimp3DViewer.node2colorid |
◆ projection_matrix
3d_viewer_py3.PyAssimp3DViewer.projection_matrix |
◆ scene
3d_viewer_py3.PyAssimp3DViewer.scene |
◆ scene_center
3d_viewer_py3.PyAssimp3DViewer.scene_center |
◆ shader
3d_viewer_py3.PyAssimp3DViewer.shader |
◆ silhouette_shader
3d_viewer_py3.PyAssimp3DViewer.silhouette_shader |
◆ SILHOUETTE_VERTEX_SHADER
3d_viewer_py3.PyAssimp3DViewer.SILHOUETTE_VERTEX_SHADER |
◆ view_matrix
3d_viewer_py3.PyAssimp3DViewer.view_matrix |
3d_viewer_py3.PyAssimp3DViewer.w |
The documentation for this class was generated from the following file: