Classes | Functions | Variables

Package iworld2d
[Client Modules]

客户端--2D渲染模块 More...

Classes

class  canvas2d
 iworld2d模块——2D画布类. More...
class  canvas_ui
 iworld2d模块——2D UI画布类. More...
class  canvas_mgr
 iworld2d模块——2D画布管理. More...
class  obj2d
 iworld2d模块——2D对象基类 More...
class  empty2d
 iworld2d模块——空对象类,可以用作容器. More...
class  image2d
 iworld2d模块——图片类. More...
class  debug_rectangle
 iworld2d模块——2D绘图类矩形 建议此类只用于调试 More...
class  debug_circle
 iworld2d模块——2D绘图类圆形 建议此类只用于调试 More...
class  debug_grid
 iworld2d模块——2D绘图类格子 建议此类只用于调试 More...
class  sprite2d
 iworld2d模块——精灵类 按一定间隔切换图片,用于序列图的播放 More...
class  particle2d
 iworld2d模块——粒子类 More...
class  model2d
 iworld2d模块——2D模型类 More...

Functions

def init
def destroy
def pick
def pick_lst
def select_with_rect
def select_with_segment
def camera_to_world2d
def camera_to_worldpos
def world2d_to_camera
def camera_world_scale
def camera_world_pos
 把镜头移动到某一个世界坐标
其中镜头原点(即左上角)相当于(pos_x, pos_y),如果进行过camera_world_scale,则会对不准左上角,可以使用camera_world_pos_center
def camera_world_pos_center
 把镜头中心移动到(pos_x, pos_y)
def create_empty_image2d
 创建一个空的image2d

Variables

 OBJ_INHERIT_NONE = world2d.OBJ_INHERIT_NONE
 继承类型 :不继承.
 OBJ_INHERIT_POS = world2d.OBJ_INHERIT_POS
 继承类型 :继承位移.
 OBJ_INHERIT_ROT = world2d.OBJ_INHERIT_ROT
 继承类型 :继承旋转.
 OBJ_INHERIT_SCALE = world2d.OBJ_INHERIT_SCALE
 继承类型 :继承大小.
 OBJ_INHERIT_VISIBLE = world2d.OBJ_INHERIT_VISIBLE
 继承类型 :继承可见性.
 OBJ_INHERIT_COLOR = world2d.OBJ_INHERIT_COLOR
 继承类型 :继承颜色.

Detailed Description

客户端--2D渲染模块


Function Documentation

def iworld2d.init (   layer = 3 )
初始化2D场景

初始化包含背景层次的创建、缩放比例调整为1、屏幕原点对齐2D场景原点(左上角)
参数:
        layer	:int	场景一共需要分的背景层次数,序号越大,表明越靠前。范围在[1,100],数量越多越影响效率
def iworld2d.destroy (  )
销毁场景
def iworld2d.pick (   x,
  y,
  enable_hit_alpha = False,
  flag = 0xFFFFFFFF 
)
屏幕一点与场景中有名字的2D对象做碰撞检测,如果屏幕同一点叠有多个对象,会得到与相机最近的对象。
如果2D对象需要做碰撞检测,还需要先obj2d.set_pick()

参数:
        x	: int	屏幕坐标x
        y	: int	屏幕坐标y
        enable_hit_alpha	: bool 是否做hit_by_alpha检测,如果为True,image2d/sprite2d也必须先运行create_alpha_map接口
        flag	: int	筛选用的flag, 只有(flag & 物体flag !=0), 才进行pick, 默认值是0xFFFFFFFF
返回值:
        obj2d的类
        如果没碰撞,则返回None
def iworld2d.pick_lst (   x,
  y,
  enable_hit_alpha = False,
  flag = 0xFFFFFFFF 
)
屏幕一点与场景中有名字的2D对象做碰撞检测,如果屏幕同一点叠有多个对象,则返回整个对象的列表。
如果2D对象需要做碰撞检测,还需要先obj2d.set_pick()

参数:
        x	: int	屏幕坐标x
        y	: int	屏幕坐标y
        enable_hit_alpha	: bool 是否做hit_by_alpha检测,如果为True,image2d/sprite2d也必须先运行create_alpha_map接口
        flag	: int	筛选用的flag, 只有(flag & 物体flag !=0), 才进行pick, 默认值是0xFFFFFFFF
