コード例 #1
0
ファイル: collector.py プロジェクト: hanshuogang/Learnbgame
def collect_trigger_line_data(loc0_obj, loc0_conns_count, loc1_obj,
                              loc1_conns_count):
    """Recompute map line data, colors and return it in final format prepared for drawing

    :param loc0_obj: out locator object
    :type loc0_obj: bpy.types.Object
    :param loc1_obj: in locator object
    :type loc1_obj: bpy.types.Object
    :return:
    :rtype: {"line_color0": tuple,
             "line_color1": tuple,
             "loc_0": tuple,
             "loc_btw": tuple,
             "loc_1": tuple}
    """

    line_data = {}

    if loc0_conns_count < 2:
        line_data['line_color0'] = (0.6, 0, 0)

    if loc1_conns_count < 2:
        line_data['line_color1'] = (0.6, 0, 0)

    tp_0_loc = loc0_obj.matrix_world.translation
    tp_1_loc = loc1_obj.matrix_world.translation
    line_data['loc_0'] = (tp_0_loc.x, tp_0_loc.y, tp_0_loc.z)
    line_data['loc_btw'] = _math_utils.middle_point(tp_0_loc, tp_1_loc)
    line_data['loc_1'] = (tp_1_loc.x, tp_1_loc.y, tp_1_loc.z)

    return line_data
コード例 #2
0
ファイル: collector.py プロジェクト: P-casper1/BlenderTools
def collect_trigger_line_data(loc0_obj, loc0_conns_count, loc1_obj, loc1_conns_count):
    """Recompute map line data, colors and return it in final format prepared for drawing

    :param loc0_obj: out locator object
    :type loc0_obj: bpy.types.Object
    :param loc1_obj: in locator object
    :type loc1_obj: bpy.types.Object
    :return:
    :rtype: {"line_color0": tuple,
             "line_color1": tuple,
             "loc_0": tuple,
             "loc_btw": tuple,
             "loc_1": tuple}
    """

    line_data = {}

    if loc0_conns_count < 2:
        line_data['line_color0'] = (0.6, 0, 0)

    if loc1_conns_count < 2:
        line_data['line_color1'] = (0.6, 0, 0)

    tp_0_loc = loc0_obj.matrix_world.translation
    tp_1_loc = loc1_obj.matrix_world.translation
    line_data['loc_0'] = (tp_0_loc.x, tp_0_loc.y, tp_0_loc.z)
    line_data['loc_btw'] = _math_utils.middle_point(tp_0_loc, tp_1_loc)
    line_data['loc_1'] = (tp_1_loc.x, tp_1_loc.y, tp_1_loc.z)

    return line_data
コード例 #3
0
ファイル: collector.py プロジェクト: hanshuogang/Learnbgame
def collect_map_line_data(loc0_obj, loc1_obj):
    """Recompute map line data, colors and return it in final format prepared for drawing

    :param loc0_obj: out locator object
    :type loc0_obj: bpy.types.Object
    :param loc1_obj: in locator object
    :type loc1_obj: bpy.types.Object
    :return:
    :rtype: {"line_color0": tuple,
             "line_color1": tuple,
             "loc_0": tuple,
             "loc_btw": tuple,
             "loc_1": tuple}
    """

    line_data = {}

    if loc0_obj.scs_props.locator_prefab_mp_road_size == str(
            _PL_consts.MPVF.ROAD_SIZE_MANUAL):

        if loc0_obj.scs_props.locator_prefab_mp_custom_color == str(
                _PL_consts.MPVF.CUSTOM_COLOR1):
            line_data['line_color0'] = (0.9, 0.9, 0.9)
        elif loc0_obj.scs_props.locator_prefab_mp_custom_color == str(
                _PL_consts.MPVF.CUSTOM_COLOR2):
            line_data['line_color0'] = (0.1, 0.1, 0.1)
        elif loc0_obj.scs_props.locator_prefab_mp_custom_color == str(
                _PL_consts.MPVF.CUSTOM_COLOR3):
            line_data['line_color0'] = (0, 0.4, 0)

    if loc0_obj.scs_props.locator_prefab_mp_prefab_exit:
        line_data['line_color0'] = (0.6, 0, 0)

    if loc1_obj.scs_props.locator_prefab_mp_road_size == str(
            _PL_consts.MPVF.ROAD_SIZE_MANUAL):

        if loc1_obj.scs_props.locator_prefab_mp_custom_color == str(
                _PL_consts.MPVF.CUSTOM_COLOR1):
            line_data['line_color1'] = (0.9, 0.9, 0.9)
        elif loc1_obj.scs_props.locator_prefab_mp_custom_color == str(
                _PL_consts.MPVF.CUSTOM_COLOR2):
            line_data['line_color1'] = (0.1, 0.1, 0.1)
        elif loc1_obj.scs_props.locator_prefab_mp_custom_color == str(
                _PL_consts.MPVF.CUSTOM_COLOR3):
            line_data['line_color1'] = (0, 0.4, 0)

    if loc1_obj.scs_props.locator_prefab_mp_prefab_exit:
        line_data['line_color1'] = (0.6, 0, 0)

    map_point_0_loc = loc0_obj.matrix_world.translation
    map_point_1_loc = loc1_obj.matrix_world.translation
    line_data['loc_0'] = (map_point_0_loc.x, map_point_0_loc.y,
                          map_point_0_loc.z)
    line_data['loc_btw'] = _math_utils.middle_point(map_point_0_loc,
                                                    map_point_1_loc)
    line_data['loc_1'] = (map_point_1_loc.x, map_point_1_loc.y,
                          map_point_1_loc.z)

    return line_data
