예제 #1
0
파일: bcgui.py 프로젝트: co-driver/cal3d
    def __doWrite(e):
        blendercal.ParseArgs(["""
            --blendercal=
            AUTHOR    = %s;
            PREPEND   = %s;
            XMLINDENT = %s;
            FLOATPRE  = %s;
            ANIMFPS   = %g;
            EXPORTGL  = %s;
            LOD       = %s;
            EXTRADATA = %s;
        """ % (
            EXPORTS[EV_AUTHOR],
            EXPORTS[EV_PREPEND],
            EXPORTS[EV_XMLINDENT],
            EXPORTS[EV_FLOATPRE],
            EXPORTS[EV_ANIMFPS],
            EXPORTS[EV_EXPORTGL],
            EXPORTS[EV_LOD],
            EXPORTS[EV_EXTRADATA]
        )])
    
        Blender.Window.FileSelector(CALLBACK, "Export Cal3D", "model.cfg")

        Blender.Draw.Exit()
예제 #2
0
# Our extremely simple export function; it has two entry points, one
# from the commandline and another from the GUI.
def Cal3DExport(filename):
    # Reset globals, in case the script is executed
    # multiple times from the gui
    blendercal.bcobject.Material.MATERIALS = {}
    blendercal.bcobject.Skeleton.ARMATURE = None
    blendercal.bcobject.Bone.BONES = {}

    skeldata = blendercal.bcdata.SkeletonData()
    meshdata = blendercal.bcdata.MeshData()
    animdata = blendercal.bcdata.AnimationData()
    blendercal.bcdata.ExportData(filename, skeldata, meshdata, animdata)


if __name__ == "__main__":
    # If the user wants to run in "batch" mode, assume that ParseArgs
    # will correctly set bcconf data and go.
    if blendercal.ParseArgs(sys.argv):
        Cal3DExport(blendercal.bcconf.FILENAME)

        Blender.Quit()

    # Otherwise, let the bccgui module take over.
    else:
        blendercal.bcgui.CALLBACK = Cal3DExport

        Blender.Draw.Register(blendercal.bcgui.InterfaceDraw,
                              blendercal.bcgui.InterfaceEvent,
                              blendercal.bcgui.InterfaceButton)