返回值:
        obj2d的列表
        如果没碰撞,则返回空list
def iworld2d.select_with_rect (   full_in,
  left,
  top,
  right,
  bottom,
  flag = 0xFFFFFFFF 
)
返回在rc里的所有object


参数:
        full_in	: bool	是否整个都在区域中
        left/top/right/bottom	: float	矩形选区范围(世界坐标)
        flag	: int	筛选用的flag, 只有(flag & 物体flag !=0), 才进行pick, 默认值是0xFFFFFFFF
返回值:
        obj2d的列表,顺序随机
        如果没物体,则返回空list
def iworld2d.select_with_segment (   sx,
  sy,
  tx,
  ty,
  flag = 0xFFFFFFFF 
)
返回线段经过的所有object


参数:
        sx/sy	: float	线段起点坐标
        tx/ty	: float	线段终点坐标
        flag	: int	筛选用的flag, 只有(flag & 物体flag !=0), 才进行pick, 默认值是0xFFFFFFFF
返回值:
        obj2d的列表,顺序随机
        如果没物体,则返回空list
def iworld2d.camera_to_world2d (   x,
  y 
)
屏幕相机坐标到2D世界坐标变换

参数:
        x	: int	屏幕坐标x
        y	: int	屏幕坐标y
返回值:
        math3d.vector2	世界坐标
def iworld2d.camera_to_worldpos (   x,
  y 
)
屏幕相机坐标到2D世界坐标变换

参数:
        x	: int	屏幕坐标x
        y	: int	屏幕坐标y
返回值:
        (float, float)	:	世界坐标
def iworld2d.world2d_to_camera (   x,
  y 
)
2D世界坐标到屏幕相机坐标变换

参数:
        x	: float	世界坐标x
        y	: float	世界坐标y
返回值:
        (float, float)	:	屏幕坐标
def iworld2d.camera_world_scale (   scale = 1,
  delta = None 
)
镜头和世界坐标的比例

参数:
        scale	: float	1代表屏幕1个像素的显示区域,和2D场景的单位1一致; 允许None
        delta	: float	scale的改变量,允许None
def iworld2d.camera_world_pos (   pos_x = 0,
  pos_y = 0 
)

把镜头移动到某一个世界坐标
其中镜头原点(即左上角)相当于(pos_x, pos_y),如果进行过camera_world_scale,则会对不准左上角,可以使用camera_world_pos_center

Parameters:
floatpos_x x轴坐标
floatpos_y y轴坐标
def iworld2d.camera_world_pos_center (   pos_x = 0,
  pos_y = 0 
)

把镜头中心移动到(pos_x, pos_y)

Parameters:
floatpos_x x轴坐标
floatpos_y y轴坐标
def iworld2d.create_empty_image2d (   width,
  height,
  name = "",
  layer_id = None,
  ui_id = None 
)

创建一个空的image2d

Parameters:
width: 生成对象的宽度
height: 生成对象的高度
name:str 生成出来的模型对象名,如果为""代表由引擎指定名字,注意名字必须唯一
layer_id:int None代表用默认的层(中间层)
ui_id:int canvas_ui的标识,默认为None,None表示不属于canvas_ui
Return values:
:iworld2d.image2d 图片对象,失败返回None

Variable Documentation

OBJ_INHERIT_NONE = world2d.OBJ_INHERIT_NONE

继承类型 :不继承.

OBJ_INHERIT_POS = world2d.OBJ_INHERIT_POS

继承类型 :继承位移.

OBJ_INHERIT_ROT = world2d.OBJ_INHERIT_ROT

继承类型 :继承旋转.

OBJ_INHERIT_SCALE = world2d.OBJ_INHERIT_SCALE

继承类型 :继承大小.

OBJ_INHERIT_VISIBLE = world2d.OBJ_INHERIT_VISIBLE

继承类型 :继承可见性.

OBJ_INHERIT_COLOR = world2d.OBJ_INHERIT_COLOR

继承类型 :继承颜色.

 All Classes Namespaces Functions Variables Properties