<> <> <> <> DIRECTORY Atom USING [ PropList ], Rope USING [ ROPE ], G3dRender, ThreeDBasics USING [ ShapeInstance, VertexInfoProc ]; MappedAndSolidTexture: CEDAR DEFINITIONS ~ BEGIN <> Context: TYPE ~ G3dRender.Context; Pair: TYPE ~ G3dRender.Pair; Patch: TYPE ~ G3dRender.Patch; SpotProc: TYPE ~ G3dRender.SpotProc; VertexInfoProc: TYPE ~ ThreeDBasics.VertexInfoProc; ShapeInstance: TYPE ~ ThreeDBasics.ShapeInstance; TextureMap: TYPE ~ G3dRender.TextureMap; TextureFunction: TYPE ~ G3dRender.TextureFunction; LORA: TYPE ~ LIST OF REF ANY; <> AddSolidTexture: PROC[context: Context, shapeName: Rope.ROPE, name: ATOM ]; <> AddMappedTexture: PROC[context: Context, shapeName: Rope.ROPE, texture: REF TextureMap]; <> SumAllMappedTextures: PROC[context: Context, shapeName: Rope.ROPE]; <> RemoveAllTexture: PROC[context: Context, shapeName: Rope.ROPE]; <> <> LoadVtxAux: VertexInfoProc; <> LerpVtxAux: VertexInfoProc; <> ShadeVtx: VertexInfoProc; <> <> AdjustTexture: PROC[poly: REF Patch, texture: LORA, halfXRange, halfYRange: REAL _ .5]; <> <> GetTxtrAt: SpotProc; <> <> RegisterTextureFunction: PROC[ name: ATOM, proc: SpotProc, props: Atom.PropList _ NIL ]; <> GetRegisteredTextureFunction: PROC[name: ATOM] RETURNS[ txtrFn: TextureFunction ]; <> Chaos: PROC[x, y, z: REAL] RETURNS [REAL]; <> Noise: PROC[vx, vy, vz: REAL] RETURNS [REAL]; <> <> ScaleTxtrCoords: PROC [ context: Context, shapeName: Rope.ROPE, scale, xRatio, yRatio: REAL _1.0 ]; <> <> <> MakeTxtrCoordsFromVtxNos: PROC[ context: Context, shapeName: Rope.ROPE, vtcesInRow, numberOfRows: NAT, row0col0, rowNcol0, rowNcolM, row0ColM: Pair ]; <> MakeTxtrCoordsFromNormals: PROC[ context: Context, shapeName: Rope.ROPE, botLeft: Pair _ [0.0, 0.0], topLeft: Pair _ [0.0, 1.0], topRight: Pair _ [1.0, 1.0], botRight: Pair _ [1.0, 0.0], sw: Pair _ [180.0, -90.0], nw: Pair _ [180.0, 90.0], ne: Pair _ [-180.0, 90.0], se: Pair _ [-180.0, -90.0] ]; <> <> TextureFromAIS: PROC[context: Context, fileName: Rope.ROPE, type: ATOM _ $Intensity, factor: REAL _ 1.0] RETURNS[texture: REF TextureMap]; <> SumTexture: PROC[texture: REF TextureMap]; <> END.