######################
# DM2_w21_ue_09      #
# _Fun_With_Sun      #
# tool4_ra           #
##########_basic_setup

###___________________________
import rhinoscriptsyntax as rs
import random
import sys
sys.path.append( "P:/" )
import dm2_lib as dm2
###___________________________
reload (dm2)

rs.EnableRedraw(0)                                      # speed up !
rs.UnitSystem(4)                                        # km = 5, meters = 4, cm = 3 etc
rs.Command("-groundplane Options On=No enter enter", 0) # groundplane > 0 = off
rs.ShowGrid(None, 0)                                    # grid > 0 = off
rs.ShowGridAxes(None, 0)                                # y/y/z axen display > 0 = off
rs.ViewDisplayMode(view=None, mode="Rendered")			# shadeMode fuer current view
rs.Command("cplane w t enter", 0)						# cPlane World Top
rs.Command("PrintDisplay State=Off Color=Display Thickness=40 enter", 0)


rs.EnableRedraw(0)
rs.UnselectAllObjects()
dm2.newEmptyLayer( "PROJ::crv", [200,  100, 20] )
dm2.newEmptyLayer( "PROJ::srf", [ 100,  100, 200] )
dm2.newEmptyLayer( "PROJ::tmp",  [140,  120, 140] )
rs.Redraw()
###________________
dm2.ort = "giza"   # for calculation of sun_angles: latitude, longitude and timeZone
dat = dm2.dat

###_________________________# open giza_00_osm.3dm
if 0:
    dm2.newEmptyLayer( "OSM" )
    rs.Command("_-open No \"giza_00.3dm\" _enter _enter", 0)
    rs.ZoomExtents()
    rs.Redraw()
###_________________________#


##################
# list of pyramids
# list_name    "name"      height*)  OSM_ID         *)lt wiki
cheops    =  [ "cheops",    146.60, "4420397"] 
chefren   =  [ "chefren",   143.50, "4420396"]
mykerinos =  [ "mykerinos",  65.00, "4420398"]
henutsen   = [ "henutsen",   29.60, "219797726"]    # Princess: King's daughter: daughter of Khufu (but more likely to be a wife)
meritetis  = [ "meritetis",  30.00, "219797724"]   # King's wife: Wife of Khufu
hetepheres = [ "hetepheres", 30.25, "198032492"]  # Queen HetepheresKing's wife, king's daughter: Wife of Sneferu and mother of Khufu 
khentkawes = [ "khentkawes", 18.50, "73174154"]  # Queen 
queen_A = [ "queen_A", 21.2, "25416060"]        # Queen A
queen_B = [ "queen_B", 21.2, "25416067"]       # Queen B
queen_C = [ "queen_C", 21.2, "25416093"]      # Queen C
##############################################
# collect pyramid_list into one pyramids_list
pyramids = dm2.pyramids

########### 
if 1:   ### generate the pyramid's faces
        ### check the faces's ObjectName
    dm2.newEmptyLayer( "GIZA::pyramids", [140,140,40] )
    dm2.rgbMat2Lay("GIZA::pyramids", 200,200,40, T=0.1, Gloss=0.1, Refl=0.1, matNam="pyraMat" )
    for i in range( len(pyramids) ):
        print pyramids[i][0],":\t",pyramids[i][1], "meters"
        dm2.makePyramid ( NameOrNumber=i, SrfsOrCrvs=1, verbose=0 )
        dm2.zA()
    
    ###########################nota:
    # pyramids[i][0] = name        #
    # pyramids[i][1] = height      #
    # pyramids[i][2] = OSM_ID      #
    # pyramids[i][3] = top_coord   #
    # pyramids[i][4] = baseCoords  #
    ################################




########## EOS
###dm2.eDup()
dm2.printDisplay(1)
rs.CurrentLayer("Default")