Example #1
0
def writeOutTriangulation(tri, filebase="mesh", nbase=0, verbose=0):
    """
    collect necessary steps to write out files for triangle data structures

    """
    failed = False
    if tri == None:
        failed = True
        return failed
    if not nbase in [0, 1]:
        print 'must have vertex base numbering = 0 or 1, got nbase= ', nbase
        failed = True
        return failed
    #end

    nodes = triangulate.getPoints(tri)
    patts = triangulate.getPointAttributes(tri)
    pmarks = triangulate.getPointMarkers(tri)
    if verbose > 0:
        print 'writing node file'
    printNodeFile(nodes, filebase, patts, pmarks, nbase=nbase)

    elems = triangulate.getTriangles(tri)
    eatts = triangulate.getTriangleAttributes(tri)
    if verbose > 0:
        print 'writing elements file'
    printElemFile(elems, filebase, eatts, nbase=nbase)

    segms = triangulate.getSegments(tri)
    segmmks = triangulate.getSegmentMarkers(tri)
    holes = triangulate.getHoles(tri)
    regions = triangulate.getRegions(tri)
    if verbose > 0:
        print 'writing poly file'
    printPolyFile(nodes,
                  segms,
                  filebase,
                  patts,
                  pmarks,
                  segmmks,
                  holes,
                  regions,
                  nbase=nbase)

    edges = triangulate.getEdges(tri)
    edgemks = triangulate.getEdgeMarkers(tri)
    if verbose > 0:
        print 'writing edges file'
    printEdgeFile(edges, filebase, edgemks, nbase=nbase)

    neigs = triangulate.getNeighbors(tri)
    if verbose > 0:
        print 'writing neighbors file'
    printNeighborFile(neigs, filebase, nbase=nbase)

    return failed
Example #2
0
def writeOutTriangulation(tri,filebase="mesh",nbase=0,verbose=0):
    """
    collect necessary steps to write out files for triangle data structures

    """
    failed = False
    if tri == None:
        failed = True
        return failed
    if not nbase in [0,1]:
        print 'must have vertex base numbering = 0 or 1, got nbase= ',nbase
        failed = True
        return failed
    #end

    nodes = triangulate.getPoints(tri)
    patts = triangulate.getPointAttributes(tri)
    pmarks= triangulate.getPointMarkers(tri)
    if verbose > 0:
        print 'writing node file'
    printNodeFile(nodes,filebase,patts,pmarks,nbase=nbase)

    elems = triangulate.getTriangles(tri)
    eatts = triangulate.getTriangleAttributes(tri)
    if verbose > 0:
        print 'writing elements file'
    printElemFile(elems,filebase,eatts,nbase=nbase)

    segms  = triangulate.getSegments(tri)
    segmmks= triangulate.getSegmentMarkers(tri)
    holes  = triangulate.getHoles(tri)
    regions= triangulate.getRegions(tri)
    if verbose > 0:
        print 'writing poly file'
    printPolyFile(nodes,segms,filebase,patts,pmarks,
                  segmmks,holes,regions,nbase=nbase)

    edges  = triangulate.getEdges(tri)
    edgemks= triangulate.getEdgeMarkers(tri)
    if verbose > 0:
        print 'writing edges file'
    printEdgeFile(edges,filebase,edgemks,nbase=nbase)

    neigs  = triangulate.getNeighbors(tri)
    if verbose > 0:
        print 'writing neighbors file'
    printNeighborFile(neigs,filebase,nbase=nbase)

    return failed
Example #3
0
ntatts = 2
nelem  = elems1.shape[0]
tatts = Numeric.zeros((nelem,ntatts),Numeric.Float)
for i in range(nelem):
    tatts[i,:] = Numeric.ones(ntatts,)*float(i)
#end i
print 'try to set triangle attributes \n',tatts
triangulate.setTriangleAttributes(trin,tatts)

carea = Numeric.ones((nelem,),Numeric.Float)
print 'try to set triangle area constraints \n',carea
triangulate.setTriangleAreas(trin,carea)

#this should be empty before calling triangulate
neigs0 = triangulate.getNeighbors(trin)
print 'neigs= ',neigs0
#this should be empty before calling triangulate
neigs1 = triangulate.getNeighborsCopy(trin)
print 'neigsCopy= ',neigs1

vornorms= triangulate.getVoronoiNormals(trin)
print 'vornorms= ',vornorms

#get basic info about triangulation
info =triangulate.getInfo(trin)
sinfo = """triangulation:
number of points        = %d
attributes per point    = %d
number of triangles     = %d
nodes per triangle      = %d
Example #4
0
ntatts = 2
nelem = elems1.shape[0]
tatts = Numeric.zeros((nelem, ntatts), Numeric.Float)
for i in range(nelem):
    tatts[i, :] = Numeric.ones(ntatts, ) * float(i)
#end i
print 'try to set triangle attributes \n', tatts
triangulate.setTriangleAttributes(trin, tatts)

carea = Numeric.ones((nelem, ), Numeric.Float)
print 'try to set triangle area constraints \n', carea
triangulate.setTriangleAreas(trin, carea)

#this should be empty before calling triangulate
neigs0 = triangulate.getNeighbors(trin)
print 'neigs= ', neigs0
#this should be empty before calling triangulate
neigs1 = triangulate.getNeighborsCopy(trin)
print 'neigsCopy= ', neigs1

vornorms = triangulate.getVoronoiNormals(trin)
print 'vornorms= ', vornorms

#get basic info about triangulation
info = triangulate.getInfo(trin)
sinfo = """triangulation:
number of points        = %d
attributes per point    = %d
number of triangles     = %d
nodes per triangle      = %d