Beispiel #1
0
def test_visit():
    import visit

    VISIT_ARGS = os.environ.get('VISIT_ARGS', ["-nosplash"])
    if isinstance(VISIT_ARGS, str):
        VISIT_ARGS = VISIT_ARGS.split()
    for arg in VISIT_ARGS:
        visit.AddArgument(arg)
    visit.Launch()

    print "visit is installed in", os.path.dirname(visit.__file__)
    print "visit version", visit.Version()

    visit.ResetView()
    v3D = visit.GetView3D()
    v3D.SetViewUp(0, 0, 1)
    v3D.SetViewNormal(-0.5, -0.8, 0.4)
    v3D.SetImageZoom(1.0)
    visit.SetView3D(v3D)

    aa = visit.AnnotationAttributes()
    aa.SetAxesType(2)  # outside edges
    aa.SetDatabaseInfoFlag(False)
    aa.SetUserInfoFlag(False)
    visit.SetAnnotationAttributes(aa)

    t = visit.CreateAnnotationObject("Text2D")
    t.SetText("Hello VisIt!")
    t.SetPosition(0.4, 0.9)  # (0,0) is lower left corner
    t.SetFontFamily(0)  # 0: Arial, 1: Courier, 2: Times
    t.SetWidth(0.25)  # 25%
    t.SetTextColor((0, 0, 0))
    t.SetUseForegroundForTextColor(False)
    t.SetVisible(True)

    visit.OpenDatabase("tmp_.vtk")

    visit.AddPlot("Mesh", "scalars")
    ma = visit.MeshAttributes()
    visit.SetPlotOptions(ma)
    visit.AddPlot("Pseudocolor", "scalars")
    pa = visit.PseudocolorAttributes()
    visit.SetPlotOptions(pa)

    visit.RedrawWindow()
    visit.DrawPlots()

    wait()
Beispiel #2
0
from common import *
from scitools.globaldata import DEBUG, VERBOSE
from scitools.misc import check_if_module_exists

import os
import tempfile

VISIT_ARGS = os.environ.get('VISIT_ARGS', ["-nosplash"])
if isinstance(VISIT_ARGS, str):
    VISIT_ARGS = VISIT_ARGS.split()

check_if_module_exists('visit', msg='You need to install the VisIt package. Also make sure the visit Python module is in the PYTHONPATH environment variable.', abort=False)
import visit
for arg in VISIT_ARGS:
    visit.AddArgument(arg)
visit.Launch()


class VisitBackend(BaseClass):
    def __init__(self):
        BaseClass.__init__(self)
        self._init()

    def _init(self, *args, **kwargs):
        """Perform initialization that is special for this backend."""

        self.figure(self.getp('curfig'))
        self._g.IconifyAllWindows()

        # conversion tables for format strings:
