the-great-game/docs/codox/cc.journeyman.the-great-game.world.heightmap.html

14 lines
22 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html PUBLIC ""
"">
<html><head><meta charset="UTF-8" /><title>cc.journeyman.the-great-game.world.heightmap documentation</title><link rel="stylesheet" type="text/css" href="css/default.css" /><link rel="stylesheet" type="text/css" href="css/highlight.css" /><script type="text/javascript" src="js/highlight.min.js"></script><script type="text/javascript" src="js/jquery.min.js"></script><script type="text/javascript" src="js/page_effects.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body><div id="header"><h2>Generated by <a href="https://github.com/weavejester/codox">Codox</a></h2><h1><a href="index.html"><span class="project-title"><span class="project-name">The-great-game</span> <span class="project-version">0.1.3-SNAPSHOT</span></span></a></h1></div><div class="sidebar primary"><h3 class="no-link"><span class="inner">Project</span></h3><ul class="index-link"><li class="depth-1"><a href="index.html"><div class="inner">Index</div></a></li></ul><h3 class="no-link"><span class="inner">Topics</span></h3><ul><li class="depth-1"><a href="A-generic-planning-algorithm-for-craftworker-npcs.html"><div class="inner"><span>A Generic Planning Algorithm for craftworker NPCs</span></div></a></li><li class="depth-1"><a href="API_Spec.html"><div class="inner"><span>API Spec (unfinished)</span></div></a></li><li class="depth-1"><a href="Appraisal.html"><div class="inner"><span>Appraisal (unfinished)</span></div></a></li><li class="depth-1"><a href="Architecture.html"><div class="inner"><span>Architecture</span></div></a></li><li class="depth-1"><a href="Baking-the-world.html"><div class="inner"><span>Baking the world</span></div></a></li><li class="depth-1"><a href="Biomes_and_ecology.html"><div class="inner"><span>Biomes and ecology (unfinished)</span></div></a></li><li class="depth-1"><a href="Building_on_microworld.html"><div class="inner"><span>Building on Microworld</span></div></a></li><li class="depth-1"><a href="Canonical-dictionary.html"><div class="inner"><span>Canonical dictionary for this documentation</span></div></a></li><li class="depth-1"><a href="Division_of_tasks_between_server_and_client.html"><div class="inner"><span>Division of tasks between server and client</span></div></a></li><li class="depth-1"><a href="Dynamic-consequences.html"><div class="inner"><span>On the consequences of a dynamic game environment for storytelling</span></div></a></li><li class="depth-1"><a href="Economy.html"><div class="inner"><span>Game world economy</span></div></a></li><li class="depth-1"><a href="Further-reading.html"><div class="inner"><span>Further Reading (and watching)</span></div></a></li><li class="depth-1"><a href="Game_Play.html"><div class="inner"><span>Game Play</span></div></a></li><li class="depth-1"><a href="Genetic-buildings.html"><div class="inner"><span>Genetic Buildings</span></div></a></li><li class="depth-1"><a href="Gossip_scripted_plot_and_Johnny_Silverhand.html"><div class="inner"><span>Gossip, scripted plot, and Johnny Silverhand</span></div></a></li><li class="depth-1"><a href="MVP-Roadmap.html"><div class="inner"><span>Minimum Viable Product, and a road map</span></div></a></li><li class="depth-1"><a href="Modelling_democracy_and_morale.html"><div class="inner"><span>The Red Company: modelling democracy and morale (unfinished)</span></div></a></li><li class="depth-1"><a href="Modelling_trading_cost_and_risk.html"><div class="inner"><span>Modelling trading cost and risk (unfinished)</span></div></a></li><li class="depth-1"><a href="Naming-of-characters.html"><div class="inner"><span>Naming of Characters</span></div></a></li><li class="depth-1"><a href="Not_my_problem.html"><div class="inner"><span> Not my problem</span></div></a></li><li class="depth-1"><a href="On-dying.html"><div class="inner"><span>On Dying, and Injury</span></div></a></li><li class="depth-1"><a href="On-sex-and-sexual-violence.html"><div class="inner"><span>On Sex, and Sexual Violence, in Games</span></div></a></li><li class="depth-1"><a href="Organic_Quests.html"><div class="inner"><span>Organic Quests</span></div></a></li><li class="depth-1"><a href="Pathmaking.html"><div class="inner"><span>Pathmaking</span></div></a></li><li class="depth-1"><a href="Populating-a-game-world.html"><div class="inner"><span>Populating a game world</span></div></a></li><li class="depth-1"><a href="Pseudo-object-inheritance.html"><div class="inner"><span>Pseudo object inheritance</span></div></a></li><li class="depth-1"><a href="Roadmap.html"><div class="inner"><span>Roadmap (obsolete)</span></div></a></li><li class="depth-1"><a href="Sandbox.html"><div class="inner"><span>Sandbox</span></div></a></li><li class="depth-1"><a href="Selecting_Character.html"><div class="inner"><span>Selecting the Player Character</span></div></a></li><li class="depth-1"><a href="Settling-a-game-world.html"><div class="inner"><span>Settling a game world</span></div></a></li><li class="depth-1"><a href="Sexual-dimorphism.html"><div class="inner"><span>Sexual dimorphism</span></div></a></li><li class="depth-1"><a href="Simulated-genetics.html"><div class="inner"><span>Simulated Genetics</span></div></a></li><li class="depth-1"><a href="Simulation-layers.html"><div class="inner"><span>Simulation layers</span></div></a></li><li class="depth-1"><a href="The-spread-of-knowledge-in-a-large-game-world.html"><div class="inner"><span>The spread of knowledge in a large game world</span></div></a></li><li class="depth-1"><a href="Things_Voice_Interaction_Enables.html"><div class="inner"><span>Things Voice Interaction Enables</span></div></a></li><li class="depth-1"><a href="Towards-a-procedural-animation-api.html"><div class="inner"><span>Towards a procedural animation API</span></div></a></li><li class="depth-1"><a href="Tree-library-evaluation.html"><div class="inner"><span>Tree library evaluation</span></div></a></li><li class="depth-1"><a href="Uncanny_dialogue.html"><div class="inner"><span>The Uncanny Valley, and dynamically generated dialogue</span></div></a></li><li class="depth-1"><a href="Voice-acting-considered-harmful.html"><div class="inner"><span>Voice acting considered harmful</span></div></a></li><li class="depth-1"><a href="Worlds-and-flats.html"><div class="inner"><span>Worlds and flats [obsolete]</span></div></a></li><li class="depth-1"><a href="intro.html"><div class="inner"><span>Introduction to the-great-game</span></div></a></li></ul><h3 class="no-link"><span class="inner">Namespaces</span></h3><ul><li class="depth-1"><div class="no-link"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>cc</span></div></div></li><li class="depth-2"><div class="no-link"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>journeyman</span></div></div></li><li class="depth-3"><div class="no-link"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>the-great-game</span></div></div></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>agent</span></div></div></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.agent.agent.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>agent</span></div></a></li><li class="depth-5"><a href="cc.journeyman.the-great-game.agent.schedule.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>schedule</span></div></a></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree" style="top: -83px;"><span class="top" style="height: 92px;"></span><span class="bottom"></span></span><span>buildings</span></div></div></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.buildings.module.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>module</span></div></a></li><li class="depth-5"><a href="cc.journeyman.the-great-game.buildings.rectangular.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>rectangular</span></div></a></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree" style="top: -83px;"><span class="top" style="height: 92px;"></span><span class="bottom"></span></span><span>character</span></div></div></li><li class="depth-5"><a href="cc.journeyman.the-great-game.character.sex.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>sex</span></div></a></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree" style="top: -52px;"><span class="top" style="height: 61px;"></span><span class="bottom"></span></span><span>gossip</span></div></div></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.gossip.gossip.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>gossip</span></div></a></li><li class="depth-5"><a href="cc.journeyman.the-great-game.gossip.news-items.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>news-items</span></div></a></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree" style="top: -83px;"><span class="top" style="height: 92px;"></span><span class="bottom"></span></span><span>holdings</span></div></div></li><li class="depth-5"><a href="cc.journeyman.the-great-game.holdings.holding.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>holding</span></div></a></li><li class="depth-4 branch"><a href="cc.journeyman.the-great-game.launcher.html"><div class="inner"><span class="tree" style="top: -52px;"><span class="top" style="height: 61px;"></span><span class="bottom"></span></span><span>launcher</span></div></a></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>location</span></div></div></li><li class="depth-5"><a href="cc.journeyman.the-great-game.location.location.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>location</span></div></a></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree" style="top: -52px;"><span class="top" style="height: 61px;"></span><span class="bottom"></span></span><span>lore</span></div></div></li><li class="depth-5"><a href="cc.journeyman.the-great-game.lore.digester.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>digester</span></div></a></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree" style="top: -52px;"><span class="top" style="height: 61px;"></span><span class="bottom"></span></span><span>merchants</span></div></div></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.merchants.markets.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>markets</span></div></a></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.merchants.merchant-utils.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>merchant-utils</span></div></a></li><li class="depth-5"><a href="cc.journeyman.the-great-game.merchants.planning.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>planning</span></div></a></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree" style="top: -114px;"><span class="top" style="height: 123px;"></span><span class="bottom"></span></span><span>objects</span></div></div></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.objects.character.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>character</span></div></a></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.objects.container.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>container</span></div></a></li><li class="depth-5"><a href="cc.journeyman.the-great-game.objects.game-object.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>game-object</span></div></a></li><li class="depth-4 branch"><a href="cc.journeyman.the-great-game.playroom.html"><div class="inner"><span class="tree" style="top: -114px;"><span class="top" style="height: 123px;"></span><span class="bottom"></span></span><span>playroom</span></div></a></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>proving</span></div></div></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.proving.core.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>core</span></div></a></li><li class="depth-5"><a href="cc.journeyman.the-great-game.proving.sketches.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>sketches</span></div></a></li><li class="depth-4 branch"><a href="cc.journeyman.the-great-game.time.html"><div class="inner"><span class="tree" style="top: -83px;"><span class="top" style="height: 92px;"></span><span class="bottom"></span></span><span>time</span></div></a></li><li class="depth-4 branch"><a href="cc.journeyman.the-great-game.utils.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>utils</span></div></a></li><li class="depth-4"><div class="no-link"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>world</span></div></div></li><li class="depth-5 branch current"><a href="cc.journeyman.the-great-game.world.heightmap.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>heightmap</span></div></a></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.world.location.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>location</span></div></a></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.world.mw.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>mw</span></div></a></li><li class="depth-5 branch"><a href="cc.journeyman.the-great-game.world.routes.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>routes</span></div></a></li><li class="depth-5"><a href="cc.journeyman.the-great-game.world.world.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>world</span></div></a></li></ul></div><div class="sidebar secondary"><h3><a href="#top"><span class="inner">Public Vars</span></a></h3><ul><li class="depth-1"><a href="cc.journeyman.the-great-game.world.heightmap.html#var-*base-map*"><div class="inner"><span>*base-map*</span></div></a></li><li class="depth-1"><a href="cc.journeyman.the-great-game.world.heightmap.html#var-*noise-map*"><div class="inner"><span>*noise-map*</span></div></a></li><li class="depth-1"><a href="cc.journeyman.the-great-game.world.heightmap.html#var-excerpt-grid"><div class="inner"><span>excerpt-grid</span></div></a></li><li class="depth-1"><a href="cc.journeyman.the-great-game.world.heightmap.html#var-get-surface"><div class="inner"><span>get-surface</span></div></a></li><li class="depth-1"><a href="cc.journeyman.the-great-game.world.heightmap.html#var-interpolate-altitude"><div class="inner"><span>interpolate-altitude</span></div></a></li><li class="depth-1"><a href="cc.journeyman.the-great-game.world.heightmap.html#var-interpolate-cell"><div class="inner"><span>interpolate-cell</span></div></a></li><li class="depth-1"><a href="cc.journeyman.the-great-game.world.heightmap.html#var-interpolate-grid"><div class="inner"><span>interpolate-grid</span></div></a></li><li class="depth-1"><a href="cc.journeyman.the-great-game.world.heightmap.html#var-scale-grid"><div class="inner"><span>scale-grid</span></div></a></li></ul></div><div class="namespace-docs" id="content"><h1 class="anchor" id="top">cc.journeyman.the-great-game.world.heightmap</h1><div class="doc"><div class="markdown"><p>Functions dealing with the tessellated multi-layer heightmap.</p>
</div></div><div class="public anchor" id="var-*base-map*"><h3>*base-map*</h3><h4 class="dynamic">dynamic</h4><div class="usage"></div><div class="doc"><div class="markdown"><p><strong>TODO</strong>: write docs</p>
</div></div><div class="src-link"><a href="https://github.com/simon-brooke/the-great-game/blob/master/src/clj/cc/journeyman/the_great_game/world/heightmap.clj#L31">view source</a></div></div><div class="public anchor" id="var-*noise-map*"><h3>*noise-map*</h3><h4 class="dynamic">dynamic</h4><div class="usage"></div><div class="doc"><div class="markdown"><p><strong>TODO</strong>: write docs</p>
</div></div><div class="src-link"><a href="https://github.com/simon-brooke/the-great-game/blob/master/src/clj/cc/journeyman/the_great_game/world/heightmap.clj#L32">view source</a></div></div><div class="public anchor" id="var-excerpt-grid"><h3>excerpt-grid</h3><div class="usage"><code>(excerpt-grid grid x-offset y-offset width height)</code></div><div class="doc"><div class="markdown"><p>Return that section of this <code>grid</code> where the <code>:x</code> co-ordinate of each cell is greater than or equal to this <code>x-offset</code>, the <code>:y</code> co-ordinate is greater than or equal to this <code>y-offset</code>, whose width is not greater than this <code>width</code>, and whose height is not greater than this <code>height</code>.</p>
</div></div><div class="src-link"><a href="https://github.com/simon-brooke/the-great-game/blob/master/src/clj/cc/journeyman/the_great_game/world/heightmap.clj#L105">view source</a></div></div><div class="public anchor" id="var-get-surface"><h3>get-surface</h3><div class="usage"><code>(get-surface cell-size x-offset y-offset width height)</code><code>(get-surface base-map noise-map cell-size x-offset y-offset width height)</code></div><div class="doc"><div class="markdown"><p>Return, as a vector of vectors of cells represented as Clojure maps, a segment of surface from this <code>base-map</code> as modified by this <code>noise-map</code> at this <code>cell-size</code> starting at this <code>x-offset</code> and <code>y-offset</code> and having this <code>width</code> and <code>height</code>.</p>
<p>If <code>base-map</code> and <code>noise-map</code> are not supplied, the bindings of <code>*base-map*</code> and <code>*noise-map*</code> will be used, respectively.</p>
<p><code>base-map</code> and <code>noise-map</code> may be passed either as strings, assumed to be file paths of PNG files, or as MicroWorld style world arrays. It is assumed that one pixel in <code>base-map</code> represents one square kilometre in the game world. It is assumed that <code>cell-size</code>, <code>x-offset</code>, <code>y-offset</code>, <code>width</code> and <code>height</code> are integer numbers of metres.</p>
</div></div><div class="src-link"><a href="https://github.com/simon-brooke/the-great-game/blob/master/src/clj/cc/journeyman/the_great_game/world/heightmap.clj#L135">view source</a></div></div><div class="public anchor" id="var-interpolate-altitude"><h3>interpolate-altitude</h3><div class="usage"><code>(interpolate-altitude cell grid src-width x-offset y-offset)</code></div><div class="doc"><div class="markdown"><p>Return the altitude of the point at <code>x-offset</code>, <code>y-offset</code> within this <code>cell</code> having this <code>src-width</code>, taken from this <code>grid</code>.</p>
</div></div><div class="src-link"><a href="https://github.com/simon-brooke/the-great-game/blob/master/src/clj/cc/journeyman/the_great_game/world/heightmap.clj#L52">view source</a></div></div><div class="public anchor" id="var-interpolate-cell"><h3>interpolate-cell</h3><div class="usage"><code>(interpolate-cell cell grid src-width target-width)</code></div><div class="doc"><div class="markdown"><p>Construct a grid (array of arrays) of cells each of width <code>target-width</code> from this <code>cell</code>, of width <code>src-width</code>, taken from this <code>grid</code></p>
</div></div><div class="src-link"><a href="https://github.com/simon-brooke/the-great-game/blob/master/src/clj/cc/journeyman/the_great_game/world/heightmap.clj#L69">view source</a></div></div><div class="public anchor" id="var-interpolate-grid"><h3>interpolate-grid</h3><div class="usage"><code>(interpolate-grid grid src-width target-width)</code></div><div class="doc"><div class="markdown"><p>Return a grid interpolated from this <code>grid</code> of rows, cols given scaling from this <code>src-width</code> to this <code>target-width</code></p>
</div></div><div class="src-link"><a href="https://github.com/simon-brooke/the-great-game/blob/master/src/clj/cc/journeyman/the_great_game/world/heightmap.clj#L89">view source</a></div></div><div class="public anchor" id="var-scale-grid"><h3>scale-grid</h3><div class="usage"><code>(scale-grid grid n)</code></div><div class="doc"><div class="markdown"><p>multiply all <code>:x</code> and <code>:y</code> values in this <code>grid</code> by this <code>n</code>.</p>
</div></div><div class="src-link"><a href="https://github.com/simon-brooke/the-great-game/blob/master/src/clj/cc/journeyman/the_great_game/world/heightmap.clj#L34">view source</a></div></div></div></body></html>