public function Logistic::postBuild in Openlayers 7.3
Invoked after an objects render array is built.
Mostly invoked by the map object.
Parameters
array $build: The array with the build information.
\Drupal\openlayers\Types\ObjectInterface $context: The context of the build. Mostly the map object.
Overrides Base::postBuild
File
- modules/
openlayers_library/ src/ Plugin/ Component/ Logistic/ Logistic.php, line 24 - Component: Logistic.
Class
- Logistic
- Class Logistic.
Namespace
Drupal\openlayers_library\Plugin\Component\LogisticCode
public function postBuild(array &$build, ObjectInterface $context = NULL) {
$build['parameters'][$this
->getPluginId()] = array(
'#type' => 'fieldset',
'#title' => 'Logistic map parameters',
'intro' => array(
'#type' => 'fieldset',
'#collapsible' => TRUE,
'#title' => 'About',
'info' => array(
'#markup' => '<p>Bifurcation diagram of the logistic map. The attractor for any value of the parameter <em>r</em> is shown on the vertical line at that <em>r</em>.</p><p>The bifurcation parameter <em>r</em> is shown on the horizontal axis of the plot and the vertical axis shows the possible long-term population values of the logistic function. More info on <a href="https://en.wikipedia.org/wiki/Bifurcation_diagram">Wikipedia</a>.</p><p>Formula: <em>x<sub>n+1</sub> = rx<sub>n</sub>(1-x<sub>n</sub>)</em></p><p>In this plot, <em>r</em> values are on X-axis, <em>Lim<sub>1 → n</sub>(x<sub>n+1</sub> = rx<sub>n</sub>(1-x<sub>n</sub>))</em> are on Y-axis.</p>',
),
),
'start' => array(
'#type' => 'rangefield',
'#title' => 'Start (Lowest value of <em>r</em>)',
'#description' => t('From -2 to 4. Default is 2.'),
'#min' => -2,
'#max' => 4,
'#step' => 0.1,
'#value' => 2,
'#attributes' => array(
'id' => 'start',
'style' => 'width: 100%;',
),
),
'end' => array(
'#type' => 'rangefield',
'#title' => 'End (Highest value of <em>r</em>)',
'#description' => t('From -2 to 4. Default is 4.'),
'#min' => -2,
'#max' => 4,
'#step' => 0.1,
'#value' => 4,
'#attributes' => array(
'id' => 'end',
'style' => 'width: 100%;',
),
),
'initial' => array(
'#type' => 'rangefield',
'#title' => t('Initial value of <em>x</em>'),
'#description' => t('From 0 to 1. Default is 0.5.'),
'#min' => 0,
'#max' => 1,
'#step' => 0.01,
'#value' => 0.5,
'#attributes' => array(
'id' => 'initial',
'style' => 'width: 100%;',
),
),
'iterations' => array(
'#type' => 'rangefield',
'#title' => 'Iterations',
'#description' => 'Value of <em>n</em>. Default is 200.',
'#min' => 10,
'#max' => 1000,
'#step' => 10,
'#value' => 200,
'#attributes' => array(
'id' => 'iterations',
'style' => 'width: 100%;',
),
),
'density' => array(
'#type' => 'rangefield',
'#title' => 'Step',
'#description' => 'On each loop, <em>r</em> increase by this <em>value<sup>-1</sup></em>. Default is 500.',
'#min' => 10,
'#max' => 1000,
'#step' => 10,
'#value' => 500,
'#attributes' => array(
'id' => 'density',
'style' => 'width: 100%;',
),
),
);
}