예제 #1
0
파일: views.py 프로젝트: avaleske/SharkEyes
def home(request):
    #overlays_view_data = OverlayManager.get_next_few_days_of_tiled_overlays().exclude(definition_id=5)
    overlays_view_data = OverlayManager.get_next_few_days_of_tiled_overlays()
    #Wind overlay is different from the main overlay due to the time intervals
    #wind_overlays_view_data = overlays_view_data.filter(definition_id=5)

    datetimes = [ i.applies_at_datetime.astimezone(tz.tzlocal()).strftime('%D, %I %p') for i in overlays_view_data ]

    #winddatetimes = [ i.applies_at_datetime.astimezone(tz.tzlocal()).strftime('%D, %I %p') for i in wind_overlays_view_data ]


    # a complete hack! it just divides a list of all of the times for all the overlays by the number
    # of defs to get a singular list of overlay times

  #  num_defs = len(OverlayDefinition.objects.filter(is_base=True).exclude(display_name_short="Wind"))

   # num_wind_defs = len(OverlayDefinition.objects.filter(is_base=True).exclude(display_name_short="SST").exclude(display_name_short="Currents"))

    # Team 2 says: at this time we want SST (1), currents (3), and Wave (4) only. Modify this as
    # you add new models.
    num_defs = len(OverlayDefinition.objects.filter(is_base=True, id__in=[1,3,4]))


    list_of_times = datetimes[:len(datetimes)/num_defs]

    #list_of_wind_times = winddatetimes[:len(winddatetimes)/num_wind_defs]


    #context = {'overlays': overlays_view_data, 'defs': OverlayDefinition.objects.filter(is_base=True).exclude(id=4), 'times':list_of_times, 'windoverlays': wind_overlays_view_data, 'winddefs': OverlayDefinition.objects.filter(id=5), 'windtimes':list_of_wind_times}


    context = {'overlays': overlays_view_data, 'defs': OverlayDefinition.objects.filter(is_base=True, id__in=[1,3,4]), 'times':list_of_times }

    return render(request, 'index.html', context)
예제 #2
0
파일: views.py 프로젝트: seacast/SharkEyes
def home(request):
    #This determines which models are ran
    #1 = SST, 3 = Currents, 4 = Wave Height, 5 = Winds, 6 = Wave Direction
    #-------------------------------------------------------------------------
    models = [1,3,4,5,6]
    overlays_view_data = OverlayManager.get_next_few_days_of_tiled_overlays(models)
    datetimes = overlays_view_data.values_list('applies_at_datetime', flat=True).distinct().order_by('applies_at_datetime')
    context = {'overlays': overlays_view_data, 'defs': OverlayDefinition.objects.filter(is_base=True, id__in=models), 'times':datetimes }
    return render(request, 'index.html', context)
예제 #3
0
def home(request):
    #Models determines which models are displayed on the website. They will appear in the order provided by models[]. Change this order to change the order of the buttons and which buttons appear.
    # OSU_ROMS_SST = 1
    # OSU_ROMS_SUR_SAL = 2
    # OSU_ROMS_SUR_CUR = 3
    # OSU_WW3_HI = 4
    # NAMS_WIND = 5
    # OSU_WW3_DIR = 6
    # OSU_ROMS_BOT_SAL = 7
    # OSU_ROMS_BOT_TEMP = 8
    # OSU_ROMS_SSH = 9
    # NCEP_WW3_DIR = 10
    # NCEP_WW3_HI = 11
    # HYCOM_SST = 12 # RTOFS - Not Used - needs to be renamed
    # HYCOM_SUR_CUR = 13 # RTOFS - Not Used - needs to be renamed
    # OSU_ROMS_TCLINE = 14
    # OSU_ROMS_PCLINE = 15
    # NAVY_HYCOM_SST = 16
    # NAVY_HYCOM_SUR_CUR = 17
    # NAVY_HYCOM_SUR_SAL = 18
    # NAVY_HYCOM_SSH = 19
    # NAVY_HYCOM_BOT_TEMP = 20
    # NAVY_HYCOM_BOT_CUR = 21
    # NAVY_HYCOM_BOT_SAL = 22

    models = [settings.OSU_ROMS_SST,
              settings.OSU_ROMS_SUR_CUR,
              settings.NCEP_WW3_HI,
              settings.NCEP_WW3_DIR,
              settings.NAMS_WIND,
              settings.OSU_ROMS_BOT_TEMP,
              settings.OSU_ROMS_SUR_SAL,
              settings.OSU_ROMS_BOT_SAL,
              settings.OSU_ROMS_SSH,
              settings.OSU_ROMS_TCLINE,
              ]

    extended_models = [settings.OSU_ROMS_SST,
                       settings.OSU_ROMS_SUR_CUR]

    fields = get_list_of_overlay_definitions(models)

    base_overlays = OverlayManager.get_next_few_days_of_tiled_overlays(models)

    if settings.EXTEND:
        extended_overlays = OverlayManager.get_next_few_days_of_tiled_overlays_for_extended_forecasts('NCDF')
        overlays = base_overlays | extended_overlays # Union of all three querysets - '|' represents the union
    else:
        overlays = base_overlays

    datetimes = overlays.values_list('applies_at_datetime', flat=True).distinct().order_by('applies_at_datetime')
    context = {'overlays': overlays, 'defs': fields, 'times':datetimes }

    return render(request, 'index.html', context)
