<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.povray.org/content?action=history&amp;feed=atom&amp;title=Reference%3ASlope_Map</id>
	<title>Reference:Slope Map - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.povray.org/content?action=history&amp;feed=atom&amp;title=Reference%3ASlope_Map"/>
	<link rel="alternate" type="text/html" href="https://wiki.povray.org/content?title=Reference:Slope_Map&amp;action=history"/>
	<updated>2026-10-09T07:36:03Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://wiki.povray.org/content?title=Reference:Slope_Map&amp;diff=9250&amp;oldid=prev</id>
		<title>Jholsenback: version changes</title>
		<link rel="alternate" type="text/html" href="https://wiki.povray.org/content?title=Reference:Slope_Map&amp;diff=9250&amp;oldid=prev"/>
		<updated>2017-06-30T08:49:43Z</updated>

		<summary type="html">&lt;p&gt;version changes&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 08:49, 30 June 2017&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l17&quot; &gt;Line 17:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 17:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p class=&amp;quot;Note&amp;quot;&amp;gt;&amp;lt;strong&amp;gt;Note:&amp;lt;/strong&amp;gt; The &amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt; brackets are part of the actual &amp;lt;em&amp;gt;SLOPE_MAP_ENTRY&amp;lt;/em&amp;gt;. They are not notational symbols denoting optional parts. The brackets surround each entry in the slope map.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p class=&amp;quot;Note&amp;quot;&amp;gt;&amp;lt;strong&amp;gt;Note:&amp;lt;/strong&amp;gt; The &amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt; brackets are part of the actual &amp;lt;em&amp;gt;SLOPE_MAP_ENTRY&amp;lt;/em&amp;gt;. They are not notational symbols denoting optional parts. The brackets surround each entry in the slope map.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;In &amp;lt;em&amp;gt;previous&amp;lt;/em&amp;gt; versions there &amp;lt;em&amp;gt;had&amp;lt;/em&amp;gt; to be from 2 to 256 entries in the map. A {{Change}} in version 3.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;7.1 &lt;/del&gt;has removed the upper restriction.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;In &amp;lt;em&amp;gt;previous&amp;lt;/em&amp;gt; versions there &amp;lt;em&amp;gt;had&amp;lt;/em&amp;gt; to be from 2 to 256 entries in the map. A {{Change}} in version 3.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;8 &lt;/ins&gt;has removed the upper restriction.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Each &amp;lt;em&amp;gt;&amp;lt;code&amp;gt;Value&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt; is a float value between 0.0 and 1.0 inclusive and each &amp;lt;em&amp;gt;&amp;lt;code&amp;gt; &amp;amp;lt;Height&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt;, &amp;lt;em&amp;gt;&amp;lt;code&amp;gt;Slope&amp;amp;gt;&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt; is a 2 component vector such as &amp;amp;lt;0,1&amp;amp;gt; where the first value represents the apparent height of the wave and the second value represents the slope of the wave at that point. The height should range between 0.0 and 1.0 but any value could be used.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Each &amp;lt;em&amp;gt;&amp;lt;code&amp;gt;Value&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt; is a float value between 0.0 and 1.0 inclusive and each &amp;lt;em&amp;gt;&amp;lt;code&amp;gt; &amp;amp;lt;Height&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt;, &amp;lt;em&amp;gt;&amp;lt;code&amp;gt;Slope&amp;amp;gt;&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt; is a 2 component vector such as &amp;amp;lt;0,1&amp;amp;gt; where the first value represents the apparent height of the wave and the second value represents the slope of the wave at that point. The height should range between 0.0 and 1.0 but any value could be used.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;The slope value is the change in height per unit of distance. For example a slope of zero means flat, a slope of 1.0 means slope upwards at a 45 degree angle and a slope of -1 means slope down at 45 degrees. Theoretically a slope straight up would have infinite slope. In practice, slope values should be kept in the range -3.0 to +3.0. Keep in mind that this is only the visually apparent slope. A normal does not actually change the surface.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;The slope value is the change in height per unit of distance. For example a slope of zero means flat, a slope of 1.0 means slope upwards at a 45 degree angle and a slope of -1 means slope down at 45 degrees. Theoretically a slope straight up would have infinite slope. In practice, slope values should be kept in the range -3.0 to +3.0. Keep in mind that this is only the visually apparent slope. A normal does not actually change the surface.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jholsenback</name></author>
	</entry>
	<entry>
		<id>https://wiki.povray.org/content?title=Reference:Slope_Map&amp;diff=9068&amp;oldid=prev</id>
		<title>Jholsenback: added 256 upper limit change</title>
		<link rel="alternate" type="text/html" href="https://wiki.povray.org/content?title=Reference:Slope_Map&amp;diff=9068&amp;oldid=prev"/>
		<updated>2016-12-18T15:29:21Z</updated>

		<summary type="html">&lt;p&gt;added 256 upper limit change&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 15:29, 18 December 2016&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l17&quot; &gt;Line 17:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 17:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p class=&amp;quot;Note&amp;quot;&amp;gt;&amp;lt;strong&amp;gt;Note:&amp;lt;/strong&amp;gt; The &amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt; brackets are part of the actual &amp;lt;em&amp;gt;SLOPE_MAP_ENTRY&amp;lt;/em&amp;gt;. They are not notational symbols denoting optional parts. The brackets surround each entry in the slope map.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p class=&amp;quot;Note&amp;quot;&amp;gt;&amp;lt;strong&amp;gt;Note:&amp;lt;/strong&amp;gt; The &amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt; brackets are part of the actual &amp;lt;em&amp;gt;SLOPE_MAP_ENTRY&amp;lt;/em&amp;gt;. They are not notational symbols denoting optional parts. The brackets surround each entry in the slope map.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;There may &lt;/del&gt;be from 2 to 256 entries in the map.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;In &amp;lt;em&amp;gt;previous&amp;lt;/em&amp;gt; versions there &amp;lt;em&amp;gt;had&amp;lt;/em&amp;gt; to &lt;/ins&gt;be from 2 to 256 entries in the map&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;. A {{Change}} in version 3.7.1 has removed the upper restriction&lt;/ins&gt;.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Each &amp;lt;em&amp;gt;&amp;lt;code&amp;gt;Value&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt; is a float value between 0.0 and 1.0 inclusive and each &amp;lt;em&amp;gt;&amp;lt;code&amp;gt; &amp;amp;lt;Height&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt;, &amp;lt;em&amp;gt;&amp;lt;code&amp;gt;Slope&amp;amp;gt;&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt; is a 2 component vector such as &amp;amp;lt;0,1&amp;amp;gt; where the first value represents the apparent height of the wave and the second value represents the slope of the wave at that point. The height should range between 0.0 and 1.0 but any value could be used.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Each &amp;lt;em&amp;gt;&amp;lt;code&amp;gt;Value&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt; is a float value between 0.0 and 1.0 inclusive and each &amp;lt;em&amp;gt;&amp;lt;code&amp;gt; &amp;amp;lt;Height&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt;, &amp;lt;em&amp;gt;&amp;lt;code&amp;gt;Slope&amp;amp;gt;&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt; is a 2 component vector such as &amp;amp;lt;0,1&amp;amp;gt; where the first value represents the apparent height of the wave and the second value represents the slope of the wave at that point. The height should range between 0.0 and 1.0 but any value could be used.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;The slope value is the change in height per unit of distance. For example a slope of zero means flat, a slope of 1.0 means slope upwards at a 45 degree angle and a slope of -1 means slope down at 45 degrees. Theoretically a slope straight up would have infinite slope. In practice, slope values should be kept in the range -3.0 to +3.0. Keep in mind that this is only the visually apparent slope. A normal does not actually change the surface.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;The slope value is the change in height per unit of distance. For example a slope of zero means flat, a slope of 1.0 means slope upwards at a 45 degree angle and a slope of -1 means slope down at 45 degrees. Theoretically a slope straight up would have infinite slope. In practice, slope values should be kept in the range -3.0 to +3.0. Keep in mind that this is only the visually apparent slope. A normal does not actually change the surface.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jholsenback</name></author>
	</entry>
	<entry>
		<id>https://wiki.povray.org/content?title=Reference:Slope_Map&amp;diff=9018&amp;oldid=prev</id>
		<title>Clipka: Indexentries fix</title>
		<link rel="alternate" type="text/html" href="https://wiki.povray.org/content?title=Reference:Slope_Map&amp;diff=9018&amp;oldid=prev"/>
		<updated>2016-12-17T01:07:40Z</updated>

		<summary type="html">&lt;p&gt;Indexentries fix&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 01:07, 17 December 2016&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l77&quot; &gt;Line 77:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 77:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==Normals, Accuracy==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#indexentry:accuracy, normals}}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{#indexentry:accuracy, normals}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==Normals, Accuracy==&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Surface normals that use patterns that were not designed for use with normals (anything other than bumps, dents, waves, ripples, and wrinkles) uses a &amp;lt;code&amp;gt;slope_map&amp;lt;/code&amp;gt; whether you specify one or not. To create a perturbed normal from a pattern, POV-Ray samples the pattern at four points in a pyramid surrounding the desired point to determine the gradient of the pattern at the center of the pyramid. The distance that these points are from the center point determines the accuracy of the approximation. Using points too close together causes floating-point inaccuracies. However, using points too far apart can lead to artefacts as well as smoothing out features that should not be smooth.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;p&amp;gt;Surface normals that use patterns that were not designed for use with normals (anything other than bumps, dents, waves, ripples, and wrinkles) uses a &amp;lt;code&amp;gt;slope_map&amp;lt;/code&amp;gt; whether you specify one or not. To create a perturbed normal from a pattern, POV-Ray samples the pattern at four points in a pyramid surrounding the desired point to determine the gradient of the pattern at the center of the pyramid. The distance that these points are from the center point determines the accuracy of the approximation. Using points too close together causes floating-point inaccuracies. However, using points too far apart can lead to artefacts as well as smoothing out features that should not be smooth.&amp;lt;/p&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clipka</name></author>
	</entry>
	<entry>
		<id>https://wiki.povray.org/content?title=Reference:Slope_Map&amp;diff=7464&amp;oldid=prev</id>
		<title>Jholsenback: missing from recent import</title>
		<link rel="alternate" type="text/html" href="https://wiki.povray.org/content?title=Reference:Slope_Map&amp;diff=7464&amp;oldid=prev"/>
		<updated>2012-07-23T19:32:32Z</updated>

		<summary type="html">&lt;p&gt;missing from recent import&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{#indexentry:slope_map}}&lt;br /&gt;
&amp;lt;p&amp;gt;A &amp;lt;code&amp;gt;slope_map&amp;lt;/code&amp;gt; is a normal pattern modifier which gives the user a great deal of control over the exact shape of the bumpy features. Each of the various pattern types available is in fact a mathematical function that takes any x, y, z location and turns it into a number between 0.0 and 1.0 inclusive. That number is used to specify where the various high and low spots are. The &amp;lt;code&amp;gt;slope_map&amp;lt;/code&amp;gt; lets you further shape the contours. It is best illustrated with a gradient normal pattern. For example:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
plane{ z, 0&lt;br /&gt;
  pigment{ White }&lt;br /&gt;
  normal { gradient x }&lt;br /&gt;
  }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Gives a ramp wave pattern that looks like small linear ramps that climb from the points at x=0 to x=1 and then abruptly drops to 0 again to repeat the ramp from x=1 to x=2. A slope map turns this simple linear ramp into almost any wave shape you want. The syntax is as follows:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SLOPE_MAP:&lt;br /&gt;
  slope_map { SLOPE_MAP_BODY }&lt;br /&gt;
SLOPE_MAP_BODY:&lt;br /&gt;
  SLOPE_MAP_IDENTIFIER | SLOPE_MAP_ENTRY...&lt;br /&gt;
SLOPE_MAP_ENTRY:&lt;br /&gt;
  [ Value, &amp;amp;lt;Height, Slope&amp;amp;gt; ]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;p class=&amp;quot;Note&amp;quot;&amp;gt;&amp;lt;strong&amp;gt;Note:&amp;lt;/strong&amp;gt; The &amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt; brackets are part of the actual &amp;lt;em&amp;gt;SLOPE_MAP_ENTRY&amp;lt;/em&amp;gt;. They are not notational symbols denoting optional parts. The brackets surround each entry in the slope map.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;There may be from 2 to 256 entries in the map.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Each &amp;lt;em&amp;gt;&amp;lt;code&amp;gt;Value&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt; is a float value between 0.0 and 1.0 inclusive and each &amp;lt;em&amp;gt;&amp;lt;code&amp;gt; &amp;amp;lt;Height&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt;, &amp;lt;em&amp;gt;&amp;lt;code&amp;gt;Slope&amp;amp;gt;&amp;lt;/code&amp;gt;&amp;lt;/em&amp;gt; is a 2 component vector such as &amp;amp;lt;0,1&amp;amp;gt; where the first value represents the apparent height of the wave and the second value represents the slope of the wave at that point. The height should range between 0.0 and 1.0 but any value could be used.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The slope value is the change in height per unit of distance. For example a slope of zero means flat, a slope of 1.0 means slope upwards at a 45 degree angle and a slope of -1 means slope down at 45 degrees. Theoretically a slope straight up would have infinite slope. In practice, slope values should be kept in the range -3.0 to +3.0. Keep in mind that this is only the visually apparent slope. A normal does not actually change the surface.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;For example here is how to make the ramp slope up for the first half and back down on the second half creating a triangle wave with a sharp peak in the center.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
normal {&lt;br /&gt;
  gradient x             // this is the PATTERN_TYPE&lt;br /&gt;
  slope_map {&lt;br /&gt;
    [0   &amp;amp;lt;0, 1&amp;amp;gt;]   // start at bottom and slope up&lt;br /&gt;
    [0.5 &amp;amp;lt;1, 1&amp;amp;gt;]   // halfway through reach top still climbing&lt;br /&gt;
    [0.5 &amp;amp;lt;1,-1&amp;amp;gt;]   // abruptly slope down&lt;br /&gt;
    [1   &amp;amp;lt;0,-1&amp;amp;gt;]   // finish on down slope at bottom&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;The pattern function is evaluated and the result is a value from 0.0 to 1.0. The first entry says that at x=0 the apparent height is 0 and the slope is 1. At x=0.5 we are at height 1 and slope is still up at 1. The third entry also specifies that at x=0.5 (actually at some tiny fraction above 0.5) we have height 1 but slope -1 which is downwards. Finally at x=1 we are at height 0 again and still sloping down with slope -1.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;Although this example connects the points using straight lines the shape is actually a cubic spline. This example creates a smooth sine wave.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
normal {&lt;br /&gt;
  gradient x                // this is the PATTERN_TYPE&lt;br /&gt;
  slope_map {&lt;br /&gt;
    [0    &amp;amp;lt;0.5, 1&amp;amp;gt;]   // start in middle and slope up&lt;br /&gt;
    [0.25 &amp;amp;lt;1.0, 0&amp;amp;gt;]   // flat slope at top of wave&lt;br /&gt;
    [0.5  &amp;amp;lt;0.5,-1&amp;amp;gt;]   // slope down at mid point&lt;br /&gt;
    [0.75 &amp;amp;lt;0.0, 0&amp;amp;gt;]   // flat slope at bottom&lt;br /&gt;
    [1    &amp;amp;lt;0.5, 1&amp;amp;gt;]   // finish in middle and slope up&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;This example starts at height 0.5 sloping up at slope 1. At a fourth of the way through we are at the top of the curve at height 1 with slope 0 which is flat. The space between these two is a gentle curve because the start and end slopes are different. At half way we are at half height sloping down to bottom out at 3/4ths. By the end we are climbing at slope 1 again to complete the cycle. There are more examples in &amp;lt;code&amp;gt; slopemap.pov&amp;lt;/code&amp;gt; in the sample scenes.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;A &amp;lt;code&amp;gt;slope_map&amp;lt;/code&amp;gt; may be used with any pattern except &amp;lt;code&amp;gt;brick&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;checker&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;hexagon&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;bumps&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;dents&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt; ripples&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;waves&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;wrinkles&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;bump_map&amp;lt;/code&amp;gt;.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;You may declare and use slope map identifiers. For example:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#declare Fancy_Wave =&lt;br /&gt;
slope_map {             // Now let's get fancy&lt;br /&gt;
  [0.0  &amp;amp;lt;0, 1&amp;amp;gt;]   // Do tiny triangle here&lt;br /&gt;
  [0.2  &amp;amp;lt;1, 1&amp;amp;gt;]   //  down&lt;br /&gt;
  [0.2  &amp;amp;lt;1,-1&amp;amp;gt;]   //     to&lt;br /&gt;
  [0.4  &amp;amp;lt;0,-1&amp;amp;gt;]   //       here.&lt;br /&gt;
  [0.4  &amp;amp;lt;0, 0&amp;amp;gt;]   // Flat area&lt;br /&gt;
  [0.5  &amp;amp;lt;0, 0&amp;amp;gt;]   //   through here.&lt;br /&gt;
  [0.5  &amp;amp;lt;1, 0&amp;amp;gt;]   // Square wave leading edge&lt;br /&gt;
  [0.6  &amp;amp;lt;1, 0&amp;amp;gt;]   //   trailing edge&lt;br /&gt;
  [0.6  &amp;amp;lt;0, 0&amp;amp;gt;]   // Flat again&lt;br /&gt;
  [0.7  &amp;amp;lt;0, 0&amp;amp;gt;]   //   through here.&lt;br /&gt;
  [0.7  &amp;amp;lt;0, 3&amp;amp;gt;]   // Start scallop&lt;br /&gt;
  [0.8  &amp;amp;lt;1, 0&amp;amp;gt;]   //   flat on top&lt;br /&gt;
  [0.9  &amp;amp;lt;0,-3&amp;amp;gt;]   //     finish here.&lt;br /&gt;
  [0.9  &amp;amp;lt;0, 0&amp;amp;gt;]   // Flat remaining through 1.0&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
object{ My_Object&lt;br /&gt;
  pigment { White }&lt;br /&gt;
  normal {&lt;br /&gt;
    wood&lt;br /&gt;
    slope_map { Fancy_Wave }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{#indexentry:accuracy, normals}}&lt;br /&gt;
==Normals, Accuracy==&lt;br /&gt;
&amp;lt;p&amp;gt;Surface normals that use patterns that were not designed for use with normals (anything other than bumps, dents, waves, ripples, and wrinkles) uses a &amp;lt;code&amp;gt;slope_map&amp;lt;/code&amp;gt; whether you specify one or not. To create a perturbed normal from a pattern, POV-Ray samples the pattern at four points in a pyramid surrounding the desired point to determine the gradient of the pattern at the center of the pyramid. The distance that these points are from the center point determines the accuracy of the approximation. Using points too close together causes floating-point inaccuracies. However, using points too far apart can lead to artefacts as well as smoothing out features that should not be smooth.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;Usually, points very close together are desired. POV-Ray currently uses a delta or accuracy distance of 0.02. Sometimes it is necessary to decrease this value to get better accuracy if you are viewing a close-up of the texture. Other times, it is nice to increase this value to smooth out sharp edges in the normal (for example, when using a 'solid' crackle pattern). For this reason, a new property, &amp;lt;code&amp;gt;accuracy&amp;lt;/code&amp;gt;, has been added to normals. It only makes a difference if the normal uses a &amp;lt;code&amp;gt;slope_map&amp;lt;/code&amp;gt; (either specified or implied).&amp;lt;/p&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;p&amp;gt;You can specify the value of this accuracy (which is the distance between the sample points when determining the gradient of the pattern for slope_map) by adding &amp;lt;code&amp;gt;accuracy &amp;amp;lt;float&amp;amp;gt;&amp;lt;/code&amp;gt; to your normal. For all patterns, the default is 0.02.&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;For more on &amp;lt;code&amp;gt;slope_map&amp;lt;/code&amp;gt; see the [[Documentation:Tutorial Section 3.3#Slope Map Tutorial|Slope Map Tutorial]]&amp;lt;/p&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jholsenback</name></author>
	</entry>
</feed>