efl/src/lib/evas/canvas/evas_canvas3d_scene.eo

154 lines
5.4 KiB
Plaintext

class Evas.Canvas3D.Scene (Evas.Canvas3D.Object, Evas.Common_Interface)
{
legacy_prefix: null;
data: Evas_Canvas3D_Scene_Data;
methods {
size_set {
[[Set the resolution of a scene.
A scene should be rendered to be displayed through an image
objects. The resolution defines size of the internal surface
holding the rendered result.
]]
params {
@in w: int; [[Width of the resolution.]]
@in h: int; [[Height of the resolution.]]
}
}
size_get @const {
[[Get the internal resolution of a scene.]]
params {
@out w: int; [[Pointer to receive width of the resolution.]]
@out h: int; [[Pointer to receive height of the resolution.]]
}
}
background_color_set {
[[Set the background color of a scene.
Background color defines initial color of pixels before a scene
is rendered. If you want to display a scene with background evas
objects are still remaining as if it was the background, set
the alpha term to 0.0.
Default background color is (0.0, 0.0, 0.0, 0.0).
]]
params {
@in r: Evas_Real; [[Red component of the background color.]]
@in g: Evas_Real; [[Green component of the background color.]]
@in b: Evas_Real; [[Blue component of the background color.]]
@in a: Evas_Real; [[Alpha component of the background color.]]
}
}
background_color_get @const {
[[Get the background color of a scene.]]
params {
@out r: Evas_Real; [[Pointer to receive red component of the background color.]]
@out g: Evas_Real; [[Pointer to receive green component of the background color.]]
@out b: Evas_Real; [[Pointer to receive blue component of the background color.]]
@out a: Evas_Real; [[Pointer to receive alpha component of the background color.]]
}
}
pick @const {
[[Get information on the most front visible mesh for the given
position.
(x, y) is the screen coordinate of the given scene. That is,
left-top is (0, 0) and right-bottom is (w, h) where (w, h) is
the size of the scene. The texture coordinate is useful when
using proxy texture source.
]]
return: bool;
params {
@in x: Evas_Real; [[X coordinate of the picking position.]]
@in y: Evas_Real; [[Y coordinate of the picking position.]]
@out node: Evas.Canvas3D.Node *; [[Pointer to receive the node contains the picked mesh.]]
@out mesh: Evas.Canvas3D.Mesh *; [[Pointer to receive the picked mesh.]]
@out s: Evas_Real; [[Pointer to receive the texture "s" coordinate.]]
@out t: Evas_Real; [[Pointer to receive the texture "t" coordinate.]]
}
}
exist @const {
[[Search given node in the given position.]]
return: Evas.Canvas3D.Node *;
params {
@in x: Evas_Real; [[X coordinate of the picking position.]]
@in y: Evas_Real; [[Y coordinate of the picking position.]]
@in node: Evas.Canvas3D.Node *; [[Node for search.]]
}
}
pick_member_list_get @const {
[[Get list of the all root members from scene in the given position.]]
return: list<Evas.Canvas3D.Node *> *;
params {
@in x: Evas_Real; [[X coordinate of the picking position.]]
@in y: Evas_Real; [[Y coordinate of the picking position.]]
}
}
shadows_enable_set {
[[Enable or disable shadows on given scene
If shadows_enabled is $true, the objects in the scene can throw
shadow to another objects located behind them. The depth map used
for shading. Directed and projective light sources are supported.
]]
params {
@in shadows_enabled: bool; [[Shadows enabled status.]]
}
}
shadows_enable_get @const {
[[Get shadows enabled status for given scene.]]
return: bool; [[The shadows enabled status.]]
}
color_pick_enable_get @const {
[[Get status of color picking of the scene.]]
return: bool;
}
color_pick_enable_set {
[[Set posibility color picking.]]
return: bool;
params {
@in color_pick: bool; [[Posibility flag]]
}
}
@property root_node {
set {
[[Set the root node of a scene.]]
}
get {
[[Get the root node of a scene.]]
}
values {
node: Evas.Canvas3D.Node *; [[A node which will be used as a
root node for the scene.]]
}
}
@property camera_node {
set {
[[Set the camera node of a scene.]]
}
get {
[[Get the camera node of a scene.]]
}
values {
node: Evas.Canvas3D.Node *; [[A node which will be used as a
camera node for the scene.]]
}
}
}
implements {
Eo.Base.constructor;
Evas.Canvas3D.Object.update_notify;
Evas.Canvas3D.Object.change_notify;
}
}