コード例 #4
0
ファイル: collector.py プロジェクト: miranbox/BlenderTools
def collect_map_line_data(loc0_obj, loc1_obj):
    """Recompute map line data, colors and return it in final format prepared for drawing

    :param loc0_obj: out locator object
    :type loc0_obj: bpy.types.Object
    :param loc1_obj: in locator object
    :type loc1_obj: bpy.types.Object
    :return:
    :rtype: {"line_color0": tuple,
             "line_color1": tuple,
             "loc_0": tuple,
             "loc_btw": tuple,
             "loc_1": tuple}
    """

    line_data = {}

    if loc0_obj.scs_props.locator_prefab_mp_road_size == str(_PL_consts.MPVF.ROAD_SIZE_MANUAL):

        if loc0_obj.scs_props.locator_prefab_mp_custom_color == str(_PL_consts.MPVF.CUSTOM_COLOR1):
            line_data['line_color0'] = (0.9, 0.9, 0.9)
        elif loc0_obj.scs_props.locator_prefab_mp_custom_color == str(_PL_consts.MPVF.CUSTOM_COLOR2):
            line_data['line_color0'] = (0.1, 0.1, 0.1)
        elif loc0_obj.scs_props.locator_prefab_mp_custom_color == str(_PL_consts.MPVF.CUSTOM_COLOR3):
            line_data['line_color0'] = (0, 0.4, 0)

    if loc0_obj.scs_props.locator_prefab_mp_prefab_exit:
        line_data['line_color0'] = (0.6, 0, 0)

    if loc1_obj.scs_props.locator_prefab_mp_road_size == str(_PL_consts.MPVF.ROAD_SIZE_MANUAL):

        if loc1_obj.scs_props.locator_prefab_mp_custom_color == str(_PL_consts.MPVF.CUSTOM_COLOR1):
            line_data['line_color1'] = (0.9, 0.9, 0.9)
        elif loc1_obj.scs_props.locator_prefab_mp_custom_color == str(_PL_consts.MPVF.CUSTOM_COLOR2):
            line_data['line_color1'] = (0.1, 0.1, 0.1)
        elif loc1_obj.scs_props.locator_prefab_mp_custom_color == str(_PL_consts.MPVF.CUSTOM_COLOR3):
            line_data['line_color1'] = (0, 0.4, 0)

    if loc1_obj.scs_props.locator_prefab_mp_prefab_exit:
        line_data['line_color1'] = (0.6, 0, 0)

    map_point_0_loc = loc0_obj.matrix_world.translation
    map_point_1_loc = loc1_obj.matrix_world.translation
    line_data['loc_0'] = (map_point_0_loc.x, map_point_0_loc.y, map_point_0_loc.z)
    line_data['loc_btw'] = _math_utils.middle_point(map_point_0_loc, map_point_1_loc)
    line_data['loc_1'] = (map_point_1_loc.x, map_point_1_loc.y, map_point_1_loc.z)

    return line_data
コード例 #5
0
ファイル: collector.py プロジェクト: P-casper1/BlenderTools
def collect_map_line_data(loc0_obj, loc1_obj):
    """Recompute map line data, colors and return it in final format prepared for drawing

    :param loc0_obj: out locator object
    :type loc0_obj: bpy.types.Object
    :param loc1_obj: in locator object
    :type loc1_obj: bpy.types.Object
    :return:
    :rtype: {"line_color0": tuple,
             "line_color1": tuple,
             "loc_0": tuple,
             "loc_btw": tuple,
             "loc_1": tuple}
    """

    line_data = {}

    if loc0_obj.scs_props.locator_prefab_mp_custom_color == 'light':
        line_data['line_color0'] = (0.9, 0.9, 0.9)
    elif loc0_obj.scs_props.locator_prefab_mp_custom_color == 'dark':
        line_data['line_color0'] = (0.1, 0.1, 0.1)
    elif loc0_obj.scs_props.locator_prefab_mp_custom_color == 'green':
        line_data['line_color0'] = (0, 0.4, 0)

    if loc0_obj.scs_props.locator_prefab_mp_prefab_exit:
        line_data['line_color0'] = (0.6, 0, 0)

    if loc1_obj.scs_props.locator_prefab_mp_custom_color == 'light':
        line_data['line_color1'] = (0.9, 0.9, 0.9)
    elif loc1_obj.scs_props.locator_prefab_mp_custom_color == 'dark':
        line_data['line_color1'] = (0.1, 0.1, 0.1)
    elif loc1_obj.scs_props.locator_prefab_mp_custom_color == 'green':
        line_data['line_color1'] = (0, 0.4, 0)

    if loc1_obj.scs_props.locator_prefab_mp_prefab_exit:
        line_data['line_color1'] = (0.6, 0, 0)

    map_point_0_loc = loc0_obj.matrix_world.translation
    map_point_1_loc = loc1_obj.matrix_world.translation
    line_data['loc_0'] = (map_point_0_loc.x, map_point_0_loc.y, map_point_0_loc.z)
    line_data['loc_btw'] = _math_utils.middle_point(map_point_0_loc, map_point_1_loc)
    line_data['loc_1'] = (map_point_1_loc.x, map_point_1_loc.y, map_point_1_loc.z)

    return line_data