-
-
-
-/**
- * Verify and preprocess one rule string
- * @param rule the rule
- * @return the preprocessed rule
- */
-string LindenmayerSystem::verifyAndPreprocessRule(string rule)
-{
- // TODO: verifying
-
- string preprocessedRule;
-
- // check every element in rule
- for (int i = 0; i < rule.size(); i++)
- {
- // TODO: allow strings as names
- if (rule[i] >= 'A' && rule[i] <= 'Z' && rule[i] != 'F')
- {
- // add rule operator
- preprocessedRule += '@';
- }
- preprocessedRule += rule[i];
- }
-
- return preprocessedRule;
-}
-
-
-
-/**
- * Unpreprocess one rule string
- * @param rule the rule
- * @return the unpreprocessed rule
- */
-string LindenmayerSystem::unpreprocessRule(string rule)
-{
- string unpreprocessedRule;
-
- // check every element in rule
- for (int i = 0; i < rule.size(); i++)
- {
- // ignore rule operator
- if (rule[i] != '@')
- {
- unpreprocessedRule += rule[i];
- }
- }
-
- return unpreprocessedRule;
-}