Beispiel #3
0
def queryAndPlot():
    SOS = SSOS()

    print "Initializing SOS..."
    SOS.init()
    print "DONE init SOS..."
    sql_string = """
    SELECT MAX(frame) FROM viewCombined WHERE viewCombined.value_name LIKE "lulesh.time"
    ;
    """
    results, col_names = SOS.query(sql_string, "localhost",
                                   os.environ.get("SOS_CMD_PORT"))

    max_cycle = int(results[0][0])
    print "Max cycle: " + str(max_cycle)

    #####
    #
    #  Get the list of field names for non-string values.
    #
    sql_string = """
    SELECT
    DISTINCT value_name
    FROM viewCombined
    WHERE value_type != 3
    AND frame = """ + str(max_cycle) + """
    ;
    """
    results, col_names = SOS.query(sql_string, "localhost",
                                   os.environ.get("SOS_CMD_PORT"))
    numeric_fields = dict()
    numeric_fields['name'] = [el[0] for el in results]
    name_count = len(numeric_fields['name'])
    print str(name_count) + " unique names."
    #
    #####

    filenames = []
    for c in range(0, (max_cycle + 1)):
        print "******* CYCLE " + str(c) + " *********"
        #####
        #
        #  Compose a query with the unique numeric fields as columns:
        #
        sql_string = """ """
        sql_string += """ SELECT """
        sql_string += """ comm_rank """
        # sql_string += """,frame """
        for field_name in numeric_fields['name']:
            sql_string += """,GROUP_CONCAT( CASE WHEN """
            sql_string += ' value_name LIKE "' + field_name + '" '
            sql_string += ' THEN value END) AS "' + field_name + '" '
        sql_string += """, GROUP_CONCAT( CASE WHEN """
        sql_string += ' value_name LIKE "lulesh.coords" '
        sql_string += ' THEN value END) AS "lulesh.coords" '
        sql_string += """ FROM viewCombined """
        sql_string += " WHERE frame = " + str(c) + " "
        sql_string += """ GROUP BY """
        sql_string += """ comm_rank """
        # sql_string += """,frame """
        sql_string += """;"""
        #print "Composite SQL statement: "
        #print sql_string
        #print ""
        #print "Running composite query..."
        results, col_names = SOS.query(sql_string, "localhost",
                                       os.environ.get("SOS_CMD_PORT"))
        #print ""
        #
        #  Print out the results:
        #
        #print "=========="
        #for col in col_names:
        #    print str(col) + " "
        #print "=========="
        #for row in results:
        #    for col_index in range(len(row)):
        #        print str(col_names[col_index]) + ": " + str(row[col_index])
        #    print "----------"
        #print "=========="
        #
        #####

        #####
        #
        #  Build an attribute dictionary of the values.
        #
        attr = dict()
        attr['comm_rank'] = [el[0] for el in results]

        position = 1
        for field_name in numeric_fields['name']:
            attr[field_name] = [el[position] for el in results]
            #print str(field_name) + " in position " + str(position) + " = " + str(attr[field_name])
            position += 1
        res_coords = [el[position] for el in results]
        #print "lulesh.coords in position " + str(position) + " = " + str(res_coords)

        for field_name in numeric_fields['name']:
            rank = 0
            for this_ranks_value in attr[field_name]:
                print "comm_rank(" + str(
                    rank) + ")." + field_name + " = " + this_ranks_value
                rank += 1

        rank_max = len(attr['comm_rank'])
        coords = list()
        coords = [el.split() for el in res_coords]
        #print attr
        dset = vtk_writer.vtk_hex_data_set()
        dset.clear()
        dset.set_cycle(c)
        for rank in range(rank_max):
            fields = {}
            for field_name in numeric_fields['name']:
                fields[field_name] = attr[field_name][rank]
            fields["rank"] = rank
            hex_coords = [None] * 24
            xpt = [None] * 8
            ypt = [None] * 8
            zpt = [None] * 8
            cpt = [None] * 8
            for i in range(24):
                hex_coords[i] = float(coords[rank][i])
            dset.add_hex(hex_coords, fields, rank)
        dset.write_vtk_file()
        filenames.append(dset.get_file_name())

    vtk_writer.write_visit_file(filenames)

    visit.AddArgument("-par")
    visit.Launch()
    OpenDatabase("dataset.visit")
    AddPlot("Pseudocolor", "rank")
    AddPlot("Mesh", "mesh")
    DrawPlots()
    # loop through times
    tsNames = GetWindowInformation().timeSliders
    for ts in tsNames:
        SetActiveTimeSlider(ts)
    for state in list(range(TimeSliderGetNStates()))[::10] + [0]:
        SetTimeSliderState(state)
    print "Setting share_power permissions on the newly created VTK files..."
    subprocess.call("$PROJECT_BASE/share_power .", shell=True)
    print ""
    print "Sleeping for 100 seconds..."
    print ""
    time.sleep(100)

    SOS.finalize()
    print "   ...DONE!"
    print
Beispiel #4
0
# from visit that is Not in system_funcs, must have come from visit
#
# We need to take this tricky road to circumvent bug #457: import visit doesn't load
# the Eval* functions in the visit-namespace

###
### SET UP SCRIPT SO IT CAN RUN ON YOUR MACHINE.  THIS WILL CHANGE FROM PLATFORM TO PLATFORM
### AND RELEASE TO RELEASE
###
sys.path.insert(
    0, "/scratch/brugger1/kickit/visit/2.10.0/linux-x86_64/lib/site-packages")

#from visit import *
import visit

visit.AddArgument("-nowin")
visit.AddArgument("-noconfig")
# next Launch() VisIt in order to extract other functions:
visit.Launch()
print >> sys.stderr, "**\n**  Running VisIt", visit.Version(), "\n**"

for func in dir(visit):
    # Deprecated
    if (func == "ConstructDDFAttributes"):
        continue
    if (func == "ConstructDDF"):
        continue
    if (func == "string"):
        continue
    if (func == "sys"):
        continue
Beispiel #5
0
#!/usr/bin/python2.6

#from filter_mover import *
import visit
from filter_mover import *

export_images = True

runningSelf = True
if sys.argv[0][-3:] == 'cli' or sys.argv[0] == '-':
    runningSelf = False
#

if runningSelf:
    if export_images:
        visit.AddArgument('-nowin')
    #
    visit.Launch()
#

print "**\n** filtermovie.py: running VisIt", visit.Version(), "\n**"
visit.OpenDatabase("2d_filter.visit")

visit.AddPlot("Pseudocolor", "filtered_image")
pa = visit.PseudocolorAttributes()
pa.centering = pa.Nodal
pa.minFlag = True
pa.min = -0.7
pa.maxFlag = True
pa.max = 0.7
visit.SetPlotOptions(pa)