&sgf[ThreeDDemoImpl] ViewerLocksImpl.debugging _ TRUE -- allows breakpoints in paint procs Commands for changing Color Display mode ColorDisplayManager.Start[$Dither8, left] -- raw display startup ColorDisplayManager.Start[$Gray8, left] ColorDisplayManager.Start[$FullColor, left] ThreeDViewer.SwitchDisplayTo[context3d, $FullColor] ThreeDViewer.SwitchDisplayTo[context3d, $Gray8] ThreeDViewer.SwitchDisplayTo[context3d, $Dither8] G3dRender.LoadDisplayClass[context3d, $Gray] G3dRender.LoadDisplayClass[context3d, $PseudoColor] G3dRender.LoadDisplayClass[context3d, $FullColor] G3dRender.LoadDisplayClass[context3d, $Bitmap] G3dRender.LoadDisplayClass[context3d, $GrayInVM] G3dRender.LoadDisplayClass[context3d, $PseudoColorInVM] G3dRender.LoadDisplayClass[context3d, $FullColorInVM] Terminal.GetColorFrameBufferA[context.terminal]!!! Render Modes and Viewports Reset[] InitNoViewer[] FacetedDemo[] _ ThreeDDemoImpl.cursorRange _ 64.0 -- default range of cursor-controlled viewpoint _ ThreeDDemoImpl.context3d.stopMe^ _ TRUE -- interpret for panic stop (keep trying) ViewerLocksImpl.debugging _ TRUE -- allows breakpoints in paint procs context3d.preferredRenderMode _ $Pixels context3d.preferredRenderMode _ $Imager G3dG3dRenderWithPixelsImpl.BufferRendering[context3d] G3dG3dRenderWithPixelsImpl.BufferRendering[context3d, FALSE] G3dRender.SetRenderStyle[G3dRender.FindShape[context3d, "TeaPot"], controlPoints] G3dRender.SetInvisible[ G3dRender.FindShape[context3d,"CheckerBoard"]] G3dRender.SetInvisible[ G3dRender.FindShape[context3d,"SoccerBall"]] G3dRender.SetInvisible[ G3dRender.FindShape[context3d,"Icosahedron"]] G3dRender.SetHiddenLines[ context3d, "Icosahedron" ] G3dRenderWithPixels.DepthBuffering[context3d] G3dRenderWithPixels.DepthBuffering[context3d, FALSE] G3dRenderWithPixels.AntiAliasing[context3d] G3dRenderWithPixels.AntiAliasing[context3d, FALSE] G3dRender.StartLog[context3d] G3dRender.SetViewPort[ context3d, [0.0, 0.0, 640.0, 453.0] ] -- defaults G3dRender.SetWindow[ context3d, [-1.0, -.7078125, 2.0, 1.415625] ] G3dRender.SetViewPort[ context3d, [120.0, 90.0, 400.0, 300.0] ] -- 400 x 300 for 640 x 480 G3dRender.SetViewPort[ context3d, [220.0, 165.0, 200.0, 150.0] ] -- 200 x 150 for 640 x 480 G3dRender.SetViewPort[ context3d, [311.0, 228.0, 400.0, 300.0] ] -- 400 x 300 for 1024 x 768 G3dRender.SetView[context3d, [2.0, -10.0, 3.0], [0.0, 0.0, 0.0] ] -- default G3dRender.SetView[context3d, [0.0, 0.2, 0.93], [0.0, 0.0, 0.0] ] -- scene1 closeup G3dRender.SetView[context3d, [4.733, -1.93, -0.6], [0.0, 0.5, 0.0] ] -- scene2 view closeup G3dRender.SetView[context3d, [10.0, -2.0, 1.0], [0.0, 0.0, 0.0] ] -- scene2, glass in front context3d.class.loadBackground[context3d] -- clear viewport to background GetOffScreenCtx[context3d, 2000, 1500] -- get large context to work in GetOnScreenCtx[context3d, 200, 150] -- get additional on-screen context to work in MakeFrame[] DistributedRender.MakeFrame[context3d] -- build picture using multiple processors ColorDisplayRender.MakeHiResFrame[context3d, 1024, 768, "HiResTest.ais" ] RenderWithImager.MakeInterpressPage[context3d, "ThreeDTest.interpress"] ShowShapes[] Writing out Shapes G3dRender.WriteShape[context: context3d, shapeName: "Icosahedron", fileName: G3dRender.PrependWorkingDirectory[context3d, "ShapeOut"], xyz: TRUE, normal: FALSE, color: FALSE, trans: FALSE, texture: FALSE, polyClr: FALSE] Printing Images ColorAISToInterpress AIStemp.ip _ [cyan]Crow>Lamming7Scene InterpressToPD AIStemp.ip Color400 ColorCorrection 1.25 scale PeachPrint MtFuji AIStemp.pd PrintColorAIS [cyan]Crow>MultiTxtrdEgg2 PrintColorAIS WurlitzerEgg PrintColorAIS [cyan]Crow>TestScene2 ColorAISToInterpress ComparisonEggs.ip _ [cyan]Crow>ComparisonEggs InterpressToPD ComparisonEggs.ip Color400 ColorCorrection PeachPrint MtFuji ComparisonEggs.pd PrintColorAIS [cyan]Crow>ZebraBurlTeaPot ColorAISToInterpress ZebraBurlTeaPot.ip _ [cyan]Crow>ZebraBurlTeaPot InterpressToPD ZebraBurlTeaPot.ip Color400 ColorCorrection PeachPrint MtFuji ZebraBurlTeaPot.pd Scene Storage and Retrieval G3dScene.WriteParameters[context3d, "Temp.scene"] G3dScene.ReadParameters[context3d, "Temp.scene"] G3dScene.MakeFrameFromFile[context3d, "Temp.scene"] Lighting and Background G3dRender.SetBackgroundColor[ context3d, [0.3, 0.3, 1.0] ] G3dRender.NameBackgroundColor[ context3d, "Light Blue" ] G3dRender.SetBackgroundImage[ context3d, "/Cyan/AIS/Crow/ZebraBurlTeaPot.ais" ] context3d.props _ Atom.PutPropOnList[context3d.props, $BackGround, NIL] -- kill background G3dRender.SetAmbientLight[ context3d, "Dark Grey" ] G3dRender.AddLight[context3d, "Default", [500.0, -200.0, 10.0], [1.0, 1.0, 0.7] ] G3dRender.AddLight[context: context3d, name: "Light2", position: [500.0, -200.0, 10.0], color: [1.0, 1.0, 0.7] ] ColorMap Fiddling -- set color display to 8-bits ImageTwiddle.Show8BitClrMap[context3d] ImageTwiddle.Rotate8BitClrMap[Terminal.Current[], 0, 255, 10] ColorDisplayRender.LoadStd8BitClrMap[Terminal.Current[]] ColorDisplayRender.LoadColorRamp[Terminal.Current[], [0.0, 0.0, 0.0], [1.0, 1.0, 1.0], [.43, .43, .43]] ImageTwiddle.AdjustValueRamp[context3d, [.43, .43, .43]] -- apply TRC ImageTwiddle.LoadMultiRamps[Terminal.Current[], LIST[ [.0, .0, .0], [.1, .1, .8], [.8, .4, .2], [.9, .6, .6], [.8, .9, .9], [1.0, 1.0, 1.0] ] ] -- blue, brown, red, blue-white ImageTwiddle.LoadMultiRamps[Terminal.Current[], LIST[ [.0, .0, .0], [.3, .1, .1], [.2, .1, .0], [.3, .2, .2], [.4, .3, .3], [.4, .2, .1], [.6, .4, .2], [.7, .5, .4], [.8, .6, .5], [.5, .8, .6], [.5, .8, .6], [.3, .1, .1], [.2, .1, .0], [.3, .2, .2], [.3, .1, .1], [.2, .1, .0], [.3, .2, .2], [.4, .3, .3], [.4, .2, .1], [.8, .5, .3], [.0, .0, .0], [.4, .2, .1], [.0, .0, .0], [.1, .1, .8], [1.0, 1.0, 1.0], [.8, .5, .3], [.5, .8, .6], [.8, .9, .9], [.3, .1, .1], [.2, .1, .0], [1.0, 1.0, 1.0] ] ] ImageTwiddle.LoadMultiRamps[Terminal.Current[], LIST[ [1.0, .0, .0], [0.0, 1.0, 0.0], [0.0, 0.0, 1.0], [1.0, .0, .0] ] ] -- red, green, blue, red ThreeDScenes.FillViewPort[context3d, [1.0,0.0,1.0] ] G3dRender.StartLog[context3d] -- write out colormap ImageTwiddle.ShowMapOnLog[context3d, Terminal.Current[]] Image Enhancement and Scaling ImageTwiddle.AdjustValueRamp[context3d, [.7, .5, .7]] -- gamma curves for each separation ImageTwiddle.AdjustSaturation[context3d, 0.5 ] -- makes more saturated (0 -1) G3dRender.SetViewPort[context3d, [0.0, 0.0, 640.0, 453.0] ] GetOnScreenCtx[context3d, 228, 171] SetViewPort[[100.0, 0.0, 400.0, 450.0] ] G3dColorDisplaySupport.GetAIS[context3d, "///Users/Crow.pa/AIS/SphereWithIACRAdj.ais" ] G3dColorDisplaySupport.GetAIS[onScreenCtx, "///Users/Crow.pa/AIS/SphereWithIACRAdj.ais" ] ImageTwiddle.ScaleDownImage[onScreenCtx, context3d] GetOffScreenCtx[context3d, 2400, 2400] G3dColorDisplaySupport.GetAIS[offScreenCtx, "[pixel]images>orig>JT300STD.AIS"] ImageTwiddle.ScaleDownImage[context3d, offScreenCtx] run EdgeBlt SetViewPort[[0.0, 0.0, 640.0, 453.0] ] GetOffScreenCtx[context3d, 640, 452] ChangeRenderMode[$Grey] SetViewPort[[300.0, 0.0, 350.0, 400.0] ] ThreeDMisc.MakeFrame[offScreenCtx] G3dColorDisplaySupport.GetAIS[offScreenCtx, "///Users/crow.pa/AIS/violin-grn.ais"] EdgeBlt.ImageTransform[ [[context3d.display.pixels[0].subMap.sampleMap, [100, 50], [640, 452]], 1], [[offScreenCtx.display.pixels[0].subMap.sampleMap, [26, 65], [400, 510] ], 1], [0, 0], 10.0, .85] G3dColorDisplaySupport.GetAIS[context3d, "ViolinEdgeBlt-grey.ais"] ImageTwiddle.ScaleDownImage[context3d, offScreenCtx] G3dColorDisplaySupport.PutAIS[context3d, "///Users/Crow.pa/AIS/ViolinScene.ais" ] Lines and Text context3d.class.draw2DLine[context: context3d, p1: [0.2, 0.2], p2: [0.7, 0.5], color: [255, 255, 0, 0, 0] ] context3d.class.draw2DRope[context: context3d, rope: "Look at the pretty picture!!", position: [0.2, 0.7], color: [127, 127, 255, 0, 0], size: 50.0, font: "Xerox/Pressfonts/TimesRoman-MRR"] TextAtCursor["Text Here", [1.0, 1.0, 1.0], 20.0, "Xerox/Pressfonts/TimesRoman-MRR"] MoveToCursor[] DrawToCursor[ [1.0,1.0,1.0] ] G3dRender.AddShape[context3d, G3dRender.ShapeFromRope["sign", "Look at me!", "vivid yellow"] ] G3dRender.PlaceShape[context3d, "sign", [-1.0, -1.0, 1.0] ] AIS Files: Writing and Reading G3dColorDisplaySupport.GetAIS[context: context3d, fileRoot: "Temp.ais", xOffset: 20, yOffset: 100, center: FALSE ] G3dColorDisplaySupport.PutRGB[context3d, "Temp.rgb" ] G3dColorDisplaySupport.GetRGB[context3d, "/kimball-nfs/usr/fs/crow/AbekasMovieSmooth24.rgb" ] G3dColorDisplaySupport.GetRGB[context3d, "///users/crow.pa/3d/convertrasterobject/OxB18-4.rgb" ] G3dColorDisplaySupport.GetRGB[context3d, "///users/crow.pa/AIS/Animation/AbekasMovie0.rgb" ] G3dColorDisplaySupport.PutAIS[context3d, "Temp.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "Temp.ais" ] Install SunNFSRemoteFile -- to get access to NFS files For Comparisons G3dRender.SetViewPort[context3d, [0.0, 0.0, 320.0, 453.0] ] -- for 640 x 480 G3dColorDisplaySupport.GetAIS[context3d, "ZebraBurlTeaPot.ais" ] G3dRender.SetViewPort[context3d, [320.0, 0.0, 320.0, 453.0] ] G3dColorDisplaySupport.GetAIS[context3d, "ZebraBurlTeaPotHiRes.ais" ] G3dRender.SetViewPort[context3d, [0.0, 0.0, 640.0, 453.0] ] Gallery - Interesting images 24-bit G3dColorDisplaySupport.GetAIS[context3d, "/cyan/AIS/Crow/ComparisonEggs.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "/cyan/AIS/Crow/Spoon.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "/cyan/AIS/Crow/ZebraBurlTeaPot.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "/cyan/AIS/Crow/TestScene2.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "[QueenFish]Users>Bier.pa>Ugray>Gears2.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "/Pixel/Lamming/Mugs/crow1.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "/Pixel/Lamming/Mugs/crow2.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "/User/Crow/AIS/Poobs.ais" ] Gallery - Interesting images 8-bit G3dColorDisplaySupport.GetAIS[context3d, "/cyan/AIS/Crow/MarbleTeaPot.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "/User/Crow/AIS/JaggyText.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "/User/Crow/AIS/SmoothText.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "/User/Crow/AIS/page-Red.ais" ] ImageTwiddle.SetUpTerrainColors[Terminal.Current[]] G3dColorDisplaySupport.GetAIS[context3d, "/Cyan/AIS/Crow/LakeScene-HiRes.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "/Pixel/Crow/LakeScene-BigRocks.ais" ] G3dColorDisplaySupport.GetAIS[context3d, "Temp.ais" ] Intersection tests Reset[] -- for bump-map test G3dRender.AddShapeFromFile[ context3d, "Egg", "UtahEgg.shape", [1.0, .0, .0] ] G3dRender.AddShapeFromFile[ context3d, "Egg2", "UtahEgg.shape", [0.0, .0, .0] ] Texture tests Reset[] G3dRender.AddShapeFromFile[ context3d, "test", "TxtrSquares2.shape" ] G3dRender.SetView[context3d, [0.0, -20.0, 0.0], [0.0, 0.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "test"], [1.0, 1.0, 1.0] ] G3dRender.SetRenderStyle[ G3dRender.FindShape[context3d, "test"], smooth] G3dScanConvertImpl.useTextureCoords _ TRUE G3dMappedAndSolidTexture.AddSolidTexture[context3d, "test", $TestNoise ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "test", $TestOneOverFNoise ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "test", $ZebraBurl ] G3dMappedAndSolidTexture.RemoveAllTexture[context3d, "test" ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "test", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/CedarChest7.0/ThreeDWorld/Texture.ais", $Intensity] ] G3dRender.AddShapeFromFile[ context3d, "test", "[Ivy]Shape>TxtrSquares.shape" ] G3dRender.AddShapeFromFile[ context3d, "test", "LongRectangle.shape" ] G3dRender.SetView[context3d, [-4.0, -3.0, 1.0], [5.0, 0.0, 1.0] ] Reset[] G3dRender.AddShapeFromFile[ context3d, "Square1", "Square1.shape", [-1.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context3d, "Square4", "Square4.shape", [ 0.0, -12.0, 0.0] ] G3dRender.AddShapeFromFile[ context3d, "Square16", "Square16.shape", [ 0.0, -15.0, -.0625] ] G3dRender.AddShapeFromFile[ context3d, "Square64", "Square64.shape", [ -0.015625, -15.75, -0.015625] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Square1"], [1.0, 1.0, 1.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Square4"], [1.0, 1.0, 1.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Square16"], [1.0, 1.0, 1.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Square64"], [1.0, 1.0, 1.0] ] G3dRender.SetRenderStyle[ G3dRender.FindShape[context3d, "Square1"], smooth] G3dRender.SetRenderStyle[ G3dRender.FindShape[context3d, "Square4"], smooth] G3dRender.SetRenderStyle[ G3dRender.FindShape[context3d, "Square16"], smooth] G3dRender.SetRenderStyle[ G3dRender.FindShape[context3d, "Square64"], smooth] G3dRender.SetView[context3d, [0.0, -16.0, 0.0], [0.0, 0.0, 0.0], 20.0 ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Square1", $TestNoise ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Square4", $TestNoise ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Square16", $TestNoise ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Square64", $TestNoise ] G3dMappedAndSolidTexture.RemoveAllTexture[context3d, "Square1" ] G3dMappedAndSolidTexture.RemoveAllTexture[context3d, "Square4" ] G3dMappedAndSolidTexture.RemoveAllTexture[context3d, "Square16" ] G3dMappedAndSolidTexture.RemoveAllTexture[context3d, "Square64" ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Square1", $ZebraBurl ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Square4", $ZebraBurl ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Square16", $ZebraBurl ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Square64", $ZebraBurl ] ShowShapes[] ShadingProcs.noiseType _ $Limited -- $Plain, $Simple, $Limited, $DblOctave Reset[] -- for bump-map test G3dRender.AddShapeFromFile[ context3d, "Egg", "UtahEgg.shape", [.0, .0, .0] ] G3dRender.RotateShape[context3d, "Egg", [0.0, 0.0, -1.0], [0.0, -1.0, -1.0], 45] G3dRender.SetView[context3d, [-5.0, -1.0, 1.0], [-1.0, 0.0, 0.0] ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Egg", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/CedarChest7.0/ThreeDWorld/Texture.ais", $Intensity] ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context3d, "Egg", [0.0, 0.0], [0.0, 2.0], [2.0, 2.0], [2.0, 0.0] ] Reset[] -- for bump-map test G3dRender.AddShapeFromFile[ context: context3d, shapeName: "TeaPot", fileName: "TeaPotWithBot.shape", position: [0.0, 0.0, -1.25]] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "TeaPot", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "Texture.ais", $Intensity] ] G3dMappedAndSolidTexture.SetPatchTextureCoords[ context3d, "TeaPot" ] Rolling Egg Animations Reset[] -- for bump-map test G3dRender.AddShapeFromFile[ context3d, "Egg", "UtahEgg.shape", [.0, .0, .0] ] G3dRender.RotateShape[context3d, "Egg", [0.0, 0.0, -1.0], [0.0, -1.0, -1.0], 45] G3dRender.SetLines[ context3d, "Egg" ] G3dRender.SetView[context3d, [-2.0, -5.0, 1.0], [-1.0, 0.0, 0.0] ] G3dRender.AddLight[context3d, "Default", [-100.0, -200.0, 300.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Egg"], [1.0, .8, .5] ] G3dRender.SetRenderStyle[ context3d, "Egg" ] G3dRender.SetShininess[ context3d, "Egg", 60.0 ] G3dMappedAndSolidTexture.RemoveAllTexture[context3d, "Egg"] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Egg", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/CedarChest7.0/ThreeDWorld/Texture.ais", $Bump, 15.0] ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context3d, "Egg", [0.0, 0.0], [0.0, 0.5], [0.5, 0.5], [0.5, 0.0] ] G3dRenderWithPixels.AntiAliasing[context3d] G3dMappedAndSolidTexture.SumAllMappedTextures[ context3d, "Egg" ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Egg", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/reprisal/cedar/users/glassner.pa/pix/blurfractures.ais", $Bump, 14.0] ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Egg", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/Cyan/AIS/Baboon-green.ais", $Intensity] ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context3d, "Egg", [0.5, 1.0], [0.5, 0.5], [1.0, 0.5], [1.0, 1.0] ] Reset[] G3dRender.AddShapeFromFile[ context3d, "Egg", "UtahEgg.shape", [.0, .0, .0] ] G3dRender.AddShapeFromFile[context3d, "EggShadow", "EggShadow.shape", [0.0, 0.1, -1.1]] G3dRender.RotateShape[context3d, "Egg", [0.0, 0.0, -1.0], [0.0, -1.0, -1.0], 0] -- clear rotations G3dRender.PlaceShape[ context3d, "Egg", [.0, .0, .0] ] G3dRender.SetPosition[ G3dRender.FindShape[context3d, "Egg"] ] G3dRender.SetLines[ context3d, "Egg" ] G3dRender.SetLines[ context3d, "EggShadow" ] G3dRender.SetView[context3d, [-2.0, -5.0, 1.0], [-1.0, 0.0, 0.0] ] Animation3D.SetShapeManipulation[context3d, "Egg", $RollShape, LIST[NEW[REAL _ -60.0], NEW[REAL _ 0.05], NEW[REAL _ 3.0] ], AnimationProcs.RollShape] G3dAnimationSupport.MakeFramesFromTo[ context: context3d, lookingFrom: [-1.0, -5.0, 1.0], lookingAt: [-1.0, 0.0, 0.0], toLookingFrom: [-1.0, -5.0, 1.0], toLookingAt: [-1.0, 0.0, 0.0], framesOnLine: 60, startAt: 0, endAt: 59, filename: NIL ]; G3dRender.SetViewPort[ context3d, [220.0, 165.0, 200.0, 150.0] ] G3dAnimationSupport.MakeFramesFromTo[ context: context3d, lookingFrom: [-2.0, -5.0, 1.0], lookingAt: [-1.0, 0.0, 0.0], toLookingFrom: [-2.0, -5.0, 1.0], toLookingAt: [-1.0, 0.0, 0.0], framesOnLine: 60, startAt: 0, endAt: 59, filename: "EggRoll.ais"]; G3dRender.StartLog[context3d] G3dRender.AddLight[context3d, "Default", [-100.0, -200.0, 300.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Egg"], [1.0, .8, .5] ] G3dRender.SetRenderStyle[ context3d, "Egg" ] G3dRender.SetShininess[ context3d, "Egg", 60.0 ] G3dMappedAndSolidTexture.RemoveAllTexture[context3d, "Egg"] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Egg", $ZebraBurlAMoving ] G3dMappedAndSolidTexture.RemoveAllTexture[context3d, "Egg"] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Egg", $ZebraBurl ] G3dMappedAndSolidTexture.RemoveAllTexture[context3d, "Egg"] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Egg", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/CedarChest7.0/ThreeDWorld/Texture.ais", $Bump] ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context3d, "Egg", [0.0, 0.0], [2.0, 3.0], [5.0, 3.0], [3.0, 0.0] ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Egg", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/CedarChest7.0/ThreeDWorld/Texture.ais", $Intensity] ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context3d, "Egg", [0.0, 0.0], [2.0, 3.0], [5.0, 3.0], [3.0, 0.0] ] G3dShade.LoadShadingClass[ G3dRender.FindShape[context3d, "EggShadow"], $NoShading ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "EggShadow"], [0.0, 0.0, 0.0] ] G3dRender.SetTransmittance[context3d, "EggShadow", 1.0 ] G3dRender.SetRenderStyle[ context3d, "EggShadow" ] G3dRender.AddShapeFromFile[ context3d, "CheckerBoard", "CheckerBoard.shape", [-8.0, -0.0, -3.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "CheckerBoard"], [.8, .4, .2] ] G3dRender.SetFaceted[ context3d, "CheckerBoard" ] G3dRender.FindShape[ context3d, "CheckerBoard" ].centroid.z _ -5.0 G3dRender.AddShapeFromFile[ context3d, "CheckerBoard2", "CheckerBoard.shape", [-8.0, -0.0, -3.0] ] G3dRender.RotateShape[context3d, "CheckerBoard2", [8.0, 8.0, 0.0], [8.0, 8.0, 1.0], 90] G3dRender.SetColor[ G3dRender.FindShape[context3d, "CheckerBoard2"], [.2, .2, .2] ] G3dRender.SetFaceted[ context3d, "CheckerBoard2" ] G3dRender.FindShape[ context3d, "CheckerBoard2" ].centroid.z _ -5.0 G3dRender.RotateShape[context3d, "Egg", [0.0, 0.0, -1.0], [0.0, -1.0, -1.0], 0] G3dRender.PlaceShape[ context3d, "Egg", [.0, .0, .0] ] G3dRender.SetPosition[ G3dRender.FindShape[context3d, "Egg"] ] G3dRender.PlaceShape[ context3d, "EggShadow", [.0, .1, -1.1] ] Animation3D.SetShapeManipulation[context3d, "Egg", $RollShape, LIST[NEW[REAL _ -60.0], NEW[REAL _ 0.05], NEW[REAL _ 3.0] ], AnimationProcs.RollShape] G3dRenderWithPixels.AntiAliasing[context3d] GetOffScreenCtx[context3d, 720, 486]; G3dAnimationSupport.MakeFramesFromTo[ context: offScreenCtx, lookingFrom: [-2.0, -5.0, 1.0], lookingAt: [-1.0, 0.0, 0.0], toLookingFrom: [-2.0, -5.0, 1.0], toLookingAt: [-1.0, 0.0, 0.0], framesOnLine: 60, startAt: 0, endAt: 59, filename: "///Users/Crow.pa/AIS/Animation/RollEggJagStripes.rgb"] G3dMappedAndSolidTexture.SumAllMappedTextures[ context3d, "Egg" ] G3dAnimationSupport.MakeFramesFromTo[ context: offScreenCtx, lookingFrom: [-2.0, -5.0, 1.0], lookingAt: [-1.0, 0.0, 0.0], toLookingFrom: [-2.0, -5.0, 1.0], toLookingAt: [-1.0, 0.0, 0.0], framesOnLine: 60, startAt: 0, endAt: 59, filename: "///Users/Crow.pa/AIS/Animation/RollEggBump.rgb" ] Reset[] G3dRender.AddShape[ context3d, G3dRender.ShapeFromRope["Label", "Bump Mapping" , "Vivid Yellow" ] ] G3dRender.SetView[context3d, [1.6, -7.0, 0.0], [1.6, 0.0, 0.0] ] G3dRenderWithPixels.AntiAliasing[context3d] GetOffScreenCtx[context3d, 720, 486] G3dColorDisplaySupport.GetRGB[offScreenCtx, "///Users/Crow.pa/AIS/Animation/RollEggBump000.rgb" ] SurfaceRender.ShowShapes[offScreenCtx] G3dColorDisplaySupport.PutRGB[offScreenCtx, "///Users/Crow.pa/AIS/Animation/RollEggBumpLabel.rgb" ] G3dRender.ChangeRopeMessage[offScreenCtx, "Label", "Static Solid Texture" ] G3dRender.SetView[offScreenCtx, [1.9, -7.0, 0.0], [1.9, 0.0, 0.0] ] G3dColorDisplaySupport.GetRGB[offScreenCtx, "///Users/Crow.pa/AIS/Animation/RollEggZebra000.rgb" ] SurfaceRender.ShowShapes[offScreenCtx] G3dColorDisplaySupport.PutRGB[offScreenCtx, "///Users/Crow.pa/AIS/Animation/RollEggZebraLabel.rgb" ] G3dRender.ChangeRopeMessage[offScreenCtx, "Label", "Intensity Mapping" ] G3dRender.SetView[offScreenCtx, [1.9, -7.0, 0.0], [1.9, 0.0, 0.0] ] G3dColorDisplaySupport.GetRGB[offScreenCtx, "///Users/Crow.pa/AIS/Animation/RollEggStripes000.rgb" ] SurfaceRender.ShowShapes[offScreenCtx] G3dColorDisplaySupport.PutRGB[offScreenCtx, "///Users/Crow.pa/AIS/Animation/RollEggStripesLabel.rgb" ] G3dRender.ChangeRopeMessage[offScreenCtx, "Label", "Moving Solid Texture" ] G3dRender.SetView[offScreenCtx, [2.2, -7.5, 0.0], [2.2, 0.0, 0.0] ] G3dColorDisplaySupport.GetRGB[offScreenCtx, "///Users/Crow.pa/AIS/Animation/RollEggZebra000.rgb" ] SurfaceRender.ShowShapes[offScreenCtx] G3dColorDisplaySupport.PutRGB[offScreenCtx, "///Users/Crow.pa/AIS/Animation/RollEggThruZebraLabel.rgb" ] Abekas animations GetOffScreenCtx[context3d, 720, 486]; G3dRender.SetWindow[offScreenCtx, [x: -1.0, y: -0.75, w: 2.0, h: 1.5] ] G3dAnimationSupport.Orbit[ context: offScreenCtx, lookingFrom: [2.0, -10.0, 3.0], lookingAt: [0.0, 0.0, 0.0], axis: [0.3, 0.0, 1.0], base: [0.0, 0.0, 0.0], moveEPNotCI: TRUE, framesPerRev: 40, startAt: 0, endAt: 39, filename: "///Users/Crow.pa/AIS/Animation/AbekasMovie.rgb" ] G3dAnimationSupport.Orbit[ context: context3d, lookingFrom: [x: -21.64353, y: -7.581413, z: 8.345146], lookingAt: [0.0, 0.0, 0.0], axis: [0.3, 0.0, 1.0], base: [0.0, 0.0, 0.0], moveEPNotCI: TRUE, framesPerRev: 20, startAt: 0, endAt: 19, filename: "///Users/Crow.pa/AIS/Animation/AbekasMovie.rgb" ] Animations G3dAnimationSupport.Orbit[ context: context3d, lookingFrom: [0.0, -5.0, 0.0], lookingAt: [0.0, 0.0, 0.0], axis: [0.0, 0.0, 1.0], base: [0.0, 0.0, 0.0], moveEPNotCI: TRUE, framesPerRev: 40, startAt: 0, endAt: 39, filename: "///Users/User.pa/3d/Movie" ]; G3dRender.SetViewPort[ context3d, [120.0, 90.0, 400.0, 300.0] ] -- 400 x 300 for 640 x 480 G3dAnimationSupport.MakeFramesOnPath[context: context3d, lookingFrom: LIST[ [10.0, 0.0, 3.0], [2.0, 2.5, 1.0], [0.5, 1.0, 0.3], [-2.0, 4.0, 1.0], [-10.0, 0.0, 3.0], [0.0, -10.0, 1.0] ], lookingAt: LIST[ [-2.5, 0.0, 0.0] ], framesOnPath: 40, startAt: 0, endAt: 39, filename: "///Users/Crow.pa/3d/PathMovie", closed: TRUE] G3dAnimationSupport.MakeFramesFromTo[ context: context3d, lookingFrom: [-2.0, -5.0, 1.0], lookingAt: [-2.0, 0.0, 0.0], toLookingFrom: [2.0, -5.0, 1.0], toLookingAt: [2.0, 0.0, 0.0], framesOnLine: 40, startAt: 0, endAt: 39, filename: NIL ]; -- too boring to store as files Reset[] SetUpMovie[ fileRoot: "/Cyan/AIS/Animation/LakeSceneTest.ais", numFiles: 64, start: 0, labels: TRUE]; ImageTwiddle.SetUpTerrainColors[Terminal.Current[]] Reset[] SetUpMovie[ fileRoot: "/Pixel/Crow/Animation/StillCloser.ais", numFiles: 40, start: 1] G3dRender.LoadDisplayType[context3d, $PseudoColor] Reset[] SetUpMovie[ fileRoot: "///Users/Crow.pa/AIS/Animation/Paper3Web.ais", numFiles: 40, start: 0] G3dRender.LoadDisplayType[context3d, $Grey] G3dRender.SetViewPort[ context3d, [311.0, 228.0, 400.0, 300.0] ] -- for 1024 x 768 Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "YourShape", fileName: "/User/You/Shapes/YourShape.shape", position: [0.0, 0.0, 0.0] ] G3dRender.SetColor[G3dRender.FindShape[context3d, "YourShape"], [.4, .8, .4] ] -- pea green MakeFrame[] -- implemented in ThreedDemoImpl context3d.class.render[context3d] -- alternative for producing frame Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box", fileName: "Tetrahedron.shape", position: [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box2", fileName: "Tetrahedron.shape", position: [0.0, 0.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Box2"], [0.1, 1.0, 0.1] ] G3dRender.RotateShape[ context3d, "Box2", [0.0, 0.0, 0.0], [1.0, 0.0, 0.0], 180.0 ] G3dRender.PlaceShape[ context3d, "Box2", [2.1, 0.5, 0.5] ] G3dRender.SetView[ context3d, [x: 11.63259, y: -11.29297, z: 3.0], [0.0, 0.0, 0.0] ] G3dRender.ForcePrioritySort[ context3d ] G3dRender.SetView[ context3d, [x: 0.0, y: -4.5, z: 3.0], [0.0, 0.0, 0.0] ] Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box", fileName: "[pixel]GamutDemo>IdealLAB.shape", position: [0.0, 0.0, 0.0] ] G3dRender.SetTransmittance[context3d, "Box", 0.6] -- keeps backfaces G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box2", fileName: "[pixel]GamutDemo>NewTTLab.shape", position: [0.0, 0.0, 0.0] ] G3dRender.SetTransmittance[context3d, "Box2", 0.6] -- keeps backfaces G3dRender.AddShapeFromFile[ context: context3d, shapeName: "redAxis", fileName: "[pixel]GamutDemo>redAxis.shape", position: [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "blueAxis", fileName: "[pixel]GamutDemo>blueAxis.shape", position: [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "grnAxis", fileName: "[pixel]GamutDemo>grnAxis.shape", position: [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "yellowAxis", fileName: "[pixel]GamutDemo>yellowAxis.shape", position: [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "zAxis", fileName: "[pixel]GamutDemo>zAxis.shape", position: [0.0, 0.0, 0.0] ] G3dRender.SetView[ context3d, [x: 2.0, y: -2.0, z: 1.0], [0.0, 0.0, 0.5] ] G3dRender.ForcePrioritySort[ context3d ] G3dRender.SetView[ context3d, [x: 11.63259, y: -11.29297, z: 3.0], [0.0, 0.0, 0.0] ] Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box", fileName: "UtahEgg.shape", position: [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box2", fileName: "UtahEgg.shape", position: [0.51, 0.0, 0.01] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Box2"], [0.1, 1.0, 0.1] ] G3dRender.RotateShape[ context3d, "Box2", [0.0, 0.0, 0.0], [1.0, 0.0, 0.0], 60.0 ] G3dRender.SetView[ context3d, [x: -0.458486, y: -4.22889, z: 3.0], [0.0, 0.0, 0.0] ] G3dRender.ForcePrioritySort[ context3d ] Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Egg", fileName: "UtahEgg.shape", position: [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Cube", fileName: "ClosedBox.shape", position: [0.0, 0.5, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Cube"], [0.1, 1.0, 0.1] ] G3dRender.ForcePrioritySort[ context3d ] context.class.loadBackground[context] ShowOnePatch[context, active[j].shape, active[j].patch] ShowOnePatch[context, newPatch.shape, newPatch.patch] ShowPrioritySeq[context, sorted] Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "BrownBox", fileName: "ClosedBox.shape", position: [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "GreenBox", fileName: "ClosedBox.shape", position: [0.5, 0.5, 0.5] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "GreenBox"], [0.1, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "BrownBox", 30.0 ] G3dRender.RotateShape[ context3d, "GreenBox", [0.0, 0.0, 0.0], [1.0, 0.0, 0.0], 10.0 ] G3dRender.ForcePrioritySort[ context3d ] G3dRender.SetView[ context3d, [x: 0.3, y: -7.472254, z: 3.0], [0.0, 0.0, 0.0] ] Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Square", fileName: "Square.shape", position: [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Square2", fileName: "Square.shape", position: [0.0, 0.0, 0.0] ] G3dRender.RotateShape[ context3d, "Square2", [0.0, 0.0, 0.0], [1.0, 0.0, 0.0], 10.0 ] G3dRender.RotateShapeLocal[ context3d, "Square", 30.0 ] G3dRender.ForcePrioritySort[ context3d ] G3dRender.SetView[ context3d, [x: -9.056515, y: 4.870392, z: 3.0], [2.0, 0.0, 0.0] ] -- bezier nebbish Reset[] G3dRender.AddShapeFromFile[ context3d, "Nebbish", "NebbishB.shape", [0.0, 0.0, 0.0]] G3dRender.SetRenderStyle[ context3d, "Nebbish" ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Nebbish"], $PolygonToBezier ] G3dRender.SetView[ context3d, [x: -6.2, y: -12.4, z: 2.666667], [0.0, 0.0, 3.25] ] -- triangular patch nebbish Reset[] G3dRender.AddShapeFromFile[ context3d, "Nebbish", "Nebbish.shape", [0.0, 0.0, 0.0]] G3dRender.SetRenderStyle[ context3d, "Nebbish" ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Nebbish"], $PolygonToTnsrPatch ] PatchFromPolyProcs.unitizeNormals _ TRUE G3dRender.SetView[ context3d, [x: -6.2, y: -12.4, z: 2.666667], [0.0, 0.0, 3.25] ] G3dRenderWithPixels.AntiAliasing[context3d] G3dRenderWithPixels.DepthBuffering[context3d] G3dRender.SetViewPort[ context3d, [170.0, 40.0, 300.0, 400.0] ] G3dAnimationSupport.Orbit[context: context3d, lookingFrom: [x: 4.0, y: -9.0, z: 2.666667], lookingAt: [0.0, 0.0, 3.25], axis: [-0.1, 0.0, 1.0], base: [0.0, 0.0, 0.0], moveEPNotCI: TRUE, framesPerRev: 40, startAt: 0, endAt: 39, filename: "///Users/Crow.pa/AIS/SmoothTnsNebbish.ais"] movieViewPort _ [170.0, 40.0, 300.0, 400.0] -- Volkswagen Reset[] G3dRender.AddShapeFromFile[ context3d, "VW", "VW.shape", [0.0, 0.0, 0.0]] G3dRender.OrientShape[ context3d, "VW", [0.0, -1.0, 0.0]] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "VW"], $PolygonWithTangents ] G3dRender.SetView[ context: context3d, eyePoint: [x: -10.0, y: 180.0, z: 80.0], ptOfInterest: [0.0, 30.0, 25.0], yonLimit: 200.0 ] Reset[] -- Goblet G3dRender.AddShapeFromFile[ context3d, "Goblet", "Goblet.shape", [0.0, 0.0, 0.0]] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Goblet"], $PolygonWithNormals ] G3dRender.SetView[ context: context3d, eyePoint: [x: -0.004, y: -2.679688, z: 2.246063] ] -- figure 1 smooth-shaded icosahedron Reset[] G3dRender.AddShapeFromFile[ context3d, "Icosahedron", "Icosahedron.shape", [0.0, 0.0, 0.0]] G3dRenderWithPixels.AntiAliasing[context3d, TRUE]; MakeFrame[] G3dColorDisplaySupport.PutAIS[ context3d, "figure1.ais" ] -- figure 5 SoccerBall, Banana, Striped Egg comparison Reset[] G3dRender.AddShapeFromFile[ context3d, "SoccerBall", "SoccerBall.shape", [0.0, 0.0, -1.0]] G3dRender.AddShapeFromFile[ context3d, "SoccerBall2", "SoccerBall.shape", [0.0, 0.0, 1.0]] ShapeTwiddle.ScaleShape[ context3d, "SoccerBall", 0.75] ShapeTwiddle.ScaleShape[ context3d, "SoccerBall2", 0.75] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "SoccerBall"], $PolygonWithNormals ] G3dRender.AddShapeFromFile[ context3d, "Banana", "Banana.shape", [-2.0, 0.0, -1.0]] G3dRender.AddShapeFromFile[ context3d, "Banana2", "Banana.shape", [-2.0, 0.0, 1.0]] ShapeTwiddle.ScaleShape[ context3d, "Banana", 2.0] ShapeTwiddle.ScaleShape[ context3d, "Banana2", 2.0] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Banana"], $PolygonWithNormals ] G3dRender.AddShapeFromFile[ context3d, "Egg", "UtahEgg.shape", [2.0, 0.0, -1.0]] G3dRender.OrientShape[ context3d, "Egg", [1.0, 1.0, 0.0]] G3dRender.RotateShapeLocal[ context3d, "Egg", 90.0 ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Egg", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/CedarChest7.0/ThreeDWorld/Texture.ais", $Intensity] ] G3dMappedAndSolidTexture.SumAllMappedTextures[ context3d, "Egg" ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context3d, "Egg", [0.0, 0.0], [2.0, 3.0], [5.0, 3.0], [3.0, 0.0] ] G3dRender.AddShapeFromFile[ context3d, "Egg2", "UtahEgg.shape", [2.0, 0.0, 1.0]] G3dRender.OrientShape[ context3d, "Egg2", [1.0, 1.0, 0.0]] G3dRender.RotateShapeLocal[ context3d, "Egg2", 90.0 ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Egg2", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/CedarChest7.0/ThreeDWorld/Texture.ais", $Intensity] ] G3dMappedAndSolidTexture.SumAllMappedTextures[ context3d, "Egg2" ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context3d, "Egg2", [0.0, 0.0], [2.0, 3.0], [5.0, 3.0], [3.0, 0.0] ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Egg"], $PolygonWithNormals ] G3dRender.SetView[ context3d, [x: 2.0, y: -8.0, z: 3.0], [0.0, 0.0, 0.0] ] G3dRenderWithPixels.AntiAliasing[context3d, TRUE]; MakeFrame[] G3dColorDisplaySupport.PutAIS[ context3d, "figure5.ais" ] -- figure 6 tetrahedron, truncated octohedron, and simple goblet Reset[] G3dRender.AddShapeFromFile[ context3d, "Tetrahedron", "Tetrahedron.shape", [-2.5, 0.0, -1.1]] G3dRender.AddShapeFromFile[ context3d, "Tetrahedron2", "Tetrahedron.shape", [-2.5, 0.0, 1.1]] ShapeTwiddle.ScaleShape[ context3d, "Tetrahedron", 0.6] ShapeTwiddle.ScaleShape[ context3d, "Tetrahedron2", 0.6] G3dRender.RotateShapeLocal[ context3d, "Tetrahedron", 30.0 ] G3dRender.RotateShapeLocal[ context3d, "Tetrahedron2", 30.0 ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Tetrahedron"], $PolygonWithNormals ] G3dRender.AddShapeFromFile[ context3d, "Octohedron", "OpenOctohedron.shape", [0.25, 0.0, -1.2]] G3dRender.AddShapeFromFile[ context3d, "Octohedron2", "OpenOctohedron.shape", [0.25, 0.0, 1.2]] ShapeTwiddle.ScaleShape[ context3d, "Octohedron", 1.0, 0.5, 0.5, 0.8] ShapeTwiddle.ScaleShape[ context3d, "Octohedron2", 1.0, 0.5, 0.5, 0.8] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Octohedron"], $PolygonWithNormals ] G3dRender.AddShapeFromFile[ context3d, "SimpleGoblet", "SimpleGoblet.shape", [2.5, 0.0, -1.25]] G3dRender.AddShapeFromFile[ context3d, "SimpleGoblet2", "SimpleGoblet.shape", [2.5, 0.0, 1.25]] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "SimpleGoblet"], $PolygonWithNormals ] G3dRenderWithPixels.AntiAliasing[context3d, TRUE]; MakeFrame[] G3dColorDisplaySupport.PutAIS[ context3d, "figure6.ais" ] -- figure 8 plump tetrahedron Reset[] G3dRender.AddShapeFromFile[ context3d, "Tetrahedron", "Tetrahedron.shape", [0.0, 0.0, 0.0]] G3dRender.RotateShapeLocal[ context3d, "Tetrahedron", 30.0 ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Tetrahedron"], $PolygonWithTangents ] G3dRenderWithPixels.AntiAliasing[context3d, TRUE]; MakeFrame[] G3dColorDisplaySupport.PutAIS[ context3d, "figure8.ais" ] -- figure 9 better goblet and octohedron Reset[] G3dRender.AddShapeFromFile[ context3d, "Octohedron", "OpenOctohedron.shape", [-1.0, 0.0, 0.0]] ShapeTwiddle.ScaleShape[ context3d, "Octohedron", 1.0, 0.5, 0.5, 0.8] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Octohedron"], $PolygonWithTangents ] G3dRender.AddShapeFromFile[ context3d, "SimpleGoblet", "SimpleGoblet.shape", [1.5, 0.0, 0.0]] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "SimpleGoblet"], $PolygonWithTangents ] G3dRenderWithPixels.AntiAliasing[context3d, TRUE]; MakeFrame[] G3dColorDisplaySupport.PutAIS[ context3d, "figure9.ais" ] G3dColorDisplaySupport.PutAIS[ context3d, "Torus.ais" ] -- figure 12 Bezier goblet and octohedron Reset[] G3dRender.AddShapeFromFile[ context3d, "Octohedron", "OpenOctohedron.shape", [-1.0, 0.0, 0.0]] ShapeTwiddle.ScaleShape[ context3d, "Octohedron", 1.0, 0.5, 0.5, 0.8] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Octohedron"], $PolygonToBezier ] G3dRender.AddShapeFromFile[ context3d, "SimpleGoblet", "SimpleGoblet.shape", [1.5, 0.0, 0.0]] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "SimpleGoblet"], $PolygonToBezier ] G3dRenderWithPixels.AntiAliasing[context3d, TRUE]; MakeFrame[] G3dColorDisplaySupport.PutAIS[ context3d, "figure12.ais" ] -- figure 13 Nebbish comparison Reset[] G3dRender.AddShapeFromFile[ context3d, "Nebbish0", "Nebbish.shape", [-2.0, 0.0, 0.0]] ShapeTwiddle.ScaleShape[ context3d, "Nebbish0", 0.5] G3dRender.SetLines[ context3d, "Nebbish0"] G3dRender.AddShapeFromFile[ context3d, "Nebbish1", "Nebbish.shape", [0.0, 0.0, 0.0]] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Nebbish1"], $PolygonWithTangents ] G3dRender.SetLines[ context3d, "Nebbish1"] G3dRender.AddShapeFromFile[ context3d, "Nebbish2", "Nebbish.shape", [2.0, 0.0, 0.0]] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Nebbish2"], $PolygonWithTangents ] G3dRender.SetRenderStyle[ context3d, "Nebbish2"] PatchFromPolyProcs.unitizeNormals _ TRUE G3dRender.SetView[ context3d, [x: -1.1, y: -9.4, z: 2.666667], [0.0, 0.0, 1.625] ] G3dRenderWithPixels.AntiAliasing[context3d, TRUE]; MakeFrame[] G3dColorDisplaySupport.PutAIS[ context3d, "figure13.ais" ] ScanConvertImpl.statistics _ TRUE ScanConvertImpl.InitHistograms[100,100] ScanConvertImpl.polyCount _ 0 G3dG3dRenderWithPixelsImpl.statistics _ TRUE G3dG3dRenderWithPixelsImpl.polyCount _ 0 Reset[] G3dRender.AddShapeFromFile[ context3d, "KleinBottle", "/User/Crow/Shapes/KleinBottle.shape", [0.0, 0.0, 0.0]] G3dRender.SetRenderStyle[ context3d, "KleinBottle" ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "KleinBottle"], $PolygonWithNormals ] Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box", fileName: "WavyTriangle.shape", position: [0.0, 0.0, 0.0] ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Box"], $PolygonWithTangents ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Plane", fileName: "TwoSidedBox.shape", position: [0.0, 0.0, 0.0] ] ShapeTwiddle.ScaleShape[ context3d, "Plane", 0.5, 0.5, 0.5] G3dRender.OrientShape[ context3d, "Plane", [1.0, 0.0, 0.0]] G3dRender.PlaceShape[ context3d, "Plane", [-0.4, 0.0, 0.0]] G3dRender.SetView[ context3d, [x: -1.6875, y: -0.0135, z: 0.5788125], [0.0, 0.0, 0.0] ] Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box", fileName: "SphericalTriangle.shape", position: [0.0, 0.0, 0.0] ] PatchFromPolyProcs.minCosToAlignOpen _ -1.0 -- keep corners square G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Box"], $PolygonToTnsrPatch ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box2", fileName: "WavyBezierTriangle.shape", position: [-0.5, 0.0, 0.0] ] PatchFromPolyProcs.recurseLimit _ 2 PatchFromPolyProcs.minCosToAlignOpen _ -1.0 -- keep corners square G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Box"], $PolygonWithTangents ] BezierFromPolyProcs.minCosToAlignOpen _ -1.0 -- keep corners square G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Box"], $PolygonToBezier ] G3dRender.FindShape[context3d, "Box"].shadingClass.shadingType _ $CtlPts TwoSidedBox.shape OpenOctohedron.shape OpenHexiDecahedron.shape TriTube.shape ClosedBox.shape OpenBox.shape CurvedEdge.shape CrookedTriangle.shape WavyTriangle.shape SphericalTriangle.shape WavySquare.shape Hexagon.shape Tetrahedron.shape Octohedron.shape Torus.shape Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box", fileName: "WavyTriangle.shape", position: [0.0, 0.0, 0.0] ] ScanConvertImpl.ShowCoords[p] ShowCorner[ corners[0], LIST["inVtx", "outVtx", "ptr", "inDir", "outDir"] ]!! context.class.loadBackground[context] context3d.shapes[1].shadingProps _ NIL -- to kill $PatchCorners list, etc. BezierDisplayCtrlPts[context, p, $DontRelease] -- for display at breakpoint inside proc. StandardPatchProcs.maxJaggyDeviation _ 1.0 StandardPatchProcs.maxJaggyInteriorDev _ 4.0 StandardPatchProcs.maxDeviation _ 0.25 StandardPatchProcs.maxInteriorDev _ 1.0 StandardPatchProcs.stopIfStraight _ FALSE StandardPatchProcs.showCtlPts _ FALSE StandardPatchProcs.recurseLimit _ 3 StandardPatchProcs.showLines _ TRUE StandardPatchProcs.recurseLimit _ 0 StandardPatchProcs.showCtlPts _ TRUE ShowSinglePatch[0, 1] ShowSinglePatch[0, 27, TRUE] -- sticky, subsequent mouse clicks show this patch ShowPatchesOnVtx[0, 26] context3d.class.loadBackground[context3d] -- clear viewport to background SurfaceRenderImpl.ShowOnePatch[context3d, context3d.shapes[1], 43] G3dRender.FindShape[context3d, "Icosahedron"].shadingClass.shadingType _ $Smooth Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box", fileName: "TwoBadSquares.shape", position: [0.0, 0.0, 0.0] ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Box"], $PolygonWithTangents ] G3dRender.SetView[ context3d, [x: 0.6, y: -8.866667, z: 10.8], [0.0, 0.0, 0.0] ] PatchFromPolyProcs.showLines _ TRUE PatchFromPolyProcs.recurseLimit _ 3 PatchFromPolyProcs.unitizeNormals _ TRUE PatchFromPolyProcs.stopIfStraight _ FALSE PatchFromPolyProcs.minCosToAlignOpen _ -1.0 -- keep corners square G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Banana"], $PolygonNoImage ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "ChampagneGlass"], $PolygonNoImage ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "UtahEgg"], $PolygonNoImage ] Reset[] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box0", fileName: "TwoIsoTraps.shape", position: [3.0, 0.0, 0.0] ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Box0"], $PolygonToBezier ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box1", fileName: "TwoBadTraps.shape", position: [0.0, 0.0, 0.0] ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Box1"], $PolygonToBezier ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Box2", fileName: "TwoBadSquares.shape", position: [-3.0, 0.0, 0.0] ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Box2"], $PolygonToBezier ] G3dRender.SetView[ context3d, [x: 0.6, y: -8.866667, z: 10.8], [0.0, 0.0, 0.0] ] StandardPatchProcs.stopIfStraight _ FALSE StandardPatchProcs.recurseLimit _ 4 Reset[] G3dRender.AddLight[context: context3d, name: "Default", position: [150.0, -200.0, 150.0], color: [1.0, 0.5, 0.5] ] G3dRender.AddLight[context: context3d, name: "Second", position: [-250.0, -200.0, -50.0], color: [1.0, 1.0, 0.3] ] G3dRenderWithPixels.AntiAliasing[context3d] G3dRender.AddShapeFromFile[ context3d, "Egg", "UtahEgg.shape", [0.0, 0.0, 0.0]] G3dRender.RotateShapeLocal[ context3d, "Egg", -50.0 ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Egg"], [0.8, 0.8, 0.8] ] G3dRender.SetRenderStyle[ context3d, "Egg" ] G3dRender.SetView[context3d, [0.0, -3.5, 0.0], [0.0, 0.0, 0.0] ] G3dRender.SetAmbientLight[context3d, "weakish darkish blue"] G3dMappedAndSolidTexture.RemoveAllTexture[ context3d, "Egg" ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Egg", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "ReportCoverWithText.ais", $Intensity] ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context: context3d, shapeName: "Egg", botLeft: [0.0, 1.0], topLeft: [0.0, 0.0], topRight: [1.0, 0.0], botRight: [1.0, 1.0], sw: [-210.0, -40.0], nw: [-210.0, 40.0], ne: [-75.0, 40.0], se: [-75.0, -40.0] ] G3dMappedAndSolidTexture.SumAllMappedTextures[ context3d, "Egg" ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Egg", $PartialBurl ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Egg"], $PolygonToBezier ] G3dRender.SetView[context3d, [0.0, -3.5, 0.0], [0.0, 0.0, 0.0] ] G3dRender.SetViewPort[ context3d, [220.0, 15.0, 100.0, 125.0] ] ColorDisplayRenderImpl.timeResolution _ 10 MakeFrame[] G3dRender.SetView[context3d, [0.0, -1.5, 2.0], [0.0, 0.0, 0.0] ] G3dRender.SetViewPort[ context3d, [320.0, 15.0, 100.0, 125.0] ] MakeFrame[] G3dColorDisplaySupport.PutAIS[context3d, "EggWithCover.ais" ] ColorDisplayRender.MakeHiResFrame[ context3d, 1000, 1250, "EggWithCover1000x1250.ais" ] G3dRender.SetViewPort[ context3d, [0.0, 0.0, 640.0, 480.0] ] G3dColorDisplaySupport.GetAIS[context3d, "EggWithCover1000x1250.ais", 0, 300 ] InterpressToAIS ReportCoverWithText.IP gray size: 8.75 11.5 ColorAisToInterpress EggWithCover1000x1250 InterPressToPD EggWithCoverRot.IP Color400 ColorCorrection 1.58 scale PeachPrint MtFuji EggWithCover1000x1250.PD InterpressToAIS ReportCoverWithText.IP gray size: 13.9 14.0 G3dRender.AddShapeFromFile[ context3d, "Egg", "PolySphere.shape", [0.0, 0.0, 0.0]] G3dRender.RotateShapeLocal[ context3d, "Egg", -45.0 ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context: context3d, shapeName: "Egg", botLeft: [1.0, 1.0], topLeft: [1.0, 0.0], topRight: [0.0, 0.0], botRight: [0.0, 1.0], sw: [-100.0, -50.0], nw: [-100, 40.0], ne: [-165.0, 40.0], se: [-165.0, -50.0] ] G3dRender.LoadShapeClass[ G3dRender.FindShape[context3d, "Egg"], $PolygonWithNormals ] ColorDisplayRender.MakeHiResFrame[ context3d, 1000, 1000, "SphereSmoothCover1000x1000.ais" ] ColorAisToInterpress SphereSmoothCover1000x1000 InterPressToPD SphereSmoothCover1000x1000.interpress Color400 ColorCorrection 1.58 scale PeachPrint MtFuji SphereSmoothCover1000x1000.PD G3dRender.AddShapeFromFile[ context3d, "CheckerBoard", "CheckerBoard.shape", [-8.0, -8.0, -2.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "CheckerBoard"], [.8, .4, .2] ]; -- add shading G3dRender.AddShapeFromFile[ context3d, "Icosahedron", "Icosahedron.shape", [2.0, 0.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Icosahedron"], [1.0, 1.0, 1.0] ] G3dRender.AddShapeFromFile[ context3d, "SoccerBall", "SoccerBall.shape", [-2.0, 0.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "SoccerBall"], [1.0, 1.0, 1.0] ] G3dRender.AddShapeFromFile[ context3d, "CutCube", "CutCube.shape", [0.0, 3.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "CutCube"], [.9, .8, .5] ] G3dRender.SetInvisible[ G3dRender.FindShape[context3d,"CheckerBoard"]] G3dRender.SetInvisible[ G3dRender.FindShape[context3d,"SoccerBall"]] G3dRender.SetInvisible[ G3dRender.FindShape[context3d,"CutCube"]] G3dRender.SetInvisible[ G3dRender.FindShape[context3d,"Icosahedron"]] G3dRender.SetVisible[ G3dRender.FindShape[context3d,"CheckerBoard"]] G3dRender.SetVisible[ G3dRender.FindShape[context3d,"Icosahedron"]] G3dRender.SetVisible[ G3dRender.FindShape[context3d,"CutCube"]] G3dRender.DeleteShape[context3d, "CheckerBoard"] G3dRender.DeleteShape[context3d, "CutCube"] G3dRender.DeleteShape[context3d, "SoccerBall"] G3dRender.DeleteShape[context3d, "Icosahedron"] Reset[] G3dRender.AddShapeFromFile[ context3d, "ChampagneGlass", "ChampagneGlass.shape", [1.0, 0.0, 0.0]] G3dRender.SetColor[ G3dRender.FindShape[context3d, "ChampagneGlass"], [1.0, 0.0, 1.0] ] G3dRender.RotateShapeLocal[ context: context3d, shapeName: "ChampagneGlass", theta: -45 ]; G3dRender.SetColor[context3d, "ChampagneGlass"], [1.0,0.0,1.0] ]; G3dRender.SetRenderStyle[context3d, "ChampagneGlass" ]; G3dRender.SetShininess[ context3d, "ChampagneGlass", 50.0 ] G3dRender.SetTransmittance[ context3d, "ChampagneGlass", 0.8 ]; G3dRender.AddShapeFromFile[ context3d, "UtahEgg", "UtahEgg.shape", [-1.5, .0, .0] ] G3dRender.OrientShape[ context: context3d, shapeName: "UtahEgg", axis: [-1, 1, 0] ]; G3dRender.SetColor[ G3dRender.FindShape[context3d, "UtahEgg"], [1.0, .8, .5] ] G3dRender.SetRenderStyle[context3d, "UtahEgg" ]; G3dRender.SetShininess[ context3d, "UtahEgg", 50.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana", "Banana.shape", [0.0, .0, .0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana", [1.0, .9, .1] ] G3dRender.SetShininess[ context3d, "Banana", 50.0 ] G3dRender.SetRenderStyle[context3d, "Banana" ]; G3dRender.NameBackgroundColor[ context3d, "Light Very Dark Blue" ] G3dRender.SetView[ context3d, [3.4295, -0.9765625, 1.0985], [0.0, 0.0, 0.0] ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "UtahEgg", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/CedarChest7.0/ThreeDWorld/Texture.ais", $Intensity] ] G3dMappedAndSolidTexture.SumAllMappedTextures[ context3d, "UtahEgg" ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context3d, "UtahEgg", [0.0, 0.0], [2.0, 3.0], [5.0, 3.0], [3.0, 0.0] ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "ChampagneGlass", $TwistedStripes ] G3dRenderWithPixels.AntiAliasing[context3d] G3dRender.SetView[ context3d, [6.166667, -2.2, 3.266667], [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context3d, "CheckerBoard", "CheckerBoard.shape", [-8.0, -8.0, -3.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "CheckerBoard", [.8, .4, .2] ] G3dRender.SetFaceted[ context3d, "CheckerBoard" ] G3dRender.FindShape[ context3d, "CheckerBoard" ].centroid.z _ -5.0 G3dRender.AddShapeFromFile[ context3d, "CheckerBoard2", "CheckerBoard.shape", [-8.0, -8.0, -3.0] ] G3dRender.RotateShape[context3d, "CheckerBoard2", [8.0, 8.0, 0.0], [8.0, 8.0, 1.0], -90] G3dRender.SetColor[ G3dRender.FindShape[context3d, "CheckerBoard2", [.1, .1, .1] ] G3dRender.SetFaceted[ context3d, "CheckerBoard2" ] G3dRender.FindShape[ context3d, "CheckerBoard2" ].centroid.z _ -5.0 GetOffScreenCtx[context3d, 720, 486]; G3dRender.SetWindow[offScreenCtx, [x: -1.0, y: -0.75, w: 2.0, h: 1.5] ] G3dAnimationSupport.Orbit[ context: offScreenCtx, lookingFrom: context3d.eyePoint, lookingAt: [0.0, 0.0, 0.0], axis: [0.3, 0.0, 1.0], base: [0.0, 0.0, 0.0], moveEPNotCI: TRUE, framesPerRev: 60, startAt: 0, endAt: 59, filename: "///Users/Crow.pa/AIS/Animation/AbekasStillCloser.rgb" ] G3dRender.SetViewPort[ context3d, [120.0, 90.0, 400.0, 300.0] ] DistributedRender.MakeFrame[context3d] SummonerClientRequests SummonerInfo G3dMappedAndSolidTexture.RemoveAllTexture[context3d, "ChampagneGlass" ] G3dAnimationSupport.Orbit[context: context3d, lookingFrom: [0.0, -7.0, 2.0], lookingAt: [0.0, 0.0, 0.0], axis: [-0.1, 0.0, 1.0], base: [0.0, 0.0, 0.0], moveEPNotCI: TRUE, framesPerRev: 40, startAt: 0, endAt: 39, filename: "///Users/Crow.pa/AIS/StillCloser.ais" ] G3dRender.DeleteShape[context3d, "ChampagneGlass"] G3dRender.DeleteShape[context3d, "UtahEgg"] G3dRender.DeleteShape[context3d, "Banana"] G3dRender.DeleteShape[context3d, "UtahEgg"] G3dRender.DeleteShape[context3d, "Banana"] G3dRender.PlaceShape[ context3d, "ChampagneGlass", [0.0, 0.0, 0.0] ]; G3dRender.SetColor[ G3dRender.FindShape[context3d, "ChampagneGlass", [0.0, .9, .5] ] G3dRender.SetRenderStyle[ context3d, "ChampagneGlass" ] context3d.props _ Atom.PutPropOnList[context3d.props, $BackGround, NIL] -- kill background MakeFrame[] G3dRender.SetInvisible[ G3dRender.FindShape[context3d,"ChampagneGlass"]] G3dRender.SetInvisible[ G3dRender.FindShape[context3d,"UtahEgg"]] G3dRender.SetInvisible[ G3dRender.FindShape[context3d,"Banana"]] G3dRender.SetVisible[ G3dRender.FindShape[context3d,"Banana"]] G3dRender.SetVisible[ G3dRender.FindShape[context3d,"ChampagneGlass"]] G3dRender.AddShapeFromFile[ context3d, "Square.obj", "/User/Crow/Shapes/Square.shape"] G3dRender.AddLight[context3d, "Initial", [0.0, 0.0, 100.0], [1.0, 1.0, 1.0] ] G3dRender.SetAmbientLight[ context3d, "light grey" ] G3dRender.SetView[ [2, -3.0, 2], [0.0, 0.0, 0.0] ] MakeFrame[] A Single Anti-Aliased Colored Icosahedron -- set color display to 24-bits Reset[] G3dRenderWithPixels.AntiAliasing[context3d] G3dRender.AddShapeFromFile[ context3d, "Icosahedron", "Icosahedron.shape", [0.0, 0.0, 0.0] ] G3dRender.SetView[ [7.0, 7.0, 4.0], [0.0, 0.0, 0.0] ] MakeFrame[] G3dRender.AddShapeFromFile[ context3d, "treetest1", "treetest1.pp", [0.0, .0, .0] ] ShapeTwiddle.ScaleShape[ context3d, "treetest1", 10.0 ] G3dRender.OrientShape[ context3d, "treetest1", [0.0, -1.0, 0.0]] ShapeTwiddle.ScaleTexture[ context3d, "treetest1", 50.0 ] ShapeTwiddle.Bounds[context3d, "treetest1" ] G3dRender.SetView[context3d, [2.0, -10.0, 3.0], [0.0, 0.0, 3.0] ] G3dRender.WriteShape[context: context3d, shapeName: "treetest1", fileName: "Tree1"], xyz: TRUE, normal: TRUE, color: FALSE, trans: FALSE, texture: TRUE, polyClr: FALSE] ThreeDMisc.AddShapeFromFile[ context3d, "TreeTest1", "TreeTest1.shape", [0.0, .0, .0] ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "TreeTest1", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "bark.ais" ] ThreeDMisc.AddShapeFromFile[context3d, "TeaPot", "TeaPotTubes.shape", [0.0, 0.0, -1.25] ] G3dRender.FindShape[ context3d.shapes, "TeaPot" ].shadingClass.shadingType _ $CtlPts -- display control points as lines G3dRender.SetView[context3d, [-5.6, -7.066667, 2.666667], [0.0, 0.0, 0.0] ] -- good teapot view Reset[] G3dRender.AddShapeFromFile[ context3d, "Sphere", "Sphere.shape", [0.0, 0.0, 0.0]] G3dRender.AddShapeFromFile[ context3d, "Sphere2", "Sphere.shape", [0.3, 0.0, 0.0]] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Sphere", [.3, 1.0, .3] ] G3dRender.SetRenderStyle[ context3d, "Sphere" ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Sphere2", [1.0, .3, .3] ] G3dRender.SetRenderStyle[ context3d, "Sphere2" ] G3dRender.AddShape[ context3d, G3dRender.CopyShape[ context3d, "PolySphere", "Sphere"] ] ShapeTwiddle.ShapeExpand[ context3d, "PolySphere", NIL, 16.1 ] G3dRender.DeleteShape[ context3d, "Sphere" ] ShapeTwiddle.CleanUp[ context: context3d, name: "PolySphere", deSeam: TRUE, tolerance: 0.00001 ] G3dRender.WriteShape[ context3d, "PolySphere", "PolySphere" ] G3dRender.DeleteShape[ context3d, "PolySphere" ] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "DoughNut", fileName: "DoughNut.shape", position: [0.0, 0.0, 0.0]] G3dRender.SetColor[ G3dRender.FindShape[context3d, "DoughNut", [.5, .5, .8] ] G3dRender.SetRenderStyle[ context3d, "DoughNut" ] G3dRender.OrientShape[ context3d, "DoughNut", [0.0, -1.0, 0.0] ] ShapeTwiddle.ShapeExpand[ context3d, "DoughNut", NIL, 5.0 ] ShapeTwiddle.ShapeSubdivide[ context3d, "DoughNut", NIL, 0.0 ] G3dRender.AddShapeFromFile[ context3d, "TeaPot", "TeaPot.bezier", [0.0, 0.0, 0.0]] G3dRender.OrientShape[ThreeDScenes.FindShape[ context3d.shapes, "TeaPot" ], [0.0, -1.0, 0.0]] G3dRender.AddShapeFromFile[ context3d, "TeaPotBot", "TeaPotBot.bezier", position: [0.0, 0.0, 0.0]] G3dRender.AddShape[ context3d.shapes, ShapeTwiddle.Combine[ context3d, "TeaPotWithBot", "TeaPot", "TeaPotBot"] ] ShapeTwiddle.Bounds[context3d, "TeaPotWithBot" ] G3dRender.PlaceShape[context3d, "TeaPotWithBot", [0.0, 0.0, 0.15 ] ] G3dRender.WriteShape[context3d, "TeaPotWithBot", "TeaPotWithBot.bezier"] ThreeDScenes.AddShape[ context3d, ShapeTwiddle.DeletePatches[context3d, "TeaPotLid", "TeaPot", LIST[ [0, 19], [28, 31] ] ] ] ShapeTwiddle.ScaleShape[ context3d, "TeaPotLid", 1.0, 1.07, 1.07, .9 ] ShapeTwiddle.CleanUp[ context3d, "TeaPotLid" ] G3dRender.WriteShape[context3d, "TeaPotLid", "TeaPotLid.bezier"] ThreeDScenes.AddShape[ context3d, ShapeTwiddle.DeletePatches[ context3d, "TeaPotNoLid", "TeaPot", LIST[ [20, 27] ] ] ] ShapeTwiddle.CleanUp[ context3d, "TeaPotNoLid" ] G3dRender.WriteShape[context3d, "TeaPotNoLid", "TeaPotNoLid.bezier"] ThreeDScenes.AddShape[ context3d, ShapeTwiddle.DeletePatches[context3d, "SugarBowl", "TeaPot", LIST[ [8, 27] ] ] ] ShapeTwiddle.CleanUp[ context: context3d, name: "SugarBowl", deSeam: TRUE, tolerance: 0.00001 ] G3dRender.WriteShape[context3d, "SugarBowl", "SugarBowl.bezier"] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "TeaPot", fileName: "TeaPotWithBot.shape", position: [0.0, 0.0, -1.25]] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "TeaPot", fileName: "TeaPotNoLid.shape", position: [0.0, 0.0, -1.25]] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Lid", fileName: "TeaPotLid.bezier", position: [0.0, 0.0, -1.025]] G3dRender.RotateShape[ThreeDScenes.FindShape[ context3d.shapes, "Lid"], [0.0, 0.0, 0.0], [0.0, 0.0, 1.0], -15.0 ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "TeaPot", [0.8, 0.8, 0.8] ] G3dRender.SetRenderStyle[ context3d, "TeaPot" ] G3dRender.SetView[context3d, [-0.5, -10.0, 3.0], [0.0, 0.0, 0.0] ] -- hides joins G3dRender.AddShapeFromFile[ context: context3d, shapeName: "TeaPotBot", fileName: "TeaPotBot.shape", position: [0.0, 0.0, -1.25]] G3dRender.SetColor[ G3dRender.FindShape[context3d, "TeaPotBot", [.5, .5, .8] ] G3dRender.SetRenderStyle[ context3d, "TeaPotBot" ] ShapeTwiddle.ShapeExpand[ context3d, "TeaPotBot", NIL, 5.0 ] ShapeTwiddle.ShapeExpand[ context3d, "TeaPot", NIL, 5.0 ] ThreeDSurfaces.ShapeSubdivide[ context3d, "TeaPot", NIL, 0.0 ] ShapeTwiddle.ShapeExpand[ context3d, "TeaPot", NIL, 16.1 ] ShapeTwiddle.CleanUp[ context3d, "TeaPot", TRUE, .0025 ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "TeaPot", [0.8, 0.8, 0.8] ] G3dRender.SetRenderStyle[ context3d, "TeaPot" ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Shape0", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "Texture.ais", $Intensity] ] G3dMappedAndSolidTexture.SetPatchTextureCoords[ context3d, "Shape0" ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ context3d, "Shape0", [0.0, 0.0], [0.0, 2.0], [6.1, 2.0], [6.1, 0.0] ] G3dMappedAndSolidTexture.SumAllMappedTextures[ context3d, "TeaPot" ] ] G3dRender.SetShininess[ context3d, "TeaPot", 60.0 ] MakeFrame[] -- this will take a while G3dColorDisplaySupport.PutAIS[context3d, "PagedTeaPot3.ais" ] ShapeTwiddle.ShapeExpand[ context3d, "TeaPot", NIL, 16.1 ] ShapeTwiddle.ShapeExpand[ context3d, "Lid", NIL, 16.1 ] ShapeTwiddle.CleanUp[ context3d, "TeaPot", TRUE, .0025 ] ShapeTwiddle.CleanUp[ context3d, "Lid", TRUE, .0025 ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "TeaPot", [1.0, 1.0, 1.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Lid", [1.0, 1.0, 1.0] ] context3d.props _ Atom.PutPropOnList[context3d.props, $BackGround, NIL] -- kill background G3dMappedAndSolidTexture.AddSolidTexture[context3d, "TeaPot", $ZebraBurl ] -- marble teapot G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Lid", $ZebraBurl ] G3dRender.SetShininess[ context3d, "TeaPot", 50.0 ] G3dRender.SetShininess[ context3d, "Lid", 50.0 ] G3dRender.AddLight[context3d, "Initial", [-200.0, -200.0, 400.0], [1.0, 1.0, 1.0] ] G3dRender.StartLog[context3d] MakeFrame[] G3dColorDisplaySupport.PutAIS[context3d, "ZebraBurlTeaPot.ais" ] ColorDisplayRender.MakeHiResFrame[context3d, 1024, 768, "ZebraBurlTeaPotHiRes.ais" ] GetOffScreenCtx[context3d, 1024, 768] G3dColorDisplaySupport.GetAIS[offScreenCtx, "/Cyan/AIS/Crow/ZebraBurlTeaPotHiRes.ais" ] ImageTwiddle.AdjustValueRamp[offScreenCtx, [.7, .5, .7]] ImageTwiddle.AdjustSaturation[offScreenCtx, 0.5 ] G3dColorDisplaySupport.PutAIS[offScreenCtx, "PrinterReadyTeaPotHiRes.ais" ] ColorAISToInterpress PrinterReadyTeaPotHiRes InterpressToPD PrinterReadyTeaPotHiRes.interpress color400 90 rotate 10.25 in 0 in translate 1.6 scale PeachPrint MtFuji PrinterReadyTeaPotHiRes.PD G3dColorDisplaySupport.GetAIS[context3d, "StillLife2.ais" ] ImageTwiddle.AdjustValueRamp[context3d, [.7, .5, .7]] ImageTwiddle.AdjustSaturation[context3d, 0.5 ] G3dColorDisplaySupport.PutAIS[context3d, "StillLife2Prep.ais" ] ColorAISToInterpress StillLife2Prep InterpressToPD StillLife2Prep.interpress Color400 1.25 scale PeachPrint MtFuji StillLife2Prep.pd G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Jug", fileName: "Jug.bezier", position: [0.0, 0.0, -1.25]] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Jug", [.5, .5, .8] ] G3dRender.SetRenderStyle[ context3d, "Jug" ] G3dRender.OrientShape[context3d, "Jug", [0.0, -1.0, 0.0]] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Saucer", fileName: "Saucer.bezier", position: [0.0, 0.0, -1.25]] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Saucer", [.5, .5, .8] ] G3dRender.SetRenderStyle[ context3d, "Saucer" ] G3dRender.OrientShape[context3d, "Saucer", [0.0, -1.0, 0.0]] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Teacup", fileName: "Teacup.bezier", position: [0.0, 0.0, -1.25]] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Saucer", [.5, .5, .8] ] G3dRender.SetRenderStyle[ context3d, "Saucer" ] G3dRender.OrientShape[context3d, "Teacup", [0.0, -1.0, 0.0]] G3dRender.AddShapeFromFile[ context: context3d, shapeName: "Teaspoon", fileName: "Teaspoon.bezier", position: [0.0, 0.0, 0.0]] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Teaspoon", [.5, .5, .8] ] G3dRender.SetRenderStyle[ context3d, "Teaspoon" ] ShapeTwiddle.ShapeExpand[ context3d, "Teaspoon", NIL, 12.0 ] G3dRender.SetFaceted[ context3d, "Teaspoon" ] G3dRender.SetView[context3d, [1.47, 2.6, 1.933], [ 0.1, -0.5, 0.0] ] -- view over big end G3dRender.RestoreFromFile[context3d, "/User/Crow/Shapes/HexTiles.scene" ] G3dRender.SaveOnFile[ context3d, "HexTiles.scene" ] G3dRender.SetView[ context3d, [0.0, -100.0, 70.0], [0.0, -11.0, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles000", "tiles.shape", [-5.05, -4.70, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles000", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles001", "tiles.shape", [-5.05, -5.64, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles001", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles002, "tiles.shape", [-4.10, -5.17, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles002", [0.2, 0.22, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles010", "tiles.shape", [-5.05, -2.82, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles010", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles011", "tiles.shape", [-5.05, -3.76, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles011", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles012, "tiles.shape", [-4.10, -3.29, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles012", [0.2, 0.22, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles020", "tiles.shape", [-5.05, -0.94, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles020", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles021", "tiles.shape", [-5.05, -1.88, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles021", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles022, "tiles.shape", [-4.10, -1.41, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles022", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles030", "tiles.shape", [-5.05, 0.94, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles030", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles031", "tiles.shape", [-5.05, 0.0, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles031", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles032, "tiles.shape", [-4.10, 0.47, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles032", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles040", "tiles.shape", [-5.05, 2.82, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles040", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles041", "tiles.shape", [-5.05, 1.88, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles041", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles042, "tiles.shape", [-4.10, 2.35, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles042", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles100", "tiles.shape", [-3.03, -4.70, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles100", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles101", "tiles.shape", [-3.03, -5.64, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles101", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles102, "tiles.shape", [-2.08, -5.17, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles102", [0.2, 0.22, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles110", "tiles.shape", [-3.03, -2.82, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles110", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles111", "tiles.shape", [-3.03, -3.76, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles111", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles112, "tiles.shape", [-2.08, -3.29, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles112", [0.2, 0.22, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles120", "tiles.shape", [-3.03, -0.94, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles120", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles121", "tiles.shape", [-3.03, -1.88, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles121", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles122, "tiles.shape", [-2.08, -1.41, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles122", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles130", "tiles.shape", [-3.03, 0.94, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles130", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles131", "tiles.shape", [-3.03, 0.0, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles131", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles132, "tiles.shape", [-2.08, 0.47, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles132", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles140", "tiles.shape", [-3.03, 2.82, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles140", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles141", "tiles.shape", [-3.03, 1.88, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles141", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles142, "tiles.shape", [-2.08, 2.35, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles142", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles200", "tiles.shape", [-1.01, -4.70, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles200", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles201", "tiles.shape", [-1.01, -5.64, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles201", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles202, "tiles.shape", [-0.06, -5.17, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles202", [0.2, 0.22, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles210", "tiles.shape", [-1.01, -2.82, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles210", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles211", "tiles.shape", [-1.01, -3.76, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles211", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles212, "tiles.shape", [-0.06, -3.29, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles212", [0.2, 0.22, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles220", "tiles.shape", [-1.01, -0.94, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles220", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles221", "tiles.shape", [-1.01, -1.88, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles221", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles222, "tiles.shape", [-0.06, -1.41, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles222", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles230", "tiles.shape", [-1.01, 0.94, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles230", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles231", "tiles.shape", [-1.01, 0.0, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles231", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles232, "tiles.shape", [-0.06, 0.47, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles232", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles240", "tiles.shape", [-1.01, 2.82, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles240", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles241", "tiles.shape", [-1.01, 1.88, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles241", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles242, "tiles.shape", [-0.06, 2.35, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles242", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles300", "tiles.shape", [1.01, -4.70, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles300", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles301", "tiles.shape", [1.01, -5.64, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles301", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles302, "tiles.shape", [1.96, -5.17, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles302", [0.2, 0.22, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles310", "tiles.shape", [1.01, -2.82, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles310", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles311", "tiles.shape", [1.01, -3.76, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles311", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles312, "tiles.shape", [1.96, -3.29, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles312", [0.2, 0.22, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles320", "tiles.shape", [1.01, -0.94, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles320", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles321", "tiles.shape", [1.01, -1.88, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles321", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles322, "tiles.shape", [1.96, -1.41, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles322", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles330", "tiles.shape", [1.01, 0.94, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles330", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles331", "tiles.shape", [1.01, 0.0, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles331", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles332, "tiles.shape", [1.96, 0.47, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles332", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles340", "tiles.shape", [1.01, 2.82, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles340", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles341", "tiles.shape", [1.01, 1.88, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles341", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles342, "tiles.shape", [1.96, 2.35, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles342", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles400", "tiles.shape", [3.03, -4.70, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles400", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles401", "tiles.shape", [3.03, -5.64, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles401", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles402, "tiles.shape", [3.98, -5.17, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles402", [0.2, 0.22, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles410", "tiles.shape", [3.03, -2.82, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles410", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles411", "tiles.shape", [3.03, -3.76, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles411", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles412, "tiles.shape", [3.98, -3.29, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles412", [0.2, 0.22, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles420", "tiles.shape", [3.03, -0.94, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles420", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles421", "tiles.shape", [3.03, -1.88, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles421", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles422, "tiles.shape", [3.98, -1.41, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles422", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles430", "tiles.shape", [3.03, 0.94, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles430", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles431", "tiles.shape", [3.03, 0.0, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles431", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles432, "tiles.shape", [3.98, 0.47, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles432", [0.2, 0.22, 0.0] ThreeDMisc.AddShapeFromFile[ context3d, "tiles440", "tiles.shape", [3.03, 2.82, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles440", [0.3, 0.2, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles441", "tiles.shape", [3.03, 1.88, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles441", [0.7, 0.1, 0.0] ] ThreeDMisc.AddShapeFromFile[ context3d, "tiles442, "tiles.shape", [3.98, 2.35, 0.0] ] ThreeDMisc.SetFacetedColor[ context3d, "tiles442", [0.2, 0.22, 0.0] Reset[] [] _ ThreeDViewer.SwitchDisplayTo[context3d, $Gray8] G3dRender.SetViewPort[ context3d, [220.0, 140.0, 200.0, 200.0] ] G3dRenderWithPixels.BufferRendering[context3d] context3d.class.updateViewer[context3d] ImageProcs.MakeStripes[context: context3d, numStripes: 12, min: 0.2, max: 0.8, power: 1.0] ShowPixels[] G3dColorDisplaySupport.PutAIS[context3d, "Stripes.ais" ] ImageProcs.MakeStretchedSpots[context: context3d, spotsAcross: 16, min: 0.0, max: 1.0, power: 1.0, stretched: FALSE] ShowPixels[] G3dColorDisplaySupport.PutAIS[context3d, "Texture.ais" ] GetOffScreenCtx[context3d, 640, 480] -- vertical bar resolution test at arbitrary res. ImageProcs.MakeBarTest[ offScreenCtx ] G3dColorDisplaySupport.PutAIS[offScreenCtx, "Bars640.ais" ] Texture Mapped Sphere -- set color display to 24-bits Reset[] ThreeDMisc.AddShapeFromFile[ context3d, "Sphere", "PolySphere.shape"] ThreeDMisc.SetRenderStyleColor[ context3d, "Sphere", [0.9, 0.9, 0.9] ] SetAntiAliased[] -- same as pushing the "NoJaggy" button G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Sphere", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "IACR.ais", $Color] ] G3dMappedAndSolidTexture.MakeTxtrCoordsFromNormals[ ThreeDScenes.FindShape[ context3d.shapes, "Sphere" ], [0.0, 0.0], [0.0, 0.6], [1.0, 0.6], [1.0, 0.0], [-150.0, -30.0], [-150.0, 90.0], [-35.0, 90.0], [-35.0, -30.0] ] G3dMappedAndSolidTexture.SumAllMappedTextures[ ThreeDScenes.FindShape[ context3d.shapes, "Sphere" ] ] ThreeDScenes.SetView[context3d, [0.0, -4.0, 2.0], [0.0, 0.0, 0.0] ] MakeFrame[] -- this will take a while G3dColorDisplaySupport.PutAIS[context3d, "SphereWithIACR.ais" ] SetViewPort[ [220.0, 165.0, 200.0, 150.0] ] -- missing triangle case ThreeDScenes.SetWindow[ context3d, [-.3, 0.5, 0.6, 0.375] ] TextureMaps.MakeTxtrCoordsFromNormals[ ThreeDScenes.FindShape[ context3d.shapes, "Sphere" ], [0.0, 0.0], [0.0, 3.0], [6.1, 3.0], [6.1, 0.0] ] MakeFrame[] -- this will take a while G3dColorDisplaySupport.PutAIS[context3d, "SphereWithPages.ais" ] ColorAISToInterpress /Cyan/AIS/Crow/SphereWithPage InterpressToPD SphereWithPage.interpress Color400 1.25 scale PeachPrint MtFuji SphereWithPage.pd ColorAISToInterpress /Cyan/AIS/Crow/SphereWithPages InterpressToPD SphereWithPages.interpress Color400 1.25 scale PeachPrint MtFuji SphereWithPages.pd Textured SugarBowl -- set color display to 24-bits Reset[] ThreeDMisc.AddShapeFromFile[ context3d, "SugarBowl", "SugarBowl.bezier", [0.0, 0.0, 0.0]] ThreeDMisc.AddShapeFromFile[ context3d, "Lid", "TeaPotLid.bezier", [0.0, 0.0, 0.0]] ThreeDMisc.AddShapeFromFile[ context3d, "Spoon", "TeaSpoon.bezier", [0.0, 0.0, 0.0]] ThreeDScenes.PlaceShape[ThreeDScenes.FindShape[ context3d.shapes, "Spoon" ], [-1.0, 0.9, 2.5]] ThreeDScenes.RotateShape[ThreeDScenes.FindShape[ context3d.shapes, "Spoon" ], [-1.0, 0.0, 2.5], [-1.5, 0.0, 2.5], -10] ThreeDScenes.PlaceShape[ThreeDScenes.FindShape[ context3d.shapes, "Lid" ], [0.1, 0.0, 0.0]] ThreeDScenes.RotateShape[ThreeDScenes.FindShape[ context3d.shapes, "Lid" ], [0.0, 0.0, 2.5], [0.0, 1.0, 2.5], 20] context3d.ptOfInterest _ [0.0, 0.0, 1.4] context3d.eyePoint _ [-8.133, 1.733, 4.8] ThreeDSurfaces.ShapeExpand[ context3d, ThreeDScenes.FindShape[ context3d.shapes, "Spoon" ], NIL, 10.0 ] ThreeDSurfaces.ShapeExpand[ context3d, ThreeDScenes.FindShape[ context3d.shapes, "Lid" ], NIL, 10.0 ] ThreeDSurfaces.ShapeExpand[ context3d, ThreeDScenes.FindShape[ context3d.shapes, "SugarBowl" ], NIL, 10.0 ] ThreeDMisc.GetShadingProcs[context3d, "Lid", ShadingProcs.GetLerpedVals, ShadingProcs.AddColoredMarble ] MakeFrame[] -- this will take a while G3dColorDisplaySupport.PutAIS[context3d, "BowlAndSpoon.ais" ] Texture Mapped Glasses -- set color display to 24-bits Reset[] SetAntiAliased[] -- same as pushing the "NoJaggy" button ThreeDMisc.AddShapeFromFile[ context3d, "ChampagneGlass", "ChampagneGlass.shape", [-2.0, .0, .0] ] TextureMaps.SetTexture[ ThreeDScenes.FindShape[ context3d.shapes, "ChampagneGlass" ], TextureMaps.TextureFromAIS[context3d, "/CedarChest7.0/ThreeDWorld/Texture.ais", NIL] ] ThreeDMisc.SetRenderStyleColor[ context3d, "ChampagneGlass", [0.0, 1.0, 0.2] ] TextureMaps.MakeTxtrCoordsFromVtxNos[ ThreeDScenes.FindShape[ context3d.shapes, "ChampagneGlass" ], 19, 20, [0.0, 0.0], [1.0, 3.0], [3.0, 3.0], [2.0, 0.0] ] ThreeDScenes.AddLight[context3d, "Initial", [100.0, 0.0, 100.0], [1.0, 1.0, 0.7] ] TextureMaps.SumTexture[ context3d.shapes, "ChampagneGlass" ] ThreeDMisc.AddShapeFromFile[ context3d, "ChampagneGlass2", "ChampagneGlass.shape", [2.0, .0, .0] ] TextureMaps.SetTexture[ ThreeDScenes.FindShape[ context3d.shapes, "ChampagneGlass2" ], TextureMaps.TextureFromAIS[context3d, "/CedarChest7.0/ThreeDWorld/Texture.ais", $Bump] ] ThreeDMisc.SetRenderStyleColor[ context3d, "ChampagneGlass2", [0.0, 0.2, 1.0] ] ThreeDMisc.SetShininess[ context3d, "ChampagneGlass2", 50.0 ] TextureMaps.MakeTxtrCoordsFromVtxNos[ context3d, "ChampagneGlass2", 19, 20, [0.0, 0.0], [1.0, 3.0], [3.0, 3.0], [2.0, 0.0] ] TextureMaps.SumAllMappedTextures[ context3d.shapes, "ChampagneGlass2" ] ThreeDScenes.SetView[context3d, [0.0, -12.0, 3.0], [0.0, 0.0, 0.0] ] MakeFrame[] -- this will take a while Reset[] G3dRender.AddShapeFromFile[ context3d, "Heart", "Heart.shape", [0.0, 0.0, 0.0]] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Heart", [1.0, 0.0, 0.0] ] G3dRender.SetFaceted[ context3d, "Heart" ] G3dRender.SetShininess[ context3d, "Heart", 100.0 ] G3dRender.AddLight[context3d, "Initial", [77.0, 196.0, 50.0], [1.0, 1.0, 1.0] ] G3dRender.SetView[context3d, [x: 1.133333, y: -1.9, z: 4.333333], [0.0, 0.0, 0.0] ] StandardPatchProcs.recurseLimit _ 4 RenderWithImager.MakeInterpressPage[ context3d, "Heart3d.ip" ] InterpressToPD Heart.ip Color400 ColorCorrection 1.25 scale PeachPrint -f MtFuji Heart.pd G3dRender.SetView[context3d, [0.0, 0.7, 3.0], [0.0, 0.7, 0.0] ] ShapeTwiddle.ShapeSubdivide[context3d, Heart ] ShapeTwiddle.ShapeExpand[ context3d, Heart, NIL, 4 ] Reset[] G3dRender.AddLight[context: context3d, name: "Default", position: [-10.0, -200.0, 200.0] ] G3dRender.SetAmbientLight[ context3d, "Lightish Grey" ] G3dRender.NameBackgroundColor[ context3d, "Very Dark Grey" ] G3dRender.AddShapeFromFile[ context3d, "Web", "PaperWeb.shape", [.0, .0, .0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Web", [0.8, 1.0, 0.8] ] G3dRender.SetRenderStyle[ context3d, "Web" ] G3dMappedAndSolidTexture.AddMappedTexture[ context3d, "Web", G3dMappedAndSolidTexture.TextureFromAIS[context3d, "/User/crow/AIS/page-Red.ais", $Intensity] ] G3dMappedAndSolidTexture.SumAllMappedTextures[ context3d, "Web" ] G3dRender.SetView[context3d, [0.53, -3.3, -0.4], [0.5, 0.0, 0.9] ] G3dRenderWithPixels.AntiAliasing[context3d] MakeFrame[] ColorDisplayRender.MakeHiResFrame[ context3d, 1024, 768, "PaperWeb1024x768.ais" ] ColorAISToInterpress WebAndText InterpressToPD WebAndText.interpress Color400 1.25 scale PeachPrint MtFuji PaperWeb1024x768-grey.pd G3dAnimationSupport.OrbitEye[context3d, [2.1, -3.0, -0.2], [.0,.0,.0], [1.4, -3.0, -0.1], [.0,.0,.0], 40, "///Users/Crow.pa/AIS/Animation/PaperWeb.ais", 40] G3dRender.SetViewPort[ context3d, [120.0, 90.0, 400.0, 300.0] ] G3dRender.OrientShape[ context3d, "Web", [1.0, 0.0, 0.0]] G3dRender.RotateShapeLocal[ context3d, "Web", 180.0 ] G3dRender.HideBackfaces[context3d, "Web"] ShapeTwiddle.ScaleTexture[context: context3d, name: "Web", scale: 1.0, xRatio: 1.0, yRatio: -1.0, zRatio: 1.0] Animation3D.SetTxtrTranslation[G3dRender.FindShape[context3d, "Web"], [0.0, 1.0], 40] G3dAnimationSupport.Orbit[context3d, [0.53, -3.3, -0.4], [0.5, 0.0, 0.9], [0.5, -3.3, .2], [0.5, -3.3, -0.4], TRUE, 40, 0, 39, "Paper4Web.ais"] G3dRender.OrientShape[ context3d, "Web", [0.0, 0.0, 1.0]] G3dRender.ShowBackfaces[G3dRender.FindShape[context3d, "Web"]] Animation3D.SetTxtrTranslation[G3dRender.FindShape[context3d, "Web"], [0.0, 1.0], 40] G3dAnimationSupport.Orbit[context3d, [0.53, -3.3, -0.4], [0.5, 0.0, 0.9], [0.5, -3.3, .2], [0.5, -3.3, -0.4], TRUE, 40, 0, 39, "Paper5Web.ais"] G3dAnimationSupport.Orbit[context3d, [0.53, -3.3, -0.4], [0.5, 0.0, 0.9], [0.5, -3.3, .2], [0.5, -3.3, -0.4], TRUE, 10 ] Reset[] SetAntiAliased[] ThreeDMisc.AddShapeFromFile[ context3d, "CheckerBoard", "CheckerBoard.shape", [-8.0, -8.0, -2.0] ] ThreeDMisc.SetFacetedColor[ context3d, "CheckerBoard", [1.0, 1.0, 0.0] ] ThreeDMisc.SetAmbientLight[ context3d, [.7, .7, .7] ] ThreeDScenes.AddLight[ context3d, "Initial", [0.0, 0.0, 100.0], [1.0, 1.0, 1.0] ] ThreeDScenes.SetView[ context3d, [10, -30.0, 100.0], [0.0,-20.0, 0.0] ] MakeFrame[] ThreeDScenes.SetView[ context3d, [10, -30.0, 500.0], [0.0,-50.0, 0.0] ] ShowShapes[] ThreeDScenes.SetView[ context3d, [10, -30.0, 1000.0], [0.0, 100.0, 0.0] ] ShowShapes[] ThreeDScenes.SetView[ context3d, [10, -30.0, 1400.0], [0.0, 200.0, 0.0] ] ShowShapes[] ThreeDScenes.SetView[ context3d, [10, -30.0, 3000.0], [0.0, 500.0, 0.0] ] ShowShapes[] Tiler Statistics ScanconvertImpl.InitHistograms[100, 100] ScanconvertImpl.ClearHistograms[] ScanconvertImpl.statistics _ TRUE MakeFrame[] ScanconvertImpl.ShowHistograms[context3d] ScanconvertImpl.polyCount ScanconvertImpl.avePixelsPerPoly ScanconvertImpl.aveScanSegLength ScanconvertImpl.avePolyHeight ScanconvertImpl.statistics _ FALSE Tiler Test Pattern Reset[] G3dRender.AddShapeFromFile[context3d, "TilerTest", "/Ivy/Crow/Shapes/TilerTest.shape", [0.0, 0.0, 0.0] ] G3dRender.SetView[ context3d, [0.0, -10.0, 0.0], [0.0, 0.0, 0.0] ] G3dRender.SetViewPort[ context3d, [0.0, 0.0, 320.0, 453.0] ] G3dRender.SetViewPort[ context3d, [319.0, 0.0, 320.0, 453.0] ] G3dRenderWithPixels.AntiAliasing[context3d] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "TilerTest", $Checks ] FacetedDemo[] MakeFrame[] _ ComputeServerServerStubImpl.Registry.data!! -- local commands (make .impl.data for 7.0) _ ComputeServerServer.Registry.data!! -- commands picked up by compute server DistributedRenderImpl.minimumUsefulServerPortion _ 0.0 -- force use of server DistributedRenderImpl.procClonesAllowed _ 1 -- prevent process cloning DistributedRender.SetConcurrencyLevel[context3d, 2] DistributedRenderImpl.imageSpaceDivision _ TRUE DistributedRender.MakeFrame[context3d] Reset[] G3dRender.SetView[context3d, [-6.5, -13.8, 6.1], [0.6, 0.0, -1.0] ] G3dRender.AddShapeFromFile[ context3d, "Banana00", "Banana.shape", [-4.0, -4.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana00", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana00", 0.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana01", "Banana.shape", [-2.0, -4.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana01", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana01", 50.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana02", "Banana.shape", [0.0, -4.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana02", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana02", 100.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana03", "Banana.shape", [2.0, -4.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana03", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana03", 150.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana04", "Banana.shape", [4.0, -4.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana04", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana04", 200.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana10", "Banana.shape", [-4.0, -2.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana10", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana10", 250.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana11", "Banana.shape", [-2.0, -2.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana11", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana11", 300.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana12", "Banana.shape", [0.0, -2.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana12", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana12", 350.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana13", "Banana.shape", [2.0, -2.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana13", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana13", 20.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana14", "Banana.shape", [4.0, -2.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana14", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana14", 37.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana20", "Banana.shape", [-4.0, 0.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana20", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana20", 140.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana21", "Banana.shape", [-2.0, 0.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana21", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana21", 120.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana22", "Banana.shape", [0.0, 0.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana22", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana22", 260.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana23", "Banana.shape", [2.0, 0.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana23", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana23", 340.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana24", "Banana.shape", [4.0, 0.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana24", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana24", 270.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana30", "Banana.shape", [-4.0, 2.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana30", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana30", 130.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana31", "Banana.shape", [-2.0, 2.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana31", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana31", 110.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana32", "Banana.shape", [0.0, 2.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana32", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana32", 25.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana33", "Banana.shape", [2.0, 2.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana33", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana33", 70.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana34", "Banana.shape", [4.0, 2.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana34", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana34", 60.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana40", "Banana.shape", [-4.0, 4.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana40", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana40", 20.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana41", "Banana.shape", [-2.0, 4.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana41", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana41", 180.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana42", "Banana.shape", [0.0, 4.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana42", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana42", 210.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana43", "Banana.shape", [2.0, 4.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana43", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana43", 37.0 ] G3dRender.AddShapeFromFile[ context3d, "Banana44", "Banana.shape", [4.0, 4.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Banana44", [1.0, 1.0, 0.1] ] G3dRender.RotateShapeLocal[ context3d, "Banana44", 45.0 ] SetAntiAliased[] DistributedDisplayImpl.procClonesAllowed _ 1 -- avoid process clones and timeouts DistributedRender.MakeFrame[context3d] Reset[] SetAntiAliased[] SetViewPort[ [120.0, 90.0, 400.0, 300.0] ] G3dRender.AddShapeFromFile[ context3d, "Sphere", "PolySphere.shape"] G3dRender.SetColor[ G3dRender.FindShape[context3d, "Sphere", [1.0, 1.0, 1.0] ] G3dRender.SetRenderStyle[ context3d, "Sphere" ] G3dRender.SetShininess[ context3d, "Sphere", 100.0 ] ShapeTwiddle.ScaleShape[context3d, "Sphere", 3.0 ] G3dMappedAndSolidTexture.AddSolidTexture[context3d, "Sphere", $BurlWood ] ThreeDScenes.SetView[context3d, [-0.5, -14.0, 2.0], [0.0, 0.0, 0.0] ] Reset[] SetAntiAliased[] SetViewPort[ [120.0, 90.0, 400.0, 300.0] ] ThreeDScenes.SetView[context3d, [0.5333334, -7.4, 3.0], [0.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context3d, "Icosahedron", "Icosahedron.shape", [3.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context3d, "SoccerBall", "SoccerBall.shape", [-3.0, 0.0, 0.0] ] G3dRender.AddShapeFromFile[ context3d, "CutCube", "CutCube.shape", [0.0, 0.0, 0.0] ] G3dRender.SetColor[ G3dRender.FindShape[context3d, "CutCube", [.9, .3, .1] ] G3dRender.SetFaceted[ context3d, "CutCube" ] ThreeDMisc.RemoteMakeFrame[context3d] SetViewPort[ [220.0, 165.0, 200.0, 150.0] ] DistributedRenderImpl.imageSpaceDivision _ TRUE -- for parallel by image slices DistributedRenderImpl.computingRemote _ FALSE -- to test without compute server DistributedRenderImpl.computingSerially _ TRUE -- to force serial computation DistributedRenderImpl.showBoxes _ TRUE -- to show bounding boxes DistributedRenderImpl.showBoxCoverage _ 0.35 -- strength of bounding boxes DistributedRenderImpl.showGaps _ TRUE -- to show slice lines DistributedRenderImpl.procClonesAllowed _ 1 -- limits processors to first one, no timeout DistributedRenderImpl.serverStatsWanted _ TRUE DistributedRenderImpl.RemoteMakeFrame[context3d, 4] ThreeDMisc.Hide[context3d, "SoccerBall"] ThreeDMisc.Hide[context3d, "Icosahedron"] ThreeDMisc.Hide[context3d, "CheckerBoard"] Statistics runs DistributedRenderImpl.procClonesAllowed _ 1 -- avoid process clones and timeouts DistributedRender.MakeFrame[context3d, 20] DistributedRender.MakeFrame[context3d, 15] DistributedRender.MakeFrame[context3d, 10] DistributedRender.MakeFrame[context3d, 9] DistributedRender.MakeFrame[context3d, 8] DistributedRender.MakeFrame[context3d, 7] DistributedRender.MakeFrame[context3d, 6] DistributedRender.MakeFrame[context3d, 5] DistributedRender.MakeFrame[context3d, 4] DistributedRender.MakeFrame[context3d, 3] DistributedRender.MakeFrame[context3d, 2] DistributedRender.MakeFrame[context3d, 1] MakeFrame[] DistributedRenderImpl.imageSpaceDivision _ TRUE DistributedRender.MakeFrame[context3d, 10] DistributedRender.MakeFrame[context3d, 9] DistributedRender.MakeFrame[context3d, 8] DistributedRender.MakeFrame[context3d, 7] DistributedRender.MakeFrame[context3d, 6] DistributedRender.MakeFrame[context3d, 5] DistributedRender.MakeFrame[context3d, 4] DistributedRender.MakeFrame[context3d, 3] DistributedRender.MakeFrame[context3d, 2] MakeFrame[] SummonerClientRequests SummonerInfo ThreeDMisc.GetShadingProcs[context3d, "ChampagneGlass", NIL, NIL ] &sgf[RenderOneShapeImpl] ThreeDScenes.SetWindow[ context3d, [x: -1.0, y: -0.75, w: 1.0, h: 1.235] ] SetViewPort[ [x: 0.0, y: 0.0, w: 200.0, h: 247.0] ] MakeFrame[] ThreeDScenes.SetWindow[ context3d, [x: 0.0, y: -0.75, w: 1.0, h: 1.235] ] SetViewPort[ [x: 200.0, y: 0.0, w: 200.0, h: 247.0] ] MakeFrame[] ThreeDScenes.SetWindow[ context3d, [x: -0.33, y: -0.74, w: 0.24875, h: 1.095] ] SetViewPort[ [x: 134.0, y: 2.0, w: 49.75, h: 219.0] ] MakeFrame[] ThreeDScenes.SetWindow[ context3d, [-1.0, -0.75, 0.5, 1.5] ] SetViewPort[ [120.0, 90.0, 100.0, 300.0] ] MakeFrame[] ThreeDScenes.SetWindow[ context3d, [-0.5, -0.75, 0.5, 1.5] ] SetViewPort[ [220.0, 90.0, 100.0, 300.0] ] MakeFrame[] ThreeDScenes.SetWindow[ context3d, [0.0, -0.75, 0.5, 1.5] ] SetViewPort[ [320.0, 90.0, 100.0, 300.0] ] MakeFrame[] ThreeDScenes.SetWindow[ context3d, [0.5, -0.75, 0.5, 1.5] ] SetViewPort[ [420.0, 90.0, 100.0, 300.0] ] MakeFrame[] SetViewPort[ [0.0, 0.0, 640.0, 453.0] ] -- defaults ThreeDScenes.SetWindow[ context3d, [-1.0, -.7078125, 2.0, 1.415625] ] EtherVoice Examples Coookee Time? Rock-a-by baby, in the tree top. When the wind blows, the cradle will rock. When the bough breaks, the cradle will fall. and down will come baby, cradle and all. Go in and out the window. Go in and out the window. Go in and out the window. As we have done before. Hello, Ailey. How many daynosaurs do you have? Different voices: P;z:nb\ Beautiful Betty. P;z:nd\ Doctor Dennis. P;z:nf\ Frail Frank. P;z:nh\ Huge Harry. P;z:nk\ Kit the Kid. P;z:np\ Perfect Paul. (default) P;z:nr\ Rough Rita. P;z:nu\ Uppity Ursula. P;z:nw\ Whispery Wendy. Speech rate: P;z:ra 280\ speaks fast. rate in [120..350] words per minute; default 180 wpm. P;z:ra 130\ speaks slowly. P;z:ra 180\ normal. RenderShopTest.cm Last Edited by: Crow, September 7, 1989 9:46:33 pm PDT Changing mode without viewers Changing mode without display Miscellaneous Liveboard experiments Old-style calls for debugging edgblt Eggs Texture Squares with varying texture scales (using texture coordinates) Texture Squares of varying sizes and texture scales (using texture coordinates) abutted Striped Egg Stripes mapped to teapot patches Use Your Own Objects Intersecting Boxes NonPlanarPolygons Paper Illustrations To get polygon count Other Stuff Timing tests Bezier continuity tests PARC semiannual report cover Sphere Three object animation Performance: 8-bit - 0.35s Glass, Banana, and Egg Performance: 24-bit - 8.4s, 8-bit - 1.0s, 4-bit - 1.0s Performance: 24-bit - 8.4s, 8-bit - 3.3s, 8-bit dithered- 7.6s, 4-bit dithered - 7.0s Glass alone Single Square Trees Bezier Patch Objects Sphere DoughNut TeaPot modifications TeaPot displays Jug Saucer Teacup Teaspoon Hexagonally tiled plane Artfully tiled plane -- needs fixed below here!!!! Texture Generation -- set color display to 8-bits print spheres on color printer Heart PaperWeb with text Anti-aliased checkerboards MultiProcess Rendering Basic Calls MultiProcess Scene tests Field of Bananas BurlWood Sphere Test Image Κ*I˜Jšœ™Jšœ6™6J˜J˜JšœΟkœΟc%˜JšΠbi(˜(Jšœ+ž˜AJšœ'˜'Jšœ+˜+J˜3Jšœ/˜/Jšœ1˜1JšΟb™Jšœ,˜,Jšœ3˜3Jšœ1˜1Jšœ/˜/Jš ™Jšœ0˜0Jšœ7˜7Jšœ5˜5J˜Jšœ2˜2J˜—šŸ˜Jšœ˜Jšœ˜J˜Jšœ&ž/˜UJšœ%œž)˜UJšœœž$˜IJšœ'˜'Jšœ'˜'Jšœ5˜5Jšœ6œ˜˜>Jšœr’"œ˜©JšœU˜UJšœF˜FJšœA˜AJ˜J˜—šœW™WJšœ˜JšœU˜UJšœW˜WJšœ\˜\Jšœf˜fJšœP˜PJšœP˜PJšœQ˜QJšœQ˜QJšœL˜LJšœL˜LJšœM˜MJšœM˜MJšœH˜HJšœK˜KJšœK˜KJšœL˜LJšœM˜MJšœ@˜@Jšœ@˜@JšœA˜AJšœB˜BJšœK˜KJšœK˜KJšœL˜LJšœL˜LJ˜Jšœ ˜ JšœM˜M—šœ ™ Jšœ˜JšœM˜MJšœP˜PJšœB˜BJšœq’"œ˜§Jšœw˜w—™ Jšœ˜Jšœ‚˜‚Jšœ˜JšœF˜FJ˜——šŸ˜Jšœ˜JšœM˜MJšœP˜PJšœ&˜&JšœC˜CJšœB˜BJšœJ˜JJšœ,˜,Jšœ1˜1Jšœ;˜;Jšœq’"œ˜¨Jšœv˜vJšœ+˜+JšœB˜BJšœq’œG˜ΉJ˜Jšœq’œ)˜›Jšœv˜vJ˜J˜Jšœ˜JšœM˜MJšœW˜WJšœPž˜bJšœ6˜6Jšœ>˜>Jšœ&˜&Jšœ,˜,JšœC˜Cšœ?œœœ œœ œœ%˜–Jšœλœ˜ςJšœ@˜@Jšœϊ˜ϊJ˜J˜—JšœB˜BJšœJ˜JJšœ,˜,šœ1˜1Jšœ;˜;JšœO˜OJšœ;˜;JšœH˜HJšœ;˜;Jšœq’"œ˜’Jšœw˜wJšœq’"œ˜§Jšœw˜w—KšœT˜TJšœR˜RJšœ8˜8Jšœ3˜3Jšœa˜aJšœR˜RJšœ1˜1JšœC˜CJšœb˜bJšœW˜WJšœS˜SJšœ2˜2šœE˜EJšœO˜OJšœ6˜6Jšœ>˜>Jšœ>˜>Jšœ?œœœ œœ œœ%˜–Jšœ+˜+Jšœ%˜%J˜Jšœ¦˜¦JšœB˜BJšœ ˜ —J˜Jšœ˜Jšœc˜cJšœ@˜@Jšœ+˜+Jšœ$˜$Jšœa˜aJšœ&˜&Jšœd˜dJšœK˜KJšœC˜CJšœb˜bJšœ&˜&Jšœe˜eJšœH˜HJšœC˜CJšœd˜dJšœ&˜&Jšœg˜gJšœK˜KJšœC˜CJšœb˜bJšœ&˜&šœh˜hJ™——šŸ˜Jšœ%˜%JšœG˜GJšœ©œg˜”Jšœ©˜©J˜—šŸ ˜ šœ₯œT˜ύJ™—JšœAž˜[JšœFœ{œrœ˜Αšœιœž ˜J™—Jšœ˜Jšœ+’ œ'œ˜eJšœ4˜4Jšœ˜JšœV˜VJšœ3˜3Jšœ˜Jšœ]˜]Jšœ,˜,JšœDž˜V—š ™J˜Jšœ‘˜‘JšœOž ˜[Jšœž œ˜5Jšœ%ž"œ˜HJ™—š ™Kšœ˜Kšœ|˜|Kšœ}˜}KšœM˜MKšœS˜SKšœ;˜;KšœT˜TKšœ(˜(KšœJ˜JK˜Kšœ˜Kšœ“˜“Kšœ4ž˜FKšœ”˜”Kšœ5ž˜GKšœ–˜–Kšœ˜˜˜Kšœ–˜–Kšœœ˜œKšœ’˜’KšœJ˜JKšœ)˜)KšœU˜UKšœ˜Kšœx˜xKšœ{˜{KšœM˜MKšœR˜RKšœT˜TKšœ)˜)Kšœ˜Kšœx˜xKšœ{˜{KšœM˜MKšœ)˜)Kšœ%˜%Kšœ7˜7Kšœ5˜5Kšœ!˜!Kšœ˜Kšœ˜Kšœ˜KšœQ˜QKšœ9˜9KšœV˜VKšœ(˜(KšœP˜PKšœ˜Kšœz˜zKšœ{˜{KšœU˜UKšœ7˜7Kšœ(˜(KšœU˜U—š ™K˜Jšœ™šž˜Jšœ˜JšœT˜TJšœ0˜0KšœW˜WKšœS˜S—šž˜Jšœ˜JšœS˜SJšœ0˜0KšœZ˜ZKšœ$˜(KšœS˜SJšœ+˜+Jšœ-˜-Jšœ?˜?Jšœ΄œb˜šJšœ,˜,K˜—šž ˜ Jšœ˜JšœI˜IJšœ9˜9KšœV˜VKšœƒ˜ƒJšœž ˜JšœQ˜QKšœY˜YKšœZ˜Z—šž%˜%Jšœ˜Jšœ[˜[Jšœ,œ˜2Jšœ ˜ Jšœ9˜9J˜—šž œ žœžœ˜6Jšœ˜JšœZ˜ZJšœZ˜ZJšœ7˜7Jšœ8˜8Kšœ^˜^JšœS˜SJšœS˜SJšœ2˜2Jšœ3˜3KšœZ˜ZJšœP˜PJšœ9˜9Jšœ4˜4Jšœq’"œ˜§JšœA˜AJšœv˜vJšœP˜PJšœ:˜:Jšœ5˜5Jšœr’"œ˜¨JšœB˜BJšœw˜wKšœW˜WJ˜JJšœ,œ˜2Jšœ ˜ Jšœ:˜:—šž@˜@Jšœ˜Jšœ]˜]Jšœ]˜]Jšœ7˜7Jšœ8˜8Jšœ<˜Jšœ;’ œ˜WJšœ<˜˜>JšœF˜FJ˜—š  ™ JšœV˜VJšœM˜MJšœ4˜4J˜2J˜ —šŸI˜IJ˜Jšœ+˜+Jšœ]˜]J˜5J˜ —š ™K˜KšœS˜SJšœ7˜7Kšœ@˜@Jšœ9˜9Kšœ,˜,KšœA˜AJš œZœ œ œ œ œ œ˜¨J™KšœW˜WJšœ‚˜‚J™—š ™J˜JšœY˜YJšœVž"˜xJšœLž˜_Jšžœ˜Jšœ˜š ™JšœQ˜QJšœR˜RJšœL˜LJšœ/˜/JšœM˜MJšœ0˜0JšœX˜XJšœ3œ˜>Jšœ,˜,JšœFœ˜`Jšœ=˜=Jšœ1˜1—š ™Jšœ}˜}JšœM˜MJšœ1˜1JšœA˜AJšœ1œ˜Jšœ/œ˜:Jšœ,œ˜7Jšœ+œ ˜8Jšœ(œ ˜5JšœN˜NJšœK˜KJšœCœž˜ZJšœJž˜[JšœG˜GJšœ3˜3Jšœ0˜0JšœS˜SJšœ˜Jšœ ˜ Jšœ*’œ˜AJšœ9’œ˜UJšœ%˜%JšœW˜WJšœ8˜8Jšœ1˜1JšœK˜KJšœ,˜,Jšœf˜fJšœ,˜,J˜Jšœ*’ œ˜;Jšœ5˜5Jšœ.˜.Jšœ*’œ˜@Jšœ’˜#Jšœ’œ˜—šŸ6˜6Jšœ˜Jšœž'˜˜>JšœU˜UJšœnœ˜Jšœnœ˜y—š ™Jšœ˜Jšœ˜Jšœb˜bJšœH˜HJšœ5˜5JšœR˜RJšœG˜GJšœ ˜ JšœG˜GJšœ ˜ JšœI˜IJšœ ˜ JšœI˜IJšœ ˜ JšœI˜IJšœ ˜ J˜—šŸ˜Jšœ(˜(Jšœ!˜!Jšœ˜!Jšœ ˜ Jšœ)˜)Jšœ˜Jšœ ˜ Jšœ ˜ Jšœ˜Jšœœ˜#—šŸ˜Jšœ˜Jšœh˜hJšœB˜BJšœ<˜˜>Jšœ+˜+JšœK˜KJšœ ˜ Jšœ ˜ —J˜šŸ  ™"Jšœ.ž+˜YJšœ'ž(˜OJšœ7ž˜NJšœ.ž˜HJšœ3˜3Jšœ+˜/Jšœ'˜'—šŸ™š ™Jšœ˜JšœC˜CJšœV˜VJšœR˜RJšœ:˜:JšœV˜VJšœR˜RJšœ;˜;JšœU˜UJšœR˜RJšœ<˜