def makeRiver(xMin, xMax, yMin, yMax,n=5): hfmatl = dielectricMaterial( 1.333, Color(0,0,1), 100 ); oceanGroup = GriddedGroup(n) nTilesY = 200; nTilesX = 100; p = Point( xMin, yMin, 0 ); tileSizeX = (xMax-xMin) / float(nTilesX); tileSizeY = (yMax-yMin) / float(nTilesY); h = Water( hfmatl, 512, True, False, 265 * 3.1415 / 180, .00000775, 2.0, p, p+Vector(tileSizeX,tileSizeY,0) ) scenes.spreadWater( oceanGroup, h, Point(xMin,yMin,0), Point(xMax,yMax,0), nTilesX, nTilesY, 0.0 ) return oceanGroup
yMax = 500 nTilesY = 10; nTilesX = 10; p = Point( xMin, yMin, -10 ); tileSizeX = (xMax-xMin) / float(nTilesX); tileSizeY = (yMax-yMin) / float(nTilesY); h = Water( hfmatl, 512, True, False, 265 * 3.1415 / 180, .00000775, 2.0, p, p+Vector(tileSizeX,tileSizeY,-10) ) scenes.spreadWater( oceanGroup, h, Point(xMin,yMin,-10), Point(xMax,yMax,-10), nTilesX, nTilesY,-8 ) world.addObject(oceanGroup) xSpan = 5 ySpan = 4 plane = BoundedPlane(lambertianMaterial( Color(0.2,0.2,1), 0.6, 0.4), Vector(0,0,1), Point(0,0,-50), Point(xSpan*xMin,ySpan*yMin,-51), Point(xSpan*xMax,ySpan*yMax,-49) ) world.addObject(plane) ####### scene.setObject( world );