Exemplo n.º 1
0
def import_obj(path):
    Blender.Window.WaitCursor(1)
    name = path.split('\\')[-1].split('/')[-1]
    # parse the file

    m = MorphologyLoader.fromSWC(src=open(path), morphname="TestMorphlogy4")

    mf_mesh = MeshBuilderRings.build(morph=m)
    #MeshWriterPLY.write(mesh, '/tmp/testmesh.ply')

    mesh = Blender.NMesh.New(name) # create a new mesh
    for i in range(mf_mesh.nVertices):
      mesh.verts.append(Blender.NMesh.Vert(mf_mesh.vertices[i,0], mf_mesh.vertices[i,1],  mf_mesh.vertices[i,2]))

    for i in range(mf_mesh.nTriangles):
      faceVertList = [
          mesh.verts[mf_mesh.triangles[0]],
          mesh.verts[mf_mesh.triangles[1]],
          mesh.verts[mf_mesh.triangles[2]],
        ]
      newFace = Blender.NMesh.Face(faceVertList)
      mesh.addFace(newFace)


    ob = Blender.Object.New('Mesh', name)  # Mesh must be spelled just this--it is a specific type
    ob.link(mesh)  # tell the object to use the mesh we just made
    scn = Blender.Scene.GetCurrent()
    for o in scn.getChildren():
        o.sel = 0

    scn.link(ob)  # link the object to the current scene
    ob.sel = 1
    ob.Layers = scn.Layers
    Blender.Window.WaitCursor(0)
    Blender.Window.RedrawAll()
Exemplo n.º 2
0
def swc_to_ply(swc_path, ply_path=None):
    ply_path = ply_path or swc_path.replace('.swc', '.ply')
    #morphologies = MorphologyLoader.fromSWCSet(src=open(swc_path))
    SWCLoader.LoadSet(src=open(swc_path), morphname="UnknownSWC", regionNames=regionNames)

    meshes = [MeshBuilderRings.build(morph) for morph in morphologies]

    # Save the individual meshes:
    for i, mesh in enumerate(meshes):
        MeshWriterPLY.write(mesh, ply_path.replace('.ply', '_%d.ply' % i))

    # Save a set of meshes:
    combined_mesh = TriangleMesh.merge(meshes)
    MeshWriterPLY.write(combined_mesh, ply_path)
Exemplo n.º 3
0
def import_obj(path):
    Blender.Window.WaitCursor(1)
    name = path.split('\\')[-1].split('/')[-1]
    # parse the file

    m = MorphologyLoader.fromSWC(src=open(path), morphname="TestMorphlogy4")

    mf_mesh = MeshBuilderRings.build(morph=m)
    #MeshWriterPLY.write(mesh, '/tmp/testmesh.ply')

    mesh = Blender.NMesh.New(name)  # create a new mesh
    for i in range(mf_mesh.nVertices):
        mesh.verts.append(
            Blender.NMesh.Vert(mf_mesh.vertices[i, 0], mf_mesh.vertices[i, 1],
                               mf_mesh.vertices[i, 2]))

    for i in range(mf_mesh.nTriangles):
        faceVertList = [
            mesh.verts[mf_mesh.triangles[0]],
            mesh.verts[mf_mesh.triangles[1]],
            mesh.verts[mf_mesh.triangles[2]],
        ]
        newFace = Blender.NMesh.Face(faceVertList)
        mesh.addFace(newFace)

    ob = Blender.Object.New(
        'Mesh', name)  # Mesh must be spelled just this--it is a specific type
    ob.link(mesh)  # tell the object to use the mesh we just made
    scn = Blender.Scene.GetCurrent()
    for o in scn.getChildren():
        o.sel = 0

    scn.link(ob)  # link the object to the current scene
    ob.sel = 1
    ob.Layers = scn.Layers
    Blender.Window.WaitCursor(0)
    Blender.Window.RedrawAll()