예제 #4
0
파일: manage.py 프로젝트: wsf1990/SharkEyes
def extend():
    from pl_plot.models import OverlayManager

    models = [
        settings.OSU_ROMS_SST,  # Extended
        settings.OSU_ROMS_SUR_SAL,
        settings.OSU_ROMS_SUR_CUR,  # Extended
        settings.OSU_WW3_HI,  # Extended
        settings.NAMS_WIND,
        settings.OSU_WW3_DIR,  # Extended
        settings.OSU_ROMS_BOT_SAL,
        settings.OSU_ROMS_BOT_TEMP,
        settings.OSU_ROMS_SSH,
        settings.OSU_ROMS_TCLINE,
    ]

    extended_models = [
        settings.OSU_ROMS_SST, settings.OSU_ROMS_SUR_CUR, settings.OSU_WW3_HI,
        settings.OSU_WW3_DIR
    ]

    # 14 = Thermocline
    #models = [1,3,4,6,5,8,2,7,9,]
    fields = get_list_of_overlay_definitions(models)

    base_overlays = OverlayManager.get_next_few_days_of_tiled_overlays(models)

    ww3_extended_overlays = OverlayManager.get_next_few_days_of_tiled_overlays_for_extended_forecasts(
        'WAVE', extended_models)
    roms_extended_overlays = OverlayManager.get_next_few_days_of_tiled_overlays_for_extended_forecasts(
        'NCDF', extended_models)

    print "Base Overlays:"
    for overlay in base_overlays:
        print overlay.file, overlay.applies_at_datetime, overlay.is_extend

    print "Extended WW3"
    for overlay in ww3_extended_overlays:
        print overlay.file, overlay.applies_at_datetime, overlay.is_extend

    print "Extended ROMS"
    for overlay in roms_extended_overlays:
        print overlay.file, overlay.applies_at_datetime, overlay.is_extend

    overlays = base_overlays | ww3_extended_overlays | roms_extended_overlays  # Union of all three querysets - '|' represents the union
예제 #5
0
파일: manage.py 프로젝트: MiCurry/SharkEyes
def extend():
    from pl_plot.models import OverlayManager

    models = [settings.OSU_ROMS_SST, # Extended
              settings.OSU_ROMS_SUR_SAL,
              settings.OSU_ROMS_SUR_CUR, # Extended
              settings.OSU_WW3_HI, # Extended
              settings.NAMS_WIND,
              settings.OSU_WW3_DIR, # Extended
              settings.OSU_ROMS_BOT_SAL,
              settings.OSU_ROMS_BOT_TEMP,
              settings.OSU_ROMS_SSH,
              settings.OSU_ROMS_TCLINE,
              ]

    extended_models = [settings.OSU_ROMS_SST,
                       settings.OSU_ROMS_SUR_CUR,
                       settings.OSU_WW3_HI,
                       settings.OSU_WW3_DIR]

    # 14 = Thermocline
    #models = [1,3,4,6,5,8,2,7,9,]
    fields = get_list_of_overlay_definitions(models)

    base_overlays = OverlayManager.get_next_few_days_of_tiled_overlays(models)

    ww3_extended_overlays = OverlayManager.get_next_few_days_of_tiled_overlays_for_extended_forecasts('WAVE', extended_models)
    roms_extended_overlays = OverlayManager.get_next_few_days_of_tiled_overlays_for_extended_forecasts('NCDF', extended_models)

    print "Base Overlays:"
    for overlay in base_overlays:
        print overlay.file, overlay.applies_at_datetime, overlay.is_extend

    print "Extended WW3"
    for overlay in ww3_extended_overlays:
        print overlay.file, overlay.applies_at_datetime, overlay.is_extend

    print "Extended ROMS"
    for overlay in roms_extended_overlays:
        print overlay.file, overlay.applies_at_datetime, overlay.is_extend

    overlays = base_overlays | ww3_extended_overlays | roms_extended_overlays # Union of all three querysets - '|' represents the union
예제 #6
0
def home(request):
    #overlays_view_data = OverlayManager.get_next_few_days_of_tiled_overlays().exclude(definition_id=5)
    overlays_view_data = OverlayManager.get_next_few_days_of_tiled_overlays()
    #Wind overlay is different from the main overlay due to the time intervals
    #wind_overlays_view_data = overlays_view_data.filter(definition_id=5)

    datetimes = [
        i.applies_at_datetime.astimezone(tz.tzlocal()).strftime('%D, %I %p')
        for i in overlays_view_data
    ]

    #winddatetimes = [ i.applies_at_datetime.astimezone(tz.tzlocal()).strftime('%D, %I %p') for i in wind_overlays_view_data ]

    # a complete hack! it just divides a list of all of the times for all the overlays by the number
    # of defs to get a singular list of overlay times

    #  num_defs = len(OverlayDefinition.objects.filter(is_base=True).exclude(display_name_short="Wind"))

    # num_wind_defs = len(OverlayDefinition.objects.filter(is_base=True).exclude(display_name_short="SST").exclude(display_name_short="Currents"))

    # Team 2 says: at this time we want SST (1), currents (3), and Wave (4) only. Modify this as
    # you add new models.
    num_defs = len(
        OverlayDefinition.objects.filter(is_base=True, id__in=[1, 3, 4]))

    list_of_times = datetimes[:len(datetimes) / num_defs]

    #list_of_wind_times = winddatetimes[:len(winddatetimes)/num_wind_defs]

    #context = {'overlays': overlays_view_data, 'defs': OverlayDefinition.objects.filter(is_base=True).exclude(id=4), 'times':list_of_times, 'windoverlays': wind_overlays_view_data, 'winddefs': OverlayDefinition.objects.filter(id=5), 'windtimes':list_of_wind_times}

    context = {
        'overlays': overlays_view_data,
        'defs': OverlayDefinition.objects.filter(is_base=True,
                                                 id__in=[1, 3, 4]),
        'times': list_of_times
    }

    return render(request, 'index.html', context)