NoiseEngine/CubicNoise/CubicNoise.xml
2020-01-12 00:32:10 +01:00

169 lines
8.4 KiB
XML

<?xml version="1.0"?>
<doc>
<assembly>
<name>CubicNoise</name>
</assembly>
<members>
<member name="T:CubicNoise.Contracts.INoiseEngine">
<summary>
An interface which each noise generator must implement.
</summary>
</member>
<member name="M:CubicNoise.Contracts.INoiseEngine.Get(System.Single)">
<summary>
Producing a one-dimensional based noise value.
</summary>
<param name="x">The x coordinate.</param>
<returns>The noise value.</returns>
</member>
<member name="M:CubicNoise.Contracts.INoiseEngine.Get(System.Single,System.Single)">
<summary>
Produces a two-dimensional based noise value.
</summary>
<param name="x">The x coordinate.</param>
<param name="y">The y coordinate.</param>
<returns>The noise value.</returns>
</member>
<member name="T:CubicNoise.Contracts.IParameterName">
<summary>
An interface which gets used to provide arbitrary parameter names
to the general noise engine class. It is a way to abstract the
concrete (but to the general noise engine class unknown) parameters
for different noise generators.
</summary>
</member>
<member name="T:CubicNoise.EngineParameters">
<summary>
This class stores all parameters needed to create a noise engine instance.
</summary>
</member>
<member name="P:CubicNoise.EngineParameters.Seed">
<summary>
The engine's seed value. To use a string value as seed, use the GetDeterministicHashCode() method
which gets provided by this library. A different seed value results in a complete different result.
When you generate e.g. a landscape, two different seeds will produce different landscapes.
</summary>
</member>
<member name="P:CubicNoise.EngineParameters.Type">
<summary>
The desired kind of noise generator.
</summary>
</member>
<member name="P:CubicNoise.EngineParameters.IntParameters">
<summary>
A dictionary of additional parameters needed by the chosen noise generator.
</summary>
</member>
<member name="T:CubicNoise.Extensions">
<summary>
Extension methods for this library.
</summary>
</member>
<member name="M:CubicNoise.Extensions.GetDeterministicHashCode(System.String)">
<summary>
This is a deterministic hash function for strings. The official hash methods in .NET Core are no longer
deterministic due to possible hashing attacks, cf. https://youtu.be/R2Cq3CLI6H8.
The source for this implementation: https://andrewlock.net/why-is-string-gethashcode-different-each-time-i-run-my-program-in-net-core/.
Thanks Andrew for providing such a hash function.
Aware: Never use this hash function for any security-related task or for any hashtable storage, etc.
Please use it only in the case, that you really need a deterministic value. In the context of this
library, the hash values are usually used for media, games, art, or simulations in order to share
results with others. This is the only valid use case!
</summary>
<param name="str">The string for which a hash value is to be computed.</param>
<returns>A deterministic 32 bit / 4 byte hash value of the given string.</returns>
</member>
<member name="T:CubicNoise.NoiseEngine">
<summary>
The main class of the library. You should use it to generate a noise engine. This class is thread-safe.
You can use all methods from as many threads, as you want. There a no async methods, because the
performance is very high. Even on a 2019 mid-size business laptop with Intel i5 CPU, each core
is able to produce > 6 million values per second (2 dimensions).
Not only the factory method is thread-safe. Each instance of the class is thread-safe as well.
</summary>
</member>
<member name="M:CubicNoise.NoiseEngine.Create(CubicNoise.EngineParameters)">
<summary>
The factory method to use for generating a noise engine. This method is thread-safe. Call it from as many threads
as you want.
</summary>
<param name="parameters">The parameters for the desired noise engine.</param>
<returns>The desired noise engine instance.</returns>
</member>
<member name="M:CubicNoise.NoiseEngine.Get(System.Single)">
<summary>
Yields a one-dimensional based noise value. This method is thread-safe as well. Call it from as
many threads as you want. You can expect about 16 million calls per CPU core per second (year 2019).
</summary>
<param name="x">The x coordinate.</param>
<returns>The corresponding noise value for the given coordinate.</returns>
</member>
<member name="M:CubicNoise.NoiseEngine.Get(System.Single,System.Single)">
<summary>
Yields a two-dimensional based noise value. This method is thread-safe as well. Call it from as
many threads as you want. You can expect about 6 million calls per CPU core per second (year 2019).
</summary>
<param name="x">The x coordinate.</param>
<param name="y">The y coordinate.</param>
<returns>The corresponding noise value for the given 2d coordinate.</returns>
</member>
<member name="T:CubicNoise.Noisers.CubicNoiseEngine">
<summary>
This is the cubic noise engine by Job Talle, cf. https://jobtalle.com/cubic_noise.html. It based on the
C# version which was provided at Github: https://github.com/jobtalle/CubicNoise/blob/master/c%23/CubicNoise.cs.
Thanks Job for your implementation.
Compared to Job's version, this implementation is a bit optimized and
used useful C# 8.0 / .NET Core 3.1 LTS features.
</summary>
</member>
<member name="T:CubicNoise.Noisers.CubicNoiseIntParameters">
<summary>
This class contains all known cubic noise's parameters.
</summary>
</member>
<member name="F:CubicNoise.Noisers.CubicNoiseIntParameters.OCTAVE">
<summary>
Cubic noise's octave parameter.
</summary>
</member>
<member name="F:CubicNoise.Noisers.CubicNoiseIntParameters.PERIOD_X">
<summary>
Cubic noise's period x parameter.
</summary>
</member>
<member name="F:CubicNoise.Noisers.CubicNoiseIntParameters.PERIOD_Y">
<summary>
Cubic noise's period y parameter.
</summary>
</member>
<member name="T:CubicNoise.Noisers.RandomNumberEngine">
<summary>
This is the random number engine which gets used in case that the UNKNOWN type was used.
This engine is not meant for production. It is a placeholder for empty values, where a type
is needed. The engine will generate a random value each time.
</summary>
</member>
<member name="T:CubicNoise.NoiseTypes">
<summary>
All implemented noise generators.
</summary>
</member>
<member name="F:CubicNoise.NoiseTypes.UNKNOWN">
<summary>
The UNKNOWN generator is a placeholder for empty values. You should not use it in production. It generates random numbers on every call.
</summary>
</member>
<member name="F:CubicNoise.NoiseTypes.CUBIC_NOISE">
<summary>
This is the cubic noise generator by Job Talle, cf. https://jobtalle.com/cubic_noise.html and https://github.com/jobtalle.
</summary>
</member>
</members>
</doc>