Terrain Processor: Area: Low-density Cluster (circle): Difference between revisions
Jump to navigation
Jump to search
(Created page with "Area__NOTOC__ {| cellspacing="0" style="background:#eee" | '''Task name''': Area: Low-density Cluster (circle) '''Dll plugin name''': BI...") |
Lou Montana (talk | contribs) m (Text replacement - "[[Image:" to "[[File:") |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:Terrain Processor Manual|Area]] | [[Category:Terrain Processor Manual|Area]] | ||
{| | {{TerrainProcessorManual|Area: Low-density Cluster (circle)|BITasksPlugin.dll|Polygon, PolygonM, PolygonZ|No | ||
|DESCRIPTION=Algorithm used for populating low-density areas. Objects are organized in circle clusters. | |||
|TASKPARAMETERS=* '''RANDOM SEED''' - number used to initialize pseudorandom number generator. | |||
| | |||
Algorithm used for populating low-density areas. Objects are organized in circle clusters. | |||
= | |||
* '''RANDOM SEED''' - number used to initialize pseudorandom number generator | |||
* '''CDENSHA''' - The density of the filling in number of clusters for hectare. | * '''CDENSHA''' - The density of the filling in number of clusters for hectare. | ||
= | |OBJECTPROTOTYPEPARAMETERS=* '''OBJECT''' - Object's prototype name | ||
* '''OBJECT''' - Object's prototype name | |||
* '''MINHEIGHT''' - Minimal size in % | * '''MINHEIGHT''' - Minimal size in % | ||
* '''MAXHEIGHT''' - Maximal size in % | * '''MAXHEIGHT''' - Maximal size in % | ||
Line 24: | Line 11: | ||
* '''MINCOUNT''' - Minimal count of objects in one cluster | * '''MINCOUNT''' - Minimal count of objects in one cluster | ||
* '''MAXCOUNT''' - Maximal count of objects in one cluster | * '''MAXCOUNT''' - Maximal count of objects in one cluster | ||
= | |USAGE=Use this algorithm for placing small object clusters in open areas. Suitable for "peeppering" the landscape with occasional small group of bushes with occassional tree in it, or clusters of small stones with bigger ones closer to the cluster centers. | ||
Use this algorithm for placing small object clusters in open areas. Suitable for "peeppering" the landscape with occasional small group of bushes with occassional tree in it, or clusters of small stones with bigger ones closer to the cluster centers. | |ALGORITHM=For each shape (areal) do : | ||
= | |||
For each shape (areal) do : | |||
# clusters_count = HECTARES * CDENSHA | # clusters_count = HECTARES * CDENSHA | ||
# For clusters_count : | # For clusters_count : | ||
Line 38: | Line 23: | ||
#### If position = cluster_center + direction_vector id inside shape and condition MINDIST[n] is ok, then 3. else 1. | #### If position = cluster_center + direction_vector id inside shape and condition MINDIST[n] is ok, then 3. else 1. | ||
#### Create new instance for object prototype in position. | #### Create new instance for object prototype in position. | ||
= | |SAMPLE=[[File:TerrainProcessor_CircleClusterSettings.png]] | ||
[[ | |||
[[ | [[File:TerrainProcessor_CircleCluster.png]] | ||
}} |
Latest revision as of 23:10, 20 November 2023
Task details
Task name : Area: Low-density Cluster (circle)
Dll plugin name : BITasksPlugin.dll
Geometry type : Polygon, PolygonM, PolygonZ
Heightmap : No
Description
Algorithm used for populating low-density areas. Objects are organized in circle clusters.
Task parameters
- RANDOM SEED - number used to initialize pseudorandom number generator.
- CDENSHA - The density of the filling in number of clusters for hectare.
Object prototype parameters
- OBJECT - Object's prototype name
- MINHEIGHT - Minimal size in %
- MAXHEIGHT - Maximal size in %
- MINDIST - Minimal distance in meters
- GROUPID - Cluster group id
- MINCOUNT - Minimal count of objects in one cluster
- MAXCOUNT - Maximal count of objects in one cluster
Usage
Use this algorithm for placing small object clusters in open areas. Suitable for "peeppering" the landscape with occasional small group of bushes with occassional tree in it, or clusters of small stones with bigger ones closer to the cluster centers.
Algorithm
For each shape (areal) do :
- clusters_count = HECTARES * CDENSHA
- For clusters_count :
- Get random prototypes group.
- Find position inside shape = cluster_center.
- For each object prototype do :
- prototypes_count = random MINCOUNT - MAXCOUNT
- For prototypes_count :
- Get random direction_vector with random length (0 - MAXCRADIUS) from cluster_center.
- If position = cluster_center + direction_vector id inside shape and condition MINDIST[n] is ok, then 3. else 1.
- Create new instance for object prototype in position.