def add_skeleton_3d_to_axes(ax: Axes3D, skeleton_3d: np.ndarray, size: float=2, min_score: float=0.3):
    xs = skeleton_3d[:, 0]
    ys = skeleton_3d[:, 2]
    zs = skeleton_3d[:, 1]
    colors = []
    for (idx, joint) in enumerate(skeleton_3d):
        if (joint[3] < min_score):
            colors.append([0, 0, 0, 0])
        else:
            colors.append(SKELETON_PEDREC_JOINT_COLORS[idx].rgba_float_list)
    ax.scatter(xs, ys, zs, c=colors, s=size)
    for (idx, pair) in enumerate(SKELETON_PEDREC):
        if (skeleton_3d[(pair[0:2], 3)] >= min_score).all():
            ax.plot(skeleton_3d[(pair[0:2], 0)], skeleton_3d[(pair[0:2], 2)], skeleton_3d[(pair[0:2], 1)], linewidth=size, c=SKELETON_PEDREC_LIMB_COLORS[idx].rgba_float_list)
def add_skeleton_3d_to_axes(ax: Axes3D, skeleton_3d: np.ndarray, size: float=2, min_score: float=0.3):
    xs = skeleton_3d[:, 0]
    ys = skeleton_3d[:, 2]
    zs = skeleton_3d[:, 1]
    colors = []
    for (idx, joint) in enumerate(skeleton_3d):
        if (joint[3] < min_score):
            colors.append([0, 0, 0, 0])
        else:
            colors.append(SKELETON_PEDREC_JOINT_COLORS[idx].rgba_float_list)
    ax.scatter(xs, ys, zs, c=colors, s=size)
    for (idx, pair) in enumerate(SKELETON_PEDREC):
        if (skeleton_3d[(pair[0:2], 3)] >= min_score).all():
            ax.plot(skeleton_3d[(pair[0:2], 0)], skeleton_3d[(pair[0:2], 2)], skeleton_3d[(pair[0:2], 1)], linewidth=size, c=SKELETON_PEDREC_LIMB_COLORS[idx].rgba_float_list)