Compare commits

..
Author SHA1 Message Date
David Lechner df27ebc27e pybricks.messaging: fix BluetoothMailboxServer close
As per standard Python socketserver, there is `server_close()` rather than `close()`.

Fixes #51
2021-04-07 19:41:30 +02:00
David Lechner b471cae0bc v2.0.0.post1 2020-12-28 16:40:42 -06:00
David Lechner eb7f441c9e pybricks: remove non-EV3 APIs
This is the v2 branch which only supports EV3. Removing the extra APIs
will prevent them from showing up when this library is used for code
completion.
2020-12-28 16:36:47 -06:00
David Lechner dca8518575 pybricks: add type hints for v2
This adds PEP 561 style type hints for Pybricks v2 (just EV3).
2020-12-28 16:21:56 -06:00
667 changed files with 7544 additions and 26888 deletions
-2
View File
@@ -1,2 +0,0 @@
github: [pybricks]
-30
View File
@@ -1,30 +0,0 @@
name: pybricks_jedi
on: [push, pull_request]
jobs:
test:
if: github.ref_type != 'tag'
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- run: pipx install poetry
- run: poetry install
working-directory: ./jedi
- run: poetry run pytest -vv
working-directory: ./jedi
publish:
if: github.ref_type == 'tag' && startsWith(github.ref_name, 'pybricks_jedi/')
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- run: pipx install poetry
- run: poetry install
working-directory: ./jedi
- run: poetry build
working-directory: ./jedi
- run: poetry publish
working-directory: ./jedi
env:
POETRY_PYPI_TOKEN_PYPI: ${{ secrets.PYPI_PYBRICKS_JEDI_TOKEN }}
-38
View File
@@ -1,38 +0,0 @@
name: Release @pybricks/ide-docs
on:
push:
tags:
- '@pybricks/ide-docs/**'
jobs:
publish_ide_docs:
runs-on: ubuntu-20.04
steps:
- name: Ubuntu packages
run: |
sudo apt-get update
sudo apt-get install -y dvisvgm preview-latex-style texlive texlive-fonts-extra texlive-latex-extra
- uses: actions/checkout@v2
with:
submodules: recursive
- name: Set up Python 3.8
uses: actions/setup-python@v1
with:
python-version: 3.8
- name: Install dependencies
run: |
pip install poetry
poetry run python -m pip install --upgrade pip
poetry run python -m pip install --upgrade setuptools
poetry install
- uses: actions/setup-node@v1
with:
node-version: '14.x'
registry-url: 'https://registry.npmjs.org'
- run: yarn build
working-directory: npm/ide-docs
- run: yarn publish
working-directory: npm/ide-docs
env:
NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }}
-23
View File
@@ -1,23 +0,0 @@
name: Release @pybricks/images
on:
push:
tags:
- '@pybricks/images/**'
jobs:
publish_ide_docs:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
# Setup .npmrc file to publish to npm
- uses: actions/setup-node@v3
with:
node-version: '16.x'
registry-url: 'https://registry.npmjs.org'
- run: ./build.py
working-directory: npm/images
- run: yarn publish
working-directory: npm/images/build
env:
NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }}
-23
View File
@@ -1,23 +0,0 @@
name: Release @pybricks/jedi
on:
push:
tags:
- '@pybricks/jedi/**'
jobs:
publish_ide_docs:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v2
# Setup .npmrc file to publish to npm
- uses: actions/setup-node@v3
with:
node-version: '16.x'
registry-url: 'https://registry.npmjs.org'
- run: ./build.py
working-directory: npm/jedi
- run: yarn publish
working-directory: npm/jedi/build
env:
NODE_AUTH_TOKEN: ${{ secrets.NODE_AUTH_TOKEN }}
@@ -1,26 +1,14 @@
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
name: Build Python package and docs
on:
push:
tags-ignore:
- "*"
pull_request:
paths:
- doc/**
- src/**
- poetry.lock
- poetry.toml
- pyproject.toml
- setup.cfg
name: Python package
on: [ push, pull_request ]
jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.8, 3.9]
@@ -44,12 +32,6 @@ jobs:
- name: Build package
run: poetry build
- name: Lint docs
run: poetry run doc8
- name: Build html docs for Read the Docs
run: poetry run doc8 --extension .inc
- name: Build html docs
run: poetry run make -C doc html
- name: Install IDE docs dependencies
run: |
sudo apt-get update
sudo apt-get install dvisvgm preview-latex-style texlive texlive-fonts-extra texlive-latex-extra
- name: Build html docs for Pybricks Code IDE
run: poetry run make -C doc html TAG=ide
-15
View File
@@ -1,15 +0,0 @@
name: Release to PyPI
on:
release:
types: [published]
jobs:
build_and_publish:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- run: pipx run poetry build
- run: pipx run poetry publish
env:
POETRY_PYPI_TOKEN_PYPI: ${{ secrets.PYPI_TOKEN }}
+1 -9
View File
@@ -26,9 +26,8 @@ build/
build-*/
_build/
# Tests
# Test failure outputs
######################
.pytest_cache/
tests/*.exp
tests/*.out
@@ -58,10 +57,3 @@ genrst/
# Virtual environment
######################
.venv/
.python-version
# Generated LDRAW output
######################
stderr-ldview
stdout-ldview
LPub3D/
+3
View File
@@ -1,3 +1,6 @@
[submodule "pybricks-projects"]
path = pybricks-projects
url = https://github.com/pybricks/pybricks-projects
[submodule "media/ev3dev-media"]
path = media/ev3dev-media
url = https://github.com/ev3dev/ev3dev-media.git
-22
View File
@@ -1,22 +0,0 @@
# .readthedocs.yaml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
#
# Settings in the readthedocs online dashboard will be ignored.
# Required
version: 2
# Build documentation in the doc/main directory with Sphinx
sphinx:
configuration: doc/main/conf.py
# Build your docs in additional formats such as PDF
formats:
- pdf
# Set the version of Python and requirements required to build the docs
python:
version: 3.8
install:
- requirements: rtd-requirements.txt
+4 -25
View File
@@ -1,26 +1,12 @@
{
"files.exclude": {
"**/__pycache__": true,
},
"python.defaultInterpreterPath": ".venv/bin/python",
"python.autoComplete.extraPaths": ["jedi/src"],
"python.pythonPath": "${workspaceFolder}/.venv",
"python.formatting.provider": "black",
"python.linting.pylintEnabled": false,
"python.linting.flake8Enabled": true,
"python.linting.pycodestyleEnabled": false,
"python.linting.flake8Enabled": true,
"python.linting.enabled": true,
"[python]": {
"editor.formatOnSave": true,
"editor.defaultFormatter": "ms-python.python"
},
"python.languageServer": "Pylance",
"python.testing.pytestArgs": [
"jedi/tests"
],
"python.testing.unittestEnabled": false,
"python.testing.pytestEnabled": true,
"files.associations": {"*.inc": "restructuredtext"},
"restructuredtext.confPath": "${workspaceFolder}/doc/main",
"restructuredtext.confPath": "${workspaceFolder}/doc/api",
"spellright.language": [
"en_US"
],
@@ -48,12 +34,5 @@
"plaintext",
"python",
"restructuredtext",
],
"rewrap.wrappingColumn": 78,
"python.analysis.extraPaths": [
"jedi/src"
],
"yaml.schemas": {
"https://json.schemastore.org/github-workflow.json": "file:///home/david/work/pybricks/pybricks-api/.github/workflows/build.yml"
},
]
}
+1 -2
View File
@@ -15,7 +15,7 @@ builtins
cdot
Celcius
cityhub
technichub
cplushub
de
dev
en
@@ -78,4 +78,3 @@ thermistor
toctree
TODO
UART
utf-8
-161
View File
@@ -1,161 +0,0 @@
# Changelog
<!-- refer to https://keepachangelog.com/en/1.0.0/ for guidance -->
## Unreleased
## 3.2.0c1 - 2022-12-09
### Changed
- Updated "front" side of the Technic Hub to be consistent with
the Prime Hub.
## 3.2.0b6 - 2022-12-02
### Added
- Documented ``Stop.NONE`` and ``Stop.COAST_SMART``.
- Documented ``ujson`` module.
- Added `done` and `stalled` methods for `DriveBase`.
### Changed
- Changed `PrimeHub.display.image()` to `PrimeHub.display.icon()` and renamed
its kwarg from `image` to `icon`.
- Improved presentation and docstrings of the ``ubuiltins`` and other
MicroPython modules
- Moved the random numbers example for Move Hub to the Move Hub page.
- Moved `done()`, `stalled()`, `load()` from `Control` to `Motor` object.
## 3.2.0b5 - 2022-11-11
### Fixed
- Fixed Jedi code completion for `Color` and `Icon` classes in `pybricks.parameters`.
## 3.2.0b4 - 2022-10-21
### Added
- Code auto-completion for `EssentialHub`.
- Added `System.storage` method.
### Fixed
- Fixed some type hints in `parameters` submodule.
## 3.2.0b1-r3 - 2022-06-26
### Fixed
- Fixed more type hints and improved compatibility with jedi.
## 3.2.0b1-r2 - 2022-06-24
### Changed
- Moved remaining type hints from `.pyi` files to the python stub modules, and
fixed numerous errors in the type hints throughout.
## 3.2.0b1-r1 - 2022-06-09
## Added
- Added `__init__.py` to `pybricks` package.
## 3.2.0b1 - 2022-06-02
### Added
- Code auto-completion for `hub.charger`, `hub.imu` and `hub.system`.
- Moved typing from several `.pyi` files to the actual python modules.
### Fixed
- Fixed code completion for `DCMotor` and `Motor` classes in MS Python VS Code extension.
- Fixed missing `DCMotor` type in `ev3devices`.
- Fixed type hint for `Motor.reset_angle()` in `pupdevices`.
### Changed
- Setter for acceleration can now also be used to set acceleration and
deceleration to different values, using a two-valued tuple.
## 3.1.0 - 2021-12-16
### Added
- Added maximum voltage setter for `DCMotor` and `Motor`.
- Documented `DriveBase.curve()` method.
### Changed
- Removed `duty` setting from `Control.limits` method.
- Removed `integral_range` setting from `Control.pid` method.
### Fixed
- Fixed link to Color Light Matrix page.
- Fixed link to Inventor Hub page.
## 3.1.0rc1 - 2021-11-19
### Added
- Added `ColorLightMatrix` class.
- Added `LWP3Device` class.
**NOTE: version number after this point were from JavaScript package and do
not correspond to Pybricks firmware version numbers.**
## 1.6.0 - 2021-08-30
### Added
- MicroPython module documentation.
- Examples for hub system functions including stop button and shutdown.
### Changed
- Build IDE docs as main docs with minor changes, instead of a completely
separate build.
- Moved motor control documentation to the motor page.
## 1.5.0 - 2021-07-01
### Added
- Documentation for Powered Up Remote Control.
## 1.4.0 - 2021-06-23
### Added
- Enabled beta content that was hidden for the 3.0 release.
- Added notice about using the latest beta version.
## 1.3.3 - 2021-05-21
### Changed
- Match example snippet styling to IDE.
- Add more examples.
## 1.3.2 - 2021-04-26
## Changed
- Theme style fixes.
- Example code fixes
- Match doc version to firmware version.
## 1.3.1 - 2021-04-12
### Changed
- Upgrade sphinx and rtd-theme to fix style issues.
## 1.3.0 - 2021-04-12
### Removed
- Removed features which not be in the official 3.0 release. These features
are still in beta. They'll come back in future releases once tested.
## 1.2.0 - 2021-04-09
### Changed
- Moved installation guide to external site.
## 1.1.1 - 2021-02-14
### Added
- Added installation guide.
- Various documentation fixes.
## 1.1.0 - 2021-01-28
### Added
- Scrollbar styling.
## 1.0.0 - 2021-01-25
### Added
- Sphinx build output.
+15 -104
View File
@@ -20,103 +20,23 @@ will actually be implemented.
- Commit messages have a one-line subject, a blank line and a multiline body:
prefix: Subject of the change.
prefix: subject
body...
- Use a prefix to categorize the change:
- Use the import path as the prefix whenever possible. Examples:
- pybricks.tools: Add StopWatch class.
- pybricks.tools: Reorganize RST files.
- pybricks.tools.StopWatch: Fix return type.
- pybricks.tools.wait: Add example of waiting.
- pybricks.pupdevices: Fix all sensor class ports.
- umath.sin: Fix spelling of Hypotenuse.
- If an import path makes no sense, just use the file path without
extensions:
- .vscode/settings: Fix file associations.
- The subject briefly describes _what_ was changed. Use a short full sentence
as in the examples above.
- Use a prefix to categorize the change. Usually this is the path the the file
being changed.
- If it is a documentation change, it can be shortened to `doc/<file>` (omit
`api` from the path).
- If it is an API change (in the `pybricks` folder), write `api/<file>`
instead of `pybricks/<file>`.
- The subject briefly describes _what_ was changed, e.g. `fix typo`.
- The body describes _why_ the change was made, e.g. `The word "sensor" was
spelled incorrectly`.
- See the [commit history][commits] for more examples.
[commits]: https://github.com/pybricks/pybricks-api/commits/master
**General docstring principles:**
The stubs libraries in this repository have two different purposes:
1. Auto-generating documentation with Sphinx. For this purpose, the
documentation should be concise and clear.
2. Provide autocomplete and intellisense in code editors. For this purpose,
the code needs to be 100% correct. This way, computers can parse your code
correctly and tell you when something is wrong.
Since these objectives don't always align, we address these separately in the
stubs library:
1. The first line(s) of the docstring contain the function or method signature
as it should be displayed in the human-readable documentation.
2. The real function signature can be as complex as it needs to be to make it
correct for intellisense. Overloads can be uses if needed.
In the rare case where the docstring signature is the same as the typed
version, we'll still include it for consistency.
**Docstring details:**
Make sure to look at existing function signatures and docstrings for
inspiration when documenting new functionality. As an example, consider:
```python
def run_until_stalled(
self,
speed: Number,
then: Stop = Stop.COAST,
duty_limit: Optional[Number] = None,
) -> int:
"""
run_until_stalled(speed, then=Stop.COAST, duty_limit=None) -> int: deg
Runs the motor at a constant speed until it stalls.
Arguments:
speed (Number, deg/s): Speed of the motor.
then (Stop): What to do after coming to a standstill.
duty_limit (Number, %): Duty cycle limit during this
command. This is useful to avoid applying the full motor
torque to a geared or lever mechanism. If it is ``None``, the
duty limit won't be changed during this command.
Returns:
Angle at which the motor becomes stalled.
"""
```
The real method signature at the top contains the full detail, including the
type of each argument and return value.
The docstring starts with the signature. Use more than one signature if needed
to represent overloaded methods. The signatures are written in the way they
should be displayed in the docs:
- Argument types are omitted because they are also shown with the argument
description below.
- Default values should be given (``then=Stop.COAST``).
- The return type should be given (``-> int``). When applicable, include
the unit of the return value, so it becomes ``-> int: deg``
Then follows a concise description of what this method, function, or class
does.
Then follows a list of arguments:
- For each argument, include the expected type and unit if applicable, e.g.
``(int)`` or ``(Number, deg/s)``.
- Use ``Number`` when ``int`` and ``float`` are both allowed.
- If the description is long, use the indentation shown above.
- Make it readable. Instead
of ``Union[float, SupportsFloat, complex, SupportsComplex]``,
just say _float or complex_.
Then follows a description of the return value. The type is omitted here since
it is already include in the docstring signature.
**Development environment:**
@@ -126,8 +46,8 @@ Prerequisites:
- [Python 3][python]
- [Poetry][poetry]
Information on installing prerequisites can be found on the
[pybricks-micropython contributor's guide][contributing].
Information on installing prerequisites can be found on the [pybricks-micropython
wiki][wiki].
Initial setup:
@@ -139,24 +59,15 @@ Build docs:
# Linux
poetry run make -C doc html
xdg-open doc/main/build/html/index.html
xdg-open doc/api/build/html/index.html
# macOS
poetry run make -C doc html
open doc/main/build/html/index.html
open doc/api/build/html/index.html
# Windows (PowerShell)
poetry run doc\make.bat html
Invoke-Item doc\main\build\html\index.html
Building IDE docs variant:
# Linux/macOS
poetry run make -C doc html TAG=ide
# Windows (PowerShell)
$env:TAG="ide"
poetry run doc\make.bat html
Invoke-Item doc\api\build\html\index.html
Linting:
@@ -167,4 +78,4 @@ Linting:
[git]: https://git-scm.com/
[python]: https://www.python.org/
[poetry]: https://python-poetry.org/
[contributing]: https://github.com/pybricks/pybricks-micropython/blob/master/CONTRIBUTING.md
[wiki]: https://github.com/pybricks-micropython/wiki
+1 -1
View File
@@ -1,6 +1,6 @@
MIT License
Copyright (c) 2018-2022 The Pybricks Authors
Copyright (c) 2018-2020 The Pybricks Authors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
+5 -6
View File
@@ -5,21 +5,20 @@
SPHINXOPTS = -W
SPHINXBUILD = sphinx-build
SPHINXPROJ = Pybricks
SOURCEDIR = main
SOURCEDIR = api
BUILDDIR = "$(SOURCEDIR)"/build
TAG = main
# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(TAG) $(O)
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
.PHONY: help Makefile
diagrams:
@$(MAKE) -C "$(SOURCEDIR)"/diagrams_source clean
@$(MAKE) -C "$(SOURCEDIR)"/diagrams_source
@$(MAKE) -C "$(SOURCEDIR)"/diagram_source clean
@$(MAKE) -C "$(SOURCEDIR)"/diagram_source
# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) -t $(TAG) $(O)
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
+21
View File
@@ -0,0 +1,21 @@
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#
# Pybricks documentation build configuration file
#
import os
# General information about the project.
project = 'pybricks-micropython'
copyright = '2018-2020 The Pybricks Authors'
author = ''
_TITLE = 'Pybricks Modules and Examples'
_DISCLAIMER = 'LEGO, the LEGO logo, MINDSTORMS and the MINDSTORMS EV3 logo are\
trademarks and/or copyrights of the LEGO Group of companies \
which does not sponsor, authorize or endorse this site.'
html_logo = '../common/images/pybricks-logo-rtd.png'
latex_logo = '../common/images/pybricks-logo-large.png'
exec(open(os.path.abspath("../common/conf.py")).read())
+25
View File
@@ -0,0 +1,25 @@
SRC_DIR = .
OUT_DIR = ../images
POSTFIX := _label
SVG := $(wildcard $(SRC_DIR)/*.svg)
DIAGRAMS := $(patsubst $(SRC_DIR)/%.svg,$(OUT_DIR)/%$(POSTFIX).png,$(SVG))
DIR := ${CURDIR}
all: $(DIAGRAMS)
clean:
rm -f $(DIAGRAMS)
$(OUT_DIR)/%$(POSTFIX).png: $(SRC_DIR)/%.svg
if inkscape --version | grep -q "Inkscape 0"; then \
inkscape --file=$(DIR)/$< --export-area-drawing --export-png=$(DIR)/$@; \
else \
inkscape \
--export-area-drawing \
--export-background=white \
--export-background-opacity=1.0 \
--export-file=$(DIR)/$@ \
$(DIR)/$<; \
fi

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Before

Width:  |  Height:  |  Size: 9.0 KiB

After

Width:  |  Height:  |  Size: 9.0 KiB

Before

Width:  |  Height:  |  Size: 7.8 KiB

After

Width:  |  Height:  |  Size: 7.8 KiB

+6
View File
@@ -0,0 +1,6 @@
0 Name: pupmotors
0 Author: Pybricks {laurens@pybricks.com}
0 !LICENSE MIT
1 15 370 -296 -430 0 0 1 0 1 0 -1 0 0 95658.dat
1 15 90 -296 -340 1 0 0 0 1 0 0 0 1 99455.dat
1 15 610 -296 -580 0 0 1 0 -1 0 1 0 0 53787.dat
Binary file not shown.

After

Width:  |  Height:  |  Size: 236 KiB

@@ -2,21 +2,21 @@
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="1700"
height="333"
viewBox="0 0 449.79165 88.106245"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="2100"
height="416"
viewBox="0 0 555.62498 110.06666"
version="1.1"
id="svg8"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
sodipodi:docname="ev3motors.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
inkscape:version="0.92.3 (2405546, 2018-03-11)"
sodipodi:docname="ev3motors.svg">
<defs
id="defs2">
<marker
@@ -57,17 +57,17 @@
borderopacity="1.0"
inkscape:pageopacity="1"
inkscape:pageshadow="2"
inkscape:zoom="0.38248899"
inkscape:cx="870.61329"
inkscape:cy="254.9093"
inkscape:zoom="1.4"
inkscape:cx="1237.9403"
inkscape:cy="45.433141"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
units="px"
inkscape:window-width="1856"
inkscape:window-height="1136"
inkscape:window-x="64"
inkscape:window-y="27"
inkscape:window-width="1920"
inkscape:window-height="1172"
inkscape:window-x="1920"
inkscape:window-y="0"
inkscape:window-maximized="1"
showguides="false"
inkscape:snap-global="false"
@@ -80,6 +80,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
@@ -89,17 +90,19 @@
id="layer1"
transform="translate(0,-186.93332)">
<image
width="424.92084"
height="88.106247"
sodipodi:absref="ev3motors.png"
xlink:href="ev3motors.png"
style="fill:#fcfcfc;fill-opacity:1;stroke-width:0.995543"
y="186.9333"
x="0"
id="image45"
preserveAspectRatio="none"
xlink:href="../cad/output/ev3device-motors.png"
id="image862"
x="-7.1054274e-15"
y="186.93332" />
height="110.06667"
width="529.16669" />
<g
id="g2757"
transform="matrix(1.7955775,0,0,1.7960207,-25.218891,-181.51285)"
style="stroke-width:0.879594">
transform="matrix(2.243124,0,0,2.2436776,-31.504682,-273.3478)"
style="stroke-width:0.87959427">
<g
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.116363;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="g2751"
@@ -114,16 +117,16 @@
inkscape:connector-curvature="0"
id="path2753"
d="m 148.90956,215.29575 c -8.02867,2.89572 -14.60635,11.81219 -14.60635,19.93021 l 1.74541,-0.62952 c 0,-7.05178 5.7198,-14.86961 12.86094,-17.44522 7.14113,-2.57561 12.86094,1.11628 12.86094,8.16806 l 1.74541,-0.62952 c 0,-8.11802 -6.57768,-12.28973 -14.60635,-9.39401 z"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.0879594;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.08795943;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
<path
inkscape:connector-curvature="0"
id="path2755"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.232726px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.23272598px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<g
style="stroke-width:0.879594"
transform="matrix(1.7955775,0,0,1.7960207,139.61063,-188.53445)"
style="stroke-width:0.87959427"
transform="matrix(2.243124,0,0,2.2436776,174.40849,-282.11953)"
id="g876">
<g
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)"
@@ -136,27 +139,27 @@
id="path868" />
</g>
<path
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.0879594;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.08795943;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 148.90956,215.29575 c -8.02867,2.89572 -14.60635,11.81219 -14.60635,19.93021 l 1.74541,-0.62952 c 0,-7.05178 5.7198,-14.86961 12.86094,-17.44522 7.14113,-2.57561 12.86094,1.11628 12.86094,8.16806 l 1.74541,-0.62952 c 0,-8.11802 -6.57768,-12.28973 -14.60635,-9.39401 z"
id="path872"
inkscape:connector-curvature="0" />
<path
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.232726px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.23272598px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
id="path874"
inkscape:connector-curvature="0" />
</g>
<g
id="g2757-3"
transform="matrix(1.6567268,0,0,1.7960207,-176.59683,-159.03209)"
style="stroke-width:0.915712">
transform="matrix(2.0696648,0,0,2.2436776,-220.61347,-245.26373)"
style="stroke-width:0.91571224">
<g
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.121141;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.12114111;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="g2751-6"
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)">
<path
id="path2749-7"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.121141;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.12114111;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
inkscape:connector-curvature="0" />
</g>
@@ -164,12 +167,12 @@
inkscape:connector-curvature="0"
id="path2753-5"
d="m 148.90956,215.29575 c -8.02867,2.89572 -14.60635,11.81219 -14.60635,19.93021 l 1.74541,-0.62952 c 0,-7.05178 5.7198,-14.86961 12.86094,-17.44522 7.14113,-2.57561 12.86094,1.11628 12.86094,8.16806 l 1.74541,-0.62952 c 0,-8.11802 -6.57768,-12.28973 -14.60635,-9.39401 z"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.0915712;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.09157123;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
<path
inkscape:connector-curvature="0"
id="path2755-3"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.242282px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.2422822px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

+16
View File
@@ -0,0 +1,16 @@
0 Name: ev3sensors
0 Author: Pybricks {laurens@pybricks.com}
0 !LICENSE MIT
1 15 390 -320 -200 1 0 0 0 1 0 0 0 1 95648.dat
1 15 10 -320 -240 1 0 0 0 1 0 0 0 1 95652.dat
1 15 310 -320 210 1 0 0 0 1 0 0 0 1 99380.dat
1 15 -70 -320 170 1 0 0 0 1 0 0 0 1 95650.dat
1 15 720 -320 370 1 0 0 0 1 0 0 0 1 95654.dat
1 15 910 -400 150 -1 0 0 0 1 0 0 0 -1 72156.dat
1 151 410 -320 -910 1 0 0 0 1 0 0 0 1 55969.dat
1 151 730 -320 -880 1 0 0 0 1 0 0 0 1 64892.dat
1 151 1000 -320 -1000 1 0 0 0 1 0 0 0 1 55963.dat
1 151 -360 -320 -940 1 0 0 0 1 0 0 0 1 62840.dat
1 151 90 -320 -970 1 0 0 0 1 0 0 0 1 53793.dat
1 151 1250 -320 -580 1 0 0 0 1 0 0 0 1 53792.dat
1 151 1340 -320 -970 1 0 0 0 1 0 0 0 1 55963.dat

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Before

Width:  |  Height:  |  Size: 97 KiB

After

Width:  |  Height:  |  Size: 97 KiB

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Before

Width:  |  Height:  |  Size: 116 KiB

After

Width:  |  Height:  |  Size: 116 KiB

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

+11
View File
@@ -0,0 +1,11 @@
0 Name: pupmotors
0 Author: Pybricks {laurens@pybricks.com}
0 !LICENSE MIT
1 15 -420 -56 -250 1 0 0 0 1 0 0 0 1 26910.dat
1 15 10 -80 140 1 0 0 0 1 0 0 0 1 28738.dat
1 71 -270 -40 630 1 0 0 0 1 0 0 0 1 22127.dat
1 15 200 -96 600 -1 0 0 0 1 0 0 0 -1 28739.dat
1 15 470 -16 -90 1 0 0 0 1 0 0 0 1 45601p02.dat
1 15 -800 -40 360 1 0 0 0 1 0 0 0 1 95646c01.dat
1 15 -1160 32 -310 1 0 0 0 1 0 0 0 1 53788c01.dat
1 71 -1340 -40 430 1 0 0 0 1 0 0 0 1 87576c01.dat
+486
View File
@@ -0,0 +1,486 @@
0 FILE main.ldr
0 Name: ev3sensors
0 Author: Pybricks {laurens@pybricks.com}
0 !LICENSE MIT
0 !LDCAD GROUP_DEF [topLevel=true] [LID=0] [GID=Iv9FbUdBPsB] [name=Group 1] [center=0 0 0]
0 !LDCAD GROUP_DEF [topLevel=true] [LID=1] [GID=IMOjEZg0eXo] [name=Group 2] [center=0 0 0]
0 !LDCAD GROUP_DEF [topLevel=true] [LID=2] [GID=7Zgg7xpsn7m] [name=Group 3] [center=0 0 0]
0 !LDCAD GROUP_DEF [topLevel=true] [LID=3] [GID=37IHSsFLUIW] [name=Group 4] [center=0 0 0]
0 !LDCAD GROUP_DEF [topLevel=true] [LID=4] [GID=78T5iMUZhPB] [name=Group 5] [center=0 0 0]
0 !LDCAD GROUP_DEF [topLevel=true] [LID=5] [GID=6l6RjlBcxBO] [name=Group 6] [center=0 0 0]
0 !LDCAD GROUP_NXT [ids=2] [nrs=-1]
1 1 1390 -320 -320 0 0 -30 0 1 0 50 0 0 box.dat
0 !LDCAD GROUP_NXT [ids=2] [nrs=2]
1 151 1390 -320 -370 1 0 0 0 1 0 0 0 1 54732b.dat
0 !LDCAD GROUP_NXT [ids=3] [nrs=2]
1 0 1510 -315 -390 0 0 -40 0 6 0 50 0 0 box.dat
0 !LDCAD GROUP_NXT [ids=3] [nrs=-1]
1 151 1510 -320 -440 1 0 0 0 1 0 0 0 1 54732b.dat
0 !LDCAD GROUP_NXT [ids=0] [nrs=3]
1 2 1350 -320 140 0 0 -30 0 1 0 50 0 0 box.dat
0 !LDCAD GROUP_NXT [ids=0] [nrs=2]
1 151 1350 -320 90 1 0 0 0 1 0 0 0 1 54732b.dat
0 !LDCAD GROUP_NXT [ids=1] [nrs=2]
1 2 1470 -320 60 0 0 -30 0 1 0 50 0 0 box.dat
0 !LDCAD GROUP_NXT [ids=1] [nrs=3]
1 0 1470 -320 110 1 0 0 0 1 0 0 0 1 u9218c01.dat
0 !LDCAD GROUP_NXT [ids=0] [nrs=-1]
1 0 1350 -321 170 -20 0 0 0 1 0 0 0 -10 box.dat
0 !LDCAD GROUP_NXT [ids=1] [nrs=-1]
1 0 1470 -321 30 -20 0 0 0 1 0 0 0 -10 box.dat
0 !LDCAD GROUP_NXT [ids=4] [nrs=8]
1 0 1620 -320 -20 1 0 0 0 1 0 0 0 1 u9470c01.dat
0 !LDCAD GROUP_NXT [ids=4] [nrs=9]
1 15 1620 -305 -20 1 0 0 0 1 0 0 0 1 u9218c01.dat
0 !LDCAD GROUP_NXT [ids=4] [nrs=7]
1 2 1620 -320 -50 50 0 0 0 0 20 0 -1 0 box.dat
0 !LDCAD GROUP_NXT [ids=4] [nrs=-1]
1 0 1590 -320 -51 15 0 0 0 0 15 0 -1 0 box.dat
0 !LDCAD GROUP_NXT [ids=4] [nrs=5]
1 0 1650 -320 -51 0 0 -8 15 0 0 0 -1 0 box.dat
0 !LDCAD GROUP_NXT [ids=4] [nrs=6]
1 0 1630 -320 -51 0 0 8 -15 0 0 0 -1 0 box.dat
0 !LDCAD GROUP_NXT [ids=4] [nrs=2]
1 4 1665 -328 -51 0 0 2 -2 0 0 0 -1 0 box.dat
0 !LDCAD GROUP_NXT [ids=4] [nrs=3]
1 1 1665 -320 -51 0 0 2 -2 0 0 0 -1 0 box.dat
0 !LDCAD GROUP_NXT [ids=4] [nrs=4]
1 14 1665 -312 -51 0 0 2 -2 0 0 0 -1 0 box.dat
1 151 1200 -392 -350 1 0 0 0 1 0 0 0 1 ms1040.dat
0 !LDCAD GROUP_NXT [ids=5] [nrs=4]
1 47 625 -780 -230 0 0 -1 0 -1 0 -1 0 0 55804.dat
0 !LDCAD GROUP_NXT [ids=5] [nrs=3]
1 0 695 -780 -309 0 0 -1 0 -1 0 -1 0 0 897.dat
0 !LDCAD GROUP_NXT [ids=5] [nrs=2]
1 0 695 -784 -314 -1 0 0 0 1 0 0 0 -1 elecCable2Brick-1.ldr
0 !LDCAD GROUP_NXT [ids=5] [nrs=1]
1 0 695 -784 -449 1 0 0 0 1 0 0 0 1 71427.dat
1 0 990 -321 -330 -20 0 0 0 1 0 0 0 -10 box.dat
1 151 990 -320 -410 1 0 0 0 1 0 0 0 1 54732b.dat
1 6 990 -320 -360 0 0 -30 0 1 0 50 0 0 box.dat
1 0 1100 -321 -440 -20 0 0 0 1 0 0 0 -10 box.dat
1 151 1100 -320 -520 1 0 0 0 1 0 0 0 1 54732b.dat
1 3 1100 -320 -470 0 0 -30 0 1 0 50 0 0 box.dat
1 0 1210 -321 -520 -20 0 0 0 1 0 0 0 -10 box.dat
1 151 1210 -320 -600 1 0 0 0 1 0 0 0 1 54732b.dat
1 7 1210 -320 -550 0 0 -30 0 1 0 50 0 0 box.dat
0 FILE elecCable2Brick-1.ldr
0 Author: LDCad
0 !LICENSE MIT
0 !CATEGORY electric
0 !KEYWORDS flexible, cable, 9V
0 !LDCAD CONTENT [type=path] [addFallBack=default] [looped=false] [displayKind=mm] [curveStep=0] [displayLenCor=0]
0 !LDCAD PATH_POINT [type=bezier] [posOri=0 4 15 0 0 1 -1 0 0 0 -1 0] [prevCPDist=25] [nextCPDist=25] [cirR=20] [cirDir=xyCW] [prevYRoll=0] [nextYRoll=0]
0 !LDCAD PATH_POINT [type=bezier] [posOri=0 4 140 0 0 1 -1 0 0 0 -1 0] [prevCPDist=25] [nextCPDist=25] [cirR=20] [cirDir=xyCW] [prevYRoll=0] [nextYRoll=0]
0 !LDCAD PATH_SKIN [donCol=16] [donOri=1 0 0 0 1 0 0 0 1] [donPart=ldcElecWire2Seg.dat] [donYSize=400%] [donCen=absCen] [donCenYOfs=0] [donFinScale=fitDon2Seg] [donPlace=deform] [donYAlign=0] [donInline=false] [segSize=100%] [segSizeTol=5%] [segsCnt=0] [segsGrp=0] [segsMaxMerge=10] [segsMrgAng=0] [segsMrgRollAng=0] [segsEdgeDelKind=keepFirstLeft]
0 !LDCAD PATH_CAP [group=end] [color=0] [posOri=0 0 155 0 0 1 0 1 0 -1 0 0] [part=6625c01.dat] [extraLen=0mm] [inlineRef=false]
0 !LDCAD PATH_CAP [group=end] [color=0] [posOri=0 16 155 0 0 1 0 1 0 -1 0 0] [part=2727ac01.dat] [extraLen=0mm] [inlineRef=false]
0 !LDCAD GENERATED [generator=LDCad 1.6c]
0 //This is the fallback LDraw content for above PATH configuration.
0 // Do not edit, any changes will be lost upon regeneration.
0 // The path is approx 50.00 mm (125.00) and exists out of 4 segments.
0 //Some general hints about the document.
0 UNOFFICIAL PART
0 BFC CERTIFY CCW
0 //Some of this content has been generated from other LDraw files, many thanks to all involved.
0 // Credits for "ldcElecWire2Seg.dat":
0 // Author: LDCad
0 // Credits for "7-8cyli.dat":
0 // Author: Guy Vivan
0 // History:
0 // 2009-05-02 [PTadmin] Official Update 2009-01
0 // Credits for "ldcConRing-7-8.dat":
0 // Author: LDCad
0 //End cap reference(s)
1 0 0 0 155 0 0 1 0 1 0 -1 0 0 6625c01.dat
1 0 0 16 155 0 0 1 0 1 0 -1 0 0 2727ac01.dat
0 //Segments
0 // Segment 1, this block is (recursively) generated from "ldcElecWire2Seg.dat"
4 16 0.32452 2.939305 55.645161 -0.00062 3.425975 55.645161 -0.00062 3.425975 15.000001 0.32452 2.939305 15.000001
4 16 0.81118 2.614194 55.645161 0.32452 2.939305 55.645161 0.32452 2.939305 15.000001 0.81118 2.614194 15.000001
4 16 1.385188 2.499961 55.645161 0.81118 2.614194 55.645161 0.81118 2.614194 15.000001 1.385188 2.499961 15.000001
4 16 1.959225 2.61418 55.645161 1.385188 2.499961 55.645161 1.385188 2.499961 15.000001 1.959225 2.61418 15.000001
4 16 2.445895 2.93932 55.645161 1.959225 2.61418 55.645161 1.959225 2.61418 15.000001 2.445895 2.93932 15.000001
4 16 2.771006 3.42598 55.645161 2.445895 2.93932 55.645161 2.445895 2.93932 15.000001 2.771006 3.42598 15.000001
4 16 2.885238 3.999988 55.645161 2.771006 3.42598 55.645161 2.771006 3.42598 15.000001 2.885238 3.999988 15.000001
4 16 2.77102 4.574025 55.645161 2.885238 3.999988 55.645161 2.885238 3.999988 15.000001 2.77102 4.574025 15.000001
4 16 2.44588 5.060695 55.645161 2.77102 4.574025 55.645161 2.77102 4.574025 15.000001 2.44588 5.060695 15.000001
4 16 1.95922 5.385806 55.645161 2.44588 5.060695 55.645161 2.44588 5.060695 15.000001 1.95922 5.385806 15.000001
4 16 1.385212 5.500039 55.645161 1.95922 5.385806 55.645161 1.95922 5.385806 15.000001 1.385212 5.500039 15.000001
4 16 0.811175 5.38582 55.645161 1.385212 5.500039 55.645161 1.385212 5.500039 15.000001 0.811175 5.38582 15.000001
4 16 0.324505 5.06068 55.645161 0.811175 5.38582 55.645161 0.811175 5.38582 15.000001 0.324505 5.06068 15.000001
4 16 -0.000606 4.57402 55.645161 0.324505 5.06068 55.645161 0.324505 5.06068 15.000001 -0.000606 4.57402 15.000001
4 16 -0.32452 5.060695 55.645161 -0.000606 4.57402 55.645161 -0.000606 4.57402 15.000001 -0.32452 5.060695 15.000001
4 16 -0.81118 5.385806 55.645161 -0.32452 5.060695 55.645161 -0.32452 5.060695 15.000001 -0.81118 5.385806 15.000001
4 16 -1.385188 5.500039 55.645161 -0.81118 5.385806 55.645161 -0.81118 5.385806 15.000001 -1.385188 5.500039 15.000001
4 16 -1.959225 5.38582 55.645161 -1.385188 5.500039 55.645161 -1.385188 5.500039 15.000001 -1.959225 5.38582 15.000001
4 16 -2.445895 5.06068 55.645161 -1.959225 5.38582 55.645161 -1.959225 5.38582 15.000001 -2.445895 5.06068 15.000001
4 16 -2.771006 4.57402 55.645161 -2.445895 5.06068 55.645161 -2.445895 5.06068 15.000001 -2.771006 4.57402 15.000001
4 16 -2.885238 4.000011 55.645161 -2.771006 4.57402 55.645161 -2.771006 4.57402 15.000001 -2.885238 4.000011 15.000001
4 16 -2.77102 3.425975 55.645161 -2.885238 4.000011 55.645161 -2.885238 4.000011 15.000001 -2.77102 3.425975 15.000001
4 16 -2.44588 2.939305 55.645161 -2.77102 3.425975 55.645161 -2.77102 3.425975 15.000001 -2.44588 2.939305 15.000001
4 16 -1.95922 2.614194 55.645161 -2.44588 2.939305 55.645161 -2.44588 2.939305 15.000001 -1.95922 2.614194 15.000001
4 16 -1.385212 2.499961 55.645161 -1.95922 2.614194 55.645161 -1.95922 2.614194 15.000001 -1.385212 2.499961 15.000001
4 16 -0.811175 2.61418 55.645161 -1.385212 2.499961 55.645161 -1.385212 2.499961 15.000001 -0.811175 2.61418 15.000001
4 16 -0.324505 2.93932 55.645161 -0.811175 2.61418 55.645161 -0.811175 2.61418 15.000001 -0.324505 2.93932 15.000001
4 16 -0.00062 3.425975 55.645161 -0.324505 2.93932 55.645161 -0.324505 2.93932 15.000001 -0.00062 3.425975 15.000001
5 24 -0.00062 3.425975 15.000001 -0.00062 3.425975 55.645161 -0.574645 4.811795 15.000001 0.32452 2.939305 15.000001
5 24 0.32452 2.939305 15.000001 0.32452 2.939305 55.645161 -0.00062 3.425975 15.000001 0.81118 2.614194 15.000001
5 24 0.81118 2.614194 15.000001 0.81118 2.614194 55.645161 0.32452 2.939305 15.000001 1.385188 2.499961 15.000001
5 24 1.385188 2.499961 15.000001 1.385188 2.499961 55.645161 0.81118 2.614194 15.000001 1.959225 2.61418 15.000001
5 24 1.959225 2.61418 15.000001 1.959225 2.61418 55.645161 1.385188 2.499961 15.000001 2.445895 2.93932 15.000001
5 24 2.445895 2.93932 15.000001 2.445895 2.93932 55.645161 1.959225 2.61418 15.000001 2.771006 3.42598 15.000001
5 24 2.771006 3.42598 15.000001 2.771006 3.42598 55.645161 2.445895 2.93932 15.000001 2.885238 3.999988 15.000001
5 24 2.885238 3.999988 15.000001 2.885238 3.999988 55.645161 2.771006 3.42598 15.000001 2.77102 4.574025 15.000001
5 24 2.77102 4.574025 15.000001 2.77102 4.574025 55.645161 2.885238 3.999988 15.000001 2.44588 5.060695 15.000001
5 24 2.44588 5.060695 15.000001 2.44588 5.060695 55.645161 2.77102 4.574025 15.000001 1.95922 5.385806 15.000001
5 24 1.95922 5.385806 15.000001 1.95922 5.385806 55.645161 2.44588 5.060695 15.000001 1.385212 5.500039 15.000001
5 24 1.385212 5.500039 15.000001 1.385212 5.500039 55.645161 1.95922 5.385806 15.000001 0.811175 5.38582 15.000001
5 24 0.811175 5.38582 15.000001 0.811175 5.38582 55.645161 1.385212 5.500039 15.000001 0.324505 5.06068 15.000001
5 24 0.324505 5.06068 15.000001 0.324505 5.06068 55.645161 0.811175 5.38582 15.000001 -0.000606 4.57402 15.000001
5 24 -0.000606 4.57402 15.000001 -0.000606 4.57402 55.645161 -0.574627 3.188214 15.000001 0.324505 5.06068 15.000001
5 24 -0.000606 4.57402 15.000001 -0.000606 4.57402 55.645161 0.574645 3.188205 15.000001 -0.32452 5.060695 15.000001
5 24 -0.32452 5.060695 15.000001 -0.32452 5.060695 55.645161 -0.000606 4.57402 15.000001 -0.81118 5.385806 15.000001
5 24 -0.81118 5.385806 15.000001 -0.81118 5.385806 55.645161 -0.32452 5.060695 15.000001 -1.385188 5.500039 15.000001
5 24 -1.385188 5.500039 15.000001 -1.385188 5.500039 55.645161 -0.81118 5.385806 15.000001 -1.959225 5.38582 15.000001
5 24 -1.959225 5.38582 15.000001 -1.959225 5.38582 55.645161 -1.385188 5.500039 15.000001 -2.445895 5.06068 15.000001
5 24 -2.445895 5.06068 15.000001 -2.445895 5.06068 55.645161 -1.959225 5.38582 15.000001 -2.771006 4.57402 15.000001
5 24 -2.771006 4.57402 15.000001 -2.771006 4.57402 55.645161 -2.445895 5.06068 15.000001 -2.885238 4.000011 15.000001
5 24 -2.885238 4.000011 15.000001 -2.885238 4.000011 55.645161 -2.771006 4.57402 15.000001 -2.77102 3.425975 15.000001
5 24 -2.77102 3.425975 15.000001 -2.77102 3.425975 55.645161 -2.885238 4.000011 15.000001 -2.44588 2.939305 15.000001
5 24 -2.44588 2.939305 15.000001 -2.44588 2.939305 55.645161 -2.77102 3.425975 15.000001 -1.95922 2.614194 15.000001
5 24 -1.95922 2.614194 15.000001 -1.95922 2.614194 55.645161 -2.44588 2.939305 15.000001 -1.385212 2.499961 15.000001
5 24 -1.385212 2.499961 15.000001 -1.385212 2.499961 55.645161 -1.95922 2.614194 15.000001 -0.811175 2.61418 15.000001
5 24 -0.811175 2.61418 15.000001 -0.811175 2.61418 55.645161 -1.385212 2.499961 15.000001 -0.324505 2.93932 15.000001
5 24 -0.324505 2.93932 15.000001 -0.324505 2.93932 55.645161 -0.811175 2.61418 15.000001 -0.00062 3.425975 15.000001
5 24 -0.00062 3.425975 15.000001 -0.00062 3.425975 55.645161 0.574627 4.811786 15.000001 -0.324505 2.93932 15.000001
5 24 -0.00062 3.425975 55.645161 0.32452 2.939305 55.645161 -0.00062 3.425975 75.717743 -0.00062 3.425975 15
5 24 0.32452 2.939305 55.645161 0.81118 2.614194 55.645161 0.32452 2.939305 75.717743 0.32452 2.939305 15
5 24 0.81118 2.614194 55.645161 1.385188 2.499961 55.645161 0.81118 2.614194 75.717743 0.81118 2.614194 15
5 24 1.385188 2.499961 55.645161 1.959225 2.61418 55.645161 1.385188 2.499961 75.717743 1.385188 2.499961 15
5 24 1.959225 2.61418 55.645161 2.445895 2.93932 55.645161 1.959225 2.61418 75.717743 1.959225 2.61418 15
5 24 2.445895 2.93932 55.645161 2.771006 3.42598 55.645161 2.445895 2.93932 75.717743 2.445895 2.93932 15
5 24 2.771006 3.42598 55.645161 2.885238 3.999988 55.645161 2.771006 3.42598 75.717743 2.771006 3.42598 15
5 24 2.885238 3.999988 55.645161 2.77102 4.574025 55.645161 2.885238 3.999988 75.717743 2.885238 3.999988 15
5 24 2.77102 4.574025 55.645161 2.44588 5.060695 55.645161 2.77102 4.574025 75.717743 2.77102 4.574025 15
5 24 2.44588 5.060695 55.645161 1.95922 5.385806 55.645161 2.44588 5.060695 75.717743 2.44588 5.060695 15
5 24 1.95922 5.385806 55.645161 1.385212 5.500039 55.645161 1.95922 5.385806 75.717743 1.95922 5.385806 15
5 24 1.385212 5.500039 55.645161 0.811175 5.38582 55.645161 1.385212 5.500039 75.717743 1.385212 5.500039 15
5 24 0.811175 5.38582 55.645161 0.324505 5.06068 55.645161 0.811175 5.38582 75.717743 0.811175 5.38582 15
5 24 0.324505 5.06068 55.645161 -0.000606 4.57402 55.645161 0.324505 5.06068 75.717743 0.324505 5.06068 15
5 24 -0.000606 4.57402 55.645161 -0.32452 5.060695 55.645161 0.00062 4.574025 75.717743 -0.000606 4.57402 15
5 24 -0.32452 5.060695 55.645161 -0.81118 5.385806 55.645161 -0.32452 5.060695 75.717743 -0.32452 5.060695 15
5 24 -0.81118 5.385806 55.645161 -1.385188 5.500039 55.645161 -0.81118 5.385806 75.717743 -0.81118 5.385806 15
5 24 -1.385188 5.500039 55.645161 -1.959225 5.38582 55.645161 -1.385188 5.500039 75.717743 -1.385188 5.500039 15
5 24 -1.959225 5.38582 55.645161 -2.445895 5.06068 55.645161 -1.959225 5.38582 75.717743 -1.959225 5.38582 15
5 24 -2.445895 5.06068 55.645161 -2.771006 4.57402 55.645161 -2.445895 5.06068 75.717743 -2.445895 5.06068 15
5 24 -2.771006 4.57402 55.645161 -2.885238 4.000011 55.645161 -2.771006 4.57402 75.717743 -2.771006 4.57402 15
5 24 -2.885238 4.000011 55.645161 -2.77102 3.425975 55.645161 -2.885238 4.000011 75.717743 -2.885238 4.000011 15
5 24 -2.77102 3.425975 55.645161 -2.44588 2.939305 55.645161 -2.77102 3.425975 75.717743 -2.77102 3.425975 15
5 24 -2.44588 2.939305 55.645161 -1.95922 2.614194 55.645161 -2.44588 2.939305 75.717743 -2.44588 2.939305 15
5 24 -1.95922 2.614194 55.645161 -1.385212 2.499961 55.645161 -1.95922 2.614194 75.717743 -1.95922 2.614194 15
5 24 -1.385212 2.499961 55.645161 -0.811175 2.61418 55.645161 -1.385212 2.499961 75.717743 -1.385212 2.499961 15
5 24 -0.811175 2.61418 55.645161 -0.324505 2.93932 55.645161 -0.811175 2.61418 75.717743 -0.811175 2.61418 15
5 24 -0.324505 2.93932 55.645161 -0.00062 3.425975 55.645161 -0.324505 2.93932 75.717743 -0.324505 2.93932 15
5 24 -0.00062 3.425975 15.000001 0.32452 2.939305 15.000001 -0.00062 3.425975 55.645161 -0.00062 3.425975 14.000001
5 24 0.32452 2.939305 15.000001 0.81118 2.614194 15.000001 0.32452 2.939305 55.645161 0.32452 2.939305 14.000001
5 24 0.81118 2.614194 15.000001 1.385188 2.499961 15.000001 0.81118 2.614194 55.645161 0.81118 2.614194 14.000001
5 24 1.385188 2.499961 15.000001 1.959225 2.61418 15.000001 1.385188 2.499961 55.645161 1.385188 2.499961 14.000001
5 24 1.959225 2.61418 15.000001 2.445895 2.93932 15.000001 1.959225 2.61418 55.645161 1.959225 2.61418 14.000001
5 24 2.445895 2.93932 15.000001 2.771006 3.42598 15.000001 2.445895 2.93932 55.645161 2.445895 2.93932 14.000001
5 24 2.771006 3.42598 15.000001 2.885238 3.999988 15.000001 2.771006 3.42598 55.645161 2.771006 3.42598 14.000001
5 24 2.885238 3.999988 15.000001 2.77102 4.574025 15.000001 2.885238 3.999988 55.645161 2.885238 3.999988 14.000001
5 24 2.77102 4.574025 15.000001 2.44588 5.060695 15.000001 2.77102 4.574025 55.645161 2.77102 4.574025 14.000001
5 24 2.44588 5.060695 15.000001 1.95922 5.385806 15.000001 2.44588 5.060695 55.645161 2.44588 5.060695 14.000001
5 24 1.95922 5.385806 15.000001 1.385212 5.500039 15.000001 1.95922 5.385806 55.645161 1.95922 5.385806 14.000001
5 24 1.385212 5.500039 15.000001 0.811175 5.38582 15.000001 1.385212 5.500039 55.645161 1.385212 5.500039 14.000001
5 24 0.811175 5.38582 15.000001 0.324505 5.06068 15.000001 0.811175 5.38582 55.645161 0.811175 5.38582 14.000001
5 24 0.324505 5.06068 15.000001 -0.000606 4.57402 15.000001 0.324505 5.06068 55.645161 0.324505 5.06068 14.000001
5 24 -0.000606 4.57402 15.000001 -0.32452 5.060695 15.000001 -0.000606 4.57402 55.645161 0.00062 4.574025 14.000001
5 24 -0.32452 5.060695 15.000001 -0.81118 5.385806 15.000001 -0.32452 5.060695 55.645161 -0.32452 5.060695 14.000001
5 24 -0.81118 5.385806 15.000001 -1.385188 5.500039 15.000001 -0.81118 5.385806 55.645161 -0.81118 5.385806 14.000001
5 24 -1.385188 5.500039 15.000001 -1.959225 5.38582 15.000001 -1.385188 5.500039 55.645161 -1.385188 5.500039 14.000001
5 24 -1.959225 5.38582 15.000001 -2.445895 5.06068 15.000001 -1.959225 5.38582 55.645161 -1.959225 5.38582 14.000001
5 24 -2.445895 5.06068 15.000001 -2.771006 4.57402 15.000001 -2.445895 5.06068 55.645161 -2.445895 5.06068 14.000001
5 24 -2.771006 4.57402 15.000001 -2.885238 4.000011 15.000001 -2.771006 4.57402 55.645161 -2.771006 4.57402 14.000001
5 24 -2.885238 4.000011 15.000001 -2.77102 3.425975 15.000001 -2.885238 4.000011 55.645161 -2.885238 4.000011 14.000001
5 24 -2.77102 3.425975 15.000001 -2.44588 2.939305 15.000001 -2.77102 3.425975 55.645161 -2.77102 3.425975 14.000001
5 24 -2.44588 2.939305 15.000001 -1.95922 2.614194 15.000001 -2.44588 2.939305 55.645161 -2.44588 2.939305 14.000001
5 24 -1.95922 2.614194 15.000001 -1.385212 2.499961 15.000001 -1.95922 2.614194 55.645161 -1.95922 2.614194 14.000001
5 24 -1.385212 2.499961 15.000001 -0.811175 2.61418 15.000001 -1.385212 2.499961 55.645161 -1.385212 2.499961 14.000001
5 24 -0.811175 2.61418 15.000001 -0.324505 2.93932 15.000001 -0.811175 2.61418 55.645161 -0.811175 2.61418 14.000001
5 24 -0.324505 2.93932 15.000001 -0.00062 3.425975 15.000001 -0.324505 2.93932 55.645161 -0.324505 2.93932 14.000001
0 // Segment 2, this block is (recursively) generated from "ldcElecWire2Seg.dat"
4 16 0.32452 2.939305 95.790321 -0.00062 3.425975 95.790321 -0.00062 3.425975 55.645161 0.32452 2.939305 55.645161
4 16 0.81118 2.614194 95.790321 0.32452 2.939305 95.790321 0.32452 2.939305 55.645161 0.81118 2.614194 55.645161
4 16 1.385188 2.499961 95.790321 0.81118 2.614194 95.790321 0.81118 2.614194 55.645161 1.385188 2.499961 55.645161
4 16 1.959225 2.61418 95.790321 1.385188 2.499961 95.790321 1.385188 2.499961 55.645161 1.959225 2.61418 55.645161
4 16 2.445895 2.93932 95.790321 1.959225 2.61418 95.790321 1.959225 2.61418 55.645161 2.445895 2.93932 55.645161
4 16 2.771006 3.42598 95.790321 2.445895 2.93932 95.790321 2.445895 2.93932 55.645161 2.771006 3.42598 55.645161
4 16 2.885238 3.999988 95.790321 2.771006 3.42598 95.790321 2.771006 3.42598 55.645161 2.885238 3.999988 55.645161
4 16 2.77102 4.574025 95.790321 2.885238 3.999988 95.790321 2.885238 3.999988 55.645161 2.77102 4.574025 55.645161
4 16 2.44588 5.060695 95.790321 2.77102 4.574025 95.790321 2.77102 4.574025 55.645161 2.44588 5.060695 55.645161
4 16 1.95922 5.385806 95.790321 2.44588 5.060695 95.790321 2.44588 5.060695 55.645161 1.95922 5.385806 55.645161
4 16 1.385212 5.500039 95.790321 1.95922 5.385806 95.790321 1.95922 5.385806 55.645161 1.385212 5.500039 55.645161
4 16 0.811175 5.38582 95.790321 1.385212 5.500039 95.790321 1.385212 5.500039 55.645161 0.811175 5.38582 55.645161
4 16 0.324505 5.06068 95.790321 0.811175 5.38582 95.790321 0.811175 5.38582 55.645161 0.324505 5.06068 55.645161
4 16 -0.000606 4.57402 95.790321 0.324505 5.06068 95.790321 0.324505 5.06068 55.645161 -0.000606 4.57402 55.645161
4 16 -0.32452 5.060695 95.790321 -0.000606 4.57402 95.790321 -0.000606 4.57402 55.645161 -0.32452 5.060695 55.645161
4 16 -0.81118 5.385806 95.790321 -0.32452 5.060695 95.790321 -0.32452 5.060695 55.645161 -0.81118 5.385806 55.645161
4 16 -1.385188 5.500039 95.790321 -0.81118 5.385806 95.790321 -0.81118 5.385806 55.645161 -1.385188 5.500039 55.645161
4 16 -1.959225 5.38582 95.790321 -1.385188 5.500039 95.790321 -1.385188 5.500039 55.645161 -1.959225 5.38582 55.645161
4 16 -2.445895 5.06068 95.790321 -1.959225 5.38582 95.790321 -1.959225 5.38582 55.645161 -2.445895 5.06068 55.645161
4 16 -2.771006 4.57402 95.790321 -2.445895 5.06068 95.790321 -2.445895 5.06068 55.645161 -2.771006 4.57402 55.645161
4 16 -2.885238 4.000011 95.790321 -2.771006 4.57402 95.790321 -2.771006 4.57402 55.645161 -2.885238 4.000011 55.645161
4 16 -2.77102 3.425975 95.790321 -2.885238 4.000011 95.790321 -2.885238 4.000011 55.645161 -2.77102 3.425975 55.645161
4 16 -2.44588 2.939305 95.790321 -2.77102 3.425975 95.790321 -2.77102 3.425975 55.645161 -2.44588 2.939305 55.645161
4 16 -1.95922 2.614194 95.790321 -2.44588 2.939305 95.790321 -2.44588 2.939305 55.645161 -1.95922 2.614194 55.645161
4 16 -1.385212 2.499961 95.790321 -1.95922 2.614194 95.790321 -1.95922 2.614194 55.645161 -1.385212 2.499961 55.645161
4 16 -0.811175 2.61418 95.790321 -1.385212 2.499961 95.790321 -1.385212 2.499961 55.645161 -0.811175 2.61418 55.645161
4 16 -0.324505 2.93932 95.790321 -0.811175 2.61418 95.790321 -0.811175 2.61418 55.645161 -0.324505 2.93932 55.645161
4 16 -0.00062 3.425975 95.790321 -0.324505 2.93932 95.790321 -0.324505 2.93932 55.645161 -0.00062 3.425975 55.645161
5 24 -0.00062 3.425975 55.645161 -0.00062 3.425975 95.790321 -0.574645 4.811795 55.645161 0.32452 2.939305 55.645161
5 24 0.32452 2.939305 55.645161 0.32452 2.939305 95.790321 -0.00062 3.425975 55.645161 0.81118 2.614194 55.645161
5 24 0.81118 2.614194 55.645161 0.81118 2.614194 95.790321 0.32452 2.939305 55.645161 1.385188 2.499961 55.645161
5 24 1.385188 2.499961 55.645161 1.385188 2.499961 95.790321 0.81118 2.614194 55.645161 1.959225 2.61418 55.645161
5 24 1.959225 2.61418 55.645161 1.959225 2.61418 95.790321 1.385188 2.499961 55.645161 2.445895 2.93932 55.645161
5 24 2.445895 2.93932 55.645161 2.445895 2.93932 95.790321 1.959225 2.61418 55.645161 2.771006 3.42598 55.645161
5 24 2.771006 3.42598 55.645161 2.771006 3.42598 95.790321 2.445895 2.93932 55.645161 2.885238 3.999988 55.645161
5 24 2.885238 3.999988 55.645161 2.885238 3.999988 95.790321 2.771006 3.42598 55.645161 2.77102 4.574025 55.645161
5 24 2.77102 4.574025 55.645161 2.77102 4.574025 95.790321 2.885238 3.999988 55.645161 2.44588 5.060695 55.645161
5 24 2.44588 5.060695 55.645161 2.44588 5.060695 95.790321 2.77102 4.574025 55.645161 1.95922 5.385806 55.645161
5 24 1.95922 5.385806 55.645161 1.95922 5.385806 95.790321 2.44588 5.060695 55.645161 1.385212 5.500039 55.645161
5 24 1.385212 5.500039 55.645161 1.385212 5.500039 95.790321 1.95922 5.385806 55.645161 0.811175 5.38582 55.645161
5 24 0.811175 5.38582 55.645161 0.811175 5.38582 95.790321 1.385212 5.500039 55.645161 0.324505 5.06068 55.645161
5 24 0.324505 5.06068 55.645161 0.324505 5.06068 95.790321 0.811175 5.38582 55.645161 -0.000606 4.57402 55.645161
5 24 -0.000606 4.57402 55.645161 -0.000606 4.57402 95.790321 -0.574627 3.188214 55.645161 0.324505 5.06068 55.645161
5 24 -0.000606 4.57402 55.645161 -0.000606 4.57402 95.790321 0.574645 3.188205 55.645161 -0.32452 5.060695 55.645161
5 24 -0.32452 5.060695 55.645161 -0.32452 5.060695 95.790321 -0.000606 4.57402 55.645161 -0.81118 5.385806 55.645161
5 24 -0.81118 5.385806 55.645161 -0.81118 5.385806 95.790321 -0.32452 5.060695 55.645161 -1.385188 5.500039 55.645161
5 24 -1.385188 5.500039 55.645161 -1.385188 5.500039 95.790321 -0.81118 5.385806 55.645161 -1.959225 5.38582 55.645161
5 24 -1.959225 5.38582 55.645161 -1.959225 5.38582 95.790321 -1.385188 5.500039 55.645161 -2.445895 5.06068 55.645161
5 24 -2.445895 5.06068 55.645161 -2.445895 5.06068 95.790321 -1.959225 5.38582 55.645161 -2.771006 4.57402 55.645161
5 24 -2.771006 4.57402 55.645161 -2.771006 4.57402 95.790321 -2.445895 5.06068 55.645161 -2.885238 4.000011 55.645161
5 24 -2.885238 4.000011 55.645161 -2.885238 4.000011 95.790321 -2.771006 4.57402 55.645161 -2.77102 3.425975 55.645161
5 24 -2.77102 3.425975 55.645161 -2.77102 3.425975 95.790321 -2.885238 4.000011 55.645161 -2.44588 2.939305 55.645161
5 24 -2.44588 2.939305 55.645161 -2.44588 2.939305 95.790321 -2.77102 3.425975 55.645161 -1.95922 2.614194 55.645161
5 24 -1.95922 2.614194 55.645161 -1.95922 2.614194 95.790321 -2.44588 2.939305 55.645161 -1.385212 2.499961 55.645161
5 24 -1.385212 2.499961 55.645161 -1.385212 2.499961 95.790321 -1.95922 2.614194 55.645161 -0.811175 2.61418 55.645161
5 24 -0.811175 2.61418 55.645161 -0.811175 2.61418 95.790321 -1.385212 2.499961 55.645161 -0.324505 2.93932 55.645161
5 24 -0.324505 2.93932 55.645161 -0.324505 2.93932 95.790321 -0.811175 2.61418 55.645161 -0.00062 3.425975 55.645161
5 24 -0.00062 3.425975 55.645161 -0.00062 3.425975 95.790321 0.574627 4.811786 55.645161 -0.324505 2.93932 55.645161
5 24 -0.00062 3.425975 95.790321 0.32452 2.939305 95.790321 -0.00062 3.425975 116.1129 -0.00062 3.425975 55.645161
5 24 0.32452 2.939305 95.790321 0.81118 2.614194 95.790321 0.32452 2.939305 116.1129 0.32452 2.939305 55.645161
5 24 0.81118 2.614194 95.790321 1.385188 2.499961 95.790321 0.81118 2.614194 116.1129 0.81118 2.614194 55.645161
5 24 1.385188 2.499961 95.790321 1.959225 2.61418 95.790321 1.385188 2.499961 116.1129 1.385188 2.499961 55.645161
5 24 1.959225 2.61418 95.790321 2.445895 2.93932 95.790321 1.959225 2.61418 116.1129 1.959225 2.61418 55.645161
5 24 2.445895 2.93932 95.790321 2.771006 3.42598 95.790321 2.445895 2.93932 116.1129 2.445895 2.93932 55.645161
5 24 2.771006 3.42598 95.790321 2.885238 3.999988 95.790321 2.771006 3.42598 116.1129 2.771006 3.42598 55.645161
5 24 2.885238 3.999988 95.790321 2.77102 4.574025 95.790321 2.885238 3.999988 116.1129 2.885238 3.999988 55.645161
5 24 2.77102 4.574025 95.790321 2.44588 5.060695 95.790321 2.77102 4.574025 116.1129 2.77102 4.574025 55.645161
5 24 2.44588 5.060695 95.790321 1.95922 5.385806 95.790321 2.44588 5.060695 116.1129 2.44588 5.060695 55.645161
5 24 1.95922 5.385806 95.790321 1.385212 5.500039 95.790321 1.95922 5.385806 116.1129 1.95922 5.385806 55.645161
5 24 1.385212 5.500039 95.790321 0.811175 5.38582 95.790321 1.385212 5.500039 116.1129 1.385212 5.500039 55.645161
5 24 0.811175 5.38582 95.790321 0.324505 5.06068 95.790321 0.811175 5.38582 116.1129 0.811175 5.38582 55.645161
5 24 0.324505 5.06068 95.790321 -0.000606 4.57402 95.790321 0.324505 5.06068 116.1129 0.324505 5.06068 55.645161
5 24 -0.000606 4.57402 95.790321 -0.32452 5.060695 95.790321 0.00062 4.574025 116.1129 -0.000606 4.57402 55.645161
5 24 -0.32452 5.060695 95.790321 -0.81118 5.385806 95.790321 -0.32452 5.060695 116.1129 -0.32452 5.060695 55.645161
5 24 -0.81118 5.385806 95.790321 -1.385188 5.500039 95.790321 -0.81118 5.385806 116.1129 -0.81118 5.385806 55.645161
5 24 -1.385188 5.500039 95.790321 -1.959225 5.38582 95.790321 -1.385188 5.500039 116.1129 -1.385188 5.500039 55.645161
5 24 -1.959225 5.38582 95.790321 -2.445895 5.06068 95.790321 -1.959225 5.38582 116.1129 -1.959225 5.38582 55.645161
5 24 -2.445895 5.06068 95.790321 -2.771006 4.57402 95.790321 -2.445895 5.06068 116.1129 -2.445895 5.06068 55.645161
5 24 -2.771006 4.57402 95.790321 -2.885238 4.000011 95.790321 -2.771006 4.57402 116.1129 -2.771006 4.57402 55.645161
5 24 -2.885238 4.000011 95.790321 -2.77102 3.425975 95.790321 -2.885238 4.000011 116.1129 -2.885238 4.000011 55.645161
5 24 -2.77102 3.425975 95.790321 -2.44588 2.939305 95.790321 -2.77102 3.425975 116.1129 -2.77102 3.425975 55.645161
5 24 -2.44588 2.939305 95.790321 -1.95922 2.614194 95.790321 -2.44588 2.939305 116.1129 -2.44588 2.939305 55.645161
5 24 -1.95922 2.614194 95.790321 -1.385212 2.499961 95.790321 -1.95922 2.614194 116.1129 -1.95922 2.614194 55.645161
5 24 -1.385212 2.499961 95.790321 -0.811175 2.61418 95.790321 -1.385212 2.499961 116.1129 -1.385212 2.499961 55.645161
5 24 -0.811175 2.61418 95.790321 -0.324505 2.93932 95.790321 -0.811175 2.61418 116.1129 -0.811175 2.61418 55.645161
5 24 -0.324505 2.93932 95.790321 -0.00062 3.425975 95.790321 -0.324505 2.93932 116.1129 -0.324505 2.93932 55.645161
0 // Segment 3, this block is (recursively) generated from "ldcElecWire2Seg.dat"
4 16 0.32452 2.939305 136.435486 -0.00062 3.425975 136.435486 -0.00062 3.425975 95.790321 0.32452 2.939305 95.790321
4 16 0.81118 2.614194 136.435486 0.32452 2.939305 136.435486 0.32452 2.939305 95.790321 0.81118 2.614194 95.790321
4 16 1.385188 2.499961 136.435486 0.81118 2.614194 136.435486 0.81118 2.614194 95.790321 1.385188 2.499961 95.790321
4 16 1.959225 2.61418 136.435486 1.385188 2.499961 136.435486 1.385188 2.499961 95.790321 1.959225 2.61418 95.790321
4 16 2.445895 2.93932 136.435486 1.959225 2.61418 136.435486 1.959225 2.61418 95.790321 2.445895 2.93932 95.790321
4 16 2.771006 3.42598 136.435486 2.445895 2.93932 136.435486 2.445895 2.93932 95.790321 2.771006 3.42598 95.790321
4 16 2.885238 3.999988 136.435486 2.771006 3.42598 136.435486 2.771006 3.42598 95.790321 2.885238 3.999988 95.790321
4 16 2.77102 4.574025 136.435486 2.885238 3.999988 136.435486 2.885238 3.999988 95.790321 2.77102 4.574025 95.790321
4 16 2.44588 5.060695 136.435486 2.77102 4.574025 136.435486 2.77102 4.574025 95.790321 2.44588 5.060695 95.790321
4 16 1.95922 5.385806 136.435486 2.44588 5.060695 136.435486 2.44588 5.060695 95.790321 1.95922 5.385806 95.790321
4 16 1.385212 5.500039 136.435486 1.95922 5.385806 136.435486 1.95922 5.385806 95.790321 1.385212 5.500039 95.790321
4 16 0.811175 5.38582 136.435486 1.385212 5.500039 136.435486 1.385212 5.500039 95.790321 0.811175 5.38582 95.790321
4 16 0.324505 5.06068 136.435486 0.811175 5.38582 136.435486 0.811175 5.38582 95.790321 0.324505 5.06068 95.790321
4 16 -0.000606 4.57402 136.435486 0.324505 5.06068 136.435486 0.324505 5.06068 95.790321 -0.000606 4.57402 95.790321
4 16 -0.32452 5.060695 136.435486 -0.000606 4.57402 136.435486 -0.000606 4.57402 95.790321 -0.32452 5.060695 95.790321
4 16 -0.81118 5.385806 136.435486 -0.32452 5.060695 136.435486 -0.32452 5.060695 95.790321 -0.81118 5.385806 95.790321
4 16 -1.385188 5.500039 136.435486 -0.81118 5.385806 136.435486 -0.81118 5.385806 95.790321 -1.385188 5.500039 95.790321
4 16 -1.959225 5.38582 136.435486 -1.385188 5.500039 136.435486 -1.385188 5.500039 95.790321 -1.959225 5.38582 95.790321
4 16 -2.445895 5.06068 136.435486 -1.959225 5.38582 136.435486 -1.959225 5.38582 95.790321 -2.445895 5.06068 95.790321
4 16 -2.771006 4.57402 136.435486 -2.445895 5.06068 136.435486 -2.445895 5.06068 95.790321 -2.771006 4.57402 95.790321
4 16 -2.885238 4.000011 136.435486 -2.771006 4.57402 136.435486 -2.771006 4.57402 95.790321 -2.885238 4.000011 95.790321
4 16 -2.77102 3.425975 136.435486 -2.885238 4.000011 136.435486 -2.885238 4.000011 95.790321 -2.77102 3.425975 95.790321
4 16 -2.44588 2.939305 136.435486 -2.77102 3.425975 136.435486 -2.77102 3.425975 95.790321 -2.44588 2.939305 95.790321
4 16 -1.95922 2.614194 136.435486 -2.44588 2.939305 136.435486 -2.44588 2.939305 95.790321 -1.95922 2.614194 95.790321
4 16 -1.385212 2.499961 136.435486 -1.95922 2.614194 136.435486 -1.95922 2.614194 95.790321 -1.385212 2.499961 95.790321
4 16 -0.811175 2.61418 136.435486 -1.385212 2.499961 136.435486 -1.385212 2.499961 95.790321 -0.811175 2.61418 95.790321
4 16 -0.324505 2.93932 136.435486 -0.811175 2.61418 136.435486 -0.811175 2.61418 95.790321 -0.324505 2.93932 95.790321
4 16 -0.00062 3.425975 136.435486 -0.324505 2.93932 136.435486 -0.324505 2.93932 95.790321 -0.00062 3.425975 95.790321
5 24 -0.00062 3.425975 95.790321 -0.00062 3.425975 136.435486 -0.574645 4.811795 95.790321 0.32452 2.939305 95.790321
5 24 0.32452 2.939305 95.790321 0.32452 2.939305 136.435486 -0.00062 3.425975 95.790321 0.81118 2.614194 95.790321
5 24 0.81118 2.614194 95.790321 0.81118 2.614194 136.435486 0.32452 2.939305 95.790321 1.385188 2.499961 95.790321
5 24 1.385188 2.499961 95.790321 1.385188 2.499961 136.435486 0.81118 2.614194 95.790321 1.959225 2.61418 95.790321
5 24 1.959225 2.61418 95.790321 1.959225 2.61418 136.435486 1.385188 2.499961 95.790321 2.445895 2.93932 95.790321
5 24 2.445895 2.93932 95.790321 2.445895 2.93932 136.435486 1.959225 2.61418 95.790321 2.771006 3.42598 95.790321
5 24 2.771006 3.42598 95.790321 2.771006 3.42598 136.435486 2.445895 2.93932 95.790321 2.885238 3.999988 95.790321
5 24 2.885238 3.999988 95.790321 2.885238 3.999988 136.435486 2.771006 3.42598 95.790321 2.77102 4.574025 95.790321
5 24 2.77102 4.574025 95.790321 2.77102 4.574025 136.435486 2.885238 3.999988 95.790321 2.44588 5.060695 95.790321
5 24 2.44588 5.060695 95.790321 2.44588 5.060695 136.435486 2.77102 4.574025 95.790321 1.95922 5.385806 95.790321
5 24 1.95922 5.385806 95.790321 1.95922 5.385806 136.435486 2.44588 5.060695 95.790321 1.385212 5.500039 95.790321
5 24 1.385212 5.500039 95.790321 1.385212 5.500039 136.435486 1.95922 5.385806 95.790321 0.811175 5.38582 95.790321
5 24 0.811175 5.38582 95.790321 0.811175 5.38582 136.435486 1.385212 5.500039 95.790321 0.324505 5.06068 95.790321
5 24 0.324505 5.06068 95.790321 0.324505 5.06068 136.435486 0.811175 5.38582 95.790321 -0.000606 4.57402 95.790321
5 24 -0.000606 4.57402 95.790321 -0.000606 4.57402 136.435486 -0.574627 3.188214 95.790321 0.324505 5.06068 95.790321
5 24 -0.000606 4.57402 95.790321 -0.000606 4.57402 136.435486 0.574645 3.188205 95.790321 -0.32452 5.060695 95.790321
5 24 -0.32452 5.060695 95.790321 -0.32452 5.060695 136.435486 -0.000606 4.57402 95.790321 -0.81118 5.385806 95.790321
5 24 -0.81118 5.385806 95.790321 -0.81118 5.385806 136.435486 -0.32452 5.060695 95.790321 -1.385188 5.500039 95.790321
5 24 -1.385188 5.500039 95.790321 -1.385188 5.500039 136.435486 -0.81118 5.385806 95.790321 -1.959225 5.38582 95.790321
5 24 -1.959225 5.38582 95.790321 -1.959225 5.38582 136.435486 -1.385188 5.500039 95.790321 -2.445895 5.06068 95.790321
5 24 -2.445895 5.06068 95.790321 -2.445895 5.06068 136.435486 -1.959225 5.38582 95.790321 -2.771006 4.57402 95.790321
5 24 -2.771006 4.57402 95.790321 -2.771006 4.57402 136.435486 -2.445895 5.06068 95.790321 -2.885238 4.000011 95.790321
5 24 -2.885238 4.000011 95.790321 -2.885238 4.000011 136.435486 -2.771006 4.57402 95.790321 -2.77102 3.425975 95.790321
5 24 -2.77102 3.425975 95.790321 -2.77102 3.425975 136.435486 -2.885238 4.000011 95.790321 -2.44588 2.939305 95.790321
5 24 -2.44588 2.939305 95.790321 -2.44588 2.939305 136.435486 -2.77102 3.425975 95.790321 -1.95922 2.614194 95.790321
5 24 -1.95922 2.614194 95.790321 -1.95922 2.614194 136.435486 -2.44588 2.939305 95.790321 -1.385212 2.499961 95.790321
5 24 -1.385212 2.499961 95.790321 -1.385212 2.499961 136.435486 -1.95922 2.614194 95.790321 -0.811175 2.61418 95.790321
5 24 -0.811175 2.61418 95.790321 -0.811175 2.61418 136.435486 -1.385212 2.499961 95.790321 -0.324505 2.93932 95.790321
5 24 -0.324505 2.93932 95.790321 -0.324505 2.93932 136.435486 -0.811175 2.61418 95.790321 -0.00062 3.425975 95.790321
5 24 -0.00062 3.425975 95.790321 -0.00062 3.425975 136.435486 0.574627 4.811786 95.790321 -0.324505 2.93932 95.790321
5 24 -0.00062 3.425975 136.435486 0.32452 2.939305 136.435486 -0.00062 3.425975 138.217743 -0.00062 3.425975 95.790321
5 24 0.32452 2.939305 136.435486 0.81118 2.614194 136.435486 0.32452 2.939305 138.217743 0.32452 2.939305 95.790321
5 24 0.81118 2.614194 136.435486 1.385188 2.499961 136.435486 0.81118 2.614194 138.217743 0.81118 2.614194 95.790321
5 24 1.385188 2.499961 136.435486 1.959225 2.61418 136.435486 1.385188 2.499961 138.217743 1.385188 2.499961 95.790321
5 24 1.959225 2.61418 136.435486 2.445895 2.93932 136.435486 1.959225 2.61418 138.217743 1.959225 2.61418 95.790321
5 24 2.445895 2.93932 136.435486 2.771006 3.42598 136.435486 2.445895 2.93932 138.217743 2.445895 2.93932 95.790321
5 24 2.771006 3.42598 136.435486 2.885238 3.999988 136.435486 2.771006 3.42598 138.217743 2.771006 3.42598 95.790321
5 24 2.885238 3.999988 136.435486 2.77102 4.574025 136.435486 2.885238 3.999988 138.217743 2.885238 3.999988 95.790321
5 24 2.77102 4.574025 136.435486 2.44588 5.060695 136.435486 2.77102 4.574025 138.217743 2.77102 4.574025 95.790321
5 24 2.44588 5.060695 136.435486 1.95922 5.385806 136.435486 2.44588 5.060695 138.217743 2.44588 5.060695 95.790321
5 24 1.95922 5.385806 136.435486 1.385212 5.500039 136.435486 1.95922 5.385806 138.217743 1.95922 5.385806 95.790321
5 24 1.385212 5.500039 136.435486 0.811175 5.38582 136.435486 1.385212 5.500039 138.217743 1.385212 5.500039 95.790321
5 24 0.811175 5.38582 136.435486 0.324505 5.06068 136.435486 0.811175 5.38582 138.217743 0.811175 5.38582 95.790321
5 24 0.324505 5.06068 136.435486 -0.000606 4.57402 136.435486 0.324505 5.06068 138.217743 0.324505 5.06068 95.790321
5 24 -0.000606 4.57402 136.435486 -0.32452 5.060695 136.435486 0.00062 4.574025 138.217743 -0.000606 4.57402 95.790321
5 24 -0.32452 5.060695 136.435486 -0.81118 5.385806 136.435486 -0.32452 5.060695 138.217743 -0.32452 5.060695 95.790321
5 24 -0.81118 5.385806 136.435486 -1.385188 5.500039 136.435486 -0.81118 5.385806 138.217743 -0.81118 5.385806 95.790321
5 24 -1.385188 5.500039 136.435486 -1.959225 5.38582 136.435486 -1.385188 5.500039 138.217743 -1.385188 5.500039 95.790321
5 24 -1.959225 5.38582 136.435486 -2.445895 5.06068 136.435486 -1.959225 5.38582 138.217743 -1.959225 5.38582 95.790321
5 24 -2.445895 5.06068 136.435486 -2.771006 4.57402 136.435486 -2.445895 5.06068 138.217743 -2.445895 5.06068 95.790321
5 24 -2.771006 4.57402 136.435486 -2.885238 4.000011 136.435486 -2.771006 4.57402 138.217743 -2.771006 4.57402 95.790321
5 24 -2.885238 4.000011 136.435486 -2.77102 3.425975 136.435486 -2.885238 4.000011 138.217743 -2.885238 4.000011 95.790321
5 24 -2.77102 3.425975 136.435486 -2.44588 2.939305 136.435486 -2.77102 3.425975 138.217743 -2.77102 3.425975 95.790321
5 24 -2.44588 2.939305 136.435486 -1.95922 2.614194 136.435486 -2.44588 2.939305 138.217743 -2.44588 2.939305 95.790321
5 24 -1.95922 2.614194 136.435486 -1.385212 2.499961 136.435486 -1.95922 2.614194 138.217743 -1.95922 2.614194 95.790321
5 24 -1.385212 2.499961 136.435486 -0.811175 2.61418 136.435486 -1.385212 2.499961 138.217743 -1.385212 2.499961 95.790321
5 24 -0.811175 2.61418 136.435486 -0.324505 2.93932 136.435486 -0.811175 2.61418 138.217743 -0.811175 2.61418 95.790321
5 24 -0.324505 2.93932 136.435486 -0.00062 3.425975 136.435486 -0.324505 2.93932 138.217743 -0.324505 2.93932 95.790321
0 // Segment 4, this block is (recursively) generated from "ldcElecWire2Seg.dat"
4 16 0.32452 2.939305 140 -0.00062 3.425975 140 -0.00062 3.425975 136.435486 0.32452 2.939305 136.435486
4 16 0.81118 2.614194 140 0.32452 2.939305 140 0.32452 2.939305 136.435486 0.81118 2.614194 136.435486
4 16 1.385188 2.499961 140 0.81118 2.614194 140 0.81118 2.614194 136.435486 1.385188 2.499961 136.435486
4 16 1.959225 2.61418 140 1.385188 2.499961 140 1.385188 2.499961 136.435486 1.959225 2.61418 136.435486
4 16 2.445895 2.93932 140 1.959225 2.61418 140 1.959225 2.61418 136.435486 2.445895 2.93932 136.435486
4 16 2.771006 3.42598 140 2.445895 2.93932 140 2.445895 2.93932 136.435486 2.771006 3.42598 136.435486
4 16 2.885238 3.999988 140 2.771006 3.42598 140 2.771006 3.42598 136.435486 2.885238 3.999988 136.435486
4 16 2.77102 4.574025 140 2.885238 3.999988 140 2.885238 3.999988 136.435486 2.77102 4.574025 136.435486
4 16 2.44588 5.060695 140 2.77102 4.574025 140 2.77102 4.574025 136.435486 2.44588 5.060695 136.435486
4 16 1.95922 5.385806 140 2.44588 5.060695 140 2.44588 5.060695 136.435486 1.95922 5.385806 136.435486
4 16 1.385212 5.500039 140 1.95922 5.385806 140 1.95922 5.385806 136.435486 1.385212 5.500039 136.435486
4 16 0.811175 5.38582 140 1.385212 5.500039 140 1.385212 5.500039 136.435486 0.811175 5.38582 136.435486
4 16 0.324505 5.06068 140 0.811175 5.38582 140 0.811175 5.38582 136.435486 0.324505 5.06068 136.435486
4 16 -0.000606 4.57402 140 0.324505 5.06068 140 0.324505 5.06068 136.435486 -0.000606 4.57402 136.435486
4 16 -0.32452 5.060695 140 -0.000606 4.57402 140 -0.000606 4.57402 136.435486 -0.32452 5.060695 136.435486
4 16 -0.81118 5.385806 140 -0.32452 5.060695 140 -0.32452 5.060695 136.435486 -0.81118 5.385806 136.435486
4 16 -1.385188 5.500039 140 -0.81118 5.385806 140 -0.81118 5.385806 136.435486 -1.385188 5.500039 136.435486
4 16 -1.959225 5.38582 140 -1.385188 5.500039 140 -1.385188 5.500039 136.435486 -1.959225 5.38582 136.435486
4 16 -2.445895 5.06068 140 -1.959225 5.38582 140 -1.959225 5.38582 136.435486 -2.445895 5.06068 136.435486
4 16 -2.771006 4.57402 140 -2.445895 5.06068 140 -2.445895 5.06068 136.435486 -2.771006 4.57402 136.435486
4 16 -2.885238 4.000011 140 -2.771006 4.57402 140 -2.771006 4.57402 136.435486 -2.885238 4.000011 136.435486
4 16 -2.77102 3.425975 140 -2.885238 4.000011 140 -2.885238 4.000011 136.435486 -2.77102 3.425975 136.435486
4 16 -2.44588 2.939305 140 -2.77102 3.425975 140 -2.77102 3.425975 136.435486 -2.44588 2.939305 136.435486
4 16 -1.95922 2.614194 140 -2.44588 2.939305 140 -2.44588 2.939305 136.435486 -1.95922 2.614194 136.435486
4 16 -1.385212 2.499961 140 -1.95922 2.614194 140 -1.95922 2.614194 136.435486 -1.385212 2.499961 136.435486
4 16 -0.811175 2.61418 140 -1.385212 2.499961 140 -1.385212 2.499961 136.435486 -0.811175 2.61418 136.435486
4 16 -0.324505 2.93932 140 -0.811175 2.61418 140 -0.811175 2.61418 136.435486 -0.324505 2.93932 136.435486
4 16 -0.00062 3.425975 140 -0.324505 2.93932 140 -0.324505 2.93932 136.435486 -0.00062 3.425975 136.435486
5 24 -0.00062 3.425975 136.435486 -0.00062 3.425975 140 -0.574645 4.811795 136.435486 0.32452 2.939305 136.435486
5 24 0.32452 2.939305 136.435486 0.32452 2.939305 140 -0.00062 3.425975 136.435486 0.81118 2.614194 136.435486
5 24 0.81118 2.614194 136.435486 0.81118 2.614194 140 0.32452 2.939305 136.435486 1.385188 2.499961 136.435486
5 24 1.385188 2.499961 136.435486 1.385188 2.499961 140 0.81118 2.614194 136.435486 1.959225 2.61418 136.435486
5 24 1.959225 2.61418 136.435486 1.959225 2.61418 140 1.385188 2.499961 136.435486 2.445895 2.93932 136.435486
5 24 2.445895 2.93932 136.435486 2.445895 2.93932 140 1.959225 2.61418 136.435486 2.771006 3.42598 136.435486
5 24 2.771006 3.42598 136.435486 2.771006 3.42598 140 2.445895 2.93932 136.435486 2.885238 3.999988 136.435486
5 24 2.885238 3.999988 136.435486 2.885238 3.999988 140 2.771006 3.42598 136.435486 2.77102 4.574025 136.435486
5 24 2.77102 4.574025 136.435486 2.77102 4.574025 140 2.885238 3.999988 136.435486 2.44588 5.060695 136.435486
5 24 2.44588 5.060695 136.435486 2.44588 5.060695 140 2.77102 4.574025 136.435486 1.95922 5.385806 136.435486
5 24 1.95922 5.385806 136.435486 1.95922 5.385806 140 2.44588 5.060695 136.435486 1.385212 5.500039 136.435486
5 24 1.385212 5.500039 136.435486 1.385212 5.500039 140 1.95922 5.385806 136.435486 0.811175 5.38582 136.435486
5 24 0.811175 5.38582 136.435486 0.811175 5.38582 140 1.385212 5.500039 136.435486 0.324505 5.06068 136.435486
5 24 0.324505 5.06068 136.435486 0.324505 5.06068 140 0.811175 5.38582 136.435486 -0.000606 4.57402 136.435486
5 24 -0.000606 4.57402 136.435486 -0.000606 4.57402 140 -0.574627 3.188214 136.435486 0.324505 5.06068 136.435486
5 24 -0.000606 4.57402 136.435486 -0.000606 4.57402 140 0.574645 3.188205 136.435486 -0.32452 5.060695 136.435486
5 24 -0.32452 5.060695 136.435486 -0.32452 5.060695 140 -0.000606 4.57402 136.435486 -0.81118 5.385806 136.435486
5 24 -0.81118 5.385806 136.435486 -0.81118 5.385806 140 -0.32452 5.060695 136.435486 -1.385188 5.500039 136.435486
5 24 -1.385188 5.500039 136.435486 -1.385188 5.500039 140 -0.81118 5.385806 136.435486 -1.959225 5.38582 136.435486
5 24 -1.959225 5.38582 136.435486 -1.959225 5.38582 140 -1.385188 5.500039 136.435486 -2.445895 5.06068 136.435486
5 24 -2.445895 5.06068 136.435486 -2.445895 5.06068 140 -1.959225 5.38582 136.435486 -2.771006 4.57402 136.435486
5 24 -2.771006 4.57402 136.435486 -2.771006 4.57402 140 -2.445895 5.06068 136.435486 -2.885238 4.000011 136.435486
5 24 -2.885238 4.000011 136.435486 -2.885238 4.000011 140 -2.771006 4.57402 136.435486 -2.77102 3.425975 136.435486
5 24 -2.77102 3.425975 136.435486 -2.77102 3.425975 140 -2.885238 4.000011 136.435486 -2.44588 2.939305 136.435486
5 24 -2.44588 2.939305 136.435486 -2.44588 2.939305 140 -2.77102 3.425975 136.435486 -1.95922 2.614194 136.435486
5 24 -1.95922 2.614194 136.435486 -1.95922 2.614194 140 -2.44588 2.939305 136.435486 -1.385212 2.499961 136.435486
5 24 -1.385212 2.499961 136.435486 -1.385212 2.499961 140 -1.95922 2.614194 136.435486 -0.811175 2.61418 136.435486
5 24 -0.811175 2.61418 136.435486 -0.811175 2.61418 140 -1.385212 2.499961 136.435486 -0.324505 2.93932 136.435486
5 24 -0.324505 2.93932 136.435486 -0.324505 2.93932 140 -0.811175 2.61418 136.435486 -0.00062 3.425975 136.435486
5 24 -0.00062 3.425975 136.435486 -0.00062 3.425975 140 0.574627 4.811786 136.435486 -0.324505 2.93932 136.435486
5 24 -0.00062 3.425975 140 0.32452 2.939305 140 -0.00062 3.425975 141 -0.00062 3.425975 136.435486
5 24 0.32452 2.939305 140 0.81118 2.614194 140 0.32452 2.939305 141 0.32452 2.939305 136.435486
5 24 0.81118 2.614194 140 1.385188 2.499961 140 0.81118 2.614194 141 0.81118 2.614194 136.435486
5 24 1.385188 2.499961 140 1.959225 2.61418 140 1.385188 2.499961 141 1.385188 2.499961 136.435486
5 24 1.959225 2.61418 140 2.445895 2.93932 140 1.959225 2.61418 141 1.959225 2.61418 136.435486
5 24 2.445895 2.93932 140 2.771006 3.42598 140 2.445895 2.93932 141 2.445895 2.93932 136.435486
5 24 2.771006 3.42598 140 2.885238 3.999988 140 2.771006 3.42598 141 2.771006 3.42598 136.435486
5 24 2.885238 3.999988 140 2.77102 4.574025 140 2.885238 3.999988 141 2.885238 3.999988 136.435486
5 24 2.77102 4.574025 140 2.44588 5.060695 140 2.77102 4.574025 141 2.77102 4.574025 136.435486
5 24 2.44588 5.060695 140 1.95922 5.385806 140 2.44588 5.060695 141 2.44588 5.060695 136.435486
5 24 1.95922 5.385806 140 1.385212 5.500039 140 1.95922 5.385806 141 1.95922 5.385806 136.435486
5 24 1.385212 5.500039 140 0.811175 5.38582 140 1.385212 5.500039 141 1.385212 5.500039 136.435486
5 24 0.811175 5.38582 140 0.324505 5.06068 140 0.811175 5.38582 141 0.811175 5.38582 136.435486
5 24 0.324505 5.06068 140 -0.000606 4.57402 140 0.324505 5.06068 141 0.324505 5.06068 136.435486
5 24 -0.000606 4.57402 140 -0.32452 5.060695 140 0.00062 4.574025 141 -0.000606 4.57402 136.435486
5 24 -0.32452 5.060695 140 -0.81118 5.385806 140 -0.32452 5.060695 141 -0.32452 5.060695 136.435486
5 24 -0.81118 5.385806 140 -1.385188 5.500039 140 -0.81118 5.385806 141 -0.81118 5.385806 136.435486
5 24 -1.385188 5.500039 140 -1.959225 5.38582 140 -1.385188 5.500039 141 -1.385188 5.500039 136.435486
5 24 -1.959225 5.38582 140 -2.445895 5.06068 140 -1.959225 5.38582 141 -1.959225 5.38582 136.435486
5 24 -2.445895 5.06068 140 -2.771006 4.57402 140 -2.445895 5.06068 141 -2.445895 5.06068 136.435486
5 24 -2.771006 4.57402 140 -2.885238 4.000011 140 -2.771006 4.57402 141 -2.771006 4.57402 136.435486
5 24 -2.885238 4.000011 140 -2.77102 3.425975 140 -2.885238 4.000011 141 -2.885238 4.000011 136.435486
5 24 -2.77102 3.425975 140 -2.44588 2.939305 140 -2.77102 3.425975 141 -2.77102 3.425975 136.435486
5 24 -2.44588 2.939305 140 -1.95922 2.614194 140 -2.44588 2.939305 141 -2.44588 2.939305 136.435486
5 24 -1.95922 2.614194 140 -1.385212 2.499961 140 -1.95922 2.614194 141 -1.95922 2.614194 136.435486
5 24 -1.385212 2.499961 140 -0.811175 2.61418 140 -1.385212 2.499961 141 -1.385212 2.499961 136.435486
5 24 -0.811175 2.61418 140 -0.324505 2.93932 140 -0.811175 2.61418 141 -0.811175 2.61418 136.435486
5 24 -0.324505 2.93932 140 -0.00062 3.425975 140 -0.324505 2.93932 141 -0.324505 2.93932 136.435486
Binary file not shown.

After

Width:  |  Height:  |  Size: 292 KiB

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

@@ -2,21 +2,21 @@
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="svg2"
width="900"
height="600"
viewBox="0 0 899.99999 600"
sodipodi:docname="messaging.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
inkscape:version="0.92.3 (2405546, 2018-03-11)">
<metadata
id="metadata8">
<rdf:RDF>
@@ -25,6 +25,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
@@ -246,14 +247,14 @@
guidetolerance="10"
inkscape:pageopacity="1"
inkscape:pageshadow="2"
inkscape:window-width="1856"
inkscape:window-height="1136"
inkscape:window-width="1853"
inkscape:window-height="1145"
id="namedview4"
showgrid="false"
inkscape:zoom="1"
inkscape:cx="405"
inkscape:cy="374.5"
inkscape:window-x="64"
inkscape:cx="270.88803"
inkscape:cy="394.52384"
inkscape:window-x="67"
inkscape:window-y="27"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
@@ -265,13 +266,13 @@
inkscape:bbox-paths="true"
inkscape:bbox-nodes="true"
inkscape:snap-bbox-edge-midpoints="true"
inkscape:snap-bbox-midpoints="true"
inkscape:pagecheckerboard="0" />
inkscape:snap-bbox-midpoints="true" />
<image
xlink:href="../cad/output/ev3device-ev3.png"
sodipodi:absref="../images/ev3brick.png"
xlink:href="../images/ev3brick.png"
style="fill:#fcfcfc;fill-opacity:1"
width="212.79999"
height="189.70542"
height="190"
preserveAspectRatio="none"
id="image1072"
x="122.18381"
@@ -294,9 +295,9 @@
id="text877"
y="35.509838"
x="482.39746"
style="font-style:normal;font-weight:normal;font-size:24.1944px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.604861"
style="font-style:normal;font-weight:normal;font-size:24.19441986px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.60486054"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.60486054"
y="35.509838"
x="482.39746"
id="tspan875"
@@ -310,7 +311,7 @@
style="opacity:1;fill:#eefece;fill-opacity:1;stroke:#e1e4e5;stroke-width:2.22698116;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:15.7957px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.604861"
style="font-style:normal;font-weight:normal;font-size:15.79568195px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.60486054"
x="482.98624"
y="77.266083"
id="text7989"><tspan
@@ -318,36 +319,38 @@
id="tspan7987"
x="482.98624"
y="77.266083"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861">server = BluetoothMailboxServer()</tspan><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054">server = BluetoothMailboxServer()</tspan><tspan
sodipodi:role="line"
x="482.98624"
y="97.010689"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan2601">mbox = TextMailbox(<tspan
style="fill:#4671a1;fill-opacity:1"
id="tspan2677">'greeting'</tspan>, server)</tspan><tspan
sodipodi:role="line"
x="482.98624"
y="116.75529"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan2603" /><tspan
sodipodi:role="line"
x="482.98624"
y="136.49989"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan7991">server.wait_for_connection()</tspan><tspan
sodipodi:role="line"
x="482.98624"
y="156.24449"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan2605" /><tspan
sodipodi:role="line"
x="482.98624"
y="175.98909"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan2609">mbox.wait()</tspan><tspan
sodipodi:role="line"
x="482.98624"
y="195.7337"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan1999">mbox.send(<tspan
style="fill:#4671a1;fill-opacity:1"
id="tspan2679">'hello to you!'</tspan>)</tspan></text>
@@ -367,14 +370,19 @@
style="opacity:1;fill:#6ab0de;fill-opacity:1;stroke:none;stroke-width:2.13333321;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:24.1944px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.604861"
style="font-style:normal;font-weight:normal;font-size:24.19441986px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.60486054"
x="482.98816"
y="405.94217"
y="353.45187"
id="text9727"><tspan
sodipodi:role="line"
id="tspan9723"
x="482.98816"
y="374.85828"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.60486054" /><tspan
sodipodi:role="line"
x="482.98816"
y="405.94217"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan9725">Client </tspan></text>
<rect
y="424.02536"
@@ -385,7 +393,7 @@
style="opacity:1;fill:#eefece;fill-opacity:1;stroke:#e1e4e5;stroke-width:2.13333321;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:15.7957px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.604861"
style="font-style:normal;font-weight:normal;font-size:15.79568195px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.60486054"
x="482.98624"
y="448.22952"
id="text11703"><tspan
@@ -393,43 +401,46 @@
id="tspan11695"
x="482.98624"
y="448.22952"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861">client = BluetoothMailboxClient()</tspan><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054">client = BluetoothMailboxClient()</tspan><tspan
sodipodi:role="line"
x="482.98624"
y="467.97412"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan2655">mbox = TextMailbox(<tspan
style="fill:#4671a1;fill-opacity:1"
id="tspan2675">'greeting'</tspan>, client)</tspan><tspan
sodipodi:role="line"
x="482.98624"
y="487.71872"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan2657" /><tspan
sodipodi:role="line"
x="482.98624"
y="507.46332"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan11697">client.connect(<tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#4671a1;fill-opacity:1"
id="tspan1136">'ev3dev'</tspan>)</tspan><tspan
id="tspan11699"
sodipodi:role="line"
x="482.98624"
y="527.20795" /><tspan
y="527.20795"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054" /><tspan
sodipodi:role="line"
x="482.98624"
y="546.95251"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan2003">mbox.send(<tspan
style="fill:#4671a1;fill-opacity:1"
id="tspan2673">'hello!'</tspan>)</tspan></text>
<image
xlink:href="../cad/output/ev3device-ev3.png"
sodipodi:absref="../images/ev3brick.png"
xlink:href="../images/ev3brick.png"
y="25.149244"
x="122.18381"
id="image1089"
preserveAspectRatio="none"
height="189.70542"
height="190"
width="212.79999"
style="fill:#fcfcfc;fill-opacity:1" />
<path
@@ -461,7 +472,7 @@
</g>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:24.4155px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
style="font-style:normal;font-weight:normal;font-size:24.4154644px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994"
x="287.89365"
y="312.11832"
id="text2581"><tspan
@@ -469,14 +480,14 @@
id="tspan2579"
x="287.89365"
y="312.11832"
style="font-size:16px;stroke-width:1">'Hello to you!'</tspan></text>
style="font-size:16px;stroke-width:0.99999994">'Hello to you!'</tspan></text>
<text
id="text2585"
y="268.67685"
x="310.78723"
style="font-style:normal;font-weight:normal;font-size:13.6025px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
style="font-style:normal;font-weight:normal;font-size:13.60246944px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994"
xml:space="preserve"><tspan
style="font-size:13.3333px;stroke-width:1"
style="font-size:13.33333302px;stroke-width:0.99999994"
y="268.67685"
x="310.78723"
id="tspan2583"
@@ -502,16 +513,16 @@
id="text2595"
y="312.11832"
x="87.259087"
style="font-style:normal;font-weight:normal;font-size:24.4155px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
style="font-style:normal;font-weight:normal;font-size:24.4154644px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994"
xml:space="preserve"><tspan
style="font-size:16px;stroke-width:1"
style="font-size:16px;stroke-width:0.99999994"
y="312.11832"
x="87.259087"
id="tspan2593"
sodipodi:role="line">'Hello!'</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:13.6025px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
style="font-style:normal;font-weight:normal;font-size:13.60246944px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994"
x="84.92907"
y="268.67685"
id="text2599"><tspan
@@ -519,5 +530,5 @@
id="tspan2597"
x="84.92907"
y="268.67685"
style="font-size:13.3333px;stroke-width:1">'greeting'</tspan></text>
style="font-size:13.33333302px;stroke-width:0.99999994">'greeting'</tspan></text>
</svg>

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 22 KiB

@@ -2,21 +2,21 @@
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="svg2"
width="900"
height="750"
viewBox="0 0 899.99999 750"
sodipodi:docname="messaging_network.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
sodipodi:docname="messaging.svg"
inkscape:version="0.92.3 (2405546, 2018-03-11)">
<metadata
id="metadata8">
<rdf:RDF>
@@ -25,6 +25,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
@@ -246,14 +247,14 @@
guidetolerance="10"
inkscape:pageopacity="1"
inkscape:pageshadow="2"
inkscape:window-width="1856"
inkscape:window-height="1136"
inkscape:window-width="1853"
inkscape:window-height="1145"
id="namedview4"
showgrid="false"
inkscape:zoom="0.16357187"
inkscape:cx="1503.926"
inkscape:cy="473.79784"
inkscape:window-x="64"
inkscape:zoom="1"
inkscape:cx="436.75623"
inkscape:cy="478.53312"
inkscape:window-x="67"
inkscape:window-y="27"
inkscape:window-maximized="1"
inkscape:current-layer="svg2"
@@ -265,32 +266,37 @@
inkscape:bbox-paths="true"
inkscape:bbox-nodes="true"
inkscape:snap-bbox-edge-midpoints="true"
inkscape:snap-bbox-midpoints="true"
inkscape:pagecheckerboard="0" />
inkscape:snap-bbox-midpoints="true" />
<image
width="207.70872"
height="185.16669"
sodipodi:absref="../images/ev3brick.png"
xlink:href="../images/ev3brick.png"
style="fill:#fcfcfc;fill-opacity:1"
width="212.79999"
height="190"
preserveAspectRatio="none"
xlink:href="../cad/output/ev3device-ev3.png"
id="image1189"
x="98.735443"
y="371.40686" />
id="image1076"
x="408.05026"
y="101.87006" />
<image
width="207.70872"
height="185.16669"
sodipodi:absref="../images/ev3brick.png"
xlink:href="../images/ev3brick.png"
y="359.87003"
x="598.05029"
id="image1070"
preserveAspectRatio="none"
xlink:href="../cad/output/ev3device-ev3.png"
id="image1107"
x="601.39569"
y="360.5351" />
height="190"
width="212.79999"
style="fill:#fcfcfc;fill-opacity:1" />
<image
width="207.70872"
height="185.16669"
sodipodi:absref="../images/ev3brick.png"
xlink:href="../images/ev3brick.png"
style="fill:#fcfcfc;fill-opacity:1"
width="212.79999"
height="190"
preserveAspectRatio="none"
xlink:href="../cad/output/ev3device-ev3.png"
id="image1023"
x="410.03784"
y="103.51874" />
id="image1072"
x="95.786835"
y="369.87003" />
<rect
style="opacity:1;fill:#e7f2fa;fill-opacity:1;stroke:none;stroke-width:2.13333321;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect871"
@@ -309,9 +315,9 @@
id="text877"
y="37.892525"
x="420.1922"
style="font-style:normal;font-weight:normal;font-size:24.1944px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.604861"
style="font-style:normal;font-weight:normal;font-size:24.19441986px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.60486054"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.60486054"
y="37.892525"
x="420.1922"
id="tspan875"
@@ -341,7 +347,7 @@
</g>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:16.6424px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
style="font-style:normal;font-weight:normal;font-size:16.64243126px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
x="394.85461"
y="366.78806"
id="text7649"><tspan
@@ -354,9 +360,9 @@
id="text7659"
y="407.4787"
x="400.70319"
style="font-style:normal;font-weight:normal;font-size:24.4155px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
style="font-style:normal;font-weight:normal;font-size:24.4154644px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994"
xml:space="preserve"><tspan
style="font-size:18.6667px;stroke-width:1"
style="font-size:18.66666603px;stroke-width:0.99999994"
y="407.4787"
x="400.70319"
id="tspan7657"
@@ -382,7 +388,7 @@
id="text7693"
y="237.28807"
x="232.565"
style="font-style:normal;font-weight:normal;font-size:16.6424px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
style="font-style:normal;font-weight:normal;font-size:16.64243126px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
xml:space="preserve"><tspan
style="font-size:16px;stroke-width:1"
y="237.28807"
@@ -391,7 +397,7 @@
sodipodi:role="line">'cond'</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:24.4155px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
style="font-style:normal;font-weight:normal;font-size:24.4154644px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994"
x="221.79655"
y="276.91803"
id="text7697"><tspan
@@ -399,7 +405,7 @@
id="tspan7695"
x="221.79655"
y="276.91803"
style="font-size:18.6667px;stroke-width:1">'Sunny'</tspan></text>
style="font-size:18.66666603px;stroke-width:0.99999994">'Sunny'</tspan></text>
<g
style="fill:#e7f2fa;fill-opacity:1;stroke-width:0.52550077"
id="g7703"
@@ -421,7 +427,7 @@
id="text7707"
y="270.2421"
x="667.43671"
style="font-style:normal;font-weight:normal;font-size:16.6424px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
style="font-style:normal;font-weight:normal;font-size:16.64243126px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
xml:space="preserve"><tspan
style="font-size:16px;stroke-width:1"
y="270.2421"
@@ -430,7 +436,7 @@
sodipodi:role="line">'amb'</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:24.4155px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1"
style="font-style:normal;font-weight:normal;font-size:24.4154644px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.99999994"
x="676.82086"
y="309.16498"
id="text7711"><tspan
@@ -438,7 +444,7 @@
id="tspan7709"
x="676.82086"
y="309.16498"
style="font-size:18.6667px;stroke-width:1">35</tspan></text>
style="font-size:18.66666603px;stroke-width:0.99999994">35</tspan></text>
<rect
y="8.4151917"
x="10.810917"
@@ -448,7 +454,7 @@
style="opacity:1;fill:#eefece;fill-opacity:1;stroke:#e1e4e5;stroke-width:2.22698116;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:15.7957px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.604861"
style="font-style:normal;font-weight:normal;font-size:15.79568195px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.60486054"
x="21.244511"
y="32.619339"
id="text7989"><tspan
@@ -456,47 +462,49 @@
id="tspan7987"
x="21.244511"
y="32.619339"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861">server = BluetoothMailboxServer()</tspan><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054">server = BluetoothMailboxServer()</tspan><tspan
sodipodi:role="line"
x="21.244511"
y="52.363941"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan7991">server.wait_for_connection(<tspan
style="fill:#126f2a;fill-opacity:1"
id="tspan1152">2</tspan>)</tspan><tspan
sodipodi:role="line"
x="21.244511"
y="72.108543"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan11709" /><tspan
sodipodi:role="line"
x="21.244511"
y="91.853149"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan11719">temp = NumericMailbox(<tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#4671a1;fill-opacity:1"
id="tspan1126">'temp'</tspan>, server)</tspan><tspan
sodipodi:role="line"
x="21.244511"
y="111.59775"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan11721">condition = TextMailbox(<tspan
style="fill:#4671a1;fill-opacity:1"
id="tspan1130">'cond'</tspan>, server)</tspan><tspan
sodipodi:role="line"
x="21.244511"
y="131.34236"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan11713">ambient = NumericMailbox(<tspan
style="fill:#4671a1;fill-opacity:1"
id="tspan1132">'amb'</tspan>, server)</tspan><tspan
sodipodi:role="line"
x="21.244511"
y="151.08696"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan1997" /><tspan
sodipodi:role="line"
x="21.244511"
y="170.83156"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan1999">condition.send(<tspan
style="fill:#4671a1;fill-opacity:1"
id="tspan1134">'Sunny'</tspan>)</tspan></text>
@@ -511,36 +519,38 @@
id="text8001"
y="611.47217"
x="509.414"
style="font-style:normal;font-weight:normal;font-size:15.7957px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.604861"
style="font-style:normal;font-weight:normal;font-size:15.79568195px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.60486054"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
y="611.47217"
x="509.414"
id="tspan7997"
sodipodi:role="line">client = BluetoothMailboxClient()</tspan><tspan
id="tspan7999"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
y="631.2168"
x="509.414"
sodipodi:role="line">client.connect(<tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#4671a1;fill-opacity:1"
id="tspan1148">'ev3dev'</tspan>)</tspan><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
y="650.96136"
x="509.414"
sodipodi:role="line"
id="tspan11687" /><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
y="670.70599"
x="509.414"
sodipodi:role="line"
id="tspan11689">ambient = NumericMailbox(<tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#4671a1;fill-opacity:1"
id="tspan1146">'amb'</tspan>, client)</tspan><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
y="690.45056"
x="509.414"
sodipodi:role="line"
id="tspan2005" /><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
y="710.19519"
x="509.414"
sodipodi:role="line"
@@ -563,14 +573,19 @@
style="opacity:1;fill:#6ab0de;fill-opacity:1;stroke:none;stroke-width:2.13333321;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:24.1944px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.604861"
style="font-style:normal;font-weight:normal;font-size:24.19441986px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.60486054"
x="16.005072"
y="569.18481"
y="516.69452"
id="text9727"><tspan
sodipodi:role="line"
id="tspan9723"
x="16.005072"
y="538.10095"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.60486054" /><tspan
sodipodi:role="line"
x="16.005072"
y="569.18481"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan9725">Client A </tspan></text>
<rect
y="587.26801"
@@ -581,7 +596,7 @@
style="opacity:1;fill:#eefece;fill-opacity:1;stroke:#e1e4e5;stroke-width:2.13333321;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:15.7957px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.604861"
style="font-style:normal;font-weight:normal;font-size:15.79568195px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.60486054"
x="20.150545"
y="611.47217"
id="text11703"><tspan
@@ -589,40 +604,42 @@
id="tspan11695"
x="20.150545"
y="611.47217"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861">client = BluetoothMailboxClient()</tspan><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054">client = BluetoothMailboxClient()</tspan><tspan
sodipodi:role="line"
x="20.150545"
y="631.2168"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan11697">client.connect(<tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#4671a1;fill-opacity:1"
id="tspan1136">'ev3dev'</tspan>)</tspan><tspan
id="tspan11699"
sodipodi:role="line"
x="20.150545"
y="650.96136" /><tspan
y="650.96136"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054" /><tspan
sodipodi:role="line"
x="20.150545"
y="670.70599"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan11707">temp = NumericMailbox(<tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#4671a1;fill-opacity:1"
id="tspan1142">'temp'</tspan>, client)</tspan><tspan
sodipodi:role="line"
x="20.150545"
y="690.45056"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan11717">condition = TextMailbox(<tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#4671a1;fill-opacity:1"
id="tspan1144">'cond'</tspan>, client)</tspan><tspan
sodipodi:role="line"
x="20.150545"
y="710.19519"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan2001" /><tspan
sodipodi:role="line"
x="20.150545"
y="729.93976"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#404140;fill-opacity:1;stroke-width:0.60486054"
id="tspan2003">temp.send(<tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:monospace;-inkscape-font-specification:monospace;fill:#126f2a;fill-opacity:1"
id="tspan1154">25.3</tspan>)</tspan></text>
@@ -642,12 +659,17 @@
y="535.77826" />
<text
id="text11733"
y="569.18481"
y="516.69452"
x="504.22729"
style="font-style:normal;font-weight:normal;font-size:24.1944px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.604861"
style="font-style:normal;font-weight:normal;font-size:24.19441986px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.60486054"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.60486054"
y="538.10095"
x="504.22729"
id="tspan11729"
sodipodi:role="line" /><tspan
id="tspan11731"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.604861"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.60486054"
y="569.18481"
x="504.22729"
sodipodi:role="line">Client B </tspan></text>

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 31 KiB

+3
View File
@@ -0,0 +1,3 @@
0 Author: Pybricks {laurens@pybricks.com}
0 !LICENSE MIT
1 15 0 -48 -20 1 0 0 0 1 0 0 0 1 26910.dat
@@ -2,21 +2,21 @@
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="1400"
height="600"
viewBox="0 0 370.41666 158.75"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1600"
height="800"
viewBox="0 0 423.33333 211.66666"
version="1.1"
id="svg8"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
sodipodi:docname="movehub.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
inkscape:version="0.92.3 (2405546, 2018-03-11)"
sodipodi:docname="movehub.svg">
<defs
id="defs2">
<clipPath
@@ -30,14 +30,14 @@
height="93.081146"
width="147.51704"
id="rect928"
style="fill:none;fill-opacity:1;stroke:#e8f2fa;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;fill-opacity:1;stroke:#e8f2fa;stroke-width:1.99999988;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
clip-path="none" />
</clipPath>
<clipPath
clipPathUnits="userSpaceOnUse"
id="clipPath932">
<rect
style="fill:none;fill-opacity:1;stroke:#e8f2fa;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;fill-opacity:1;stroke:#e8f2fa;stroke-width:1.99999988;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect934"
width="147.51704"
height="93.081146"
@@ -61,56 +61,28 @@
transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
inkscape:connector-curvature="0" />
</marker>
<clipPath
clipPathUnits="userSpaceOnUse"
id="clipPath1223">
<rect
style="fill:none;fill-opacity:1;stroke:#72b0dc;stroke-width:1.55809;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect1225"
width="114.92221"
height="72.514275"
x="225.40959"
y="88.863243"
rx="0.14817756"
ry="0.1342773" />
</clipPath>
<clipPath
clipPathUnits="userSpaceOnUse"
id="clipPath1229">
<rect
ry="0.1342773"
rx="0.14817756"
y="167.34982"
x="226.06636"
height="72.514275"
width="114.92221"
id="rect1231"
style="fill:none;fill-opacity:1;stroke:#72b0dc;stroke-width:1.55809;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
</clipPath>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
pagecolor="#fcfcfc"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0"
inkscape:pageopacity="1"
inkscape:pageshadow="2"
inkscape:zoom="0.32694547"
inkscape:cx="816.64994"
inkscape:cy="264.57011"
inkscape:zoom="0.7"
inkscape:cx="780.24575"
inkscape:cy="524.06848"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
units="px"
inkscape:window-width="1856"
inkscape:window-height="1136"
inkscape:window-x="64"
inkscape:window-width="1853"
inkscape:window-height="1145"
inkscape:window-x="67"
inkscape:window-y="27"
inkscape:window-maximized="1"
showguides="false"
inkscape:snap-global="false"
inkscape:pagecheckerboard="0"
height="600px" />
inkscape:snap-global="false" />
<metadata
id="metadata5">
<rdf:RDF>
@@ -119,6 +91,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
@@ -128,25 +101,36 @@
id="layer1"
transform="translate(0,-85.333317)">
<image
width="193.93959"
height="129.91042"
sodipodi:absref="../images/movehub.png"
y="85.333313"
x="-1.4210855e-14"
id="image873"
xlink:href="../images/movehub.png"
preserveAspectRatio="none"
xlink:href="../cad/output/hub-move-motor-b.png"
id="image1217"
x="118.53333"
y="152.00832"
clip-path="url(#clipPath1229)" />
height="211.66667"
width="238.125" />
<image
sodipodi:absref="movehub_b.png"
xlink:href="movehub_b.png"
transform="translate(-86.595326,-9.6217029)"
clip-path="url(#clipPath932)"
width="264.58334"
height="153.9875"
preserveAspectRatio="none"
id="image897"
x="196.20842"
y="186.53021" />
<g
transform="matrix(1.5372731,0,0,1.5372731,72.167413,-137.11483)"
transform="matrix(1.9732825,0,0,1.9732825,65.859839,-196.26931)"
id="g2717">
<g
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)"
id="g2711"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.13229167;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<path
inkscape:connector-curvature="0"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.13229167;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path2709" />
</g>
<path
@@ -155,92 +139,86 @@
id="path2713"
inkscape:connector-curvature="0" />
<path
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
id="path2715"
inkscape:connector-curvature="0" />
</g>
<image
width="193.93959"
height="135.46666"
sodipodi:absref="movehub_a.png"
xlink:href="movehub_a.png"
transform="translate(21.41876,15.875)"
clip-path="url(#clipPath926)"
width="264.58334"
height="159.54375"
preserveAspectRatio="none"
xlink:href="../cad/output/hub-move-motor-a.png"
id="image1205"
x="207.16875"
y="21.833317"
clip-path="url(#clipPath1223)" />
id="image886"
x="217.24919"
y="3.426312" />
<g
transform="matrix(1.329044,0,0,1.329044,58.828332,-169.39531)"
transform="matrix(1.7059944,0,0,1.7059944,48.737469,-237.70534)"
id="g2747">
<g
transform="matrix(1,-0.27773651,0,1,61.231459,102.02783)"
id="g2741"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.13229167;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<path
inkscape:connector-curvature="0"
d="m 108.02213,149.61786 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.13229167;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path2739" />
</g>
<path
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.119181;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.11918081;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 148.34153,213.98543 c -9.56863,3.45114 -17.40796,14.07786 -17.40796,23.75298 l 2.08019,-0.75027 c 0,-8.40437 6.81691,-17.72172 15.32777,-20.79135 8.51086,-3.06963 15.32778,1.33039 15.32778,9.73476 l 2.08019,-0.75027 c 0,-9.67512 -7.83933,-14.647 -17.40797,-11.19585 z"
id="path2743"
inkscape:connector-curvature="0" />
<path
sodipodi:nodetypes="ccccsc"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 163.29481,224.66962 2.66183,-0.58475 0.60452,1.41743 -2.97202,1.4099 c 0,0 -0.86657,-1.48848 -0.86657,-1.50936 0,-0.0209 0.57224,-0.73322 0.57224,-0.73322 z"
id="path2745"
inkscape:connector-curvature="0" />
</g>
<rect
ry="0.1342773"
rx="0.14817756"
y="167.34982"
x="226.06636"
height="72.514275"
width="114.92221"
ry="0.17236173"
rx="0.19020446"
y="194.54919"
x="263.40842"
height="93.081146"
width="147.51704"
id="rect919"
style="fill:none;fill-opacity:1;stroke:#72b0dc;stroke-width:1.55809;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
style="fill:none;fill-opacity:1;stroke:#72b0dc;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<rect
style="fill:none;fill-opacity:1;stroke:#72b0dc;stroke-width:1.55809;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:none;fill-opacity:1;stroke:#72b0dc;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect921"
width="114.92221"
height="72.514275"
x="225.40959"
y="88.863243"
rx="0.14817756"
ry="0.1342773" />
width="147.51704"
height="93.081146"
x="262.56537"
y="93.801857"
rx="0.19020446"
ry="0.17236173" />
<text
id="text877"
y="157.9464"
x="327.79868"
style="font-style:normal;font-weight:normal;font-size:14.0661px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.124675"
y="182.47871"
x="393.99457"
style="font-style:normal;font-weight:normal;font-size:18.05556679px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.16003601"
xml:space="preserve"><tspan
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.124675"
y="157.9464"
x="327.79868"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.16003601"
y="182.47871"
x="393.99457"
id="tspan875"
sodipodi:role="line">A</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:14.0661px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.124675"
x="329.04797"
y="236.6515"
style="font-style:normal;font-weight:normal;font-size:18.05556679px;line-height:1.25;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#404140;fill-opacity:1;stroke:none;stroke-width:0.16003601"
x="395.59821"
y="283.50659"
id="text950"><tspan
sodipodi:role="line"
id="tspan948"
x="329.04797"
y="236.6515"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.124675">B</tspan></text>
<image
width="165.36458"
height="149.75417"
preserveAspectRatio="none"
xlink:href="../cad/output/hub-move.png"
id="image1101"
x="9.260417"
y="88.772903" />
x="395.59821"
y="283.50659"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Roboto Slab';-inkscape-font-specification:'Roboto Slab';fill:#404140;fill-opacity:1;stroke-width:0.16003601">B</tspan></text>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 9.6 KiB

Before

Width:  |  Height:  |  Size: 81 KiB

After

Width:  |  Height:  |  Size: 81 KiB

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Before

Width:  |  Height:  |  Size: 72 KiB

After

Width:  |  Height:  |  Size: 72 KiB

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

+14
View File
@@ -0,0 +1,14 @@
0 Name: pupmotors
0 Author: Pybricks {laurens@pybricks.com}
0 !LICENSE MIT
1 0 60 -352 -90 1 0 0 0 1 0 0 0 1 87574.dat
1 15 60 -336 -70 0 0 1 0.259 0.966 0 -0.966 0.259 0 20844c01.dat
1 0 60 -312 -150 1 0 0 0 1 0 0 0 1 3706.dat
1 0 100 -312 -150 0 0 -1 0 1 0 1 0 0 u9241.dat
1 0 100 -312 -30 0 0 -1 0 1 0 1 0 0 u9241.dat
1 0 20 -312 -30 0 0 1 0 1 0 -1 0 0 u9241.dat
1 0 20 -312 -150 0 0 1 0 1 0 -1 0 0 u9241.dat
1 0 60 -312 -30 1 0 0 0 1 0 0 0 1 3706.dat
1 0 90 -344 -90 1 0 0 0 1 0 0 0 1 2871b.dat
1 0 30 -344 -90 -1 0 0 0 1 0 0 0 -1 2871b.dat
1 15 10 -376 -310 0 0 -1 0 1 0 1 0 0 21980c01.dat
Binary file not shown.

After

Width:  |  Height:  |  Size: 259 KiB

@@ -2,21 +2,21 @@
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="1247"
height="449"
viewBox="0 0 329.93542 118.79791"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="1500"
height="569"
viewBox="0 0 396.875 150.54791"
version="1.1"
id="svg8"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
sodipodi:docname="pupdcmotors.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
inkscape:version="0.92.3 (2405546, 2018-03-11)"
sodipodi:docname="pupdcmotors.svg">
<defs
id="defs2">
<marker
@@ -57,21 +57,20 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.54385149"
inkscape:cx="547.94371"
inkscape:cy="320.85965"
inkscape:zoom="0.7"
inkscape:cx="679.24979"
inkscape:cy="183.38652"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
inkscape:current-layer="g3510"
showgrid="false"
units="px"
inkscape:window-width="1856"
inkscape:window-height="1136"
inkscape:window-x="64"
inkscape:window-width="1853"
inkscape:window-height="1145"
inkscape:window-x="67"
inkscape:window-y="27"
inkscape:window-maximized="1"
showguides="false"
inkscape:snap-global="false"
inkscape:pagecheckerboard="0" />
inkscape:snap-global="false" />
<metadata
id="metadata5">
<rdf:RDF>
@@ -80,6 +79,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
@@ -88,40 +88,26 @@
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,-146.45207)">
<image
sodipodi:absref="pupdcmotors.png"
xlink:href="pupdcmotors.png"
width="396.875"
height="150.54791"
preserveAspectRatio="none"
id="image45"
x="-3.5527137e-15"
y="146.45207" />
<g
id="g3510"
transform="translate(-4.1577381,13.607143)">
<path
inkscape:connector-curvature="0"
id="path48"
d="m 148.27417,186.83433 56.47677,-24.29519"
style="fill:none;stroke:#2980b9;stroke-width:1.97276;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
sodipodi:nodetypes="cc"
style="fill:none;stroke:#2980b9;stroke-width:1.57821;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1250)"
d="m 210.02419,160.14421 7.89102,-3.75523"
id="path1246"
inkscape:connector-curvature="0" />
<image
width="329.93542"
height="118.79792"
preserveAspectRatio="none"
xlink:href="../cad/output/pupdevice-dcmotors.png"
id="image865"
x="4.1577382"
y="132.84492" />
</g>
<g
transform="matrix(1.5571245,-0.2000295,0,1.5571245,-127.49201,-83.405916)"
transform="matrix(1.9732825,-0.25348949,0,1.9732825,-170.60321,-141.69004)"
id="g2767">
<g
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)"
id="g2761"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.13229167;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<path
inkscape:connector-curvature="0"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.13229167;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path2759" />
</g>
<path
@@ -130,21 +116,36 @@
id="path2763"
inkscape:connector-curvature="0" />
<path
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
id="path2765"
inkscape:connector-curvature="0" />
</g>
<g
id="g3510"
transform="translate(-4.1577381,13.607143)">
<path
inkscape:connector-curvature="0"
id="path48"
d="m 186.79081,201.26357 71.57078,-30.78834"
style="fill:none;stroke:#2980b9;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
sodipodi:nodetypes="cc"
style="fill:none;stroke:#2980b9;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1250)"
d="m 265.04417,167.44023 9.99998,-4.75885"
id="path1246"
inkscape:connector-curvature="0" />
</g>
<g
id="g867"
transform="matrix(1.4022754,-0.20008239,0,1.5575363,-10.061385,-81.104748)">
transform="matrix(1.7770483,-0.25355652,0,1.9738043,-21.788021,-138.77386)">
<g
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.13229167;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="g861"
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)">
<path
id="path859"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.13229167;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
inkscape:connector-curvature="0" />
</g>
@@ -157,19 +158,19 @@
inkscape:connector-curvature="0"
id="path865"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<g
transform="matrix(1.4022754,-0.20008239,0,1.5575363,40.643225,-107.35185)"
transform="matrix(1.7770483,-0.25355652,0,1.9738043,42.467931,-172.03577)"
id="g887">
<g
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)"
id="g881"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.13229167;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<path
inkscape:connector-curvature="0"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.13229167;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path879" />
</g>
<path
@@ -178,7 +179,7 @@
id="path883"
inkscape:connector-curvature="0" />
<path
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
id="path885"
inkscape:connector-curvature="0" />

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

+8
View File
@@ -0,0 +1,8 @@
0 Name: pupmotors
0 Author: Pybricks {laurens@pybricks.com}
0 !LICENSE MIT
1 15 430 -96 190 0 0 1 1 0 0 0 1 0 54675c01.dat
1 15 410 -72 30 0 0 1 1 0 0 0 1 0 54696c01.dat
1 71 230 -144 0 1 0 0 0 1 0 0 0 1 22169c01.dat
1 71 40 -216 0 1 0 0 0 1 0 0 0 1 22172c01.dat
1 15 -140 -320 80 1 0 0 0 1 0 0 0 1 26913c01.dat
Binary file not shown.

After

Width:  |  Height:  |  Size: 576 KiB

@@ -2,21 +2,21 @@
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="1901"
height="1073"
viewBox="0 0 502.97291 283.89791"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="2000"
height="610"
viewBox="0 0 529.16666 161.39583"
version="1.1"
id="svg8"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
sodipodi:docname="pupmotors.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
inkscape:version="0.92.3 (2405546, 2018-03-11)"
sodipodi:docname="pupmotors.svg">
<defs
id="defs2">
<marker
@@ -57,21 +57,20 @@
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.46920771"
inkscape:cx="914.30722"
inkscape:cy="570.10998"
inkscape:zoom="0.49497475"
inkscape:cx="899.69341"
inkscape:cy="449.26412"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
units="px"
inkscape:window-width="1856"
inkscape:window-height="1136"
inkscape:window-x="64"
inkscape:window-width="1853"
inkscape:window-height="1145"
inkscape:window-x="67"
inkscape:window-y="27"
inkscape:window-maximized="1"
showguides="false"
inkscape:snap-global="false"
inkscape:pagecheckerboard="0" />
inkscape:snap-global="false" />
<metadata
id="metadata5">
<rdf:RDF>
@@ -80,6 +79,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
@@ -87,26 +87,27 @@
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(0,0.92084997)">
transform="translate(0,-135.60415)">
<image
width="502.97293"
height="283.89792"
sodipodi:absref="pupmotors.png"
xlink:href="pupmotors.png"
y="135.60416"
x="-2.220446e-16"
id="image853"
preserveAspectRatio="none"
xlink:href="../cad/output/pupdevice-motors.png"
id="image888"
x="0"
y="-0.92084998" />
height="161.39583"
width="529.16669" />
<g
transform="matrix(1.8756049,0,0,1.8756049,90.199834,-175.76377)"
transform="matrix(1.9732825,0,0,1.9732825,-10.059646,-179.85595)"
id="g2717">
<g
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)"
id="g2711"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.13229167;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<path
inkscape:connector-curvature="0"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.13229167;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path2709" />
</g>
<path
@@ -115,21 +116,21 @@
id="path2713"
inkscape:connector-curvature="0" />
<path
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
id="path2715"
inkscape:connector-curvature="0" />
</g>
<g
id="g2727"
transform="matrix(1.6215476,0,0,1.6215476,-89.058468,-181.2828)">
transform="matrix(1.7059944,0,0,1.7059944,79.305221,-182.52003)">
<g
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.13229167;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="g2721"
transform="matrix(1,-0.27773651,0,1,61.231459,102.02783)">
<path
id="path2719"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.13229167;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 108.02213,149.61786 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
inkscape:connector-curvature="0" />
</g>
@@ -137,49 +138,49 @@
inkscape:connector-curvature="0"
id="path2723"
d="m 148.34153,213.98543 c -9.56863,3.45114 -17.40796,14.07786 -17.40796,23.75298 l 2.08019,-0.75027 c 0,-8.40437 6.81691,-17.72172 15.32777,-20.79135 8.51086,-3.06963 15.32778,1.33039 15.32778,9.73476 l 2.08019,-0.75027 c 0,-9.67512 -7.83933,-14.647 -17.40797,-11.19585 z"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.119181;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.11918081;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
<path
inkscape:connector-curvature="0"
id="path2725"
d="m 163.29481,224.66962 2.66183,-0.58475 0.60452,1.41743 -2.97202,1.4099 c 0,0 -0.86657,-1.48848 -0.86657,-1.50936 0,-0.0209 0.57224,-0.73322 0.57224,-0.73322 z"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
sodipodi:nodetypes="ccccsc" />
</g>
<g
transform="matrix(1.6215476,0,0,1.6215476,100.23153,-198.11053)"
transform="matrix(1.7059944,0,0,1.7059944,125.04034,-119.77598)"
id="g2747">
<g
transform="matrix(1,-0.27773651,0,1,61.231459,102.02783)"
id="g2741"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.13229167;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<path
inkscape:connector-curvature="0"
d="m 108.02213,149.61786 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.13229167;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path2739" />
</g>
<path
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.119181;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.11918081;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 148.34153,213.98543 c -9.56863,3.45114 -17.40796,14.07786 -17.40796,23.75298 l 2.08019,-0.75027 c 0,-8.40437 6.81691,-17.72172 15.32777,-20.79135 8.51086,-3.06963 15.32778,1.33039 15.32778,9.73476 l 2.08019,-0.75027 c 0,-9.67512 -7.83933,-14.647 -17.40797,-11.19585 z"
id="path2743"
inkscape:connector-curvature="0" />
<path
sodipodi:nodetypes="ccccsc"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 163.29481,224.66962 2.66183,-0.58475 0.60452,1.41743 -2.97202,1.4099 c 0,0 -0.86657,-1.48848 -0.86657,-1.50936 0,-0.0209 0.57224,-0.73322 0.57224,-0.73322 z"
id="path2745"
inkscape:connector-curvature="0" />
</g>
<g
id="g2757"
transform="matrix(1.8756049,0,0,1.8756049,-94.692862,-170.26207)">
transform="matrix(1.9732825,0,0,1.9732825,-108.71143,-177.21012)">
<g
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.13229167;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="g2751"
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)">
<path
id="path2749"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.13229167;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
inkscape:connector-curvature="0" />
</g>
@@ -192,19 +193,19 @@
inkscape:connector-curvature="0"
id="path2755"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<g
transform="matrix(1.8756049,0,0,1.8756049,-240.74249,-165.81263)"
transform="matrix(1.9732825,0,0,1.9732825,-212.65488,-179.47797)"
id="g2767">
<g
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)"
id="g2761"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.13229167;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<path
inkscape:connector-curvature="0"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.13229167;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path2759" />
</g>
<path
@@ -213,82 +214,10 @@
id="path2763"
inkscape:connector-curvature="0" />
<path
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
id="path2765"
inkscape:connector-curvature="0" />
</g>
<g
id="g874"
transform="matrix(1.8756049,0,0,1.8756049,-198.38924,-316.8828)">
<g
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="g868"
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)">
<path
id="path866"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
inkscape:connector-curvature="0" />
</g>
<path
inkscape:connector-curvature="0"
id="path870"
d="m 148.90956,215.29575 c -8.02867,2.89572 -14.60635,11.81219 -14.60635,19.93021 l 1.74541,-0.62952 c 0,-7.05178 5.7198,-14.86961 12.86094,-17.44522 7.14113,-2.57561 12.86094,1.11628 12.86094,8.16806 l 1.74541,-0.62952 c 0,-8.11802 -6.57768,-12.28973 -14.60635,-9.39401 z"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
<path
inkscape:connector-curvature="0"
id="path872"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
<g
transform="matrix(1.8756049,0,0,1.8756049,-98.504427,-318.78927)"
id="g884">
<g
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)"
id="g878"
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">
<path
inkscape:connector-curvature="0"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="path876" />
</g>
<path
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
d="m 148.90956,215.29575 c -8.02867,2.89572 -14.60635,11.81219 -14.60635,19.93021 l 1.74541,-0.62952 c 0,-7.05178 5.7198,-14.86961 12.86094,-17.44522 7.14113,-2.57561 12.86094,1.11628 12.86094,8.16806 l 1.74541,-0.62952 c 0,-8.11802 -6.57768,-12.28973 -14.60635,-9.39401 z"
id="path880"
inkscape:connector-curvature="0" />
<path
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
id="path882"
inkscape:connector-curvature="0" />
</g>
<g
id="g899"
transform="matrix(1.8756049,0,0,1.8756049,14.289189,-322.09178)">
<g
style="fill:#2980b9;fill-opacity:1;stroke:#fffbfb;stroke-width:0.132292;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="g893"
transform="matrix(1,-0.27773651,0,1,59.387949,102.27922)">
<path
id="path891"
style="fill:#2980b9;fill-opacity:1;fill-rule:evenodd;stroke:#fffbfb;stroke-width:0.132292;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 107.60315,149.3339 -4.4195,12.01847 -4.419489,-12.01847 c 2.609269,1.92005 6.179199,1.90899 8.838989,0 z"
inkscape:connector-curvature="0" />
</g>
<path
inkscape:connector-curvature="0"
id="path895"
d="m 148.90956,215.29575 c -8.02867,2.89572 -14.60635,11.81219 -14.60635,19.93021 l 1.74541,-0.62952 c 0,-7.05178 5.7198,-14.86961 12.86094,-17.44522 7.14113,-2.57561 12.86094,1.11628 12.86094,8.16806 l 1.74541,-0.62952 c 0,-8.11802 -6.57768,-12.28973 -14.60635,-9.39401 z"
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2980b9;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
<path
inkscape:connector-curvature="0"
id="path897"
d="m 161.70224,224.65346 1.85836,-0.53454 0.43431,0.40926 -0.98973,1.42822 c 0,0 -2.13398,-0.30486 -2.13398,-0.32574 0,-0.0209 0.83104,-0.9772 0.83104,-0.9772 z"
style="fill:#2980b9;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 17 KiB

+12
View File
@@ -0,0 +1,12 @@
0 Name: pupmotors
0 Author: Pybricks {laurens@pybricks.com}
0 !LICENSE MIT
1 15 600 -280 240 -1 0 0 0 -1 0 0 0 1 37316c01.dat
1 15 60 -272 160 -1 0 0 0 -1 0 0 0 1 37312c01.dat
1 15 -400 -280 240 -1 0 0 0 -1 0 0 0 1 37308c01.dat
1 0 -400 -310 -374 -1 0 0 0 -1 0 0 0 1 u9218c01.dat
1 15 -400 -320 -410 0 0 1 0 1 0 -1 0 0 20841.dat
1 15 630 -320 -420 1 0 0 0 1 0 0 0 1 26912.dat
1 0 630 -310 -384 -1 0 0 0 -1 0 0 0 1 u9218c01.dat
1 15 60 -320 -430 0 0 1 0 1 0 -1 0 0 20844.dat
1 0 60 -310 -394 -1 0 0 0 -1 0 0 0 1 u9218c01.dat

Before

Width:  |  Height:  |  Size: 93 KiB

After

Width:  |  Height:  |  Size: 93 KiB

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Before

Width:  |  Height:  |  Size: 86 KiB

After

Width:  |  Height:  |  Size: 86 KiB

Before

Width:  |  Height:  |  Size: 87 KiB

After

Width:  |  Height:  |  Size: 87 KiB

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 25 KiB

@@ -76,7 +76,7 @@
inkscape:current-layer="svg2"
showguides="false" />
<image
sodipodi:absref="terminal.png"
sodipodi:absref="/home/laurens/pybricks/git/pybricks-api/doc/api/diagram_source/terminal.png"
xlink:href="terminal.png"
width="967.99994"
height="402"

Before

Width:  |  Height:  |  Size: 7.4 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

@@ -1,4 +1,4 @@
:mod:`ev3devices <pybricks.ev3devices>` -- EV3 devices
:mod:`ev3devices <pybricks.ev3devices>` -- EV3 Devices
======================================================
.. automodule:: pybricks.ev3devices
@@ -9,13 +9,12 @@ Motors
.. _fig_ev3motors:
.. figure:: ../main/diagrams/ev3motors.png
.. figure:: ../api/images/ev3motors_label.png
:width: 100 %
EV3-compatible motors. The arrows indicate the default positive direction.
.. autoclass:: pybricks.ev3devices.Motor
:noindex:
:no-members:
.. rubric:: Measuring
@@ -26,10 +25,6 @@ Motors
.. automethod:: pybricks.ev3devices.Motor.reset_angle
.. automethod:: pybricks.ev3devices.Motor.load
.. automethod:: pybricks.ev3devices.Motor.stalled
.. rubric:: Stopping
.. automethod:: pybricks.ev3devices.Motor.stop
@@ -38,50 +33,32 @@ Motors
.. automethod:: pybricks.ev3devices.Motor.hold
.. rubric:: Running forever
.. rubric:: Action
.. automethod:: pybricks.ev3devices.Motor.run
.. automethod:: pybricks.ev3devices.Motor.dc
.. rubric:: Running by a fixed amount
.. automethod:: pybricks.ev3devices.Motor.run_time
.. automethod:: pybricks.ev3devices.Motor.run_angle
.. automethod:: pybricks.ev3devices.Motor.run_target
.. automethod:: pybricks.ev3devices.Motor.track_target
.. automethod:: pybricks.ev3devices.Motor.run_until_stalled
.. automethod:: pybricks.ev3devices.Motor.done
.. automethod:: pybricks.ev3devices.Motor.dc
.. rubric:: Motor settings
.. rubric:: Advanced motion control
.. automethod:: pybricks.ev3devices.Motor.settings
.. automethod:: pybricks.ev3devices.Motor.track_target
.. rubric:: Control settings
.. autoattribute:: pybricks.ev3devices.Motor.control
:annotation:
.. automethod:: pybricks.ev3devices.Motor.control.limits
.. automethod:: pybricks.ev3devices.Motor.control.pid
.. automethod:: pybricks.ev3devices.Motor.control.target_tolerances
.. automethod:: pybricks.ev3devices.Motor.control.stall_tolerances
.. attribute:: control.scale
Number of degrees that the motor turns to complete one degree at the
output of the gear train. This is the gear ratio determined from the
``gears`` argument when initializing the motor.
Touch Sensor
^^^^^^^^^^^^
.. figure:: ../main/cad/output/ev3device-touch.png
.. figure:: ../api/images/sensor_ev3_touch.png
:width: 18 %
.. autoclass:: pybricks.ev3devices.TouchSensor
@@ -89,7 +66,7 @@ Touch Sensor
Color Sensor
^^^^^^^^^^^^
.. figure:: ../main/cad/output/ev3device-color.png
.. figure:: ../api/images/sensor_ev3_color.png
:width: 18 %
.. autoclass:: pybricks.ev3devices.ColorSensor
@@ -97,11 +74,7 @@ Color Sensor
Infrared Sensor and Beacon
^^^^^^^^^^^^^^^^^^^^^^^^^^
Each method of this class puts the sensor in a different *mode*. Switching
modes takes about one second on this sensor. To make sure that your program
runs quickly, use only of these methods in your program.
.. figure:: ../main/cad/output/ev3device-infrared.png
.. figure:: ../api/images/sensor_ev3_ir.png
:width: 60 %
.. autoclass:: pybricks.ev3devices.InfraredSensor
@@ -109,7 +82,7 @@ runs quickly, use only of these methods in your program.
Ultrasonic Sensor
^^^^^^^^^^^^^^^^^
.. figure:: ../main/cad/output/ev3device-ultrasonic.png
.. figure:: ../api/images/sensor_ev3_ultrasonic.png
:width: 22 %
.. autoclass:: pybricks.ev3devices.UltrasonicSensor
@@ -117,7 +90,7 @@ Ultrasonic Sensor
Gyroscopic Sensor
^^^^^^^^^^^^^^^^^
.. figure:: ../main/cad/output/ev3device-gyro.png
.. figure:: ../api/images/sensor_ev3_gyro.png
:width: 18 %
.. autoclass:: pybricks.ev3devices.GyroSensor
+32
View File
@@ -0,0 +1,32 @@
Working with vectors
====================
Scalars and Vectors
~~~~~~~~~~~~~~~~~~~~~~~
.. _scalar:
scalar
--------------
TODO
.. _vector:
vector
--------------
TODO
Robot reference frame
~~~~~~~~~~~~~~~~~~~~~~~
.. _robotframe:
Robot reference frame
----------------------
TODO (explanation, diagram, etc)::
* X: To the right
* Y: forward
* Z: upward
+18
View File
@@ -0,0 +1,18 @@
:mod:`hubs <pybricks.hubs>` -- Programmable Hubs
================================================
.. module:: pybricks.hubs
.. _fig_hubs:
Select your programmable hub using the buttons below.
.. content-tabs::
.. tab-container:: ev3brick
:title: EV3 Brick
.. figure:: ../api/images/ev3brick.png
:height: 15 em
.. include:: hubs_ev3brick.inc
+230
View File
@@ -0,0 +1,230 @@
.. autoclass:: pybricks.hubs.EV3Brick
:no-members:
.. rubric:: Using the buttons
.. automethod:: pybricks.hubs::EV3Brick.buttons.pressed
.. rubric:: Using the brick status light
.. automethod:: pybricks.hubs::EV3Brick.light.on
.. toggle-header::
:header: **Show/hide example**
**Example: Turn the light on and change the color.**
.. literalinclude::
../../pybricks-projects/snippets/ev3/light_color/main.py
.. automethod:: pybricks.hubs::EV3Brick.light.off
.. rubric:: Using the speaker
.. automethod:: pybricks.hubs::EV3Brick.speaker.beep
.. automethod:: pybricks.hubs::EV3Brick.speaker.play_notes
.. toggle-header::
:header: **Show/hide musical note format**
Each note is a string with the following format:
- The first character is the name of the note, ``A`` to ``G``
or ``R`` for a rest.
- Note names can also include an accidental ``#`` (sharp) or
``b`` (flat). ``B#``/``Cb`` and ``E#``/``Fb`` are not
allowed.
- The note name is followed by the octave number ``2``
to ``8``. For example ``C4`` is middle C. The octave changes
to the next number at the note C, for example, ``B3`` is the
note below middle C (``C4``).
- The octave is followed by ``/`` and a number that indicates
the size of the note. For example ``/4`` is a quarter note,
``/8`` is an eighth note and so on.
- This can optionally followed by a ``.`` to make a dotted
note. Dotted notes are 1-1/2 times as long as notes without a
dot.
- The note can optionally end with a ``_`` which is a tie or a
slur. This causes there to be no pause between this note and
the next note.
.. automethod:: pybricks.hubs::EV3Brick.speaker.play_file
.. automethod:: pybricks.hubs::EV3Brick.speaker.say
.. automethod:: pybricks.hubs::EV3Brick.speaker.set_speech_options
.. toggle-header::
:header: **Show/hide available languages and voices**
You can choose the following languages:
- ``'af'``: Afrikaans
- ``'an'``: Aragonese
- ``'bg'``: Bulgarian
- ``'bs'``: Bosnian
- ``'ca'``: Catalan
- ``'cs'``: Czech
- ``'cy'``: Welsh
- ``'da'``: Danish
- ``'de'``: German
- ``'el'``: Greek
- ``'en'``: English (default)
- ``'en-gb'``: English (United Kingdom)
- ``'en-sc'``: English (Scotland)
- ``'en-uk-north'``: English (United Kingdom, Northern)
- ``'en-uk-rp'``:
English (United Kingdom, Received Pronunciation)
- ``'en-uk-wmids'``: English (United Kingdom, West Midlands)
- ``'en-us'``: English (United States)
- ``'en-wi'``: English (West Indies)
- ``'eo'``: Esperanto
- ``'es'``: Spanish
- ``'es-la'``: Spanish (Latin America)
- ``'et'``: Estonian
- ``'fa'``: Persian
- ``'fa-pin'``: Persian
- ``'fi'``: Finnish
- ``'fr-be'``: French (Belgium)
- ``'fr-fr'``: French (France)
- ``'ga'``: Irish
- ``'grc'``: Greek
- ``'hi'``: Hindi
- ``'hr'``: Croatian
- ``'hu'``: Hungarian
- ``'hy'``: Armenian
- ``'hy-west'``: Armenian (Western)
- ``'id'``: Indonesian
- ``'is'``: Icelandic
- ``'it'``: Italian
- ``'jbo'``: Lojban
- ``'ka'``: Georgian
- ``'kn'``: Kannada
- ``'ku'``: Kurdish
- ``'la'``: Latin
- ``'lfn'``: Lingua Franca Nova
- ``'lt'``: Lithuanian
- ``'lv'``: Latvian
- ``'mk'``: Macedonian
- ``'ml'``: Malayalam
- ``'ms'``: Malay
- ``'ne'``: Nepali
- ``'nl'``: Dutch
- ``'no'``: Norwegian
- ``'pa'``: Punjabi
- ``'pl'``: Polish
- ``'pt-br'``: Portuguese (Brazil)
- ``'pt-pt'``: Portuguese (Portugal)
- ``'ro'``: Romanian
- ``'ru'``: Russian
- ``'sk'``: Slovak
- ``'sq'``: Albanian
- ``'sr'``: Serbian
- ``'sv'``: Swedish
- ``'sw'``: Swahili
- ``'ta'``: Tamil
- ``'tr'``: Turkish
- ``'vi'``: Vietnamese
- ``'vi-hue'``: Vietnamese (Hue)
- ``'vi-sgn'``: Vietnamese (Saigon)
- ``'zh'``: Mandarin Chinese
- ``'zh-yue'``: Cantonese Chinese
You can choose the following voices:
- ``'f1'``: female variant 1
- ``'f2'``: female variant 2
- ``'f3'``: female variant 3
- ``'f4'``: female variant 4
- ``'f5'``: female variant 5
- ``'m1'``: male variant 1
- ``'m2'``: male variant 2
- ``'m3'``: male variant 3
- ``'m4'``: male variant 4
- ``'m5'``: male variant 5
- ``'m6'``: male variant 6
- ``'m7'``: male variant 7
- ``'croak'``: croak
- ``'whisper'``: whisper
- ``'whisperf'``: female whisper
.. automethod:: pybricks.hubs::EV3Brick.speaker.set_volume
.. rubric:: Using the screen
.. |this image| replace:: the screen
.. automethod:: pybricks.hubs::EV3Brick.screen.clear
.. automethod:: pybricks.hubs::EV3Brick.screen.draw_text
.. automethod:: pybricks.hubs::EV3Brick.screen.print
.. toggle-header::
:header: **Show/hide example**
**Example: Say hello... in several ways.**
.. raw:: latex
\begin{CJK}{UTF8}{gbsn}
.. literalinclude::
../../pybricks-projects/snippets/ev3/screen_print/main.py
.. raw:: latex
\end{CJK}
.. automethod:: pybricks.hubs::EV3Brick.screen.set_font
**Example:** See example in :meth:`print`.
.. automethod:: pybricks.hubs::EV3Brick.screen.load_image
.. toggle-header::
:header: **Show/hide example**
**Example: Show an image on the screen.**
.. literalinclude::
../../pybricks-projects/snippets/ev3/screen_image/main.py
.. automethod:: pybricks.hubs::EV3Brick.screen.draw_image
.. automethod:: pybricks.hubs::EV3Brick.screen.draw_pixel
.. automethod:: pybricks.hubs::EV3Brick.screen.draw_line
.. toggle-header::
:header: **Show/hide example**
**Example: Draw some shapes on the screen.**
.. literalinclude::
../../pybricks-projects/snippets/ev3/screen_draw/main.py
.. automethod:: pybricks.hubs::EV3Brick.screen.draw_box
**Example:** See example in :meth:`draw_line`.
.. automethod:: pybricks.hubs::EV3Brick.screen.draw_circle
**Example:** See example in :meth:`draw_line`.
.. autoattribute:: pybricks.hubs::EV3Brick.screen.width
.. autoattribute:: pybricks.hubs::EV3Brick.screen.height
.. automethod:: pybricks.hubs::EV3Brick.screen.save
.. rubric:: Using the battery
.. automethod:: pybricks.hubs::EV3Brick.battery.voltage
.. automethod:: pybricks.hubs::EV3Brick.battery.current
Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 129 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 87 KiB

Some files were not shown because too many files have changed in this diff Show More