[![Build status](https://github.com/twyleg/track_generator/actions/workflows/checks.yml/badge.svg)]()
[![GitHub latest commit](https://badgen.net/github/last-commit/twyleg/track_generator)](https://GitHub.com/twyleg/track_generator/commit/)
[![PyPI download month](https://img.shields.io/pypi/dm/track-generator)](https://pypi.python.org/pypi/track-generator/)
[![PyPi version](https://badgen.net/pypi/v/track-generator/)](https://pypi.org/project/track-generator)
[![Documentation Status](https://readthedocs.org/projects/track-generator/badge/?version=latest)](http://track-generator.readthedocs.io/?badge=latest)
Track Generator
===============
Simple generator to create tracks (ground textures for vehicle simulations)
from a parametric description (XML).
For example, the following track was generated based on the parametric description
that follows:
**Output (SVG, optional PNG):**
![track definition example](https://raw.githubusercontent.com/twyleg/track_generator/master/docs/source/_static/img/svg/doc_track_example.svg)
**Track definition file (XML):**
```xml
<TrackDefinition version="0.0.1">
<Size width="5.0" height="6.0"/>
<Origin x="0" y="0"/>
<Background color="#545454" opacity="1.0"/>
<Segments>
<Start x="0.500" y="1.300" direction_angle="90.0"/>
<Straight length="1.000"/>
<ParkingArea length="2.200">
<RightLots>
<ParkingLot start="0.0" depth="0.3" opening_ending_angle="60">
<Spot type="free" length="0.4"/>
<Spot type="blocked" length="0.4"/>
<Spot type="occupied" length="0.4"/>
</ParkingLot>
</RightLots>
<LeftLots>
</LeftLots>
</ParkingArea>
<Turn direction="right" radius="0.750" radian="90.0"/>
<Straight length="1.000"/>
<Crosswalk length="0.500"/>
<Straight length="1.000"/>
<Turn direction="right" radius="0.75" radian="135.0"/>
<Straight length="0.500"/>
<Intersection length="1.600" direction="straight"/>
<Turn direction="left" radius="0.800" radian="270.0"/>
<Gap length="1.600" direction="straight"/>
<Straight length="0.500"/>
</Segments>
</TrackDefinition>
```
Installation
============
pip install track-generator
Usage
=====
Generate track
--------------
track_generator generate_track <TRACK_DEFINITION_FILE>
Generate track live
--------------
track_generator generate_track_live <TRACK_DEFINITION_FILE>
Examples
========
Examples that demonstrate the usage of the tool can be found in the
[examples/](https://github.com/twyleg/track_generator/tree/master/examples) directory.
Documentation
=============
Check the readthedocs site for more details:
https://track-generator.readthedocs.io/en/latest/
Raw data
{
"_id": null,
"home_page": "https://github.com/twyleg/track_generator",
"name": "track-generator",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "svg model vehicles track",
"author": "Torsten Wylegala",
"author_email": "mail@twyleg.de",
"download_url": "https://files.pythonhosted.org/packages/a7/a5/a50aceeabcb0110bb046f98b75eb1fcab5243a9808bf77e31ce1ef6497a3/track_generator-0.6.0.tar.gz",
"platform": null,
"description": "[![Build status](https://github.com/twyleg/track_generator/actions/workflows/checks.yml/badge.svg)]()\n[![GitHub latest commit](https://badgen.net/github/last-commit/twyleg/track_generator)](https://GitHub.com/twyleg/track_generator/commit/)\n[![PyPI download month](https://img.shields.io/pypi/dm/track-generator)](https://pypi.python.org/pypi/track-generator/)\n[![PyPi version](https://badgen.net/pypi/v/track-generator/)](https://pypi.org/project/track-generator)\n[![Documentation Status](https://readthedocs.org/projects/track-generator/badge/?version=latest)](http://track-generator.readthedocs.io/?badge=latest)\n\nTrack Generator\n===============\n\nSimple generator to create tracks (ground textures for vehicle simulations)\nfrom a parametric description (XML).\n\nFor example, the following track was generated based on the parametric description\nthat follows:\n\n**Output (SVG, optional PNG):**\n\n![track definition example](https://raw.githubusercontent.com/twyleg/track_generator/master/docs/source/_static/img/svg/doc_track_example.svg)\n\n**Track definition file (XML):**\n\n```xml\n <TrackDefinition version=\"0.0.1\">\n <Size width=\"5.0\" height=\"6.0\"/>\n <Origin x=\"0\" y=\"0\"/>\n <Background color=\"#545454\" opacity=\"1.0\"/>\n <Segments>\n <Start x=\"0.500\" y=\"1.300\" direction_angle=\"90.0\"/>\n <Straight length=\"1.000\"/>\n <ParkingArea length=\"2.200\">\n <RightLots>\n <ParkingLot start=\"0.0\" depth=\"0.3\" opening_ending_angle=\"60\">\n <Spot type=\"free\" length=\"0.4\"/>\n <Spot type=\"blocked\" length=\"0.4\"/>\n <Spot type=\"occupied\" length=\"0.4\"/>\n </ParkingLot>\n </RightLots>\n <LeftLots>\n </LeftLots>\n </ParkingArea>\n <Turn direction=\"right\" radius=\"0.750\" radian=\"90.0\"/>\n <Straight length=\"1.000\"/>\n <Crosswalk length=\"0.500\"/>\n <Straight length=\"1.000\"/>\n <Turn direction=\"right\" radius=\"0.75\" radian=\"135.0\"/>\n <Straight length=\"0.500\"/>\n <Intersection length=\"1.600\" direction=\"straight\"/>\n <Turn direction=\"left\" radius=\"0.800\" radian=\"270.0\"/>\n <Gap length=\"1.600\" direction=\"straight\"/>\n <Straight length=\"0.500\"/>\n </Segments>\n </TrackDefinition>\n```\n\n\nInstallation\n============\n\n pip install track-generator\n\nUsage\n=====\n\nGenerate track\n--------------\n\n track_generator generate_track <TRACK_DEFINITION_FILE>\n\nGenerate track live\n--------------\n\n track_generator generate_track_live <TRACK_DEFINITION_FILE>\n\nExamples\n========\n\nExamples that demonstrate the usage of the tool can be found in the\n[examples/](https://github.com/twyleg/track_generator/tree/master/examples) directory.\n\nDocumentation\n=============\n\nCheck the readthedocs site for more details:\n\nhttps://track-generator.readthedocs.io/en/latest/\n",
"bugtrack_url": null,
"license": "GPL 3.0",
"summary": "Track generator",
"version": "0.6.0",
"project_urls": {
"Homepage": "https://github.com/twyleg/track_generator"
},
"split_keywords": [
"svg",
"model",
"vehicles",
"track"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a467ed3d2d8822c11c1a60051809d46f12b632f0e7775aafabe43a741f33fc0c",
"md5": "9d01d368f2e6184f257b39e95e23984c",
"sha256": "54244e1b897903d784cbbef8ef992faf0c99a7feafed2be709edb7d19e8ec9d0"
},
"downloads": -1,
"filename": "track_generator-0.6.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9d01d368f2e6184f257b39e95e23984c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 22533,
"upload_time": "2023-08-28T00:39:29",
"upload_time_iso_8601": "2023-08-28T00:39:29.541482Z",
"url": "https://files.pythonhosted.org/packages/a4/67/ed3d2d8822c11c1a60051809d46f12b632f0e7775aafabe43a741f33fc0c/track_generator-0.6.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a7a5a50aceeabcb0110bb046f98b75eb1fcab5243a9808bf77e31ce1ef6497a3",
"md5": "34b168268a45f91853864cd87c477596",
"sha256": "bd214b35bdc5b49f4c39427ac31785c972be8a0a0b52e5af76d53d385f1d7bfd"
},
"downloads": -1,
"filename": "track_generator-0.6.0.tar.gz",
"has_sig": false,
"md5_digest": "34b168268a45f91853864cd87c477596",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 37601,
"upload_time": "2023-08-28T00:39:30",
"upload_time_iso_8601": "2023-08-28T00:39:30.728533Z",
"url": "https://files.pythonhosted.org/packages/a7/a5/a50aceeabcb0110bb046f98b75eb1fcab5243a9808bf77e31ce1ef6497a3/track_generator-0.6.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-08-28 00:39:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "twyleg",
"github_project": "track_generator",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "setuptools",
"specs": [
[
"~=",
"73.0.1"
]
]
},
{
"name": "build",
"specs": [
[
"~=",
"1.2.2"
]
]
},
{
"name": "wheel",
"specs": [
[
"~=",
"0.44.0"
]
]
},
{
"name": "twine",
"specs": [
[
"~=",
"5.1.1"
]
]
},
{
"name": "mypy",
"specs": [
[
"~=",
"1.11.1"
]
]
},
{
"name": "black",
"specs": [
[
"~=",
"24.8.0"
]
]
},
{
"name": "tox",
"specs": [
[
"~=",
"4.18.0"
]
]
},
{
"name": "versioneer",
"specs": [
[
"~=",
"0.29"
]
]
},
{
"name": "pytest",
"specs": [
[
"~=",
"8.3.2"
]
]
},
{
"name": "pytransform3d",
"specs": [
[
"~=",
"3.2.0"
]
]
},
{
"name": "drawsvg",
"specs": [
[
"~=",
"2.2.0"
]
]
},
{
"name": "watchdog",
"specs": [
[
"~=",
"3.0.0"
]
]
},
{
"name": "xmlschema",
"specs": [
[
"~=",
"3.4.3"
]
]
},
{
"name": "jinja2",
"specs": [
[
"~=",
"3.1.2"
]
]
},
{
"name": "PySide6",
"specs": []
},
{
"name": "simple-python-app-qt",
"specs": [
[
"~=",
"0.1.0"
]
]
}
],
"tox": true,
"lcname": "track-generator"
}