Compare commits
17 Commits
f9406aa9a9
..
master
| Author | SHA1 | Date | |
|---|---|---|---|
| d24f097223 | |||
| d3cb22a278 | |||
| efecc44a52 | |||
| 4dd53284ca | |||
| 32dd6dfce7 | |||
| 99e637fc8b | |||
| 73a7be3f43 | |||
| 2dfcc72343 | |||
| 87c6b5abdf | |||
| b6551d9d6d | |||
| 1f8aa8e55c | |||
| 99916d9ab7 | |||
| dd592a5bd1 | |||
| 8d33ba71ff | |||
| 7db9f1fa89 | |||
| 3bf58018ab | |||
| f84acecadb |
-198
@@ -1,198 +0,0 @@
|
||||
---
|
||||
Language: Cpp
|
||||
AccessModifierOffset: -4
|
||||
AlignAfterOpenBracket: Align # [BlockIndent, Align]
|
||||
AlignArrayOfStructures: None # [None, Left, Right]
|
||||
AlignConsecutiveMacros: AcrossComments
|
||||
AlignConsecutiveAssignments: None # [Consecutive, None]
|
||||
AlignConsecutiveBitFields: Consecutive
|
||||
AlignConsecutiveDeclarations: None
|
||||
AlignEscapedNewlines: Left
|
||||
AlignOperands: Align
|
||||
AlignTrailingComments: true
|
||||
AllowAllArgumentsOnNextLine: false
|
||||
AllowAllParametersOfDeclarationOnNextLine: false
|
||||
AllowShortEnumsOnASingleLine: false
|
||||
AllowShortBlocksOnASingleLine: false
|
||||
AllowShortCaseLabelsOnASingleLine: false
|
||||
AllowShortFunctionsOnASingleLine: false # [InlineOnly, true]
|
||||
AllowShortLambdasOnASingleLine: false
|
||||
AllowShortIfStatementsOnASingleLine: false
|
||||
AllowShortLoopsOnASingleLine: false
|
||||
# AllowShortCompoundRequirementOnASingleLine: true # <== clang-format v18+
|
||||
AlwaysBreakAfterDefinitionReturnType: false
|
||||
AlwaysBreakAfterReturnType: None
|
||||
AlwaysBreakBeforeMultilineStrings: true
|
||||
AlwaysBreakTemplateDeclarations: true
|
||||
BreakAfterAttributes: Leave
|
||||
AttributeMacros:
|
||||
- __capability
|
||||
BinPackArguments: true
|
||||
BinPackParameters: true
|
||||
BreakBeforeBraces: Custom
|
||||
BraceWrapping:
|
||||
AfterCaseLabel: true
|
||||
AfterClass: true
|
||||
AfterControlStatement: Always
|
||||
AfterEnum: false
|
||||
AfterFunction: true
|
||||
AfterNamespace: true
|
||||
AfterObjCDeclaration: true
|
||||
AfterStruct: true
|
||||
AfterUnion: true
|
||||
AfterExternBlock: true
|
||||
BeforeCatch: true
|
||||
BeforeElse: true
|
||||
BeforeLambdaBody: false
|
||||
BeforeWhile: true
|
||||
IndentBraces: false
|
||||
SplitEmptyFunction: true
|
||||
SplitEmptyRecord: true
|
||||
SplitEmptyNamespace: true
|
||||
BreakBeforeBinaryOperators: None # true
|
||||
BreakBeforeConceptDeclarations: true
|
||||
BreakBeforeInheritanceComma: true
|
||||
BreakInheritanceList: AfterComma
|
||||
BreakBeforeTernaryOperators: true # false
|
||||
BreakConstructorInitializersBeforeComma: true
|
||||
BreakConstructorInitializers: BeforeColon
|
||||
BreakAfterJavaFieldAnnotations: false
|
||||
BreakStringLiterals: false
|
||||
ColumnLimit: 100
|
||||
CommentPragmas: '^ IWYU pragma:'
|
||||
QualifierAlignment: Leave
|
||||
CompactNamespaces: false
|
||||
ConstructorInitializerIndentWidth: 4
|
||||
ContinuationIndentWidth: 4
|
||||
Cpp11BracedListStyle: false
|
||||
DeriveLineEnding: true
|
||||
DerivePointerAlignment: false
|
||||
DisableFormat: false
|
||||
EmptyLineAfterAccessModifier: Never
|
||||
EmptyLineBeforeAccessModifier: LogicalBlock
|
||||
ExperimentalAutoDetectBinPacking: false
|
||||
PackConstructorInitializers: Never
|
||||
ConstructorInitializerAllOnOneLineOrOnePerLine: false
|
||||
AllowAllConstructorInitializersOnNextLine: true
|
||||
FixNamespaceComments: false
|
||||
ForEachMacros:
|
||||
- foreach
|
||||
- Q_FOREACH
|
||||
- BOOST_FOREACH
|
||||
IfMacros:
|
||||
- KJ_IF_MAYBE
|
||||
IncludeBlocks: Regroup
|
||||
IncludeCategories:
|
||||
- Regex: '(<[0-9a-z_-]*>)'
|
||||
Priority: 0
|
||||
SortPriority: 0
|
||||
CaseSensitive: false
|
||||
- Regex: '(<gdextension[/0-9a-z_-]*\.h[p]?[p]?>)'
|
||||
Priority: 2
|
||||
SortPriority: 3
|
||||
CaseSensitive: false
|
||||
- Regex: '(<godot[/0-9a-z_-]*\.h[p]?[p]?>)'
|
||||
Priority: 2
|
||||
SortPriority: 4
|
||||
CaseSensitive: false
|
||||
- Regex: '(<[0-9a-z_-]*\.h[p]?[p]?>)'
|
||||
Priority: 1
|
||||
SortPriority: 1
|
||||
CaseSensitive: false
|
||||
- Regex: '(<.+[/0-9a-z_]*\.h[p]?[p]?>)'
|
||||
Priority: 1
|
||||
SortPriority: 2
|
||||
CaseSensitive: false
|
||||
- Regex: '(".*\.h[p]?[p]?")'
|
||||
Priority: 3
|
||||
SortPriority: 5
|
||||
CaseSensitive: false
|
||||
- Regex: '(".+[/0-9a-z_]*\.h[p]?[p]?")'
|
||||
Priority: 3
|
||||
SortPriority: 6
|
||||
CaseSensitive: false
|
||||
IncludeIsMainRegex: '""'
|
||||
IncludeIsMainSourceRegex: '""'
|
||||
IndentAccessModifiers: false
|
||||
IndentCaseLabels: true
|
||||
IndentCaseBlocks: false
|
||||
IndentGotoLabels: true
|
||||
IndentPPDirectives: BeforeHash
|
||||
IndentExternBlock: AfterExternBlock
|
||||
IndentRequires: true
|
||||
IndentWidth: 4
|
||||
IndentWrappedFunctionNames: false
|
||||
InsertTrailingCommas: None # [None, Wrapped] ==> trailing comma insertion cannot be used with bin packing
|
||||
KeepEmptyLinesAtTheStartOfBlocks: false
|
||||
LambdaBodyIndentation: Signature
|
||||
MacroBlockBegin: ''
|
||||
MacroBlockEnd: ''
|
||||
MaxEmptyLinesToKeep: 1
|
||||
NamespaceIndentation: All
|
||||
PenaltyBreakAssignment: 50
|
||||
PenaltyBreakBeforeFirstCallParameter: 10
|
||||
PenaltyBreakComment: 50
|
||||
PenaltyBreakFirstLessLess: 120
|
||||
PenaltyBreakOpenParenthesis: 10
|
||||
PenaltyBreakString: 1000
|
||||
PenaltyBreakTemplateDeclaration: 1000
|
||||
PenaltyExcessCharacter: 10
|
||||
PenaltyReturnTypeOnItsOwnLine: 100
|
||||
PenaltyIndentedWhitespace: 0
|
||||
PointerAlignment: Left
|
||||
PPIndentWidth: 2
|
||||
# QualifierOrder: ['static', 'inline', 'constexpr', 'const', 'type']
|
||||
ReferenceAlignment: Pointer
|
||||
ReflowComments: true
|
||||
RemoveBracesLLVM: true
|
||||
# RemoveParentheses: true ## clang v17 only
|
||||
RequiresClausePosition: OwnLine
|
||||
SeparateDefinitionBlocks: Always # Leave
|
||||
ShortNamespaceLines: 1
|
||||
SortIncludes: true
|
||||
SortUsingDeclarations: true
|
||||
SpaceAfterCStyleCast: false
|
||||
SpaceAfterLogicalNot: false
|
||||
SpaceAfterTemplateKeyword: true
|
||||
SpaceBeforeAssignmentOperators: true
|
||||
SpaceBeforeCaseColon: false
|
||||
SpaceBeforeCpp11BracedList: false
|
||||
SpaceBeforeCtorInitializerColon: true
|
||||
SpaceBeforeInheritanceColon: true
|
||||
SpaceBeforeParens: Custom
|
||||
SpaceBeforeParensOptions:
|
||||
AfterControlStatements: true
|
||||
AfterForeachMacros: true
|
||||
AfterFunctionDefinitionName: false
|
||||
AfterFunctionDeclarationName: false
|
||||
AfterIfMacros: true
|
||||
AfterOverloadedOperator: false
|
||||
BeforeNonEmptyParentheses: false
|
||||
SpaceAroundPointerQualifiers: Default
|
||||
SpaceBeforeRangeBasedForLoopColon: true
|
||||
SpaceInEmptyBlock: true
|
||||
SpaceInEmptyParentheses: false
|
||||
SpacesBeforeTrailingComments: 2
|
||||
SpacesInAngles: Never
|
||||
SpacesInConditionalStatement: false
|
||||
SpacesInContainerLiterals: true
|
||||
SpacesInCStyleCastParentheses: false
|
||||
SpacesInLineCommentPrefix:
|
||||
Minimum: 1
|
||||
Maximum: -1
|
||||
SpacesInParentheses: false
|
||||
SpacesInSquareBrackets: false
|
||||
SpaceBeforeSquareBrackets: false
|
||||
BitFieldColonSpacing: Both
|
||||
Standard: Latest
|
||||
TabWidth: 4
|
||||
UseCRLF: false
|
||||
UseTab: Never
|
||||
WhitespaceSensitiveMacros:
|
||||
- STRINGIZE
|
||||
- PP_STRINGIZE
|
||||
- BOOST_PP_STRINGIZE
|
||||
- NS_SWIFT_NAME
|
||||
- CF_SWIFT_NAME
|
||||
- R
|
||||
...
|
||||
@@ -1 +0,0 @@
|
||||
* text=auto eol=lf
|
||||
@@ -1,38 +0,0 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Describe the bug**
|
||||
A clear and concise description of what the bug is.
|
||||
|
||||
**To Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
|
||||
**Expected behavior**
|
||||
A clear and concise description of what you expected to happen.
|
||||
|
||||
**Screenshots**
|
||||
If applicable, add screenshots to help explain your problem.
|
||||
|
||||
**Desktop (please complete the following information):**
|
||||
- OS: [e.g. iOS]
|
||||
- Browser [e.g. chrome, safari]
|
||||
- Version [e.g. 22]
|
||||
|
||||
**Smartphone (please complete the following information):**
|
||||
- Device: [e.g. iPhone6]
|
||||
- OS: [e.g. iOS8.1]
|
||||
- Browser [e.g. stock browser, safari]
|
||||
- Version [e.g. 22]
|
||||
|
||||
**Additional context**
|
||||
Add any other context about the problem here.
|
||||
@@ -1,20 +0,0 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
title: ''
|
||||
labels: ''
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Is your feature request related to a problem? Please describe.**
|
||||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
||||
|
||||
**Describe the solution you'd like**
|
||||
A clear and concise description of what you want to happen.
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
A clear and concise description of any alternative solutions or features you've considered.
|
||||
|
||||
**Additional context**
|
||||
Add any other context or screenshots about the feature request here.
|
||||
@@ -1,27 +0,0 @@
|
||||
name: GDExtension CMake
|
||||
|
||||
on: [push, pull_request]
|
||||
|
||||
jobs:
|
||||
build-linux:
|
||||
runs-on: self-hosted
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
# linux / gcc build
|
||||
- name: '[linux | submodule sync]'
|
||||
run: cd ${{ github.workspace }} && git submodule deinit --all --force && git submodule update --init --recursive
|
||||
- name: '[linux | gcc] => cmake - delete cache'
|
||||
run: rm -rf ${{ github.workspace }}/.out/*
|
||||
- name: '[linux | gcc] => cmake - configure'
|
||||
run: >
|
||||
cmake -B ${{ github.workspace }}/.out
|
||||
-DCMAKE_CXX_COMPILER=g++
|
||||
-DCMAKE_C_COMPILER=gcc
|
||||
-DCMAKE_BUILD_TYPE=Debug
|
||||
-S ${{ github.workspace }}
|
||||
-G Ninja
|
||||
- name: '[linux | gcc] => cmake - clean'
|
||||
run: cmake --build ${{ github.workspace }}/.out --config Debug --target clean --parallel 48
|
||||
- name: '[linux | gcc] => cmake - build'
|
||||
run: cmake --build ${{ github.workspace }}/.out --config Debug --target roguelite --parallel 48
|
||||
+1
-29
@@ -1,30 +1,2 @@
|
||||
.godot/
|
||||
.import/
|
||||
.out/
|
||||
out/
|
||||
cmake-build-*/
|
||||
|
||||
export.cfg
|
||||
export_presets.cfg
|
||||
.sconsign.dblite
|
||||
|
||||
*.translation
|
||||
*.obj
|
||||
|
||||
**/bin/*
|
||||
!**/bin/*.gdextension
|
||||
|
||||
.vs/**
|
||||
!.vs/launch.vs.json
|
||||
!.vs/VSWorkspaceSettings.json
|
||||
!.vs/CMakeWorkspaceSettings.json
|
||||
|
||||
.vscode/**
|
||||
!.vscode/c_cpp_properties.json
|
||||
!.vscode/extensions.json
|
||||
!.vscode/launch.json
|
||||
!.vscode/settings.json
|
||||
|
||||
.cache/**
|
||||
build/
|
||||
compile_commands.json
|
||||
.vscode/
|
||||
-11
@@ -1,11 +0,0 @@
|
||||
[submodule "extern/godot-engine"]
|
||||
path = extern/godot-engine
|
||||
url = https://github.com/godotengine/godot.git
|
||||
branch = 4.3
|
||||
[submodule "extern/godot-cpp"]
|
||||
path = extern/godot-cpp
|
||||
url = https://github.com/godotengine/godot-cpp.git
|
||||
branch = 4.3
|
||||
[submodule "extern/vcpkg"]
|
||||
path = extern/vcpkg
|
||||
url = https://github.com/microsoft/vcpkg
|
||||
@@ -1,4 +0,0 @@
|
||||
{
|
||||
"enableCMake": true,
|
||||
"sourceDirectory": "${workspaceRoot}"
|
||||
}
|
||||
@@ -1,38 +0,0 @@
|
||||
{
|
||||
"BuildIncremental": {
|
||||
"Enabled": false
|
||||
},
|
||||
"ExcludedItems": [
|
||||
".git*",
|
||||
".clang*",
|
||||
".idea",
|
||||
".vscode",
|
||||
"*.md",
|
||||
"cpp.hint",
|
||||
"/scripts",
|
||||
"extension_api.json",
|
||||
"godot-engine/**/*.md",
|
||||
"godot-engine/**/*.txt",
|
||||
"godot-engine/**/*.py",
|
||||
"godot-engine/**/*.png",
|
||||
"godot-engine/**/*.svg",
|
||||
"godot-engine/**/*.yml",
|
||||
"godot-engine/**/SConstruct",
|
||||
"godot-engine/**/SCsub",
|
||||
"godot-engine/**/.mailmap*",
|
||||
"godot-engine/**/.editorconfig",
|
||||
"godot-engine/**/LICENSE",
|
||||
"!.out*",
|
||||
"!.out/*",
|
||||
"!.out/build/*",
|
||||
"!.godot",
|
||||
"!README.md"
|
||||
],
|
||||
"Indexing": {
|
||||
"Enabled": true
|
||||
},
|
||||
"Logger": {
|
||||
"EnableVsLogging": false,
|
||||
"LoggingLevel": "Info"
|
||||
}
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
{
|
||||
"version": "0.2.1",
|
||||
"configurations": [
|
||||
{
|
||||
"type": "dll",
|
||||
"exe": "${workspaceRoot}/extern/godot-engine/bin/godot.windows.editor.dev.x86_64.exe",
|
||||
"args": [
|
||||
"--editor",
|
||||
"--windowed",
|
||||
"--delta-smoothing enable",
|
||||
"--resolution 1920x1080",
|
||||
"--debug",
|
||||
"--verbose",
|
||||
"--path",
|
||||
"${workspaceRoot}/project"
|
||||
],
|
||||
"project": "CMakeLists.txt",
|
||||
"name": "gdextension (editor)",
|
||||
"visualizerFile": "${workspaceRoot}/extern/godot-engine/platform/windows/godot.natvis"
|
||||
},
|
||||
{
|
||||
"type": "dll",
|
||||
"isDefaultConfiguration": true,
|
||||
"exe": "${workspaceRoot}/extern/godot-engine/bin/godot.windows.editor.dev.x86_64.exe",
|
||||
"args": [
|
||||
"--debug",
|
||||
"--verbose",
|
||||
"--path",
|
||||
"${workspaceRoot}/project"
|
||||
],
|
||||
"project": "CMakeLists.txt",
|
||||
"name": "gdextension (project)",
|
||||
"visualizerFile": "${workspaceRoot}/extern/godot-engine/platform/windows/godot.natvis"
|
||||
}
|
||||
]
|
||||
}
|
||||
Vendored
-25
@@ -1,25 +0,0 @@
|
||||
{
|
||||
"version": 4,
|
||||
"configurations": [
|
||||
{
|
||||
"name": "GDNative C++ (GCC)",
|
||||
"configurationProvider": "ms-vscode.cmake-tools",
|
||||
"intelliSenseMode": "linux-gcc-x64"
|
||||
},
|
||||
{
|
||||
"name": "GDNative C++ (Clang)",
|
||||
"configurationProvider": "ms-vscode.cmake-tools",
|
||||
"intelliSenseMode": "linux-clang-x64"
|
||||
},
|
||||
{
|
||||
"name": "Mac GDNative C++ (Clang)",
|
||||
"configurationProvider": "ms-vscode.cmake-tools",
|
||||
"intelliSenseMode": "macos-clang-x64"
|
||||
},
|
||||
{
|
||||
"name": "GDNative C++ (MSVC)",
|
||||
"configurationProvider": "ms-vscode.cmake-tools",
|
||||
"intelliSenseMode": "windows-msvc-x64"
|
||||
}
|
||||
]
|
||||
}
|
||||
Vendored
-7
@@ -1,7 +0,0 @@
|
||||
{
|
||||
"recommendations": [
|
||||
"ms-vscode.cpptools",
|
||||
"ms-vscode.cmake-tools",
|
||||
"xaver.clang-format",
|
||||
]
|
||||
}
|
||||
Vendored
-202
@@ -1,202 +0,0 @@
|
||||
{
|
||||
// Use IntelliSense to learn about possible attributes.
|
||||
// Hover to view descriptions of existing attributes.
|
||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "project (gdb)",
|
||||
"type": "cppdbg",
|
||||
"request": "launch",
|
||||
"MIMode": "gdb",
|
||||
"linux": {
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.linuxbsd.editor.dev.x86_64",
|
||||
"miDebuggerPath": "/usr/bin/gdb"
|
||||
},
|
||||
"windows": {
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.windows.editor.dev.x86_64.exe",
|
||||
"miDebuggerPath": "gdb"
|
||||
},
|
||||
"args": [
|
||||
"--debug",
|
||||
"--verbose",
|
||||
"--path",
|
||||
"${workspaceFolder}/project"
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"visualizerFile": "${workspaceFolder}/extern/godot-engine/platform/windows/godot.natvis",
|
||||
"internalConsoleOptions": "openOnSessionStart",
|
||||
"launchCompleteCommand": "exec-run",
|
||||
"symbolLoadInfo": {
|
||||
"loadAll": true,
|
||||
"exceptionList": ""
|
||||
},
|
||||
"setupCommands": [
|
||||
{
|
||||
"description": "Enable pretty-printing for gdb",
|
||||
"text": "-enable-pretty-printing",
|
||||
"ignoreFailures": true
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "editor (gdb)",
|
||||
"type": "cppdbg",
|
||||
"request": "launch",
|
||||
"MIMode": "gdb",
|
||||
"linux": {
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.linuxbsd.editor.dev.x86_64",
|
||||
"miDebuggerPath": "/usr/bin/gdb"
|
||||
},
|
||||
"windows": {
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.windows.editor.dev.x86_64.exe",
|
||||
"miDebuggerPath": "gdb"
|
||||
},
|
||||
"args": [
|
||||
"--editor",
|
||||
"--debug",
|
||||
"--verbose",
|
||||
"--path",
|
||||
"${workspaceFolder}/project"
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"visualizerFile": "${workspaceFolder}/extern/godot-engine/platform/windows/godot.natvis",
|
||||
"internalConsoleOptions": "openOnSessionStart",
|
||||
"launchCompleteCommand": "exec-run",
|
||||
"symbolLoadInfo": {
|
||||
"loadAll": true,
|
||||
"exceptionList": ""
|
||||
},
|
||||
"setupCommands": [
|
||||
{
|
||||
"description": "Enable pretty-printing for gdb",
|
||||
"text": "-enable-pretty-printing",
|
||||
"ignoreFailures": true
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "project (vsdbg | windows)",
|
||||
"type": "cppvsdbg",
|
||||
"request": "launch",
|
||||
"requireExactSource": true,
|
||||
"symbolOptions": {
|
||||
"searchPaths": [
|
||||
"${workspaceFolder}/extern/godot-engine/bin",
|
||||
"${workspaceFolder}/project"
|
||||
],
|
||||
"searchMicrosoftSymbolServer": true
|
||||
},
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.windows.editor.dev.x86_64.exe",
|
||||
"args": [
|
||||
"--debug",
|
||||
"--verbose",
|
||||
"--path",
|
||||
"${workspaceFolder}/project"
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"visualizerFile": "${workspaceFolder}/extern/godot-engine/platform/windows/godot.natvis",
|
||||
"internalConsoleOptions": "openOnSessionStart",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"name": "editor (vsdbg | windows)",
|
||||
"type": "cppvsdbg",
|
||||
"request": "launch",
|
||||
"requireExactSource": true,
|
||||
"symbolOptions": {
|
||||
"searchPaths": [
|
||||
"${workspaceFolder}/extern/godot-engine/bin",
|
||||
"${workspaceFolder}/project"
|
||||
],
|
||||
"searchMicrosoftSymbolServer": true
|
||||
},
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.windows.editor.dev.x86_64.exe",
|
||||
"args": [
|
||||
"--editor",
|
||||
"--debug",
|
||||
"--verbose",
|
||||
"--path",
|
||||
"${workspaceFolder}/project"
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"visualizerFile": "${workspaceFolder}/extern/godot-engine/platform/windows/godot.natvis",
|
||||
"internalConsoleOptions": "openOnSessionStart",
|
||||
"console": "internalConsole"
|
||||
},
|
||||
{
|
||||
"name": "project (lldb)",
|
||||
"type": "cppdbg",
|
||||
"MIMode": "lldb",
|
||||
"request": "launch",
|
||||
"linux": {
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.linuxbsd.editor.dev.x86_64"
|
||||
},
|
||||
"windows": {
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.windows.editor.dev.x86_64.exe"
|
||||
},
|
||||
"osx": {
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.macos.editor.dev.arm64"
|
||||
},
|
||||
"args": [
|
||||
"--debug",
|
||||
"--verbose",
|
||||
"--path",
|
||||
"${workspaceFolder}/project"
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"visualizerFile": "${workspaceFolder}/extern/godot-engine/platform/windows/godot.natvis",
|
||||
"internalConsoleOptions": "openOnSessionStart",
|
||||
"launchCompleteCommand": "exec-run",
|
||||
"symbolLoadInfo": {
|
||||
"loadAll": true,
|
||||
"exceptionList": ""
|
||||
},
|
||||
"setupCommands": [
|
||||
{
|
||||
"description": "Enable pretty-printing for gdb",
|
||||
"text": "-enable-pretty-printing",
|
||||
"ignoreFailures": true
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "editor (lldb)",
|
||||
"type": "cppdbg",
|
||||
"MIMode": "lldb",
|
||||
"miDebuggerPath": "lldb",
|
||||
"request": "launch",
|
||||
"linux": {
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.linuxbsd.editor.dev.x86_64"
|
||||
},
|
||||
"windows": {
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.windows.editor.dev.x86_64.exe"
|
||||
},
|
||||
"osx": {
|
||||
"program": "${workspaceFolder}/extern/godot-engine/bin/godot.macos.editor.dev.arm64"
|
||||
},
|
||||
"args": [
|
||||
"--editor",
|
||||
"--debug",
|
||||
"--verbose",
|
||||
"--path",
|
||||
"${workspaceFolder}/project"
|
||||
],
|
||||
"cwd": "${workspaceFolder}",
|
||||
"visualizerFile": "${workspaceFolder}/extern/godot-engine/platform/windows/godot.natvis",
|
||||
"internalConsoleOptions": "openOnSessionStart",
|
||||
"launchCompleteCommand": "exec-run",
|
||||
"symbolLoadInfo": {
|
||||
"loadAll": true,
|
||||
"exceptionList": ""
|
||||
},
|
||||
"setupCommands": [
|
||||
{
|
||||
"description": "Enable pretty-printing for gdb",
|
||||
"text": "-enable-pretty-printing",
|
||||
"ignoreFailures": true
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
Vendored
-105
@@ -1,105 +0,0 @@
|
||||
{
|
||||
"C_Cpp.autoAddFileAssociations": false,
|
||||
"C_Cpp.autocomplete": "default",
|
||||
"C_Cpp.clang_format_fallbackStyle": "none",
|
||||
"C_Cpp.clang_format_style": "file",
|
||||
"C_Cpp.codeAnalysis.runAutomatically": true,
|
||||
"C_Cpp.commentContinuationPatterns": [
|
||||
"/**",
|
||||
"///"
|
||||
],
|
||||
"C_Cpp.default.compilerPath": "",
|
||||
"C_Cpp.default.cppStandard": "c++20",
|
||||
"C_Cpp.default.enableConfigurationSquiggles": true,
|
||||
"C_Cpp.enhancedColorization": "enabled",
|
||||
"C_Cpp.formatting": "clangFormat",
|
||||
"clang-format.language.cpp.enable": true,
|
||||
"clang-format.language.cpp.style": "file",
|
||||
"clang-format.assumeFilename": ".clangformat",
|
||||
"C_Cpp.workspaceParsingPriority": "high",
|
||||
"cmake.automaticReconfigure": true,
|
||||
"cmake.buildBeforeRun": true,
|
||||
"cmake.buildTask": false,
|
||||
"cmake.cmakeCommunicationMode": "fileApi",
|
||||
"cmake.configureOnOpen": true,
|
||||
"cmake.languageSupport.enableFileAPI": true,
|
||||
"cmake.launchBehavior": "breakAndReuseTerminal",
|
||||
"cmake.outputLogEncoding": "utf-8",
|
||||
"cmake.parallelJobs": 0,
|
||||
"cmake.parseBuildDiagnostics": true,
|
||||
"cmake.useCMakePresets": "always",
|
||||
"debug.autoExpandLazyVariables": "on",
|
||||
"debug.console.closeOnEnd": true,
|
||||
"debug.console.fontFamily": "Fira Code Retina, Consolas, 'Courier New', monospace",
|
||||
"debug.console.fontSize": 12,
|
||||
"debug.inlineValues": "off",
|
||||
"debug.onTaskErrors": "showErrors",
|
||||
"debug.openDebug": "openOnSessionStart",
|
||||
"debug.openExplorerOnEnd": true,
|
||||
"debug.showBreakpointsInOverviewRuler": true,
|
||||
"debug.terminal.clearBeforeReusing": true,
|
||||
"debug.toolBarLocation": "docked",
|
||||
"diffEditor.experimental.showMoves": true,
|
||||
"diffEditor.experimental.useVersion2": true,
|
||||
"docsView.documentationView.updateMode": "sticky",
|
||||
"editor.autoClosingBrackets": "beforeWhitespace",
|
||||
"editor.bracketPairColorization.enabled": false,
|
||||
"editor.codeLens": false,
|
||||
"editor.cursorSmoothCaretAnimation": "on",
|
||||
"editor.cursorStyle": "line",
|
||||
"editor.cursorSurroundingLinesStyle": "all",
|
||||
"editor.dragAndDrop": false,
|
||||
"editor.fontFamily": "Fira Code Retina, Consolas, 'Courier New', monospace",
|
||||
"editor.fontLigatures": true,
|
||||
"editor.fontSize": 12,
|
||||
"editor.formatOnSave": true,
|
||||
"editor.formatOnSaveMode": "file",
|
||||
"editor.gotoLocation.alternativeDefinitionCommand": "editor.action.revealDeclaration",
|
||||
"editor.hover.delay": 500,
|
||||
"editor.maxTokenizationLineLength": 10000,
|
||||
"editor.minimap.enabled": false,
|
||||
"editor.mouseWheelScrollSensitivity": 3,
|
||||
"editor.mouseWheelZoom": true,
|
||||
"editor.quickSuggestionsDelay": 250,
|
||||
"editor.renderLineHighlight": "gutter",
|
||||
"editor.rulers": [
|
||||
100
|
||||
],
|
||||
"editor.smoothScrolling": true,
|
||||
"editor.stickyScroll.enabled": true,
|
||||
"explorer.autoReveal": false,
|
||||
"explorer.sortOrder": "foldersNestsFiles",
|
||||
"files.trimFinalNewlines": true,
|
||||
"git.autofetch": true,
|
||||
"git.confirmSync": false,
|
||||
"gitlens.plusFeatures.enabled": false,
|
||||
"markdown-preview-enhanced.previewTheme": "one-dark.css",
|
||||
"problems.sortOrder": "position",
|
||||
"search.maxResults": null,
|
||||
"search.showLineNumbers": true,
|
||||
"search.useIgnoreFiles": false,
|
||||
"terminal.integrated.automationProfile.linux": {
|
||||
"path": "/usr/bin/bash"
|
||||
},
|
||||
"terminal.integrated.cursorStyle": "line",
|
||||
"terminal.integrated.defaultProfile.linux": "bash",
|
||||
"terminal.integrated.fontSize": 12,
|
||||
"terminal.integrated.profiles.linux": {
|
||||
"bash": {
|
||||
"args": [
|
||||
"--login",
|
||||
"-i"
|
||||
],
|
||||
"color": "terminal.ansiYellow",
|
||||
"icon": "terminal-bash",
|
||||
"path": "bash"
|
||||
}
|
||||
},
|
||||
"terminal.integrated.scrollback": 100000,
|
||||
"workbench.editor.highlightModifiedTabs": true,
|
||||
"workbench.editor.untitled.labelFormat": "name",
|
||||
"workbench.list.smoothScrolling": true,
|
||||
"workbench.tree.renderIndentGuides": "always",
|
||||
"dotnet.defaultSolution": "disable",
|
||||
"svg.preview.background": "editor",
|
||||
}
|
||||
-272
@@ -1,272 +0,0 @@
|
||||
# This is the main CMake script which (summed up) configures a CMake build project on how to build our .dll
|
||||
# The gdextension .dll build can be run from Visual Studio Community, VSCode, CLion, etc as long as you have
|
||||
# installed the appropriate CMake add-ons to enable IDE/editor integration with CMake, and the project is
|
||||
# in the same directory as CMakeLists.txt
|
||||
|
||||
# This script can also easily handle adding 3rd party libraries to our gdextension project.
|
||||
# An official explanation on how it's intended to function is here:
|
||||
|
||||
# https://github.com/vorlac/godot-roguelite/wiki#cmake-configuration
|
||||
|
||||
# =======================================================================
|
||||
# Main cmake project settings area
|
||||
# =======================================================================
|
||||
|
||||
cmake_minimum_required(VERSION 3.20)
|
||||
|
||||
# Name for our library:
|
||||
set(GDEXTENSION_LIB_NAME naval-swarm)
|
||||
# Directory for placing the built .dll (The project .gdextension file should likely point in here):
|
||||
set(GDEXTENSION_LIB_PATH "${CMAKE_CURRENT_SOURCE_DIR}/project/bin")
|
||||
# Tip: "set" arguments are basically defining variables in CMake
|
||||
|
||||
option(
|
||||
AUTOFORMAT_SRC_ON_CONFIGURE
|
||||
"If enabled, clang-format will be used to format all sources in src/ during configuration"
|
||||
ON
|
||||
)
|
||||
# Tip: "option" arguments are basically also CMake variables, but in a easy user toggleable format.
|
||||
|
||||
option(
|
||||
USE_CCACHE_FOR_GDEXT_BUILD
|
||||
"If enabled, ccache will be used to when building the project lib"
|
||||
ON
|
||||
)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 23)
|
||||
set(CMAKE_CXX_EXTENSIONS ON)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_COLOR_DIAGNOSTICS ON)
|
||||
set(CMAKE_MESSAGE_LOG_LEVEL STATUS)
|
||||
|
||||
# Assign CMAKE_MODULE_PATH which will indicate future include statements where the .cmake files to be included may be located
|
||||
list(APPEND CMAKE_MODULE_PATH
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-cpp/cmake/"
|
||||
)
|
||||
# Tip: "list" arguments allow you to group multiple variables under a single identifier.
|
||||
|
||||
# =======================================================================
|
||||
# Configure vcpkg submodule and define library.
|
||||
# vcpkg:
|
||||
# is a submodule (repository within the main one, defined in
|
||||
# .gitmodules) It is a program used by CMake further on in this
|
||||
# script to easily add 3rd party libraries to our own main .dll
|
||||
# (it can priorize dynamic or static linking for the dependency
|
||||
# as well as the C runtime based on what the VCPKG_TARGET_TRIPLET
|
||||
# variable is set to. For this project static linkage is configured
|
||||
# for the library Windows (but the C runtime is dynamically linked)
|
||||
# and Linux & MacOS favor dynamic linkage)
|
||||
# =======================================================================
|
||||
include(vcpkg-init)
|
||||
# Tip: "vcpkg-init" is actually a .cmake script located in the cmake/ directory.
|
||||
# Include file names in the cmake/ directory don't require a full path or file extension to be specified thanks to the
|
||||
# previous CMAKE_MODULE_PATH list definition
|
||||
|
||||
project("${GDEXTENSION_LIB_NAME}"
|
||||
LANGUAGES
|
||||
C CXX
|
||||
VERSION
|
||||
0.1.0
|
||||
)
|
||||
# Tip: the "project" specifications tell CMake valuable project info for compilation:
|
||||
# project name (same as lib name), languages and version.
|
||||
|
||||
include(vcpkg-install-deps)
|
||||
# Tip: Includes cmake/vcpkg-install-deps.cmake and runs it here.
|
||||
# the "vcpkg-install-deps" .cmake script just makes sure that the previously asserted vcpkg install has all of it's dependencies available
|
||||
|
||||
# =======================================================================
|
||||
# Compiler identification
|
||||
# =======================================================================
|
||||
|
||||
set(compiler_is_clang "$<OR:$<CXX_COMPILER_ID:AppleClang>,$<CXX_COMPILER_ID:Clang>>")
|
||||
set(compiler_is_gnu "$<CXX_COMPILER_ID:GNU>")
|
||||
set(compiler_is_msvc "$<CXX_COMPILER_ID:MSVC>")
|
||||
# Tip: The compiler we are using is determined by configs in CMakePresets.json, which in turn are picked by the VS Community option we selected
|
||||
|
||||
# =======================================================================
|
||||
# Configure godot-engine and godot-cpp submodules and define libraries.
|
||||
# godot-cpp:
|
||||
# Configured as a library that will statically
|
||||
# link to this project's gdextension dynamic link library.
|
||||
# godot-engine:
|
||||
# The engine submodule will be (re)built using scons if a
|
||||
# debug build of the editor doesn't already exist.
|
||||
# the engine sources and headers will then be used to declare
|
||||
# a library in cmake (but will not be built). The cmake library
|
||||
# will improve code browsing, syntax highlighting, searching,
|
||||
# debbuging, and autocomplete/intellisense for any IDEs that
|
||||
# gather data from cmake (i.e. VSCode and Visual Studio 2022)
|
||||
# =======================================================================
|
||||
|
||||
include(godot-dev-configuration)
|
||||
# Tip: Includes cmake/godot-dev-configuration.cmake and runs it
|
||||
|
||||
# =======================================================================
|
||||
# 3rd party library setup/configuration (leverages vcpkg)
|
||||
# =======================================================================
|
||||
|
||||
find_package(fmt CONFIG REQUIRED)
|
||||
find_package(spdlog CONFIG REQUIRED)
|
||||
# Tip: The previous packages are in vcpkg's registry, hence why CMake's find_package method can find them.
|
||||
# once found, they are respectively referenced by names (eg. fmt, spdlog, flecs)
|
||||
|
||||
# =======================================================================
|
||||
# Our GDExtension dynamic library (.dll) setup/configuration
|
||||
# =======================================================================
|
||||
|
||||
# Point to our library sources as "gdext_sources":
|
||||
file(GLOB_RECURSE gdext_sources
|
||||
CONFIGURE_DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/src/*.[hc]"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/src/*.[hc]pp"
|
||||
)
|
||||
|
||||
# Use gdext_sources in order to build a shared library that will be named whatever
|
||||
# the PROJECT_NAME variable is set to (which will be the same name you set for the
|
||||
# GDEXTENSION_LIB_NAME variable at the top of this file):
|
||||
add_library(${PROJECT_NAME}
|
||||
SHARED
|
||||
${gdext_sources}
|
||||
)
|
||||
# Tip1: The "add_library()" command is used to specify a library target for this cmake project to build
|
||||
# The SHARED keyword tells CMake to create a shared/dynamic library. The gdext_sources file directories are passed to add_library()
|
||||
# command to specify the source files for the library.
|
||||
# Tip2: The .dll isn't built here yet, it's only being pointed at. The build will occur when running cmake --build in the same
|
||||
# directory as this CMakeLists.txt file, or if the build command is run from visual studio.
|
||||
|
||||
# Import compiler warnings from godot-cpp's own cmake folder:
|
||||
include(common_compiler_flags)
|
||||
|
||||
# Set compiler options for the gdextension library based on the compiler being used:
|
||||
target_compile_options(${PROJECT_NAME} PUBLIC
|
||||
$<${compiler_is_msvc}:
|
||||
/EHsc
|
||||
/utf-8
|
||||
/Zc:preprocessor
|
||||
>
|
||||
$<$<NOT:${compiler_is_msvc}>:
|
||||
-g
|
||||
-Wno-unused-value
|
||||
$<${compiler_is_gnu}:
|
||||
-Wno-attributes
|
||||
-Wno-attributes=rl::
|
||||
>
|
||||
$<${compiler_is_clang}:
|
||||
-Wno-ignored-attributes
|
||||
-Wno-unknown-attributes
|
||||
>
|
||||
$<$<CONFIG:Debug>:
|
||||
-fno-omit-frame-pointer
|
||||
-O0
|
||||
>
|
||||
$<$<CONFIG:Release>:
|
||||
-O3
|
||||
>
|
||||
>
|
||||
)
|
||||
|
||||
# Enable extension hot swapping:
|
||||
target_compile_definitions(${PROJECT_NAME} PUBLIC
|
||||
HOT_RELOAD_ENABLED
|
||||
)
|
||||
|
||||
# Define the directories containing inclusion headers (CMake needs to know this after running add_library):
|
||||
target_include_directories(${PROJECT_NAME} PUBLIC
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/src"
|
||||
)
|
||||
|
||||
if (NOT APPLE)
|
||||
# linker options for the gdextension library
|
||||
target_link_options(${PROJECT_NAME} PRIVATE
|
||||
$<$<NOT:${compiler_is_msvc}>:
|
||||
-static-libgcc
|
||||
-static-libstdc++
|
||||
-Wl,-R,'$$ORIGIN'
|
||||
>
|
||||
)
|
||||
endif()
|
||||
|
||||
# =======================================================================
|
||||
# Optional configuration / build features
|
||||
# =======================================================================
|
||||
|
||||
if (USE_CCACHE_FOR_GDEXT_BUILD MATCHES ON)
|
||||
include(ccache)
|
||||
endif()
|
||||
|
||||
if (AUTOFORMAT_SRC_ON_CONFIGURE MATCHES ON)
|
||||
include(clang-format)
|
||||
endif()
|
||||
|
||||
# =======================================================================
|
||||
# Dependency linkage (linking dependencies to our .dll build)
|
||||
# =======================================================================
|
||||
|
||||
# gdextension library dependency linkage
|
||||
# godot::cpp: Found by CMake thanks to godot-dev-configuration "add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-cpp)" statement.
|
||||
# the subdirectory addition runs godot-cpp's own CMakeLists.txt which declares "add_library(godot::cpp ALIAS ${PROJECT_NAME})"
|
||||
# CMake automatically exports all targets that are created in the godot-cpp CMakeLists.txt file. This means that the godot::cpp
|
||||
# library is accessible and linkable from here.
|
||||
#
|
||||
# The other libraries are found thanks to their definition earlier in "find_package", which
|
||||
# is defined by the vcpkg package manager for each dependency added to the project.
|
||||
target_link_libraries(${PROJECT_NAME}
|
||||
PUBLIC godot::cpp
|
||||
PRIVATE fmt::fmt
|
||||
PRIVATE fmt::fmt-header-only
|
||||
PRIVATE spdlog::spdlog_header_only
|
||||
)
|
||||
# Tip1: PUBLIC: our .dll depends on the library. PRIVATE: the library is expendable.
|
||||
# Tip2: godot::cpp, fmt::fmt etc... each library name is declared by each of it's
|
||||
# respective projects's own CMakeLists.txt, which is reached thanks to vcpkg
|
||||
|
||||
# Define system architecture for the build:
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
||||
set(system_bits 64)
|
||||
else()
|
||||
set(system_bits 32)
|
||||
endif()
|
||||
|
||||
# Define built .dll name:
|
||||
string(TOLOWER
|
||||
"${PROJECT_NAME}.${CMAKE_SYSTEM_NAME}.${system_bits}.${CMAKE_BUILD_TYPE}"
|
||||
gde_lib_name
|
||||
)
|
||||
|
||||
set_target_properties(${PROJECT_NAME}
|
||||
PROPERTIES
|
||||
# This option tells CMake to generate position-independent code (PIC).
|
||||
# PIC code can be loaded and executed at any address in memory.
|
||||
# This is necessary when building shared/dynamic libraries.
|
||||
POSITION_INDEPENDENT_CODE ON
|
||||
# This option tells CMake to export the compile commands for the target.
|
||||
# This can be useful for debugging and profiling purposes.
|
||||
CMAKE_EXPORT_COMPILE_COMMANDS ON
|
||||
# This option tells CMake to enable interprocedural optimization for the target.
|
||||
# This can improve the performance of the target by optimizing code across multiple functions.
|
||||
CMAKE_INTERPROCEDURAL_OPTIMIZATION_RELEASE ON
|
||||
# This option tells CMake to place the static library archive for the target in the specified directory.
|
||||
ARCHIVE_OUTPUT_DIRECTORY "${GDEXTENSION_LIB_PATH}"
|
||||
# This option tells CMake to place the shared library for the target in the specified directory.
|
||||
LIBRARY_OUTPUT_DIRECTORY "${GDEXTENSION_LIB_PATH}"
|
||||
# This option tells CMake to place the runtime library for the target in the specified directory.
|
||||
RUNTIME_OUTPUT_DIRECTORY "${GDEXTENSION_LIB_PATH}"
|
||||
# This option tells CMake to place the program database (PDB) file for the target in the specified directory.
|
||||
# The PDB file contains debugging information for the target.
|
||||
CMAKE_PDB_OUTPUT_DIRECTORY "${GDEXTENSION_LIB_PATH}"
|
||||
# This option tells CMake to place the compile-time PDB file for the target in the specified directory.
|
||||
# The compile-time PDB file contains debugging information that can be used to debug the target while it is being built.
|
||||
CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY "${GDEXTENSION_LIB_PATH}"
|
||||
# This option tells CMake to set the output name for the target to the specified value.
|
||||
OUTPUT_NAME "${gde_lib_name}"
|
||||
)
|
||||
|
||||
# =======================================================================
|
||||
# Print configuration report
|
||||
# =======================================================================
|
||||
|
||||
# Include utility script that prints a handful of useful build/configuration cmake variables:
|
||||
include(cmake-utils)
|
||||
print_project_variables()
|
||||
@@ -1,225 +0,0 @@
|
||||
{
|
||||
"version": 5,
|
||||
"configurePresets": [
|
||||
{
|
||||
"name": "default",
|
||||
"hidden": true,
|
||||
"generator": "Ninja",
|
||||
"installDir": "${sourceDir}/.out/install/${presetName}",
|
||||
"binaryDir": "${sourceDir}/.out/build/${presetName}",
|
||||
"toolchainFile": "${sourceDir}/extern/vcpkg/scripts/buildsystems/vcpkg.cmake",
|
||||
"architecture": {
|
||||
"value": "x64",
|
||||
"strategy": "external"
|
||||
},
|
||||
"toolset": {
|
||||
"value": "host=x64",
|
||||
"strategy": "external"
|
||||
},
|
||||
"environment": {
|
||||
"NINJA_STATUS": "%p [%es] (%f/%t) -"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "default-verbose",
|
||||
"inherits": "default",
|
||||
"hidden": true,
|
||||
"environment": {
|
||||
"VERBOSE": "true"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "msvc",
|
||||
"inherits": "default",
|
||||
"hidden": true,
|
||||
"cacheVariables": {
|
||||
"CMAKE_C_COMPILER": "cl",
|
||||
"CMAKE_CXX_COMPILER": "cl",
|
||||
"VCPKG_TARGET_TRIPLET": "x64-windows-static-md"
|
||||
},
|
||||
"condition": {
|
||||
"type": "equals",
|
||||
"lhs": "${hostSystemName}",
|
||||
"rhs": "Windows"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "MSVC Debug",
|
||||
"name": "msvc-debug",
|
||||
"inherits": "msvc",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Debug"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "MSVC Release",
|
||||
"name": "msvc-release",
|
||||
"inherits": "msvc",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Release"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "MSVC RelWithDebInfo",
|
||||
"name": "msvc-relwdebinfo",
|
||||
"inherits": "msvc",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "gcc",
|
||||
"inherits": "default",
|
||||
"hidden": true,
|
||||
"cacheVariables": {
|
||||
"CMAKE_C_COMPILER": "gcc",
|
||||
"CMAKE_CXX_COMPILER": "g++"
|
||||
},
|
||||
"condition": {
|
||||
"type": "notEquals",
|
||||
"lhs": "${hostSystemName}",
|
||||
"rhs": "Windows"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "GCC Debug",
|
||||
"name": "gcc-debug",
|
||||
"inherits": "gcc",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Debug"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "GCC Release",
|
||||
"name": "gcc-release",
|
||||
"inherits": "gcc",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Release"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "GCC RelWithDebInfo",
|
||||
"name": "gcc-relwdebinfo",
|
||||
"inherits": "gcc",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "gcc-windows",
|
||||
"inherits": "default",
|
||||
"hidden": true,
|
||||
"cacheVariables": {
|
||||
"CMAKE_C_COMPILER": "gcc",
|
||||
"CMAKE_CXX_COMPILER": "g++",
|
||||
"VCPKG_TARGET_TRIPLET": "x64-windows-static-md"
|
||||
},
|
||||
"condition": {
|
||||
"type": "equals",
|
||||
"lhs": "${hostSystemName}",
|
||||
"rhs": "Windows"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "GCC Debug",
|
||||
"name": "gcc-windows-debug",
|
||||
"inherits": "gcc-windows",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Debug"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "GCC Release",
|
||||
"name": "gcc-windows-release",
|
||||
"inherits": "gcc-windows",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Release"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "GCC RelWithDebInfo",
|
||||
"name": "gcc-windows-relwdebinfo",
|
||||
"inherits": "gcc-windows",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "clang",
|
||||
"inherits": "default",
|
||||
"hidden": true,
|
||||
"cacheVariables": {
|
||||
"CMAKE_C_COMPILER": "clang",
|
||||
"CMAKE_CXX_COMPILER": "clang++"
|
||||
},
|
||||
"condition": {
|
||||
"type": "notEquals",
|
||||
"lhs": "${hostSystemName}",
|
||||
"rhs": "Windows"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "Clang Debug",
|
||||
"name": "clang-debug",
|
||||
"inherits": "clang",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Debug"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "Clang Release",
|
||||
"name": "clang-release",
|
||||
"inherits": "clang",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Release"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "Clang RelWithDebInfo",
|
||||
"name": "clang-relwdebinfo",
|
||||
"inherits": "clang",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "clang-windows",
|
||||
"inherits": "default",
|
||||
"hidden": true,
|
||||
"cacheVariables": {
|
||||
"CMAKE_C_COMPILER": "clang",
|
||||
"CMAKE_CXX_COMPILER": "clang++",
|
||||
"VCPKG_TARGET_TRIPLET": "x64-windows-static-md"
|
||||
},
|
||||
"condition": {
|
||||
"type": "equals",
|
||||
"lhs": "${hostSystemName}",
|
||||
"rhs": "Windows"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "Clang Debug",
|
||||
"name": "clang-windows-debug",
|
||||
"inherits": "clang-windows",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Debug"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "Clang Release",
|
||||
"name": "clang-windows-release",
|
||||
"inherits": "clang-windows",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "Release"
|
||||
}
|
||||
},
|
||||
{
|
||||
"displayName": "Clang RelWithDebInfo",
|
||||
"name": "clang-windows-relwdebinfo",
|
||||
"inherits": "clang-windows",
|
||||
"cacheVariables": {
|
||||
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,21 +0,0 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2023 sal
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
@@ -0,0 +1,37 @@
|
||||
# Compiler and flags
|
||||
CPPC = g++
|
||||
#CPPC_FLAGS = -std=c++23 -s -O3 -Wall -Wextra -lSDL3 -lSDL3_image
|
||||
# Debug flags:
|
||||
CPPC_FLAGS = -std=c++23 -ggdb -Wall -Wextra -lSDL3 -lSDL3_image
|
||||
|
||||
SRC_PATH := src
|
||||
OBJ_PATH := build/obj
|
||||
BIN_PATH := build/bin
|
||||
|
||||
|
||||
SRC_FILES := $(shell find $(SRC_PATH) -name '*.cpp')
|
||||
# Generate corresponding object file paths by replacing src/ with build/obj/
|
||||
OBJ_FILES := $(patsubst $(SRC_PATH)/%.cpp,$(OBJ_PATH)/%.o,$(SRC_FILES))
|
||||
|
||||
|
||||
|
||||
all: make-build-dir $(BIN_PATH)/naval_swarm
|
||||
|
||||
|
||||
make-build-dir:
|
||||
mkdir -p $(OBJ_PATH)
|
||||
mkdir -p $(BIN_PATH)
|
||||
|
||||
|
||||
$(BIN_PATH)/naval_swarm: $(OBJ_FILES)
|
||||
$(CPPC) $(CPPC_FLAGS) $^ -o $@
|
||||
|
||||
|
||||
$(OBJ_PATH)/%.o: $(SRC_PATH)/%.cpp
|
||||
$(CPPC) $(CPPC_FLAGS) -c $< -o $@
|
||||
|
||||
|
||||
clean:
|
||||
rm -fr build
|
||||
|
||||
.PHONY: all clean make-build-dir
|
||||
@@ -1,91 +0,0 @@
|
||||
# Godot 4.3 GDExtension C++ Prototype
|
||||
|
||||
This project is a rough prototype focusing on understanding how to implementa majority of a game's core logic/scripting in C++ using GDExtension. Everything is done in the code aside from UI/dialog/menu design, and scene file generation.
|
||||
|
||||
The current focus is aimed towards learning more about how certain features and funtionality can be implemented in native code leveraging the [godot-cpp](https://github.com/godotengine/godot-cpp) GDExtension bindings so there isn't much game logic implemented yet. Since the documentation is pretty sparse when it comes to pure native development, most of the functionality implemnted in this project is focused on providing a variety of general examples of misc functionality that others will likely find useful.
|
||||
|
||||
Game logic will become a focus when most of the essentials are figured out and implented throughout the project.
|
||||
|
||||
# Overview
|
||||
|
||||
This project is meant to show others working with GDExtension how to:
|
||||
|
||||
- structure a project
|
||||
- implement specific features and functionality entirely in C++
|
||||
- incorporate 3rd party libraries into their GDExtension code/library
|
||||
- use CMake, VCPKG, and submodules to configure the project automatically
|
||||
- configure VSCode (linux & windows) / Visual Studio 2022 (windows) for
|
||||
- good code navigation for godot engine sources, godot-cpp sources, and the gdextension project sources.
|
||||
- good autocomplete / intellisense configuration
|
||||
- preconfigured debugger launch profiles to run the project standalone or by launching the editor (both launch settings debuggable)
|
||||
- good debugger visualizations for internal godot data structures by leveraging the .natvis file provided with godot-cpp
|
||||
|
||||
# High Level Project Structure
|
||||
|
||||
The project's [main scene](./project/main.tscn) consists of a single `Main` node. The `Main` node is intended to handle all high level game management (level loading, scene swaps, saving, loading, UI, input handling, menus, signal propigation, etc)
|
||||
|
||||
The overall node hierarchy:
|
||||
|
||||
<div class="highlight highlight-html"> <pre>
|
||||
<a href="./src/main.hpp" title="Main">Main</a>
|
||||
├── <a href="./src/ui/main_dialog.hpp" title="main_dialog.hpp">Main Canvas Layer<a> (reference to <a href=https://github.com/vorlac/godot-roguelite/blob/main/project/scenes/ui/main_dialog.tscn#L100-L113 title="title">Canvas Layer</a> in MainDialog)
|
||||
├── <a href="./src/ui/main_dialog.hpp" title="main_dialog.hpp">MainDialog</a>
|
||||
│ ├── <a href="https://github.com/vorlac/godot-roguelite/blob/main/project/scenes/ui/main_dialog.tscn#L132-L159" title="main_dialog.tscn">RichTextLabel (In-Game Console)</a>
|
||||
│ └── <a href="https://github.com/vorlac/godot-roguelite/blob/main/project/scenes/ui/main_dialog.tscn#L100-L113" title="main_dialog.tscn">MainSubViewport (Primary Game Viewport)</a>
|
||||
│ └── <a href="https://github.com/vorlac/godot-roguelite/blob/main/project/scenes/ui/main_dialog.tscn#L100-L113" title="main_dialog.tscn">Canvas Layer</a>
|
||||
├── <a href="./src/entity/level.hpp" title="level.hpp">Level</a>
|
||||
│ ├── <a href="./src/entity/character/player.cpp" title="player.cpp">Player</a> (GDCLASS object inheritance example)
|
||||
│ │ ├── <a href="./project/scenes/characters/player.tscn" title="player.tscn">Godot Player Scene</a>
|
||||
│ │ ├── <a href="./src/entity/controller/character_controller.cpp" title="character_controller.cp">CharacterController</a>
|
||||
│ │ ├── <a href="./src/entity/camera.cpp" title="camera.cpp">Camera</a>
|
||||
│ │ └── <a href="https://github.com/vorlac/godot-roguelite/blob/main/src/entity/character/character.hpp#L85" title="character.hpp">FiringPoint (Marker2D reference from Godot Player Scene)</a>
|
||||
│ └── <a href="./src/entity/projectile/projectile_spawner.hpp" title="projectile_spawner.hpp">Projectile Spawner</a>
|
||||
│ └── <a href="./src/entity/projectile/projectile.hpp" title="projectile.hpp">Projectile</a>
|
||||
<a href="./src/singletons/console.hpp" title="console.hpp">Console (Singleton example)</a>
|
||||
└── <a href="https://github.com/vorlac/godot-roguelite/blob/main/project/scenes/ui/main_dialog.tscn#L132-L159" title="main_dialog.tscn">RichTextLabel (Reference from MainDialog)</a>
|
||||
</pre> </div>
|
||||
|
||||
# Setup Guide
|
||||
|
||||
See the [wiki](https://github.com/vorlac/godot-roguelite/wiki) for a detailed guide that will walk you through the steps required to get this project running and debugging on linux or windows. Make sure to thank [PixelRain](https://github.com/Mangonels) in the [Godot discord](https://discord.com/channels/212250894228652034/342047011778068481) for his contributions to the wiki.
|
||||
|
||||
# Using this project as a base for your project
|
||||
|
||||
This repo is set up as a template (using the "use this template"->"create a new repository" button on the main landing page of this repo). If you use that option rather than just cloning this repo directly it will create a copy of the repo (not a clone or fork) in your github account with all history stripped. This project should be relatively plug and play when it comes to reusing the parts you want to keep and removing/replacing the parts you don't. If you create a repo from the template you also have the option of making the project private when it creates the repo in your github account.
|
||||
|
||||
Once the template project is created you _should_ be able to just swap out the code in `src/` and godot project files in `project/` with your own C++ source code and godot project files. If everything was replaced correctly/consistently, the cmake build should detect the changes in the `src/` directory (file additions/removals/renames) and know to reconfigure the project if/when changes are made.
|
||||
|
||||
More information about using this repo as a base for your own project in the [templating](https://github.com/vorlac/godot-roguelite/wiki/Templating-%E2%80%90-godot%E2%80%90roguelite-as-a-template-for-your-own-project) section of the wiki.
|
||||
|
||||
# Note about cloning
|
||||
|
||||
If you just want to clone/try this project locally, it's important that you truly clone the repo and not just download it as a zip. The repo contains submodules that are required for the build to function properly, which will only be included if the repo is cloned (or templated). The zip download option won't correctly package the repos located in each extern/<submodule> directory which will lead to the buildscripts failing.
|
||||
|
||||
# Contributing
|
||||
|
||||
This repo and/or the [gdextension developer documentation](https://github.com/vorlac/gdextension-docs/blob/main/main.md) I recently started working on is open to anyone that wants to contribute. Feel free to submit PRs for any changes that implement new features, fix bugs, or improve upon any existing features, functionality, or design.
|
||||
|
||||
# Additional Resources
|
||||
|
||||
The projects below are also worth checking out for some additional GDExtension examples to use as references
|
||||
|
||||
- https://github.com/paddy-exe/GDExtensionSummator
|
||||
- https://github.com/asmaloney/GDExtensionTemplate
|
||||
- https://github.com/godotengine/godot-cpp-template
|
||||
- https://github.com/godotengine/godot-cpp/tree/master/test/src
|
||||
|
||||
# Licensing
|
||||
|
||||
#### Code
|
||||
|
||||
- All code in this project is licensed as [MIT](./LICENSE)
|
||||
|
||||
#### Assets
|
||||
|
||||
- All art assets (`project/assets/art/*`) are licensed as [Creative Commons Zero, CC0](./project/assets/art/LICENSE)
|
||||
- All audio assets (`project/assets/audio/*`) are licensed as [Creative Commons Zero, CC0](./project/assets/audio/LICENSE)
|
||||
- Art & audio assets credit: [Kenney](www.kenney.nl)
|
||||
- Asset pack purchase link: [All-in-1 Asset Pack](https://kenney.itch.io/kenney-game-assets)
|
||||
|
||||
|
||||
> [vorlac/godot-roguelite](https://github.com/vorlac/godot-roguelite) was used as template
|
||||
@@ -1,73 +0,0 @@
|
||||
# TODO
|
||||
|
||||
### Stats / Resource Monitoring
|
||||
* print resource usage (fps, frametime, object count, etc) in UI labels.
|
||||
* truncate console text output once it exceeds ~1024 lines.
|
||||
|
||||
### Resource loading
|
||||
* see if loading from path can be default rather than loading cached resource file.
|
||||
* cached files don't always play nice with certain native code changes (i.e. changing `GDCLASS` baseclass)
|
||||
|
||||
### Menu Dialogs / HUD
|
||||
* create main menu
|
||||
* create options menu
|
||||
* create pause menu
|
||||
* in-game HUD
|
||||
|
||||
### Level Creation
|
||||
* look into procedural level generation
|
||||
* completely dynamic? pieced together using prebuilt scene chunks?
|
||||
|
||||
### Enemies
|
||||
* implement placeholer dynamic enemy spawns
|
||||
* health
|
||||
* movement
|
||||
* attacks
|
||||
* weapons
|
||||
|
||||
### Projectiles
|
||||
* design dynamic projectile system
|
||||
* custom paths
|
||||
* tweening
|
||||
* speed
|
||||
* size
|
||||
* acceleration
|
||||
* TTL
|
||||
* distance
|
||||
* auto tracking
|
||||
* rayscan / lazer
|
||||
* pattern
|
||||
* accuracy / randomness in spray
|
||||
|
||||
### Weapons
|
||||
* implement weapon inventory
|
||||
* weapon swapping
|
||||
* weapon pickups / replacement
|
||||
* randomized properties?
|
||||
|
||||
### Items
|
||||
* implement basic item pickup system
|
||||
* usable items
|
||||
* passive modifiers
|
||||
|
||||
### Score / Stats tracking
|
||||
* player health
|
||||
* score / kills
|
||||
* survival time
|
||||
* dungeon depth
|
||||
* rooms cleared per dungeon / floor
|
||||
* currency
|
||||
* apply toward perstent upgrades / weapons / skill tree
|
||||
|
||||
### Player Character
|
||||
##### Inputs / Movement
|
||||
* refine controls
|
||||
##### Animations
|
||||
* implement basic animations for movement / state change
|
||||
|
||||
### Graphics
|
||||
* Look into shaders
|
||||
* particle effects (projectiles? dashing?)
|
||||
|
||||
### Audio
|
||||
* Hook up some basic sfx / music
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 5.6 MiB |
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"ship": {
|
||||
"destroyer": {
|
||||
"texture": "assets/entities/ships/destroyer.svg",
|
||||
"width": 58,
|
||||
"height": 512,
|
||||
"speed": 250
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,913 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
width="58.118374"
|
||||
height="512"
|
||||
viewBox="0 0 58.118374 511.99998"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs1" />
|
||||
<g
|
||||
id="g1"
|
||||
transform="matrix(0.75042725,0,0,0.75042725,-268.6203,-165.22315)">
|
||||
<path
|
||||
id="path2"
|
||||
d="m 96,58.502331 h 18"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path3"
|
||||
d="M 115,78.502331 V 158.50233"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path4"
|
||||
d="M 95,78.502331 V 158.50233"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path5"
|
||||
d="m 115,158.50233 -0.003,1.9633 -0.009,1.96212 -0.0151,1.95975 -0.0211,1.9562 -0.027,1.95148 -0.033,1.94559 -0.039,1.93851 -0.0449,1.93028 -0.0508,1.92087 -0.0567,1.91031 -0.0626,1.89861 -0.0684,1.88575 -0.0741,1.87177 -0.0798,1.85665 -0.0855,1.84041 -0.0911,1.82307 -0.0967,1.80464 -0.10221,1.7851 -0.10765,1.7645 -0.11303,1.74283 -0.11834,1.72012 -0.12358,1.69636 -0.12875,1.67159 -0.13384,1.64581 -0.13885,1.61904 -0.14378,1.59128 -0.14861,1.56259 -0.15336,1.53293 -0.15801,1.50237 -0.16258,1.47089 -0.16704,1.43852 -0.1714,1.4053 -0.17567,1.37123 -0.17981,1.33632 -0.18386,1.30062 -0.1878,1.26413 -0.19162,1.22687 -0.19532,1.18889 -0.19891,1.15019 -0.20238,1.11078 -0.20572,1.07072 -0.20895,1.03 -0.21205,0.98867 -0.21501,0.94674 -0.21786,0.90424 -0.22056,0.8612 -0.22314,0.81764 -0.22558,0.77358 -0.22788,0.72906 -0.23005,0.68411 -0.23208,0.63872 -0.23397,0.59298 -0.23572,0.54686 -0.23733,0.50041 -0.23879,0.45367 -0.24011,0.40665 -0.24128,0.35939 -0.24232,0.31191 -0.24319,0.26424 -0.24394,0.21642 -0.24452,0.16846 -0.24497,0.1204 -0.24527,0.0723 -0.24541,0.0241 -0.24541,-0.0241 -0.24527,-0.0723 -0.24497,-0.1204 -0.24452,-0.16846 -0.24394,-0.21642 -0.24319,-0.26424 -0.24232,-0.31191 -0.24128,-0.35939 -0.24011,-0.40665 -0.23879,-0.45367 -0.23733,-0.50041 -0.23572,-0.54686 -0.23397,-0.59298 -0.23208,-0.63872 -0.23005,-0.68411 -0.22789,-0.72906 -0.22557,-0.77358 -0.22314,-0.81764 -0.22056,-0.8612 -0.21786,-0.90424 -0.21501,-0.94674 -0.212048,-0.98867 -0.208948,-1.03 -0.205726,-1.07072 -0.20238,-1.11078 -0.198911,-1.15019 -0.195323,-1.18889 -0.191617,-1.22687 -0.187796,-1.26413 -0.183861,-1.30062 -0.179815,-1.33632 -0.175663,-1.37123 -0.171403,-1.4053 -0.16704,-1.43852 -0.162577,-1.47089 -0.158017,-1.50237 -0.153359,-1.53293 -0.148611,-1.56259 -0.143773,-1.59128 -0.138848,-1.61904 -0.13384,-1.64581 -0.12875,-1.67159 -0.123584,-1.69636 -0.118343,-1.72012 -0.11303,-1.74283 -0.10765,-1.7645 -0.102205,-1.7851 -0.0967,-1.80464 -0.09113,-1.82307 -0.08551,-1.84041 -0.07984,-1.85665 -0.07412,-1.87177 -0.06836,-1.88575 -0.06255,-1.89861 -0.05671,-1.91031 -0.05083,-1.92087 -0.04492,-1.93028 -0.03899,-1.93851 -0.03303,-1.94559 -0.02705,-1.95148 -0.02106,-1.9562 -0.01505,-1.95975 -0.009,-1.96212 -0.003,-1.9633"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path6"
|
||||
d="m 96,58.502331 -1,20"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path7"
|
||||
d="m 114,58.502331 1,20"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path8"
|
||||
d="m 106,205.25233 -9e-4,0.0423 -0.003,0.0423 -0.004,0.0421 -0.006,0.0419 -0.008,0.0416 -0.01,0.0412 -0.0115,0.0408 -0.0132,0.0402 -0.0149,0.0396 -0.0166,0.039 -0.0182,0.0382 -0.0198,0.0374 -0.0214,0.0366 -0.0229,0.0356 -0.0244,0.0346 -0.0259,0.0335 -0.0272,0.0324 -0.0286,0.0312 -0.0299,0.03 -0.0311,0.0287 -0.0323,0.0274 -0.0335,0.026 -0.0345,0.0245 -0.0355,0.023 -0.0365,0.0215 -0.0374,0.02 -0.0382,0.0184 -0.0389,0.0167 -0.0396,0.0151 -0.0402,0.0134 -0.0407,0.0117 -0.0412,0.01 -0.0416,0.008 -0.0419,0.006 -0.0421,0.005 -0.0422,0.003 -0.0423,0.001 -0.0423,-7.3e-4 -0.0423,-0.003 -0.0421,-0.004 -0.0419,-0.006 -0.0416,-0.008 -0.0412,-0.01 -0.0408,-0.0113 -0.0403,-0.0131 -0.0397,-0.0148 -0.039,-0.0164 -0.0383,-0.0181 -0.0375,-0.0197 -0.0366,-0.0213 -0.0357,-0.0228 -0.0347,-0.0243 -0.0337,-0.0257 -0.0325,-0.0271 -0.0314,-0.0285 -0.0301,-0.0298 -0.0288,-0.031 -0.0275,-0.0322 -0.0261,-0.0334 -0.0247,-0.0344 -0.0232,-0.0354 -0.0217,-0.0364 -0.0201,-0.0373 -0.0185,-0.0381 -0.0169,-0.0388 -0.0152,-0.0395 -0.0135,-0.0401 -0.0118,-0.0407 -0.0101,-0.0411 -0.008,-0.0415 -0.007,-0.0418 -0.005,-0.0421 -0.003,-0.0422 -10e-4,-0.0423 5.7e-4,-0.0423 0.002,-0.0423 0.004,-0.0421 0.006,-0.0419 0.008,-0.0416 0.009,-0.0413 0.0112,-0.0408 0.0129,-0.0403 0.0146,-0.0397 0.0163,-0.0391 0.0179,-0.0384 0.0195,-0.0376 0.0211,-0.0367 0.0227,-0.0358 0.0241,-0.0348 0.0256,-0.0337 0.027,-0.0326 0.0284,-0.0315 0.0297,-0.0302 0.0309,-0.029 0.0321,-0.0276 0.0333,-0.0262 0.0343,-0.0248 0.0353,-0.0233 0.0363,-0.0218 0.0372,-0.0203 0.038,-0.0187 0.0388,-0.017 0.0395,-0.0154 0.0401,-0.0137 0.0406,-0.012 0.0411,-0.0102 0.0415,-0.008 0.0418,-0.007 0.0421,-0.005 0.0422,-0.003 0.0423,-0.001 0.0423,4.2e-4 0.0423,0.002 0.0422,0.004 0.0419,0.006 0.0417,0.008 0.0413,0.009 0.0409,0.011 0.0404,0.0128 0.0398,0.0145 0.0392,0.0161 0.0384,0.0178 0.0376,0.0194 0.0368,0.021 0.0359,0.0225 0.0349,0.024 0.0338,0.0255 0.0327,0.0269 0.0316,0.0282 0.0303,0.0296 0.0291,0.0308 0.0277,0.032 0.0264,0.0332 0.0249,0.0342 0.0235,0.0353 0.0219,0.0362 0.0204,0.0371 0.0188,0.0379 0.0172,0.0387 0.0155,0.0394 0.0138,0.04 0.0121,0.0406 0.0104,0.0411 0.009,0.0415 0.007,0.0418 0.005,0.042 0.003,0.0422 0.002,0.0423 1.1e-4,0.0152 z"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path9"
|
||||
d="m 99,198.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path10"
|
||||
d="M 100.5,198.50233 H 102"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path11"
|
||||
d="m 102,198.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path12"
|
||||
d="M 103.5,198.50233 H 105"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path13"
|
||||
d="m 99,186.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path14"
|
||||
d="M 100.5,186.50233 H 102"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path15"
|
||||
d="m 102,186.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path16"
|
||||
d="M 103.5,186.50233 H 105"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path17"
|
||||
d="m 111,186.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path18"
|
||||
d="m 111,188.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path19"
|
||||
d="m 111,189.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path20"
|
||||
d="m 111,191.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path21"
|
||||
d="m 99,186.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path22"
|
||||
d="m 99,188.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path23"
|
||||
d="m 99,189.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path24"
|
||||
d="m 99,191.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path25"
|
||||
d="m 111,103.50233 h -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path26"
|
||||
d="M 109.5,103.50233 H 108"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path27"
|
||||
d="m 108,103.50233 h -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path28"
|
||||
d="M 106.5,103.50233 H 105"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path29"
|
||||
d="m 99,103.50233 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path30"
|
||||
d="m 99,102.00233 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path31"
|
||||
d="M 99,100.50233 V 99.002331"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path32"
|
||||
d="m 99,99.002331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path33"
|
||||
d="m 111,103.50233 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path34"
|
||||
d="m 111,102.00233 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path35"
|
||||
d="M 111,100.50233 V 99.002331"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path36"
|
||||
d="m 111,99.002331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path37"
|
||||
d="m 105,198.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path38"
|
||||
d="M 106.5,198.50233 H 108"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path39"
|
||||
d="m 108,198.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path40"
|
||||
d="M 109.5,198.50233 H 111"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path41"
|
||||
d="m 105,186.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path42"
|
||||
d="M 106.5,186.50233 H 108"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path43"
|
||||
d="m 108,186.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path44"
|
||||
d="M 109.5,186.50233 H 111"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path45"
|
||||
d="m 111,192.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path46"
|
||||
d="m 111,194.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path47"
|
||||
d="m 111,195.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path48"
|
||||
d="m 111,197.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path49"
|
||||
d="m 99,192.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path50"
|
||||
d="m 99,194.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path51"
|
||||
d="m 99,195.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path52"
|
||||
d="m 99,197.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path53"
|
||||
d="m 105,103.50233 h -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path54"
|
||||
d="M 103.5,103.50233 H 102"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path55"
|
||||
d="m 102,103.50233 h -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path56"
|
||||
d="M 100.5,103.50233 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path57"
|
||||
d="m 99,97.502331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path58"
|
||||
d="m 99,96.002331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path59"
|
||||
d="m 111,97.502331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path60"
|
||||
d="m 111,96.002331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path61"
|
||||
d="m 99,197.00233 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path62"
|
||||
d="m 100.5,198.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path63"
|
||||
d="m 109.5,94.502331 v 8.999999"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path64"
|
||||
d="m 102,198.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path65"
|
||||
d="m 108,94.502331 v 8.999999"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path66"
|
||||
d="m 103.5,186.50233 v 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path67"
|
||||
d="M 106.5,103.50233 V 94.502331"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path68"
|
||||
d="m 105,198.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path69"
|
||||
d="m 105,94.502331 v 8.999999"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path70"
|
||||
d="m 106.5,198.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path71"
|
||||
d="m 103.5,94.502331 v 8.999999"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path72"
|
||||
d="m 108,198.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path73"
|
||||
d="m 102,94.502331 v 8.999999"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path74"
|
||||
d="m 109.5,186.50233 v 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path75"
|
||||
d="M 100.5,103.50233 V 94.502331"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path76"
|
||||
d="M 111,195.50233 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path77"
|
||||
d="m 99,94.502331 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path78"
|
||||
d="m 99,194.00233 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path79"
|
||||
d="M 111,96.002331 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path80"
|
||||
d="m 99,192.50233 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path81"
|
||||
d="M 111,97.502331 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path82"
|
||||
d="M 111,191.00233 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path83"
|
||||
d="m 99,99.002331 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path84"
|
||||
d="m 99,189.50233 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path85"
|
||||
d="M 111,100.50233 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path86"
|
||||
d="m 99,188.00233 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path87"
|
||||
d="M 111,102.00233 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path88"
|
||||
d="m 100.5,178.50233 h 9"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path89"
|
||||
d="m 109.5,178.50233 0.5,-15"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path90"
|
||||
d="m 100.5,178.50233 -0.5,-15"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path91"
|
||||
d="m 100,163.50233 -5,-5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path92"
|
||||
d="m 110,163.50233 5,-5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path93"
|
||||
d="m 100,163.50233 h 10"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path94"
|
||||
d="M 110,139.50233 H 100"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path95"
|
||||
d="m 100,163.50233 1,-2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path96"
|
||||
d="m 110,163.50233 -1,-2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path97"
|
||||
d="m 109,161.50233 h -8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path98"
|
||||
d="m 101,161.50233 -4,-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path99"
|
||||
d="m 97,145.50233 4,-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path100"
|
||||
d="m 109,141.50233 4,4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path101"
|
||||
d="m 109,161.50233 4,-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path102"
|
||||
d="m 106,173.50233 -9e-4,0.0423 -0.003,0.0423 -0.004,0.0421 -0.006,0.0419 -0.008,0.0416 -0.01,0.0412 -0.0115,0.0408 -0.0132,0.0402 -0.0149,0.0396 -0.0166,0.039 -0.0182,0.0382 -0.0198,0.0374 -0.0214,0.0366 -0.0229,0.0356 -0.0244,0.0346 -0.0259,0.0335 -0.0272,0.0324 -0.0286,0.0312 -0.0299,0.03 -0.0311,0.0287 -0.0323,0.0274 -0.0335,0.026 -0.0345,0.0245 -0.0355,0.023 -0.0365,0.0215 -0.0374,0.02 -0.0382,0.0184 -0.0389,0.0167 -0.0396,0.0151 -0.0402,0.0134 -0.0407,0.0117 -0.0412,0.01 -0.0416,0.008 -0.0419,0.006 -0.0421,0.005 -0.0422,0.003 -0.0423,0.001 -0.0423,-7.3e-4 -0.0423,-0.003 -0.0421,-0.004 -0.0419,-0.006 -0.0416,-0.008 -0.0412,-0.01 -0.0408,-0.0113 -0.0403,-0.0131 -0.0397,-0.0148 -0.039,-0.0164 -0.0383,-0.0181 -0.0375,-0.0197 -0.0366,-0.0213 -0.0357,-0.0228 -0.0347,-0.0243 -0.0337,-0.0257 -0.0325,-0.0271 -0.0314,-0.0285 -0.0301,-0.0298 -0.0288,-0.031 -0.0275,-0.0322 -0.0261,-0.0334 -0.0247,-0.0344 -0.0232,-0.0354 -0.0217,-0.0364 -0.0201,-0.0373 -0.0185,-0.0381 -0.0169,-0.0388 -0.0152,-0.0395 -0.0135,-0.0401 -0.0118,-0.0407 -0.0101,-0.0411 -0.008,-0.0415 -0.007,-0.0418 -0.005,-0.0421 -0.003,-0.0422 -10e-4,-0.0423 5.7e-4,-0.0423 0.002,-0.0423 0.004,-0.0421 0.006,-0.0419 0.008,-0.0416 0.009,-0.0413 0.0112,-0.0408 0.0129,-0.0403 0.0146,-0.0397 0.0163,-0.0391 0.0179,-0.0384 0.0195,-0.0376 0.0211,-0.0367 0.0227,-0.0358 0.0241,-0.0348 0.0256,-0.0337 0.027,-0.0326 0.0284,-0.0315 0.0297,-0.0302 0.0309,-0.029 0.0321,-0.0276 0.0333,-0.0262 0.0343,-0.0248 0.0353,-0.0233 0.0363,-0.0218 0.0372,-0.0203 0.038,-0.0187 0.0388,-0.017 0.0395,-0.0154 0.0401,-0.0137 0.0406,-0.012 0.0411,-0.0102 0.0415,-0.008 0.0418,-0.007 0.0421,-0.005 0.0422,-0.003 0.0423,-0.001 0.0423,4.2e-4 0.0423,0.002 0.0422,0.004 0.0419,0.006 0.0417,0.008 0.0413,0.009 0.0409,0.011 0.0404,0.0128 0.0398,0.0145 0.0392,0.0161 0.0384,0.0178 0.0376,0.0194 0.0368,0.021 0.0359,0.0225 0.0349,0.024 0.0338,0.0255 0.0327,0.0269 0.0316,0.0282 0.0303,0.0296 0.0291,0.0308 0.0277,0.032 0.0264,0.0332 0.0249,0.0342 0.0235,0.0353 0.0219,0.0362 0.0204,0.0371 0.0188,0.0379 0.0172,0.0387 0.0155,0.0394 0.0138,0.04 0.0121,0.0406 0.0104,0.0411 0.009,0.0415 0.007,0.0418 0.005,0.042 0.003,0.0422 0.002,0.0423 1.1e-4,0.0152 z"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path103"
|
||||
d="m 105,141.50233 h -3"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path104"
|
||||
d="m 102,141.50233 h -1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path105"
|
||||
d="m 105,141.50233 h 3"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path106"
|
||||
d="m 108,141.50233 h 1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path107"
|
||||
d="m 100,139.50233 1,2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path108"
|
||||
d="m 109,141.50233 1,-2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path109"
|
||||
d="m 110,139.50233 5,5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path110"
|
||||
d="m 100,139.50233 -5,5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path111"
|
||||
d="m 113,157.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path112"
|
||||
d="m 97,157.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path113"
|
||||
d="m 102,141.50233 v 8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path114"
|
||||
d="m 108,141.50233 v 8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path115"
|
||||
d="m 102,149.50233 h 6"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path116"
|
||||
d="m 108,149.50233 -1,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path117"
|
||||
d="m 107,148.50233 h -4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path118"
|
||||
d="m 103,148.50233 -1,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path119"
|
||||
d="m 102,141.50233 1,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path120"
|
||||
d="m 108,141.50233 -1,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path121"
|
||||
d="m 107,142.50233 v 6"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path122"
|
||||
d="m 103,148.50233 v -6"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path123"
|
||||
d="m 103,142.50233 h 4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path124"
|
||||
d="m 106,143.50233 -9e-4,0.0423 -0.003,0.0423 -0.004,0.0421 -0.006,0.0419 -0.008,0.0416 -0.01,0.0412 -0.0115,0.0408 -0.0132,0.0402 -0.0149,0.0396 -0.0166,0.039 -0.0182,0.0382 -0.0198,0.0374 -0.0214,0.0366 -0.0229,0.0356 -0.0244,0.0346 -0.0259,0.0335 -0.0272,0.0324 -0.0286,0.0312 -0.0299,0.03 -0.0311,0.0287 -0.0323,0.0274 -0.0335,0.026 -0.0345,0.0245 -0.0355,0.023 -0.0365,0.0215 -0.0374,0.02 -0.0382,0.0184 -0.0389,0.0167 -0.0396,0.0151 -0.0402,0.0134 -0.0407,0.0117 -0.0412,0.01 -0.0416,0.008 -0.0419,0.006 -0.0421,0.005 -0.0422,0.003 -0.0423,0.001 -0.0423,-7.3e-4 -0.0423,-0.003 -0.0421,-0.004 -0.0419,-0.006 -0.0416,-0.008 -0.0412,-0.01 -0.0408,-0.0113 -0.0403,-0.0131 -0.0397,-0.0148 -0.039,-0.0164 -0.0383,-0.0181 -0.0375,-0.0197 -0.0366,-0.0213 -0.0357,-0.0228 -0.0347,-0.0243 -0.0337,-0.0257 -0.0325,-0.0271 -0.0314,-0.0285 -0.0301,-0.0298 -0.0288,-0.031 -0.0275,-0.0322 -0.0261,-0.0334 -0.0247,-0.0344 -0.0232,-0.0354 -0.0217,-0.0364 -0.0201,-0.0373 -0.0185,-0.0381 -0.0169,-0.0388 -0.0152,-0.0395 -0.0135,-0.0401 -0.0118,-0.0407 -0.0101,-0.0411 -0.008,-0.0415 -0.007,-0.0418 -0.005,-0.0421 -0.003,-0.0422 -10e-4,-0.0423 5.7e-4,-0.0423 0.002,-0.0423 0.004,-0.0421 0.006,-0.0419 0.008,-0.0416 0.009,-0.0413 0.0112,-0.0408 0.0129,-0.0403 0.0146,-0.0397 0.0163,-0.0391 0.0179,-0.0384 0.0195,-0.0376 0.0211,-0.0367 0.0227,-0.0358 0.0241,-0.0348 0.0256,-0.0337 0.027,-0.0326 0.0284,-0.0315 0.0297,-0.0302 0.0309,-0.029 0.0321,-0.0276 0.0333,-0.0262 0.0343,-0.0248 0.0353,-0.0233 0.0363,-0.0218 0.0372,-0.0203 0.038,-0.0187 0.0388,-0.017 0.0395,-0.0154 0.0401,-0.0137 0.0406,-0.012 0.0411,-0.0102 0.0415,-0.008 0.0418,-0.007 0.0421,-0.005 0.0422,-0.003 0.0423,-0.001 0.0423,4.2e-4 0.0423,0.002 0.0422,0.004 0.0419,0.006 0.0417,0.008 0.0413,0.009 0.0409,0.011 0.0404,0.0128 0.0398,0.0145 0.0392,0.0161 0.0384,0.0178 0.0376,0.0194 0.0368,0.021 0.0359,0.0225 0.0349,0.024 0.0338,0.0255 0.0327,0.0269 0.0316,0.0282 0.0303,0.0296 0.0291,0.0308 0.0277,0.032 0.0264,0.0332 0.0249,0.0342 0.0235,0.0353 0.0219,0.0362 0.0204,0.0371 0.0188,0.0379 0.0172,0.0387 0.0155,0.0394 0.0138,0.04 0.0121,0.0406 0.0104,0.0411 0.009,0.0415 0.007,0.0418 0.005,0.042 0.003,0.0422 0.002,0.0423 1.1e-4,0.0152 z"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path125"
|
||||
d="m 5005.7238,7252.6356 -0.1693,-3.9973 -0.5067,-3.9687 -0.8405,-3.9116 -1.1682,-3.8264 -1.4875,-3.7138 -1.7963,-3.5746 -2.092,-3.4097 -2.3729,-3.2204 -2.6367,-3.008 -2.8816,-2.7741 -3.1058,-2.5201 -3.3077,-2.2483 -3.486,-1.9602 -3.6393,-1.658 -3.7664,-1.3441 -3.8666,-1.0204 -3.9389,-0.6895 -3.9832,-0.3536 -3.9988,-0.015 -3.9857,0.3234 -3.9441,0.6596 -3.8742,0.9911 -3.7764,1.3154 -3.6518,1.6305 -3.5007,1.9336 -3.3247,2.2231 -3.1248,2.4966 -2.9025,2.7521 -2.6594,2.9879 -2.3972,3.2023 -2.1179,3.3937 -1.8232,3.5609 -1.5157,3.7024 -1.1972,3.8175 -0.87,3.9051 -0.5368,3.9647 -0.1996,3.996 0.1391,3.9985 0.4766,3.9724 0.8108,3.9179 1.1391,3.8351 1.4594,3.725 1.7691,3.5881 2.0662,3.4255 2.3484,3.2383 2.6138,3.0279 2.8605,2.7958 3.0866,2.5437 3.2907,2.2733 3.471,1.9865 3.6266,1.6856 3.7561,1.3726 3.8587,1.0498 3.9337,0.7193 3.9804,0.3838 3.9985,0.046 3.9881,-0.2931 3.9489,-0.6297 3.8816,-0.9617 3.7863,-1.2867 3.664,-1.6027 3.5153,-1.9071 3.3415,-2.1978 3.1436,-2.4728 2.9233,-2.73 2.6819,-2.9676 2.4214,-3.1841 2.1435,-3.3776 1.8502,-3.5469 1.5437,-3.6908 1.226,-3.8083 0.8996,-3.8984 0.5668,-3.9605 0.2299,-3.9944 0.01,-0.7163 z"
|
||||
style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
||||
transform="scale(0.08)" />
|
||||
<path
|
||||
id="path126"
|
||||
d="m 103,146.50233 -0.0128,-3e-4 -0.0128,-9e-4 -0.0128,-0.002 -0.0128,-0.002 -0.0127,-0.003 -0.0127,-0.003 -0.0126,-0.004 -0.0126,-0.004 -0.0125,-0.005 -0.0125,-0.006 -0.0124,-0.006 -0.0123,-0.007 -0.0122,-0.007 -0.0121,-0.008 -0.012,-0.009 -0.0119,-0.009 -0.0118,-0.01 -0.0117,-0.0102 -0.0115,-0.0108 -0.0114,-0.0113 -0.0112,-0.0118 -0.0111,-0.0124 -0.0109,-0.0129 -0.0107,-0.0134 -0.0106,-0.0139 -0.0104,-0.0144 -0.0102,-0.0149 -0.01,-0.0153 -0.01,-0.0158 -0.01,-0.0163 -0.009,-0.0167 -0.009,-0.0171 -0.009,-0.0176 -0.009,-0.018 -0.008,-0.0184 -0.008,-0.0188 -0.008,-0.0192 -0.008,-0.0195 -0.007,-0.0199 -0.007,-0.0202 -0.007,-0.0206 -0.007,-0.0209 -0.006,-0.0212 -0.006,-0.0215 -0.006,-0.0218 -0.006,-0.0221 -0.005,-0.0223 -0.005,-0.0226 -0.005,-0.0228 -0.004,-0.023 -0.004,-0.0232 -0.004,-0.0234 -0.004,-0.0236 -0.003,-0.0237 -0.003,-0.0239 -0.003,-0.024 -0.002,-0.0241 -0.002,-0.0242 -0.002,-0.0243 -10e-4,-0.0244 -0.001,-0.0245 -7.9e-4,-0.0245 -4.7e-4,-0.0245 -1.6e-4,-0.0245 1.6e-4,-0.0245 4.7e-4,-0.0245 7.9e-4,-0.0245 0.001,-0.0245 10e-4,-0.0244 0.002,-0.0243 0.002,-0.0242 0.002,-0.0241 0.003,-0.024 0.003,-0.0239 0.003,-0.0237 0.004,-0.0236 0.004,-0.0234 0.004,-0.0232 0.004,-0.023 0.005,-0.0228 0.005,-0.0226 0.005,-0.0223 0.006,-0.0221 0.006,-0.0218 0.006,-0.0215 0.006,-0.0212 0.007,-0.0209 0.007,-0.0206 0.007,-0.0202 0.007,-0.0199 0.008,-0.0195 0.008,-0.0192 0.008,-0.0188 0.008,-0.0184 0.009,-0.018 0.009,-0.0176 0.009,-0.0171 0.009,-0.0167 0.01,-0.0163 0.01,-0.0158 0.01,-0.0153 0.0102,-0.0149 0.0104,-0.0144 0.0106,-0.0139 0.0107,-0.0134 0.0109,-0.0129 0.0111,-0.0124 0.0112,-0.0118 0.0114,-0.0113 0.0115,-0.0108 0.0117,-0.0102 0.0118,-0.01 0.0119,-0.009 0.012,-0.009 0.0121,-0.008 0.0122,-0.007 0.0123,-0.007 0.0124,-0.006 0.0125,-0.006 0.0125,-0.005 0.0126,-0.004 0.0126,-0.004 0.0127,-0.003 0.0127,-0.003 0.0128,-0.002 0.0128,-0.002 0.0128,-9e-4 0.0128,-3e-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path127"
|
||||
d="m 107,144.50233 0.0136,3e-4 0.0136,9e-4 0.0136,0.002 0.0135,0.002 0.0135,0.003 0.0135,0.003 0.0134,0.004 0.0134,0.004 0.0133,0.005 0.0132,0.006 0.0131,0.006 0.013,0.007 0.013,0.007 0.0128,0.008 0.0127,0.009 0.0126,0.009 0.0125,0.01 0.0123,0.0102 0.0122,0.0108 0.0121,0.0113 0.0119,0.0118 0.0117,0.0124 0.0116,0.0129 0.0114,0.0134 0.0112,0.0139 0.011,0.0144 0.0108,0.0149 0.0106,0.0153 0.0104,0.0158 0.0102,0.0163 0.01,0.0167 0.01,0.0171 0.009,0.0176 0.009,0.018 0.009,0.0184 0.009,0.0188 0.008,0.0192 0.008,0.0195 0.008,0.0199 0.008,0.0202 0.007,0.0206 0.007,0.0209 0.007,0.0212 0.007,0.0215 0.006,0.0218 0.006,0.0221 0.006,0.0223 0.005,0.0226 0.005,0.0228 0.005,0.023 0.004,0.0232 0.004,0.0234 0.004,0.0236 0.003,0.0237 0.003,0.0239 0.003,0.024 0.002,0.0241 0.002,0.0242 0.002,0.0243 10e-4,0.0244 0.001,0.0245 8.3e-4,0.0245 5e-4,0.0245 1.7e-4,0.0245 -1.7e-4,0.0245 -5e-4,0.0245 -8.3e-4,0.0245 -0.001,0.0245 -10e-4,0.0244 -0.002,0.0243 -0.002,0.0242 -0.002,0.0241 -0.003,0.024 -0.003,0.0239 -0.003,0.0237 -0.004,0.0236 -0.004,0.0234 -0.004,0.0232 -0.005,0.023 -0.005,0.0228 -0.005,0.0226 -0.006,0.0223 -0.006,0.0221 -0.006,0.0218 -0.007,0.0215 -0.007,0.0212 -0.007,0.0209 -0.007,0.0206 -0.008,0.0202 -0.008,0.0199 -0.008,0.0195 -0.008,0.0192 -0.009,0.0188 -0.009,0.0184 -0.009,0.018 -0.009,0.0176 -0.01,0.0171 -0.01,0.0167 -0.0102,0.0163 -0.0104,0.0158 -0.0106,0.0153 -0.0108,0.0149 -0.011,0.0144 -0.0112,0.0139 -0.0114,0.0134 -0.0116,0.0129 -0.0117,0.0124 -0.0119,0.0118 -0.0121,0.0113 -0.0122,0.0108 -0.0123,0.0102 -0.0125,0.01 -0.0126,0.009 -0.0127,0.009 -0.0128,0.008 -0.013,0.007 -0.013,0.007 -0.0131,0.006 -0.0132,0.006 -0.0133,0.005 -0.0134,0.004 -0.0134,0.004 -0.0135,0.003 -0.0135,0.003 -0.0135,0.002 -0.0136,0.002 -0.0136,9e-4 -0.0136,3e-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path128"
|
||||
d="m 104,148.90233 3e-4,-0.01 9e-4,-0.01 0.002,-0.01 0.002,-0.01 0.003,-0.01 0.003,-0.01 0.004,-0.01 0.004,-0.01 0.005,-0.01 0.006,-0.01 0.006,-0.009 0.007,-0.009 0.007,-0.009 0.008,-0.009 0.009,-0.009 0.009,-0.009 0.01,-0.009 0.0102,-0.009 0.0108,-0.009 0.0113,-0.009 0.0118,-0.009 0.0124,-0.008 0.0129,-0.008 0.0134,-0.008 0.0139,-0.008 0.0144,-0.008 0.0149,-0.008 0.0153,-0.008 0.0158,-0.008 0.0163,-0.007 0.0167,-0.007 0.0171,-0.007 0.0176,-0.007 0.018,-0.007 0.0184,-0.007 0.0188,-0.006 0.0192,-0.006 0.0195,-0.006 0.0199,-0.006 0.0202,-0.006 0.0206,-0.005 0.0209,-0.005 0.0212,-0.005 0.0215,-0.005 0.0218,-0.005 0.0221,-0.004 0.0223,-0.004 0.0226,-0.004 0.0228,-0.004 0.023,-0.003 0.0232,-0.003 0.0234,-0.003 0.0236,-0.003 0.0237,-0.002 0.0239,-0.002 0.024,-0.002 0.0241,-0.002 0.0242,-0.002 0.0243,-0.001 0.0244,-0.001 0.0245,-8.5e-4 0.0245,-6e-4 0.0245,-3.6e-4 0.0245,-1.2e-4 0.0245,1.2e-4 0.0245,3.6e-4 0.0245,6e-4 0.0245,8.5e-4 0.0244,0.001 0.0243,0.001 0.0242,0.002 0.0241,0.002 0.024,0.002 0.0239,0.002 0.0237,0.002 0.0236,0.003 0.0234,0.003 0.0232,0.003 0.023,0.003 0.0228,0.004 0.0226,0.004 0.0223,0.004 0.0221,0.004 0.0218,0.005 0.0215,0.005 0.0212,0.005 0.0209,0.005 0.0206,0.005 0.0202,0.006 0.0199,0.006 0.0195,0.006 0.0192,0.006 0.0188,0.006 0.0184,0.007 0.018,0.007 0.0176,0.007 0.0171,0.007 0.0167,0.007 0.0163,0.007 0.0158,0.008 0.0153,0.008 0.0149,0.008 0.0144,0.008 0.0139,0.008 0.0134,0.008 0.0129,0.008 0.0124,0.008 0.0118,0.009 0.0113,0.009 0.0108,0.009 0.0102,0.009 0.01,0.009 0.009,0.009 0.009,0.009 0.008,0.009 0.007,0.009 0.007,0.009 0.006,0.009 0.006,0.01 0.005,0.01 0.005,0.01 0.004,0.01 0.003,0.01 0.003,0.01 0.002,0.01 0.002,0.01 9e-4,0.01 3e-4,0.01"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path129"
|
||||
d="m 112.5,142.00233 v -18"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path130"
|
||||
d="m 97.5,142.00233 v -18"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path131"
|
||||
d="m 97.5,124.00233 2.5,-2.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path132"
|
||||
d="m 112.5,124.00233 -2.5,-2.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path133"
|
||||
d="m 100,121.50233 v -9"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path134"
|
||||
d="m 110,121.50233 v -9"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path135"
|
||||
d="m 102.5,112.50233 h 5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path136"
|
||||
d="M 107.5,112.50233 H 109"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path137"
|
||||
d="m 101,112.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path138"
|
||||
d="m 100,139.50233 v -15"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path139"
|
||||
d="m 110,139.50233 v -15"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path140"
|
||||
d="m 110,124.50233 -2.5,-2.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path141"
|
||||
d="m 100,124.50233 2.5,-2.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path142"
|
||||
d="m 102.5,122.00233 v -8.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path143"
|
||||
d="m 107.5,122.00233 v -8.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path144"
|
||||
d="m 107.5,113.50233 h -5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path145"
|
||||
d="m 100,112.50233 v -8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path146"
|
||||
d="m 100,104.50233 h 10"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path147"
|
||||
d="m 110,104.50233 v 8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path148"
|
||||
d="m 107.5,122.00233 2.5,-0.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path149"
|
||||
d="m 102.5,122.00233 -2.5,-0.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path150"
|
||||
d="m 100,124.50233 -2.5,-0.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path151"
|
||||
d="m 110,124.50233 2.5,-0.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path152"
|
||||
d="m 109,105.50233 1,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path153"
|
||||
d="m 100,104.50233 1,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path154"
|
||||
d="m 109,112.50233 v -7"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path155"
|
||||
d="m 109,105.50233 h -8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path156"
|
||||
d="m 101,105.50233 v 7"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path157"
|
||||
d="m 101,112.50233 1.5,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path158"
|
||||
d="m 107.5,113.50233 1.5,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path159"
|
||||
d="m 113,145.50233 2,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path160"
|
||||
d="m 97,145.50233 -2,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path161"
|
||||
d="m 97,157.50233 -2,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path162"
|
||||
d="m 98,93.502331 -3,-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path163"
|
||||
d="m 112,93.502331 3,-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path164"
|
||||
d="m 114,89.302331 v -12.8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path165"
|
||||
d="m 98,93.502331 h 14"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path166"
|
||||
d="m 98.4,92.502331 h 13.2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path167"
|
||||
d="m 96,89.302331 v -12.8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path168"
|
||||
d="m 98.4,92.502331 -2.4,-3.2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path169"
|
||||
d="m 111.6,92.502331 2.4,-3.2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path170"
|
||||
d="m 96,76.502331 h 18"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path171"
|
||||
d="m 96,76.502331 -0.85,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path172"
|
||||
d="m 98,93.502331 0.4,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path173"
|
||||
d="m 112,93.502331 -0.4,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path174"
|
||||
d="m 114,89.302331 1,0.2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path175"
|
||||
d="m 96,89.302331 -1,0.2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path176"
|
||||
d="m 96,75.502331 h 18"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path177"
|
||||
d="m 114,75.502331 h 0.9"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path178"
|
||||
d="M 96,75.502331 H 95.1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path179"
|
||||
d="m 114,76.502331 0.9,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path180"
|
||||
d="m 106.75,82.902331 -5.1e-4,0.04235 -0.002,0.04232 -0.003,0.04227 -0.004,0.0422 -0.005,0.0421 -0.006,0.04198 -0.007,0.04183 -0.008,0.04165 -0.009,0.04146 -0.01,0.04124 -0.0106,0.04099 -0.0116,0.04072 -0.0126,0.04043 -0.0136,0.04011 -0.0146,0.03977 -0.0155,0.03941 -0.0165,0.03902 -0.0174,0.03861 -0.0183,0.03818 -0.0192,0.03772 -0.0202,0.03724 -0.0211,0.03675 -0.0219,0.03623 -0.0228,0.03568 -0.0237,0.03512 -0.0245,0.03454 -0.0253,0.03394 -0.0262,0.03331 -0.0269,0.03267 -0.0277,0.03201 -0.0285,0.03133 -0.0292,0.03063 -0.03,0.02991 -0.0307,0.02918 -0.0314,0.02843 -0.0321,0.02766 -0.0327,0.02688 -0.0334,0.02608 -0.034,0.02526 -0.0346,0.02443 -0.0352,0.02359 -0.0357,0.02273 -0.0363,0.02186 -0.0368,0.02097 -0.0373,0.02007 -0.0378,0.01917 -0.0382,0.01825 -0.0387,0.01732 -0.0391,0.01638 -0.0394,0.01543 -0.0398,0.01447 -0.0401,0.0135 -0.0405,0.01253 -0.0407,0.01154 -0.041,0.01055 -0.0413,0.0096 -0.0415,0.0086 -0.0417,0.0076 -0.0418,0.0065 -0.042,0.0055 -0.0421,0.0045 -0.0422,0.0035 -0.0423,0.0025 -0.0423,0.0014 -0.0424,4.17e-4 -0.0423,-6.09e-4 -0.0423,-0.0016 -0.0423,-0.0027 -0.0422,-0.0037 -0.0421,-0.0047 -0.042,-0.0057 -0.0418,-0.0067 -0.0416,-0.0077 -0.0414,-0.0087 -0.0412,-0.0097 -0.041,-0.01074 -0.0407,-0.01173 -0.0404,-0.01271 -0.0401,-0.01368 -0.0397,-0.01465 -0.0394,-0.01561 -0.039,-0.01655 -0.0386,-0.01749 -0.0381,-0.01842 -0.0377,-0.01934 -0.0372,-0.02024 -0.0367,-0.02114 -0.0362,-0.02202 -0.0356,-0.02289 -0.0351,-0.02374 -0.0345,-0.02459 -0.0339,-0.02541 -0.0332,-0.02622 -0.0326,-0.02702 -0.0319,-0.0278 -0.0313,-0.02857 -0.0306,-0.02932 -0.0299,-0.03005 -0.0291,-0.03076 -0.0284,-0.03146 -0.0276,-0.03213 -0.0268,-0.03279 -0.026,-0.03343 -0.0252,-0.03405 -0.0243,-0.03465 -0.0235,-0.03523 -0.0226,-0.03579 -0.0218,-0.03633 -0.0209,-0.03684 -0.02,-0.03734 -0.0191,-0.03781 -0.0182,-0.03826 -0.0172,-0.03869 -0.0163,-0.03909 -0.0153,-0.03948 -0.0144,-0.03983 -0.0134,-0.04017 -0.0124,-0.04048 -0.0114,-0.04077 -0.0105,-0.04104 -0.009,-0.04128 -0.008,-0.0415 -0.007,-0.04169 -0.006,-0.04186 -0.005,-0.042 -0.004,-0.04212 -0.003,-0.04221 -0.002,-0.04228 -0.001,-0.04233 -3.2e-4,-0.04235 7e-4,-0.04234 0.002,-0.04232 0.003,-0.04226 0.004,-0.04218 0.005,-0.04208 0.006,-0.04195 0.007,-0.0418 0.008,-0.04162 0.009,-0.04142 0.01,-0.04119 0.0108,-0.04094 0.0118,-0.04067 0.0128,-0.04037 0.0138,-0.04005 0.0147,-0.0397 0.0157,-0.03934 0.0166,-0.03894 0.0176,-0.03853 0.0185,-0.03809 0.0194,-0.03763 0.0203,-0.03715 0.0212,-0.03665 0.0221,-0.03613 0.023,-0.03558 0.0238,-0.03502 0.0247,-0.03443 0.0255,-0.03382 0.0263,-0.03319 0.0271,-0.03255 0.0279,-0.03188 0.0286,-0.0312 0.0294,-0.0305 0.0301,-0.02978 0.0308,-0.02904 0.0315,-0.02828 0.0322,-0.02751 0.0329,-0.02673 0.0335,-0.02592 0.0341,-0.0251 0.0347,-0.02427 0.0353,-0.02343 0.0358,-0.02257 0.0364,-0.02169 0.0369,-0.02081 0.0374,-0.01991 0.0379,-0.019 0.0383,-0.01807 0.0387,-0.01714 0.0391,-0.0162 0.0395,-0.01525 0.0399,-0.01429 0.0402,-0.01332 0.0405,-0.01234 0.0408,-0.01136 0.0411,-0.01037 0.0413,-0.0094 0.0415,-0.0084 0.0417,-0.0074 0.0419,-0.0063 0.042,-0.0053 0.0421,-0.0043 0.0422,-0.0033 0.0423,-0.0023 0.0423,-0.0012 0.0423,-2.26e-4 0.0423,8e-4 0.0423,0.0018 0.0422,0.0028 0.0422,0.0039 0.0421,0.0049 0.0419,0.0059 0.0418,0.0069 0.0416,0.0079 0.0414,0.0089 0.0412,0.0099 0.0409,0.01092 0.0406,0.01191 0.0403,0.01289 0.04,0.01386 0.0397,0.01483 0.0393,0.01578 0.0389,0.01673 0.0385,0.01767 0.038,0.01859 0.0376,0.01951 0.0371,0.02041 0.0366,0.0213 0.0361,0.02218 0.0355,0.02305 0.035,0.0239 0.0344,0.02474 0.0338,0.02557 0.0331,0.02638 0.0325,0.02717 0.0318,0.02795 0.0311,0.02871 0.0304,0.02945 0.0297,0.03018 0.029,0.03089 0.0282,0.03159 0.0274,0.03226 0.0267,0.03291 0.0258,0.03355 0.025,0.03416 0.0242,0.03476 0.0233,0.03533 0.0225,0.03589 0.0216,0.03642 0.0207,0.03693 0.0198,0.03742 0.0189,0.03789 0.018,0.03834 0.017,0.03876 0.0161,0.03917 0.0152,0.03954 0.0142,0.0399 0.0132,0.04023 0.0122,0.04054 0.0113,0.04082 0.0103,0.04108 0.009,0.04132 0.008,0.04153 0.007,0.04172 0.006,0.04189 0.005,0.04202 0.004,0.04214 0.003,0.04223 0.002,0.04229 0.001,0.04233 2e-4,0.02653 z"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 69 KiB |
@@ -1,22 +0,0 @@
|
||||
# SPDX-License-Identifier: Unlicense
|
||||
|
||||
# See: https://crascit.com/2016/04/09/using-ccache-with-cmake/
|
||||
find_program( CCACHE_PROGRAM ccache )
|
||||
|
||||
if ( CCACHE_PROGRAM )
|
||||
# get version information
|
||||
execute_process(
|
||||
COMMAND "${CCACHE_PROGRAM}" --version
|
||||
OUTPUT_VARIABLE CCACHE_VERSION
|
||||
)
|
||||
|
||||
string( REGEX MATCH "[^\r\n]*" CCACHE_VERSION ${CCACHE_VERSION} )
|
||||
|
||||
message( STATUS "Using ccache: ${CCACHE_PROGRAM} (${CCACHE_VERSION})" )
|
||||
|
||||
# Turn on ccache for all targets
|
||||
set( CMAKE_CXX_COMPILER_LAUNCHER "${CCACHE_PROGRAM}" )
|
||||
set( CMAKE_C_COMPILER_LAUNCHER "${CCACHE_PROGRAM}" )
|
||||
|
||||
unset( CCACHE_VERSION )
|
||||
endif()
|
||||
@@ -1,31 +0,0 @@
|
||||
# SPDX-License-Identifier: Unlicense
|
||||
|
||||
find_program(CLANG_FORMAT_PROGRAM NAMES clang-format)
|
||||
|
||||
if (CLANG_FORMAT_PROGRAM)
|
||||
execute_process(
|
||||
COMMAND "${CLANG_FORMAT_PROGRAM}" --version
|
||||
OUTPUT_VARIABLE CLANG_FORMAT_VERSION
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
|
||||
message("Using clang-format: ${CLANG_FORMAT_PROGRAM} (${CLANG_FORMAT_VERSION})")
|
||||
|
||||
file(GLOB_RECURSE
|
||||
format_src_list
|
||||
RELATIVE
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
"src/*.[hc]"
|
||||
"src/*.[hc]pp"
|
||||
)
|
||||
|
||||
foreach(_src_file ${format_src_list})
|
||||
message(" formatting => ${_src_file}")
|
||||
execute_process(
|
||||
COMMAND "${CLANG_FORMAT_PROGRAM}" --style=file -i "${_src_file}"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
)
|
||||
endforeach()
|
||||
|
||||
unset(CLANG_FORMAT_VERSION)
|
||||
endif()
|
||||
@@ -1,111 +0,0 @@
|
||||
# Creates a custom "graphviz" target that outputs useful information
|
||||
# about the project's (and sub target) lib deps/linkage relationships
|
||||
function(run_active_cmake_diagnostics)
|
||||
# enabled with -D DEPENDENCY_DIAGNOSTICS=ON
|
||||
if(DEPENDENCY_DIAGNOSTICS MATCHES ON)
|
||||
# prints a dependency hierarchy for all targets in project
|
||||
set_property(GLOBAL PROPERTY GLOBAL_DEPENDS_DEBUG_MODE ON)
|
||||
endif()
|
||||
|
||||
# enabled with -D GRAPHVIZ_OUTPUT=ON
|
||||
if(GRAPHVIZ_OUTPUT MATCHES ON)
|
||||
# Outputs graphviz dot files and generates png images showing dependency
|
||||
# relationships for top level project and all targets it contains.
|
||||
# All files will be generated in src/build/graphviz_output by default.
|
||||
#
|
||||
# Note: png image graph generation requires graphviz to be installed
|
||||
include(${CMAKE_SOURCE_DIR}/CMakeGraphVizOptions.cmake)
|
||||
add_custom_target(graphviz ALL
|
||||
|
||||
# TODO: wipe out ${CMAKE_BINARY_DIR}/graphviz_output dir here
|
||||
COMMAND ${CMAKE_COMMAND} "--graphviz=${CMAKE_BINARY_DIR}/graphviz_output/${PROJECT_NAME}.dot" .
|
||||
COMMAND for dot_file in \$$\(find "${CMAKE_BINARY_DIR}/graphviz_output/*.dot*" ! -name \"*.png\" \)\; do echo \"Generating \$\${dot_file}.png\" && dot -Tpng \"\$$dot_file\" -o \"\$$dot_file.png\" \; done;
|
||||
WORKING_DIRECTORY "${CMAKE_BINARY_DIR}"
|
||||
)
|
||||
endif()
|
||||
endfunction(run_active_cmake_diagnostics)
|
||||
|
||||
# function to output all CMAKE variables along with their
|
||||
# values using a case insentive regex match
|
||||
#
|
||||
# examples:
|
||||
# 1. print all cmake variables:
|
||||
# > dump_cmake_variables(".*")
|
||||
# 2. print all boolt cmake variables:
|
||||
# > dump_cmake_variables("^boost.*")
|
||||
function(dump_cmake_variables)
|
||||
get_cmake_property(_vars VARIABLES)
|
||||
list(SORT _vars)
|
||||
|
||||
foreach(_var ${_vars})
|
||||
if(ARGV0)
|
||||
unset(MATCHED)
|
||||
|
||||
# case insenstitive match
|
||||
string(TOLOWER "${ARGV0}" ARGV0_lower)
|
||||
string(TOLOWER "${_var}" _var_lower)
|
||||
|
||||
string(REGEX MATCH ${ARGV0_lower} MATCHED ${_var_lower})
|
||||
|
||||
if(NOT MATCHED)
|
||||
continue()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
||||
set(_value ${${_var}})
|
||||
list(LENGTH _value _val_list_len)
|
||||
if(_val_list_len GREATER 1)
|
||||
message(DEBUG " [${_var}] =>")
|
||||
foreach(_val ${_value})
|
||||
message(DEBUG " - ${_val}")
|
||||
endforeach()
|
||||
else()
|
||||
message(DEBUG " [${_var}] => ${_value}")
|
||||
endif()
|
||||
endforeach()
|
||||
endfunction()
|
||||
|
||||
# prints a collection of useful C++ project configuration values
|
||||
function(print_project_variables)
|
||||
message(DEBUG "")
|
||||
message(DEBUG "DEBUG CMake Cache Variable Dump")
|
||||
message(DEBUG "=============================================")
|
||||
message(DEBUG "")
|
||||
dump_cmake_variables(".*")
|
||||
|
||||
message(NOTICE "")
|
||||
message(NOTICE "Project Configuration Settigs: " ${PROJECT_NAME})
|
||||
message(NOTICE "=============================================")
|
||||
message(NOTICE "")
|
||||
message(NOTICE "Build Configuration")
|
||||
message(NOTICE " CMAKE_SYSTEM_PROCESSOR:..................: " ${CMAKE_SYSTEM_PROCESSOR})
|
||||
message(NOTICE " CMAKE_HOST_SYSTEM_NAME:..................: " ${CMAKE_HOST_SYSTEM_NAME})
|
||||
message(NOTICE " CMAKE_BUILD_TYPE:........................: " ${CMAKE_BUILD_TYPE})
|
||||
message(NOTICE " CMAKE_CXX_COMPILER_ARCHITECTURE_ID:......: " ${CMAKE_CXX_COMPILER_ARCHITECTURE_ID})
|
||||
message(NOTICE " CMAKE_CXX_STANDARD:......................: " ${CMAKE_CXX_STANDARD})
|
||||
message(NOTICE " CMAKE_CXX_COMPILER_VERSION:..............: " ${CMAKE_CXX_COMPILER_VERSION})
|
||||
message(NOTICE " CMAKE_CXX_SIZEOF_DATA_PTR:...............: " ${CMAKE_CXX_SIZEOF_DATA_PTR})
|
||||
message(NOTICE " CMAKE_GENERATOR:.........................: " ${CMAKE_GENERATOR})
|
||||
message(NOTICE " CMAKE_VERSION:...........................: " ${CMAKE_VERSION})
|
||||
message(NOTICE " CMAKE_MINIMUM_REQUIRED_VERSION:..........: " ${CMAKE_MINIMUM_REQUIRED_VERSION})
|
||||
message(NOTICE " VCPKG_TARGET_TRIPLET.....................: " ${VCPKG_TARGET_TRIPLET})
|
||||
message(NOTICE " CMAKE_DEBUG_POSTFIX......................: " ${CMAKE_DEBUG_POSTFIX})
|
||||
message(NOTICE "")
|
||||
message(NOTICE "CMake Paths")
|
||||
message(NOTICE " CMAKE_CURRENT_SOURCE_DIR.................: " ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
message(NOTICE " CMAKE_TOOLCHAIN_FILE:....................: " ${CMAKE_TOOLCHAIN_FILE})
|
||||
message(NOTICE " CMAKE_SOURCE_DIR:........................: " ${CMAKE_SOURCE_DIR})
|
||||
message(NOTICE " CMAKE_COMMAND:...........................: " ${CMAKE_COMMAND})
|
||||
message(NOTICE " CLANG_FORMAT_PROGRAM:....................: " ${CLANG_FORMAT_PROGRAM})
|
||||
message(NOTICE " SCONS_PROGRAM:...........................: " ${SCONS_PROGRAM})
|
||||
message(NOTICE " CMAKE_CXX_COMPILER:......................: " ${CMAKE_CXX_COMPILER})
|
||||
message(NOTICE " CMAKE_LINKER:............................: " ${CMAKE_LINKER})
|
||||
message(NOTICE " CMAKE_BUILD_TOOL:........................: " ${CMAKE_BUILD_TOOL})
|
||||
message(NOTICE " vcpkg_executable:........................: " ${vcpkg_executable})
|
||||
message(NOTICE " godot_debug_editor_executable:...........: " ${godot_debug_editor_executable})
|
||||
message(NOTICE " CMAKE_INSTALL_PREFIX:....................: " ${CMAKE_INSTALL_PREFIX})
|
||||
message(NOTICE " CMAKE_BINARY_DIR:........................: " ${CMAKE_BINARY_DIR})
|
||||
message(NOTICE " GDEXTENSION_LIB_PATH:....................: " ${GDEXTENSION_LIB_PATH})
|
||||
message(NOTICE "")
|
||||
endfunction(print_project_variables)
|
||||
@@ -1,207 +0,0 @@
|
||||
# =======================================================================
|
||||
# Godot Engine submodule update/init
|
||||
# =======================================================================
|
||||
|
||||
# confirm we found the godot engine source files.
|
||||
# if the sources list is empty, the submodule probably
|
||||
# hasn't been initialized or updated yet.
|
||||
if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/core")
|
||||
message(NOTICE "Godot engine sources not found")
|
||||
message(NOTICE "initializing/updating the engine submodule...")
|
||||
|
||||
# update the engine submodule to populate it with the
|
||||
# code necessary to build a debug version of the editor that
|
||||
# can be easily debugged along with the gdextension library
|
||||
execute_process(
|
||||
COMMAND git submodule update --init extern/godot-engine
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
)
|
||||
endif()
|
||||
|
||||
# =======================================================================
|
||||
# Godot-cpp bindings submodule update/init
|
||||
# =======================================================================
|
||||
|
||||
# confirm we found the godot engine source files.
|
||||
# if the sources list is empty, the submodule probably
|
||||
# hasn't been initialized or updated yet.
|
||||
if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-cpp/src")
|
||||
message(NOTICE "godot-cpp bingings source not found")
|
||||
message(NOTICE "initializing/updating the godot-cpp submodule...")
|
||||
|
||||
# update the c++ bingings submodule to populate it with
|
||||
# the necessary source for the gdextension library
|
||||
execute_process(
|
||||
COMMAND git submodule update --init extern/godot-cpp
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
)
|
||||
endif()
|
||||
|
||||
# =======================================================================
|
||||
# Godot editor/engine debug build
|
||||
# =======================================================================
|
||||
|
||||
string(TOLOWER "${CMAKE_SYSTEM_NAME}" host_os)
|
||||
set(cpu_arch "x86_64")
|
||||
|
||||
# define variable to be used in the engine build when specifying platform.
|
||||
set(host_os_engine "${host_os}")
|
||||
if (APPLE)
|
||||
if ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "arm64")
|
||||
set(cpu_arch "arm64")
|
||||
endif()
|
||||
# ${CMAKE_SYSTEM_NAME} returns Darwin, but the scons platform name will be macos
|
||||
set(host_os_engine "macos")
|
||||
elseif(UNIX)
|
||||
# the scons build expects linuxbsd to be passed in as the platform
|
||||
# when building on linux, so just append bsd to CMAKE_SYSTEM_NAME
|
||||
set(host_os_engine "${host_os}bsd")
|
||||
endif()
|
||||
|
||||
|
||||
set(godot_debug_editor_executable
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/bin/godot.${host_os_engine}.editor.dev.${cpu_arch}${CMAKE_EXECUTABLE_SUFFIX}"
|
||||
)
|
||||
|
||||
find_program(SCONS_PROGRAM NAMES scons)
|
||||
if (NOT EXISTS "${SCONS_PROGRAM}")
|
||||
message(FATAL_ERROR
|
||||
"scons not found, it is required for the godot engine build. "
|
||||
"Please install scons and confirm it is in your system PATH."
|
||||
)
|
||||
endif()
|
||||
|
||||
message(NOTICE "godot_debug_editor_executable = ${godot_debug_editor_executable}")
|
||||
|
||||
# if the engine/editor executable isn't found in the
|
||||
# engine's submodule bin folder, invoke the scons build.
|
||||
if(NOT EXISTS "${godot_debug_editor_executable}")
|
||||
message(STATUS "Godot engine debug binaries not found, invoking debug build of engine...")
|
||||
|
||||
if (WIN32)
|
||||
set(SCONS_COMMAND powershell -c)
|
||||
endif()
|
||||
|
||||
set(SCONS_COMMAND
|
||||
${SCONS_COMMAND}
|
||||
${SCONS_PROGRAM}
|
||||
target=editor
|
||||
use_static_cpp=yes
|
||||
dev_build=yes
|
||||
debug_symbols=yes
|
||||
optimize=none
|
||||
use_lto=no
|
||||
)
|
||||
|
||||
set(GODOT_ENGINE_CLEAN_BUILD OFF)
|
||||
if (GODOT_ENGINE_CLEAN_BUILD MATCHES ON)
|
||||
message(STATUS "Invoking scons clean: ${SCONS_COMMAND} --clean")
|
||||
|
||||
execute_process(
|
||||
COMMAND "${SCONS_PROGRAM}" --clean
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
)
|
||||
endif()
|
||||
|
||||
message(STATUS "Invoking scons build: ${SCONS_COMMAND}")
|
||||
# this build should only ever need to be run once (unless the enging debug binaries
|
||||
# are deleted or you want to change the build configuration/command invoked below).
|
||||
execute_process(
|
||||
COMMAND ${SCONS_COMMAND}
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
)
|
||||
|
||||
# not necessary, the temp file in here just confuses Visual Studio
|
||||
file(REMOVE_RECURSE "${CMAKE_CURRENT_SOURCE_DIR}}/extern/godot-engine/.sconf_temp")
|
||||
|
||||
if(NOT EXISTS "${godot_debug_editor_executable}")
|
||||
message(FATAL_ERROR "Couldn't find godot debug executable after scons build: ${godot_debug_editor_executable}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# =======================================================================
|
||||
# Godot C++ bindings library setup/configuration
|
||||
# =======================================================================
|
||||
|
||||
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-cpp)
|
||||
|
||||
# =======================================================================
|
||||
# Godot engine library setup/configuration.
|
||||
# Not necessary, just provides better support in multiple IDEs
|
||||
# for engine source code browsing, intellisense, and debugging
|
||||
# =======================================================================
|
||||
|
||||
# populate source file list for the godot engine submodule
|
||||
file(GLOB_RECURSE godot_engine_sources CONFIGURE_DEPENDS
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/*.[hc]"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/*.[hc]pp"
|
||||
)
|
||||
|
||||
# add the engine sources as a library so intellisense works in VS and VSCode
|
||||
# (and any other IDEs that support CMake in a way where the information from
|
||||
# the CMake build is fed into the IDE for additional context about the code
|
||||
# when browsing/debugging). even though the engine is being added as a library here,
|
||||
# the EXCLUDE_FROM_ALL option will prevent it from compiling. This is done
|
||||
# purely for IDE integration so it's able to properly navigate the engine
|
||||
# source code using features like "go do definition", or typical tooltips.
|
||||
add_library(godot_engine EXCLUDE_FROM_ALL ${godot_engine_sources})
|
||||
|
||||
# this is just a handful of additional include directories used by the engine.
|
||||
# this isn't a complete list, I just add them as needed whenever I venture into
|
||||
# code where the IDE can't find certain header files during engine source browsing.
|
||||
target_include_directories(godot_engine PUBLIC
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/platform/windows"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/thirdparty/zlib"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/thirdparty/vulkan"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/thirdparty/vulkan/include"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/thirdparty/vulkan/include/vulkan"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/drivers/vulkan"
|
||||
SYSTEM "${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/thirdparty/glad"
|
||||
SYSTEM "${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/thirdparty/volk"
|
||||
SYSTEM "${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/thirdparty/zstd"
|
||||
SYSTEM "${CMAKE_CURRENT_SOURCE_DIR}/extern/godot-engine/thirdparty/mbedtls/include"
|
||||
)
|
||||
|
||||
# define a bunch of the same symbol definitions
|
||||
# used when by the scons engine build. These build
|
||||
# flags can differen based on the engine's build for
|
||||
# you system. Update as needed for your setup.
|
||||
target_compile_definitions(godot_engine PUBLIC
|
||||
$<$<CONFIG:Debug>:
|
||||
DEBUG_ENABLED
|
||||
DEBUG_METHODS_ENABLED
|
||||
DEV_ENABLED
|
||||
>
|
||||
$<$<BOOL:UNIX>:
|
||||
UNIX_ENABLED
|
||||
VK_USE_PLATFORM_XLIB_KHR
|
||||
>
|
||||
$<$<BOOL:WIN32>:
|
||||
WINDOWS_ENABLED
|
||||
WASAPI_ENABLED
|
||||
WINMIDI_ENABLED
|
||||
TYPED_METHOD_BIND
|
||||
NOMINMAX
|
||||
WIN32
|
||||
VK_USE_PLATFORM_WIN32_KHR
|
||||
_SCRT_STARTUP_WINMAIN=1
|
||||
$<$<BOOL:MSVC>:
|
||||
MSVC
|
||||
>
|
||||
>
|
||||
TOOLS_ENABLED
|
||||
NO_EDITOR_SPLASH
|
||||
GLAD_ENABLED
|
||||
GLES3_ENABLED
|
||||
GLES_OVER_GL
|
||||
VULKAN_ENABLED
|
||||
USE_VOLK
|
||||
MINIZIP_ENABLED
|
||||
BROTLI_ENABLED
|
||||
ZSTD_STATIC_LINKING_ONLY
|
||||
)
|
||||
@@ -1 +0,0 @@
|
||||
# TODO: implement include-what-you-use auto analysis target
|
||||
@@ -1,48 +0,0 @@
|
||||
# VCPKG submodule init/update
|
||||
if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/extern/vcpkg/ports")
|
||||
message(NOTICE "VCPKG package manager sources not found")
|
||||
message(NOTICE "initializing/updating the vcpkg submodule...")
|
||||
execute_process(
|
||||
COMMAND git submodule update --init extern/vcpkg
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
)
|
||||
endif()
|
||||
|
||||
# =======================================================================
|
||||
# VCPKG triplet definition (should enforce static linkage for all deps)
|
||||
# This would typically be passed in from CMakePresets.json, but if
|
||||
# the cmake configuration is invoked without using a preset this fallback
|
||||
# should define a preset that prefers static linkage for 3rd party libs.
|
||||
# =======================================================================
|
||||
|
||||
if (NOT VCPKG_TARGET_TRIPLET)
|
||||
if (WIN32)
|
||||
# static-md enforces static linkage to all dependencies,
|
||||
# as well as dynamic linkage to the C runtime for consistency.
|
||||
# if this gives you trouble change to "x64-windows-static".
|
||||
set(VCPKG_TARGET_TRIPLET "x64-windows-static-md")
|
||||
elseif(APPLE)
|
||||
if ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "arm64")
|
||||
set(VCPKG_TARGET_TRIPLET "arm64-osx")
|
||||
else()
|
||||
set(VCPKG_TARGET_TRIPLET "x64-osx")
|
||||
endif()
|
||||
elseif(UNIX)
|
||||
set(VCPKG_TARGET_TRIPLET "x64-linux")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# =======================================================================
|
||||
# Define VCPKG toolchain file. This would typically be passed in from
|
||||
# CMakePresets.json, but if the cmake configuration is invoked without
|
||||
# using a preset this fallback should detect that the path is missing.
|
||||
# =======================================================================
|
||||
if(NOT CMAKE_TOOLCHAIN_FILE)
|
||||
set(toolchain_file_path "${CMAKE_CURRENT_SOURCE_DIR}/extern/vcpkg/scripts/buildsystems/vcpkg.cmake")
|
||||
if (EXISTS "${toolchain_file_path}")
|
||||
set(CMAKE_TOOLCHAIN_FILE "${toolchain_file_path}")
|
||||
else()
|
||||
message(WARNING "VCPKG toolchain file not found: ${toolchain_file_path}")
|
||||
endif()
|
||||
endif()
|
||||
@@ -1,31 +0,0 @@
|
||||
# =======================================================================
|
||||
# VCPKG bootstrap / initialization.
|
||||
# =======================================================================
|
||||
|
||||
set(vcpkg_executable "${CMAKE_CURRENT_SOURCE_DIR}/extern/vcpkg/vcpkg${CMAKE_EXECUTABLE_SUFFIX}")
|
||||
|
||||
if(EXISTS "${vcpkg_executable}")
|
||||
message(NOTICE "Found VCPKG Executable: ${vcpkg_executable}")
|
||||
else()
|
||||
message(NOTICE "Could not find VCPKG Executable: ${vcpkg_executable}")
|
||||
message(NOTICE "Calling VCPKG bootstrap scripts.")
|
||||
|
||||
if(WIN32)
|
||||
execute_process(
|
||||
COMMAND powershell -c "${CMAKE_CURRENT_SOURCE_DIR}/extern/vcpkg/bootstrap-vcpkg.bat"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
)
|
||||
elseif(UNIX)
|
||||
execute_process(
|
||||
COMMAND bash "${CMAKE_CURRENT_SOURCE_DIR}/extern/vcpkg/bootstrap-vcpkg.sh"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
)
|
||||
endif()
|
||||
|
||||
# fail out if vcpkg isn't found after setup
|
||||
if(NOT EXISTS "${vcpkg_executable}")
|
||||
message(FATAL_ERROR "ERROR: '${vcpkg_executable}' not found!")
|
||||
endif()
|
||||
endif()
|
||||
Vendored
-1
Submodule extern/godot-cpp deleted from f3a1a2fd45
Vendored
-1
Submodule extern/godot-engine deleted from 90f21a35c7
Vendored
-1
Submodule extern/vcpkg deleted from 01f6021959
+11520
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -0,0 +1,950 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
width="58.118374"
|
||||
height="512"
|
||||
viewBox="0 0 58.118374 511.99998"
|
||||
sodipodi:docname="destroyer.svg"
|
||||
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
||||
inkscape:export-filename="../assets/destroyer.svg"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs1" />
|
||||
<sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#545454"
|
||||
bordercolor="#999999"
|
||||
borderopacity="1"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pagecheckerboard="true"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="4"
|
||||
inkscape:cx="38.875"
|
||||
inkscape:cy="447.625"
|
||||
inkscape:window-width="1629"
|
||||
inkscape:window-height="1058"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="g1">
|
||||
<inkscape:page
|
||||
x="7.2906252e-15"
|
||||
y="3.5531787e-15"
|
||||
inkscape:label="1"
|
||||
id="page1"
|
||||
width="58.118374"
|
||||
height="511.99997"
|
||||
margin="0"
|
||||
bleed="0" />
|
||||
</sodipodi:namedview>
|
||||
<g
|
||||
id="g1"
|
||||
inkscape:groupmode="layer"
|
||||
inkscape:label="1"
|
||||
transform="matrix(0.75042725,0,0,0.75042725,-268.6203,-165.22315)">
|
||||
<path
|
||||
id="path2"
|
||||
d="m 96,58.502331 h 18"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path3"
|
||||
d="M 115,78.502331 V 158.50233"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path4"
|
||||
d="M 95,78.502331 V 158.50233"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path5"
|
||||
d="m 115,158.50233 -0.003,1.9633 -0.009,1.96212 -0.0151,1.95975 -0.0211,1.9562 -0.027,1.95148 -0.033,1.94559 -0.039,1.93851 -0.0449,1.93028 -0.0508,1.92087 -0.0567,1.91031 -0.0626,1.89861 -0.0684,1.88575 -0.0741,1.87177 -0.0798,1.85665 -0.0855,1.84041 -0.0911,1.82307 -0.0967,1.80464 -0.10221,1.7851 -0.10765,1.7645 -0.11303,1.74283 -0.11834,1.72012 -0.12358,1.69636 -0.12875,1.67159 -0.13384,1.64581 -0.13885,1.61904 -0.14378,1.59128 -0.14861,1.56259 -0.15336,1.53293 -0.15801,1.50237 -0.16258,1.47089 -0.16704,1.43852 -0.1714,1.4053 -0.17567,1.37123 -0.17981,1.33632 -0.18386,1.30062 -0.1878,1.26413 -0.19162,1.22687 -0.19532,1.18889 -0.19891,1.15019 -0.20238,1.11078 -0.20572,1.07072 -0.20895,1.03 -0.21205,0.98867 -0.21501,0.94674 -0.21786,0.90424 -0.22056,0.8612 -0.22314,0.81764 -0.22558,0.77358 -0.22788,0.72906 -0.23005,0.68411 -0.23208,0.63872 -0.23397,0.59298 -0.23572,0.54686 -0.23733,0.50041 -0.23879,0.45367 -0.24011,0.40665 -0.24128,0.35939 -0.24232,0.31191 -0.24319,0.26424 -0.24394,0.21642 -0.24452,0.16846 -0.24497,0.1204 -0.24527,0.0723 -0.24541,0.0241 -0.24541,-0.0241 -0.24527,-0.0723 -0.24497,-0.1204 -0.24452,-0.16846 -0.24394,-0.21642 -0.24319,-0.26424 -0.24232,-0.31191 -0.24128,-0.35939 -0.24011,-0.40665 -0.23879,-0.45367 -0.23733,-0.50041 -0.23572,-0.54686 -0.23397,-0.59298 -0.23208,-0.63872 -0.23005,-0.68411 -0.22789,-0.72906 -0.22557,-0.77358 -0.22314,-0.81764 -0.22056,-0.8612 -0.21786,-0.90424 -0.21501,-0.94674 -0.212048,-0.98867 -0.208948,-1.03 -0.205726,-1.07072 -0.20238,-1.11078 -0.198911,-1.15019 -0.195323,-1.18889 -0.191617,-1.22687 -0.187796,-1.26413 -0.183861,-1.30062 -0.179815,-1.33632 -0.175663,-1.37123 -0.171403,-1.4053 -0.16704,-1.43852 -0.162577,-1.47089 -0.158017,-1.50237 -0.153359,-1.53293 -0.148611,-1.56259 -0.143773,-1.59128 -0.138848,-1.61904 -0.13384,-1.64581 -0.12875,-1.67159 -0.123584,-1.69636 -0.118343,-1.72012 -0.11303,-1.74283 -0.10765,-1.7645 -0.102205,-1.7851 -0.0967,-1.80464 -0.09113,-1.82307 -0.08551,-1.84041 -0.07984,-1.85665 -0.07412,-1.87177 -0.06836,-1.88575 -0.06255,-1.89861 -0.05671,-1.91031 -0.05083,-1.92087 -0.04492,-1.93028 -0.03899,-1.93851 -0.03303,-1.94559 -0.02705,-1.95148 -0.02106,-1.9562 -0.01505,-1.95975 -0.009,-1.96212 -0.003,-1.9633"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path6"
|
||||
d="m 96,58.502331 -1,20"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path7"
|
||||
d="m 114,58.502331 1,20"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path8"
|
||||
d="m 106,205.25233 -9e-4,0.0423 -0.003,0.0423 -0.004,0.0421 -0.006,0.0419 -0.008,0.0416 -0.01,0.0412 -0.0115,0.0408 -0.0132,0.0402 -0.0149,0.0396 -0.0166,0.039 -0.0182,0.0382 -0.0198,0.0374 -0.0214,0.0366 -0.0229,0.0356 -0.0244,0.0346 -0.0259,0.0335 -0.0272,0.0324 -0.0286,0.0312 -0.0299,0.03 -0.0311,0.0287 -0.0323,0.0274 -0.0335,0.026 -0.0345,0.0245 -0.0355,0.023 -0.0365,0.0215 -0.0374,0.02 -0.0382,0.0184 -0.0389,0.0167 -0.0396,0.0151 -0.0402,0.0134 -0.0407,0.0117 -0.0412,0.01 -0.0416,0.008 -0.0419,0.006 -0.0421,0.005 -0.0422,0.003 -0.0423,0.001 -0.0423,-7.3e-4 -0.0423,-0.003 -0.0421,-0.004 -0.0419,-0.006 -0.0416,-0.008 -0.0412,-0.01 -0.0408,-0.0113 -0.0403,-0.0131 -0.0397,-0.0148 -0.039,-0.0164 -0.0383,-0.0181 -0.0375,-0.0197 -0.0366,-0.0213 -0.0357,-0.0228 -0.0347,-0.0243 -0.0337,-0.0257 -0.0325,-0.0271 -0.0314,-0.0285 -0.0301,-0.0298 -0.0288,-0.031 -0.0275,-0.0322 -0.0261,-0.0334 -0.0247,-0.0344 -0.0232,-0.0354 -0.0217,-0.0364 -0.0201,-0.0373 -0.0185,-0.0381 -0.0169,-0.0388 -0.0152,-0.0395 -0.0135,-0.0401 -0.0118,-0.0407 -0.0101,-0.0411 -0.008,-0.0415 -0.007,-0.0418 -0.005,-0.0421 -0.003,-0.0422 -10e-4,-0.0423 5.7e-4,-0.0423 0.002,-0.0423 0.004,-0.0421 0.006,-0.0419 0.008,-0.0416 0.009,-0.0413 0.0112,-0.0408 0.0129,-0.0403 0.0146,-0.0397 0.0163,-0.0391 0.0179,-0.0384 0.0195,-0.0376 0.0211,-0.0367 0.0227,-0.0358 0.0241,-0.0348 0.0256,-0.0337 0.027,-0.0326 0.0284,-0.0315 0.0297,-0.0302 0.0309,-0.029 0.0321,-0.0276 0.0333,-0.0262 0.0343,-0.0248 0.0353,-0.0233 0.0363,-0.0218 0.0372,-0.0203 0.038,-0.0187 0.0388,-0.017 0.0395,-0.0154 0.0401,-0.0137 0.0406,-0.012 0.0411,-0.0102 0.0415,-0.008 0.0418,-0.007 0.0421,-0.005 0.0422,-0.003 0.0423,-0.001 0.0423,4.2e-4 0.0423,0.002 0.0422,0.004 0.0419,0.006 0.0417,0.008 0.0413,0.009 0.0409,0.011 0.0404,0.0128 0.0398,0.0145 0.0392,0.0161 0.0384,0.0178 0.0376,0.0194 0.0368,0.021 0.0359,0.0225 0.0349,0.024 0.0338,0.0255 0.0327,0.0269 0.0316,0.0282 0.0303,0.0296 0.0291,0.0308 0.0277,0.032 0.0264,0.0332 0.0249,0.0342 0.0235,0.0353 0.0219,0.0362 0.0204,0.0371 0.0188,0.0379 0.0172,0.0387 0.0155,0.0394 0.0138,0.04 0.0121,0.0406 0.0104,0.0411 0.009,0.0415 0.007,0.0418 0.005,0.042 0.003,0.0422 0.002,0.0423 1.1e-4,0.0152 z"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path9"
|
||||
d="m 99,198.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path10"
|
||||
d="M 100.5,198.50233 H 102"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path11"
|
||||
d="m 102,198.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path12"
|
||||
d="M 103.5,198.50233 H 105"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path13"
|
||||
d="m 99,186.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path14"
|
||||
d="M 100.5,186.50233 H 102"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path15"
|
||||
d="m 102,186.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path16"
|
||||
d="M 103.5,186.50233 H 105"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path17"
|
||||
d="m 111,186.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path18"
|
||||
d="m 111,188.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path19"
|
||||
d="m 111,189.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path20"
|
||||
d="m 111,191.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path21"
|
||||
d="m 99,186.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path22"
|
||||
d="m 99,188.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path23"
|
||||
d="m 99,189.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path24"
|
||||
d="m 99,191.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path25"
|
||||
d="m 111,103.50233 h -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path26"
|
||||
d="M 109.5,103.50233 H 108"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path27"
|
||||
d="m 108,103.50233 h -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path28"
|
||||
d="M 106.5,103.50233 H 105"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path29"
|
||||
d="m 99,103.50233 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path30"
|
||||
d="m 99,102.00233 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path31"
|
||||
d="M 99,100.50233 V 99.002331"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path32"
|
||||
d="m 99,99.002331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path33"
|
||||
d="m 111,103.50233 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path34"
|
||||
d="m 111,102.00233 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path35"
|
||||
d="M 111,100.50233 V 99.002331"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path36"
|
||||
d="m 111,99.002331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path37"
|
||||
d="m 105,198.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path38"
|
||||
d="M 106.5,198.50233 H 108"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path39"
|
||||
d="m 108,198.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path40"
|
||||
d="M 109.5,198.50233 H 111"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path41"
|
||||
d="m 105,186.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path42"
|
||||
d="M 106.5,186.50233 H 108"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path43"
|
||||
d="m 108,186.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path44"
|
||||
d="M 109.5,186.50233 H 111"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path45"
|
||||
d="m 111,192.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path46"
|
||||
d="m 111,194.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path47"
|
||||
d="m 111,195.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path48"
|
||||
d="m 111,197.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path49"
|
||||
d="m 99,192.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path50"
|
||||
d="m 99,194.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path51"
|
||||
d="m 99,195.50233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path52"
|
||||
d="m 99,197.00233 v 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path53"
|
||||
d="m 105,103.50233 h -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path54"
|
||||
d="M 103.5,103.50233 H 102"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path55"
|
||||
d="m 102,103.50233 h -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path56"
|
||||
d="M 100.5,103.50233 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path57"
|
||||
d="m 99,97.502331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path58"
|
||||
d="m 99,96.002331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path59"
|
||||
d="m 111,97.502331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path60"
|
||||
d="m 111,96.002331 v -1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path61"
|
||||
d="m 99,197.00233 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path62"
|
||||
d="m 100.5,198.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path63"
|
||||
d="m 109.5,94.502331 v 8.999999"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path64"
|
||||
d="m 102,198.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path65"
|
||||
d="m 108,94.502331 v 8.999999"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path66"
|
||||
d="m 103.5,186.50233 v 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path67"
|
||||
d="M 106.5,103.50233 V 94.502331"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path68"
|
||||
d="m 105,198.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path69"
|
||||
d="m 105,94.502331 v 8.999999"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path70"
|
||||
d="m 106.5,198.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path71"
|
||||
d="m 103.5,94.502331 v 8.999999"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path72"
|
||||
d="m 108,198.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path73"
|
||||
d="m 102,94.502331 v 8.999999"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path74"
|
||||
d="m 109.5,186.50233 v 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path75"
|
||||
d="M 100.5,103.50233 V 94.502331"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path76"
|
||||
d="M 111,195.50233 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path77"
|
||||
d="m 99,94.502331 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path78"
|
||||
d="m 99,194.00233 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path79"
|
||||
d="M 111,96.002331 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path80"
|
||||
d="m 99,192.50233 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path81"
|
||||
d="M 111,97.502331 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path82"
|
||||
d="M 111,191.00233 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path83"
|
||||
d="m 99,99.002331 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path84"
|
||||
d="m 99,189.50233 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path85"
|
||||
d="M 111,100.50233 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path86"
|
||||
d="m 99,188.00233 h 12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path87"
|
||||
d="M 111,102.00233 H 99"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path88"
|
||||
d="m 100.5,178.50233 h 9"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path89"
|
||||
d="m 109.5,178.50233 0.5,-15"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path90"
|
||||
d="m 100.5,178.50233 -0.5,-15"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path91"
|
||||
d="m 100,163.50233 -5,-5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path92"
|
||||
d="m 110,163.50233 5,-5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path93"
|
||||
d="m 100,163.50233 h 10"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path94"
|
||||
d="M 110,139.50233 H 100"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path95"
|
||||
d="m 100,163.50233 1,-2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path96"
|
||||
d="m 110,163.50233 -1,-2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path97"
|
||||
d="m 109,161.50233 h -8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path98"
|
||||
d="m 101,161.50233 -4,-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path99"
|
||||
d="m 97,145.50233 4,-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path100"
|
||||
d="m 109,141.50233 4,4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path101"
|
||||
d="m 109,161.50233 4,-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path102"
|
||||
d="m 106,173.50233 -9e-4,0.0423 -0.003,0.0423 -0.004,0.0421 -0.006,0.0419 -0.008,0.0416 -0.01,0.0412 -0.0115,0.0408 -0.0132,0.0402 -0.0149,0.0396 -0.0166,0.039 -0.0182,0.0382 -0.0198,0.0374 -0.0214,0.0366 -0.0229,0.0356 -0.0244,0.0346 -0.0259,0.0335 -0.0272,0.0324 -0.0286,0.0312 -0.0299,0.03 -0.0311,0.0287 -0.0323,0.0274 -0.0335,0.026 -0.0345,0.0245 -0.0355,0.023 -0.0365,0.0215 -0.0374,0.02 -0.0382,0.0184 -0.0389,0.0167 -0.0396,0.0151 -0.0402,0.0134 -0.0407,0.0117 -0.0412,0.01 -0.0416,0.008 -0.0419,0.006 -0.0421,0.005 -0.0422,0.003 -0.0423,0.001 -0.0423,-7.3e-4 -0.0423,-0.003 -0.0421,-0.004 -0.0419,-0.006 -0.0416,-0.008 -0.0412,-0.01 -0.0408,-0.0113 -0.0403,-0.0131 -0.0397,-0.0148 -0.039,-0.0164 -0.0383,-0.0181 -0.0375,-0.0197 -0.0366,-0.0213 -0.0357,-0.0228 -0.0347,-0.0243 -0.0337,-0.0257 -0.0325,-0.0271 -0.0314,-0.0285 -0.0301,-0.0298 -0.0288,-0.031 -0.0275,-0.0322 -0.0261,-0.0334 -0.0247,-0.0344 -0.0232,-0.0354 -0.0217,-0.0364 -0.0201,-0.0373 -0.0185,-0.0381 -0.0169,-0.0388 -0.0152,-0.0395 -0.0135,-0.0401 -0.0118,-0.0407 -0.0101,-0.0411 -0.008,-0.0415 -0.007,-0.0418 -0.005,-0.0421 -0.003,-0.0422 -10e-4,-0.0423 5.7e-4,-0.0423 0.002,-0.0423 0.004,-0.0421 0.006,-0.0419 0.008,-0.0416 0.009,-0.0413 0.0112,-0.0408 0.0129,-0.0403 0.0146,-0.0397 0.0163,-0.0391 0.0179,-0.0384 0.0195,-0.0376 0.0211,-0.0367 0.0227,-0.0358 0.0241,-0.0348 0.0256,-0.0337 0.027,-0.0326 0.0284,-0.0315 0.0297,-0.0302 0.0309,-0.029 0.0321,-0.0276 0.0333,-0.0262 0.0343,-0.0248 0.0353,-0.0233 0.0363,-0.0218 0.0372,-0.0203 0.038,-0.0187 0.0388,-0.017 0.0395,-0.0154 0.0401,-0.0137 0.0406,-0.012 0.0411,-0.0102 0.0415,-0.008 0.0418,-0.007 0.0421,-0.005 0.0422,-0.003 0.0423,-0.001 0.0423,4.2e-4 0.0423,0.002 0.0422,0.004 0.0419,0.006 0.0417,0.008 0.0413,0.009 0.0409,0.011 0.0404,0.0128 0.0398,0.0145 0.0392,0.0161 0.0384,0.0178 0.0376,0.0194 0.0368,0.021 0.0359,0.0225 0.0349,0.024 0.0338,0.0255 0.0327,0.0269 0.0316,0.0282 0.0303,0.0296 0.0291,0.0308 0.0277,0.032 0.0264,0.0332 0.0249,0.0342 0.0235,0.0353 0.0219,0.0362 0.0204,0.0371 0.0188,0.0379 0.0172,0.0387 0.0155,0.0394 0.0138,0.04 0.0121,0.0406 0.0104,0.0411 0.009,0.0415 0.007,0.0418 0.005,0.042 0.003,0.0422 0.002,0.0423 1.1e-4,0.0152 z"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path103"
|
||||
d="m 105,141.50233 h -3"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path104"
|
||||
d="m 102,141.50233 h -1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path105"
|
||||
d="m 105,141.50233 h 3"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path106"
|
||||
d="m 108,141.50233 h 1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path107"
|
||||
d="m 100,139.50233 1,2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path108"
|
||||
d="m 109,141.50233 1,-2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path109"
|
||||
d="m 110,139.50233 5,5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path110"
|
||||
d="m 100,139.50233 -5,5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path111"
|
||||
d="m 113,157.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path112"
|
||||
d="m 97,157.50233 v -12"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path113"
|
||||
d="m 102,141.50233 v 8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path114"
|
||||
d="m 108,141.50233 v 8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path115"
|
||||
d="m 102,149.50233 h 6"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path116"
|
||||
d="m 108,149.50233 -1,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path117"
|
||||
d="m 107,148.50233 h -4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path118"
|
||||
d="m 103,148.50233 -1,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path119"
|
||||
d="m 102,141.50233 1,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path120"
|
||||
d="m 108,141.50233 -1,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path121"
|
||||
d="m 107,142.50233 v 6"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path122"
|
||||
d="m 103,148.50233 v -6"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path123"
|
||||
d="m 103,142.50233 h 4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path124"
|
||||
d="m 106,143.50233 -9e-4,0.0423 -0.003,0.0423 -0.004,0.0421 -0.006,0.0419 -0.008,0.0416 -0.01,0.0412 -0.0115,0.0408 -0.0132,0.0402 -0.0149,0.0396 -0.0166,0.039 -0.0182,0.0382 -0.0198,0.0374 -0.0214,0.0366 -0.0229,0.0356 -0.0244,0.0346 -0.0259,0.0335 -0.0272,0.0324 -0.0286,0.0312 -0.0299,0.03 -0.0311,0.0287 -0.0323,0.0274 -0.0335,0.026 -0.0345,0.0245 -0.0355,0.023 -0.0365,0.0215 -0.0374,0.02 -0.0382,0.0184 -0.0389,0.0167 -0.0396,0.0151 -0.0402,0.0134 -0.0407,0.0117 -0.0412,0.01 -0.0416,0.008 -0.0419,0.006 -0.0421,0.005 -0.0422,0.003 -0.0423,0.001 -0.0423,-7.3e-4 -0.0423,-0.003 -0.0421,-0.004 -0.0419,-0.006 -0.0416,-0.008 -0.0412,-0.01 -0.0408,-0.0113 -0.0403,-0.0131 -0.0397,-0.0148 -0.039,-0.0164 -0.0383,-0.0181 -0.0375,-0.0197 -0.0366,-0.0213 -0.0357,-0.0228 -0.0347,-0.0243 -0.0337,-0.0257 -0.0325,-0.0271 -0.0314,-0.0285 -0.0301,-0.0298 -0.0288,-0.031 -0.0275,-0.0322 -0.0261,-0.0334 -0.0247,-0.0344 -0.0232,-0.0354 -0.0217,-0.0364 -0.0201,-0.0373 -0.0185,-0.0381 -0.0169,-0.0388 -0.0152,-0.0395 -0.0135,-0.0401 -0.0118,-0.0407 -0.0101,-0.0411 -0.008,-0.0415 -0.007,-0.0418 -0.005,-0.0421 -0.003,-0.0422 -10e-4,-0.0423 5.7e-4,-0.0423 0.002,-0.0423 0.004,-0.0421 0.006,-0.0419 0.008,-0.0416 0.009,-0.0413 0.0112,-0.0408 0.0129,-0.0403 0.0146,-0.0397 0.0163,-0.0391 0.0179,-0.0384 0.0195,-0.0376 0.0211,-0.0367 0.0227,-0.0358 0.0241,-0.0348 0.0256,-0.0337 0.027,-0.0326 0.0284,-0.0315 0.0297,-0.0302 0.0309,-0.029 0.0321,-0.0276 0.0333,-0.0262 0.0343,-0.0248 0.0353,-0.0233 0.0363,-0.0218 0.0372,-0.0203 0.038,-0.0187 0.0388,-0.017 0.0395,-0.0154 0.0401,-0.0137 0.0406,-0.012 0.0411,-0.0102 0.0415,-0.008 0.0418,-0.007 0.0421,-0.005 0.0422,-0.003 0.0423,-0.001 0.0423,4.2e-4 0.0423,0.002 0.0422,0.004 0.0419,0.006 0.0417,0.008 0.0413,0.009 0.0409,0.011 0.0404,0.0128 0.0398,0.0145 0.0392,0.0161 0.0384,0.0178 0.0376,0.0194 0.0368,0.021 0.0359,0.0225 0.0349,0.024 0.0338,0.0255 0.0327,0.0269 0.0316,0.0282 0.0303,0.0296 0.0291,0.0308 0.0277,0.032 0.0264,0.0332 0.0249,0.0342 0.0235,0.0353 0.0219,0.0362 0.0204,0.0371 0.0188,0.0379 0.0172,0.0387 0.0155,0.0394 0.0138,0.04 0.0121,0.0406 0.0104,0.0411 0.009,0.0415 0.007,0.0418 0.005,0.042 0.003,0.0422 0.002,0.0423 1.1e-4,0.0152 z"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path125"
|
||||
d="m 5005.7238,7252.6356 -0.1693,-3.9973 -0.5067,-3.9687 -0.8405,-3.9116 -1.1682,-3.8264 -1.4875,-3.7138 -1.7963,-3.5746 -2.092,-3.4097 -2.3729,-3.2204 -2.6367,-3.008 -2.8816,-2.7741 -3.1058,-2.5201 -3.3077,-2.2483 -3.486,-1.9602 -3.6393,-1.658 -3.7664,-1.3441 -3.8666,-1.0204 -3.9389,-0.6895 -3.9832,-0.3536 -3.9988,-0.015 -3.9857,0.3234 -3.9441,0.6596 -3.8742,0.9911 -3.7764,1.3154 -3.6518,1.6305 -3.5007,1.9336 -3.3247,2.2231 -3.1248,2.4966 -2.9025,2.7521 -2.6594,2.9879 -2.3972,3.2023 -2.1179,3.3937 -1.8232,3.5609 -1.5157,3.7024 -1.1972,3.8175 -0.87,3.9051 -0.5368,3.9647 -0.1996,3.996 0.1391,3.9985 0.4766,3.9724 0.8108,3.9179 1.1391,3.8351 1.4594,3.725 1.7691,3.5881 2.0662,3.4255 2.3484,3.2383 2.6138,3.0279 2.8605,2.7958 3.0866,2.5437 3.2907,2.2733 3.471,1.9865 3.6266,1.6856 3.7561,1.3726 3.8587,1.0498 3.9337,0.7193 3.9804,0.3838 3.9985,0.046 3.9881,-0.2931 3.9489,-0.6297 3.8816,-0.9617 3.7863,-1.2867 3.664,-1.6027 3.5153,-1.9071 3.3415,-2.1978 3.1436,-2.4728 2.9233,-2.73 2.6819,-2.9676 2.4214,-3.1841 2.1435,-3.3776 1.8502,-3.5469 1.5437,-3.6908 1.226,-3.8083 0.8996,-3.8984 0.5668,-3.9605 0.2299,-3.9944 0.01,-0.7163 z"
|
||||
style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none"
|
||||
transform="scale(0.08)" />
|
||||
<path
|
||||
id="path126"
|
||||
d="m 103,146.50233 -0.0128,-3e-4 -0.0128,-9e-4 -0.0128,-0.002 -0.0128,-0.002 -0.0127,-0.003 -0.0127,-0.003 -0.0126,-0.004 -0.0126,-0.004 -0.0125,-0.005 -0.0125,-0.006 -0.0124,-0.006 -0.0123,-0.007 -0.0122,-0.007 -0.0121,-0.008 -0.012,-0.009 -0.0119,-0.009 -0.0118,-0.01 -0.0117,-0.0102 -0.0115,-0.0108 -0.0114,-0.0113 -0.0112,-0.0118 -0.0111,-0.0124 -0.0109,-0.0129 -0.0107,-0.0134 -0.0106,-0.0139 -0.0104,-0.0144 -0.0102,-0.0149 -0.01,-0.0153 -0.01,-0.0158 -0.01,-0.0163 -0.009,-0.0167 -0.009,-0.0171 -0.009,-0.0176 -0.009,-0.018 -0.008,-0.0184 -0.008,-0.0188 -0.008,-0.0192 -0.008,-0.0195 -0.007,-0.0199 -0.007,-0.0202 -0.007,-0.0206 -0.007,-0.0209 -0.006,-0.0212 -0.006,-0.0215 -0.006,-0.0218 -0.006,-0.0221 -0.005,-0.0223 -0.005,-0.0226 -0.005,-0.0228 -0.004,-0.023 -0.004,-0.0232 -0.004,-0.0234 -0.004,-0.0236 -0.003,-0.0237 -0.003,-0.0239 -0.003,-0.024 -0.002,-0.0241 -0.002,-0.0242 -0.002,-0.0243 -10e-4,-0.0244 -0.001,-0.0245 -7.9e-4,-0.0245 -4.7e-4,-0.0245 -1.6e-4,-0.0245 1.6e-4,-0.0245 4.7e-4,-0.0245 7.9e-4,-0.0245 0.001,-0.0245 10e-4,-0.0244 0.002,-0.0243 0.002,-0.0242 0.002,-0.0241 0.003,-0.024 0.003,-0.0239 0.003,-0.0237 0.004,-0.0236 0.004,-0.0234 0.004,-0.0232 0.004,-0.023 0.005,-0.0228 0.005,-0.0226 0.005,-0.0223 0.006,-0.0221 0.006,-0.0218 0.006,-0.0215 0.006,-0.0212 0.007,-0.0209 0.007,-0.0206 0.007,-0.0202 0.007,-0.0199 0.008,-0.0195 0.008,-0.0192 0.008,-0.0188 0.008,-0.0184 0.009,-0.018 0.009,-0.0176 0.009,-0.0171 0.009,-0.0167 0.01,-0.0163 0.01,-0.0158 0.01,-0.0153 0.0102,-0.0149 0.0104,-0.0144 0.0106,-0.0139 0.0107,-0.0134 0.0109,-0.0129 0.0111,-0.0124 0.0112,-0.0118 0.0114,-0.0113 0.0115,-0.0108 0.0117,-0.0102 0.0118,-0.01 0.0119,-0.009 0.012,-0.009 0.0121,-0.008 0.0122,-0.007 0.0123,-0.007 0.0124,-0.006 0.0125,-0.006 0.0125,-0.005 0.0126,-0.004 0.0126,-0.004 0.0127,-0.003 0.0127,-0.003 0.0128,-0.002 0.0128,-0.002 0.0128,-9e-4 0.0128,-3e-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path127"
|
||||
d="m 107,144.50233 0.0136,3e-4 0.0136,9e-4 0.0136,0.002 0.0135,0.002 0.0135,0.003 0.0135,0.003 0.0134,0.004 0.0134,0.004 0.0133,0.005 0.0132,0.006 0.0131,0.006 0.013,0.007 0.013,0.007 0.0128,0.008 0.0127,0.009 0.0126,0.009 0.0125,0.01 0.0123,0.0102 0.0122,0.0108 0.0121,0.0113 0.0119,0.0118 0.0117,0.0124 0.0116,0.0129 0.0114,0.0134 0.0112,0.0139 0.011,0.0144 0.0108,0.0149 0.0106,0.0153 0.0104,0.0158 0.0102,0.0163 0.01,0.0167 0.01,0.0171 0.009,0.0176 0.009,0.018 0.009,0.0184 0.009,0.0188 0.008,0.0192 0.008,0.0195 0.008,0.0199 0.008,0.0202 0.007,0.0206 0.007,0.0209 0.007,0.0212 0.007,0.0215 0.006,0.0218 0.006,0.0221 0.006,0.0223 0.005,0.0226 0.005,0.0228 0.005,0.023 0.004,0.0232 0.004,0.0234 0.004,0.0236 0.003,0.0237 0.003,0.0239 0.003,0.024 0.002,0.0241 0.002,0.0242 0.002,0.0243 10e-4,0.0244 0.001,0.0245 8.3e-4,0.0245 5e-4,0.0245 1.7e-4,0.0245 -1.7e-4,0.0245 -5e-4,0.0245 -8.3e-4,0.0245 -0.001,0.0245 -10e-4,0.0244 -0.002,0.0243 -0.002,0.0242 -0.002,0.0241 -0.003,0.024 -0.003,0.0239 -0.003,0.0237 -0.004,0.0236 -0.004,0.0234 -0.004,0.0232 -0.005,0.023 -0.005,0.0228 -0.005,0.0226 -0.006,0.0223 -0.006,0.0221 -0.006,0.0218 -0.007,0.0215 -0.007,0.0212 -0.007,0.0209 -0.007,0.0206 -0.008,0.0202 -0.008,0.0199 -0.008,0.0195 -0.008,0.0192 -0.009,0.0188 -0.009,0.0184 -0.009,0.018 -0.009,0.0176 -0.01,0.0171 -0.01,0.0167 -0.0102,0.0163 -0.0104,0.0158 -0.0106,0.0153 -0.0108,0.0149 -0.011,0.0144 -0.0112,0.0139 -0.0114,0.0134 -0.0116,0.0129 -0.0117,0.0124 -0.0119,0.0118 -0.0121,0.0113 -0.0122,0.0108 -0.0123,0.0102 -0.0125,0.01 -0.0126,0.009 -0.0127,0.009 -0.0128,0.008 -0.013,0.007 -0.013,0.007 -0.0131,0.006 -0.0132,0.006 -0.0133,0.005 -0.0134,0.004 -0.0134,0.004 -0.0135,0.003 -0.0135,0.003 -0.0135,0.002 -0.0136,0.002 -0.0136,9e-4 -0.0136,3e-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path128"
|
||||
d="m 104,148.90233 3e-4,-0.01 9e-4,-0.01 0.002,-0.01 0.002,-0.01 0.003,-0.01 0.003,-0.01 0.004,-0.01 0.004,-0.01 0.005,-0.01 0.006,-0.01 0.006,-0.009 0.007,-0.009 0.007,-0.009 0.008,-0.009 0.009,-0.009 0.009,-0.009 0.01,-0.009 0.0102,-0.009 0.0108,-0.009 0.0113,-0.009 0.0118,-0.009 0.0124,-0.008 0.0129,-0.008 0.0134,-0.008 0.0139,-0.008 0.0144,-0.008 0.0149,-0.008 0.0153,-0.008 0.0158,-0.008 0.0163,-0.007 0.0167,-0.007 0.0171,-0.007 0.0176,-0.007 0.018,-0.007 0.0184,-0.007 0.0188,-0.006 0.0192,-0.006 0.0195,-0.006 0.0199,-0.006 0.0202,-0.006 0.0206,-0.005 0.0209,-0.005 0.0212,-0.005 0.0215,-0.005 0.0218,-0.005 0.0221,-0.004 0.0223,-0.004 0.0226,-0.004 0.0228,-0.004 0.023,-0.003 0.0232,-0.003 0.0234,-0.003 0.0236,-0.003 0.0237,-0.002 0.0239,-0.002 0.024,-0.002 0.0241,-0.002 0.0242,-0.002 0.0243,-0.001 0.0244,-0.001 0.0245,-8.5e-4 0.0245,-6e-4 0.0245,-3.6e-4 0.0245,-1.2e-4 0.0245,1.2e-4 0.0245,3.6e-4 0.0245,6e-4 0.0245,8.5e-4 0.0244,0.001 0.0243,0.001 0.0242,0.002 0.0241,0.002 0.024,0.002 0.0239,0.002 0.0237,0.002 0.0236,0.003 0.0234,0.003 0.0232,0.003 0.023,0.003 0.0228,0.004 0.0226,0.004 0.0223,0.004 0.0221,0.004 0.0218,0.005 0.0215,0.005 0.0212,0.005 0.0209,0.005 0.0206,0.005 0.0202,0.006 0.0199,0.006 0.0195,0.006 0.0192,0.006 0.0188,0.006 0.0184,0.007 0.018,0.007 0.0176,0.007 0.0171,0.007 0.0167,0.007 0.0163,0.007 0.0158,0.008 0.0153,0.008 0.0149,0.008 0.0144,0.008 0.0139,0.008 0.0134,0.008 0.0129,0.008 0.0124,0.008 0.0118,0.009 0.0113,0.009 0.0108,0.009 0.0102,0.009 0.01,0.009 0.009,0.009 0.009,0.009 0.008,0.009 0.007,0.009 0.007,0.009 0.006,0.009 0.006,0.01 0.005,0.01 0.005,0.01 0.004,0.01 0.003,0.01 0.003,0.01 0.002,0.01 0.002,0.01 9e-4,0.01 3e-4,0.01"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path129"
|
||||
d="m 112.5,142.00233 v -18"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path130"
|
||||
d="m 97.5,142.00233 v -18"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path131"
|
||||
d="m 97.5,124.00233 2.5,-2.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path132"
|
||||
d="m 112.5,124.00233 -2.5,-2.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path133"
|
||||
d="m 100,121.50233 v -9"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path134"
|
||||
d="m 110,121.50233 v -9"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path135"
|
||||
d="m 102.5,112.50233 h 5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path136"
|
||||
d="M 107.5,112.50233 H 109"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path137"
|
||||
d="m 101,112.50233 h 1.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path138"
|
||||
d="m 100,139.50233 v -15"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path139"
|
||||
d="m 110,139.50233 v -15"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path140"
|
||||
d="m 110,124.50233 -2.5,-2.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path141"
|
||||
d="m 100,124.50233 2.5,-2.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path142"
|
||||
d="m 102.5,122.00233 v -8.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path143"
|
||||
d="m 107.5,122.00233 v -8.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path144"
|
||||
d="m 107.5,113.50233 h -5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path145"
|
||||
d="m 100,112.50233 v -8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path146"
|
||||
d="m 100,104.50233 h 10"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path147"
|
||||
d="m 110,104.50233 v 8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path148"
|
||||
d="m 107.5,122.00233 2.5,-0.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path149"
|
||||
d="m 102.5,122.00233 -2.5,-0.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path150"
|
||||
d="m 100,124.50233 -2.5,-0.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path151"
|
||||
d="m 110,124.50233 2.5,-0.5"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path152"
|
||||
d="m 109,105.50233 1,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path153"
|
||||
d="m 100,104.50233 1,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path154"
|
||||
d="m 109,112.50233 v -7"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path155"
|
||||
d="m 109,105.50233 h -8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path156"
|
||||
d="m 101,105.50233 v 7"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path157"
|
||||
d="m 101,112.50233 1.5,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path158"
|
||||
d="m 107.5,113.50233 1.5,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path159"
|
||||
d="m 113,145.50233 2,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path160"
|
||||
d="m 97,145.50233 -2,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path161"
|
||||
d="m 97,157.50233 -2,1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path162"
|
||||
d="m 98,93.502331 -3,-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path163"
|
||||
d="m 112,93.502331 3,-4"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path164"
|
||||
d="m 114,89.302331 v -12.8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path165"
|
||||
d="m 98,93.502331 h 14"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path166"
|
||||
d="m 98.4,92.502331 h 13.2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path167"
|
||||
d="m 96,89.302331 v -12.8"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path168"
|
||||
d="m 98.4,92.502331 -2.4,-3.2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path169"
|
||||
d="m 111.6,92.502331 2.4,-3.2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path170"
|
||||
d="m 96,76.502331 h 18"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path171"
|
||||
d="m 96,76.502331 -0.85,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path172"
|
||||
d="m 98,93.502331 0.4,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path173"
|
||||
d="m 112,93.502331 -0.4,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path174"
|
||||
d="m 114,89.302331 1,0.2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path175"
|
||||
d="m 96,89.302331 -1,0.2"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path176"
|
||||
d="m 96,75.502331 h 18"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path177"
|
||||
d="m 114,75.502331 h 0.9"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path178"
|
||||
d="M 96,75.502331 H 95.1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path179"
|
||||
d="m 114,76.502331 0.9,-1"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
<path
|
||||
id="path180"
|
||||
d="m 106.75,82.902331 -5.1e-4,0.04235 -0.002,0.04232 -0.003,0.04227 -0.004,0.0422 -0.005,0.0421 -0.006,0.04198 -0.007,0.04183 -0.008,0.04165 -0.009,0.04146 -0.01,0.04124 -0.0106,0.04099 -0.0116,0.04072 -0.0126,0.04043 -0.0136,0.04011 -0.0146,0.03977 -0.0155,0.03941 -0.0165,0.03902 -0.0174,0.03861 -0.0183,0.03818 -0.0192,0.03772 -0.0202,0.03724 -0.0211,0.03675 -0.0219,0.03623 -0.0228,0.03568 -0.0237,0.03512 -0.0245,0.03454 -0.0253,0.03394 -0.0262,0.03331 -0.0269,0.03267 -0.0277,0.03201 -0.0285,0.03133 -0.0292,0.03063 -0.03,0.02991 -0.0307,0.02918 -0.0314,0.02843 -0.0321,0.02766 -0.0327,0.02688 -0.0334,0.02608 -0.034,0.02526 -0.0346,0.02443 -0.0352,0.02359 -0.0357,0.02273 -0.0363,0.02186 -0.0368,0.02097 -0.0373,0.02007 -0.0378,0.01917 -0.0382,0.01825 -0.0387,0.01732 -0.0391,0.01638 -0.0394,0.01543 -0.0398,0.01447 -0.0401,0.0135 -0.0405,0.01253 -0.0407,0.01154 -0.041,0.01055 -0.0413,0.0096 -0.0415,0.0086 -0.0417,0.0076 -0.0418,0.0065 -0.042,0.0055 -0.0421,0.0045 -0.0422,0.0035 -0.0423,0.0025 -0.0423,0.0014 -0.0424,4.17e-4 -0.0423,-6.09e-4 -0.0423,-0.0016 -0.0423,-0.0027 -0.0422,-0.0037 -0.0421,-0.0047 -0.042,-0.0057 -0.0418,-0.0067 -0.0416,-0.0077 -0.0414,-0.0087 -0.0412,-0.0097 -0.041,-0.01074 -0.0407,-0.01173 -0.0404,-0.01271 -0.0401,-0.01368 -0.0397,-0.01465 -0.0394,-0.01561 -0.039,-0.01655 -0.0386,-0.01749 -0.0381,-0.01842 -0.0377,-0.01934 -0.0372,-0.02024 -0.0367,-0.02114 -0.0362,-0.02202 -0.0356,-0.02289 -0.0351,-0.02374 -0.0345,-0.02459 -0.0339,-0.02541 -0.0332,-0.02622 -0.0326,-0.02702 -0.0319,-0.0278 -0.0313,-0.02857 -0.0306,-0.02932 -0.0299,-0.03005 -0.0291,-0.03076 -0.0284,-0.03146 -0.0276,-0.03213 -0.0268,-0.03279 -0.026,-0.03343 -0.0252,-0.03405 -0.0243,-0.03465 -0.0235,-0.03523 -0.0226,-0.03579 -0.0218,-0.03633 -0.0209,-0.03684 -0.02,-0.03734 -0.0191,-0.03781 -0.0182,-0.03826 -0.0172,-0.03869 -0.0163,-0.03909 -0.0153,-0.03948 -0.0144,-0.03983 -0.0134,-0.04017 -0.0124,-0.04048 -0.0114,-0.04077 -0.0105,-0.04104 -0.009,-0.04128 -0.008,-0.0415 -0.007,-0.04169 -0.006,-0.04186 -0.005,-0.042 -0.004,-0.04212 -0.003,-0.04221 -0.002,-0.04228 -0.001,-0.04233 -3.2e-4,-0.04235 7e-4,-0.04234 0.002,-0.04232 0.003,-0.04226 0.004,-0.04218 0.005,-0.04208 0.006,-0.04195 0.007,-0.0418 0.008,-0.04162 0.009,-0.04142 0.01,-0.04119 0.0108,-0.04094 0.0118,-0.04067 0.0128,-0.04037 0.0138,-0.04005 0.0147,-0.0397 0.0157,-0.03934 0.0166,-0.03894 0.0176,-0.03853 0.0185,-0.03809 0.0194,-0.03763 0.0203,-0.03715 0.0212,-0.03665 0.0221,-0.03613 0.023,-0.03558 0.0238,-0.03502 0.0247,-0.03443 0.0255,-0.03382 0.0263,-0.03319 0.0271,-0.03255 0.0279,-0.03188 0.0286,-0.0312 0.0294,-0.0305 0.0301,-0.02978 0.0308,-0.02904 0.0315,-0.02828 0.0322,-0.02751 0.0329,-0.02673 0.0335,-0.02592 0.0341,-0.0251 0.0347,-0.02427 0.0353,-0.02343 0.0358,-0.02257 0.0364,-0.02169 0.0369,-0.02081 0.0374,-0.01991 0.0379,-0.019 0.0383,-0.01807 0.0387,-0.01714 0.0391,-0.0162 0.0395,-0.01525 0.0399,-0.01429 0.0402,-0.01332 0.0405,-0.01234 0.0408,-0.01136 0.0411,-0.01037 0.0413,-0.0094 0.0415,-0.0084 0.0417,-0.0074 0.0419,-0.0063 0.042,-0.0053 0.0421,-0.0043 0.0422,-0.0033 0.0423,-0.0023 0.0423,-0.0012 0.0423,-2.26e-4 0.0423,8e-4 0.0423,0.0018 0.0422,0.0028 0.0422,0.0039 0.0421,0.0049 0.0419,0.0059 0.0418,0.0069 0.0416,0.0079 0.0414,0.0089 0.0412,0.0099 0.0409,0.01092 0.0406,0.01191 0.0403,0.01289 0.04,0.01386 0.0397,0.01483 0.0393,0.01578 0.0389,0.01673 0.0385,0.01767 0.038,0.01859 0.0376,0.01951 0.0371,0.02041 0.0366,0.0213 0.0361,0.02218 0.0355,0.02305 0.035,0.0239 0.0344,0.02474 0.0338,0.02557 0.0331,0.02638 0.0325,0.02717 0.0318,0.02795 0.0311,0.02871 0.0304,0.02945 0.0297,0.03018 0.029,0.03089 0.0282,0.03159 0.0274,0.03226 0.0267,0.03291 0.0258,0.03355 0.025,0.03416 0.0242,0.03476 0.0233,0.03533 0.0225,0.03589 0.0216,0.03642 0.0207,0.03693 0.0198,0.03742 0.0189,0.03789 0.018,0.03834 0.017,0.03876 0.0161,0.03917 0.0152,0.03954 0.0142,0.0399 0.0132,0.04023 0.0122,0.04054 0.0113,0.04082 0.0103,0.04108 0.009,0.04132 0.008,0.04153 0.007,0.04172 0.006,0.04189 0.005,0.04202 0.004,0.04214 0.003,0.04223 0.002,0.04229 0.001,0.04233 2e-4,0.02653 z"
|
||||
style="fill:none;stroke:#ffffff;stroke-width:0.25;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
|
||||
transform="matrix(3.7779048,0,0,-3.7799327,0,1122.64)" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 70 KiB |
@@ -1,2 +0,0 @@
|
||||
# Normalize EOL for all files that Git considers text files.
|
||||
* text=auto eol=lf
|
||||
@@ -1,3 +0,0 @@
|
||||
# Godot 4+ specific ignores
|
||||
.godot/
|
||||
/android/
|
||||
@@ -1 +0,0 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128"><rect width="124" height="124" x="2" y="2" fill="#363d52" stroke="#212532" stroke-width="4" rx="14"/><g fill="#fff" transform="translate(12.322 12.322)scale(.101)"><path d="M105 673v33q407 354 814 0v-33z"/><path fill="#478cbf" d="m105 673 152 14q12 1 15 14l4 67 132 10 8-61q2-11 15-15h162q13 4 15 15l8 61 132-10 4-67q3-13 15-14l152-14V427q30-39 56-81-35-59-83-108-43 20-82 47-40-37-88-64 7-51 8-102-59-28-123-42-26 43-46 89-49-7-98 0-20-46-46-89-64 14-123 42 1 51 8 102-48 27-88 64-39-27-82-47-48 49-83 108 26 42 56 81zm0 33v39c0 276 813 276 814 0v-39l-134 12-5 69q-2 10-14 13l-162 11q-12 0-16-11l-10-65H446l-10 65q-4 11-16 11l-162-11q-12-3-14-13l-5-69z"/><path d="M483 600c0 34 58 34 58 0v-86c0-34-58-34-58 0z"/><circle cx="725" cy="526" r="90"/><circle cx="299" cy="526" r="90"/></g><g fill="#414042" transform="translate(12.322 12.322)scale(.101)"><circle cx="307" cy="532" r="60"/><circle cx="717" cy="532" r="60"/></g></svg>
|
||||
|
Before Width: | Height: | Size: 994 B |
@@ -1,37 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dmcjlguuq8xqt"
|
||||
path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://icon.svg"
|
||||
dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
process/fix_alpha_border=true
|
||||
process/premult_alpha=false
|
||||
process/normal_map_invert_y=false
|
||||
process/hdr_as_srgb=false
|
||||
process/hdr_clamp_exposure=false
|
||||
process/size_limit=0
|
||||
detect_3d/compress_to=1
|
||||
svg/scale=1.0
|
||||
editor/scale_with_editor_scale=false
|
||||
editor/convert_colors_with_editor_theme=false
|
||||
@@ -1,9 +0,0 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://beuvt3vhjibjt"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dmcjlguuq8xqt" path="res://icon.svg" id="1_lodlx"]
|
||||
|
||||
[node name="Main" type="Node"]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="."]
|
||||
texture = ExtResource("1_lodlx")
|
||||
centered = false
|
||||
@@ -1,14 +0,0 @@
|
||||
[configuration]
|
||||
|
||||
entry_symbol = "extension_library_init"
|
||||
compatibility_minimum = 4.3
|
||||
reloadable = true
|
||||
|
||||
[libraries]
|
||||
|
||||
windows.debug.x86_64 = "res://bin/naval-swarm.windows.64.debug.dll"
|
||||
windows.release.x86_64 = "res://bin/naval-swarm.windows.64.release.dll"
|
||||
linux.debug.x86_64 = "res://bin/libnaval-swarm.linux.64.debug.so"
|
||||
linux.release.x86_64 = "res://bin/libnaval-swarm.linux.64.release.so"
|
||||
macos.debug = "res://bin/libnaval-swarm.darwin.64.debug.dylib"
|
||||
macos.release = "res://bin/libnaval-swarm.darwin.64.release.dylib"
|
||||
@@ -1,16 +0,0 @@
|
||||
; Engine configuration file.
|
||||
; It's best edited using the editor UI and not directly,
|
||||
; since the parameters that go here are not all obvious.
|
||||
;
|
||||
; Format:
|
||||
; [section] ; section goes between []
|
||||
; param=value ; assign values to parameters
|
||||
|
||||
config_version=5
|
||||
|
||||
[application]
|
||||
|
||||
config/name="Naval Swarm"
|
||||
run/main_scene="res://main.tscn"
|
||||
config/features=PackedStringArray("4.3", "Forward Plus")
|
||||
config/icon="res://icon.svg"
|
||||
+22
@@ -0,0 +1,22 @@
|
||||
|
||||
#ifndef RESET
|
||||
|
||||
#define RESET "\033[0m"
|
||||
#define BLACK "\033[30m" /* Black */
|
||||
#define RED "\033[31m" /* Red */
|
||||
#define GREEN "\033[32m" /* Green */
|
||||
#define YELLOW "\033[33m" /* Yellow */
|
||||
#define BLUE "\033[34m" /* Blue */
|
||||
#define MAGENTA "\033[35m" /* Magenta */
|
||||
#define CYAN "\033[36m" /* Cyan */
|
||||
#define WHITE "\033[37m" /* White */
|
||||
#define BOLDBLACK "\033[1m\033[30m" /* Bold Black */
|
||||
#define BOLDRED "\033[1m\033[31m" /* Bold Red */
|
||||
#define BOLDGREEN "\033[1m\033[32m" /* Bold Green */
|
||||
#define BOLDYELLOW "\033[1m\033[33m" /* Bold Yellow */
|
||||
#define BOLDBLUE "\033[1m\033[34m" /* Bold Blue */
|
||||
#define BOLDMAGENTA "\033[1m\033[35m" /* Bold Magenta */
|
||||
#define BOLDCYAN "\033[1m\033[36m" /* Bold Cyan */
|
||||
#define BOLDWHITE "\033[1m\033[37m" /* Bold White */
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,13 @@
|
||||
#include <SDL3/SDL_stdinc.h>
|
||||
|
||||
#ifndef CONST_NS
|
||||
#define CONST_NS
|
||||
|
||||
constexpr int SCREEN_WIDTH = 1600;
|
||||
constexpr int SCREEN_HEIGHT = 1200;
|
||||
constexpr int WORLD_WIDTH = 20000;
|
||||
constexpr int WORLD_HEIGHT = 200000;
|
||||
constexpr int TARGET_FPS = 60;
|
||||
constexpr Uint64 TARGET_FRAME_TIME_NS = 1'000'000'000 / TARGET_FPS;
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,63 @@
|
||||
#include <errno.h>
|
||||
#include <csignal>
|
||||
#include "color.h"
|
||||
#include <iostream>
|
||||
#include "exitcleanup.hpp"
|
||||
#include "types.hpp"
|
||||
#include "main.hpp"
|
||||
|
||||
void SignalHandler(int code) {
|
||||
switch (code) {
|
||||
case SIGTERM:
|
||||
std::cerr << "\nreceived SIGTERM exiting...\n";
|
||||
break;
|
||||
case SIGINT:
|
||||
std::cerr << "\nreceived SIGINT exiting...\n";
|
||||
break;
|
||||
case SIGQUIT:
|
||||
std::cerr << "\nreceived SIGQUIT exiting...\n";
|
||||
break;
|
||||
case SIGHUP:
|
||||
std::cerr << "\nreceived SIGHUP exiting...\n";
|
||||
break;
|
||||
|
||||
case SIGSEGV:
|
||||
std::cerr << "\nreceived SIGSEGV(segmentaiton fault) exiting...\nIf this "
|
||||
"repeats please report it as a bug\n";
|
||||
break;
|
||||
}
|
||||
try {
|
||||
GeneralCleanUp(code);
|
||||
} catch(...) {
|
||||
std::cerr << RED"[ERROR]" << RESET" general cleanup error\n";
|
||||
exit(errno);
|
||||
}
|
||||
}
|
||||
|
||||
void GeneralCleanUp(int code) {
|
||||
|
||||
for(Entity *entity : loaded_entities) {
|
||||
try {
|
||||
SDL_DestroyTexture(entity->texture);
|
||||
} catch(...) {
|
||||
std::cerr << RED"[ERROR]" << RESET" failed to destroy texture of entity\nentity address:" << YELLOW << entity << RESET"\n";
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
SDL_DestroyWindow(main_sdl_session.window);
|
||||
} catch(...) {
|
||||
std::cerr << RED"[ERROR]" << RESET" failed to destroy window\n";
|
||||
}
|
||||
try{
|
||||
SDL_DestroyRenderer(main_sdl_session.renderer);
|
||||
} catch(...) {
|
||||
std::cerr << RED"[ERROR]" << RESET" failed to destroy renderer\n";
|
||||
}
|
||||
try {
|
||||
SDL_Quit();
|
||||
} catch (...) {
|
||||
std::cerr << RED"[ERROR]" << RESET" failed to quit sdl\n";
|
||||
}
|
||||
exit(code);
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
#ifndef EC_NS
|
||||
#define EC_NS
|
||||
void GeneralCleanUp(int code = 0);
|
||||
#endif
|
||||
@@ -0,0 +1,46 @@
|
||||
#include "init.hpp"
|
||||
#include "color.h"
|
||||
#include "main.hpp"
|
||||
#include <csignal>
|
||||
#include <cstdlib>
|
||||
#include <fstream>
|
||||
#include <iostream>
|
||||
#include <nlohmann/json.hpp>
|
||||
#include <ostream>
|
||||
#include <string>
|
||||
|
||||
using json = nlohmann::json;
|
||||
|
||||
void init_entity(Entity &entity, SDL_Renderer *renderer, std::string type,
|
||||
std::string name) {
|
||||
json entities;
|
||||
try {
|
||||
std::ifstream entitiesF("./assets/entities.json");
|
||||
entities = json::parse(entitiesF);
|
||||
|
||||
} catch (const json::parse_error &e) {
|
||||
std::cerr << "Parse error: " << e.what() << "\n";
|
||||
exit(1);
|
||||
} catch (const std::exception &e) {
|
||||
std::cerr << "Error: " << e.what() << "\n";
|
||||
exit(2);
|
||||
}
|
||||
|
||||
loaded_entities.push_back(&entity);
|
||||
std::clog << entities[type];
|
||||
|
||||
entity.texture = IMG_LoadTexture(
|
||||
renderer, entities[type][name]["texture"].get<std::string>().c_str());
|
||||
|
||||
if (entity.texture == NULL) {
|
||||
std::cerr << "\n" << RED "[ERROR]" << RESET " failed to load texture\n";
|
||||
exit(ENOENT);
|
||||
}
|
||||
|
||||
entity.srcRect = {0, 0, entities[type][name]["width"].get<int>(),
|
||||
entities[type][name]["height"].get<int>()};
|
||||
|
||||
entity.speed = entities[type][name]["speed"].get<float>();
|
||||
|
||||
entity.gotoT = false;
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
#include "types.hpp"
|
||||
|
||||
#ifndef IN_NS
|
||||
#define IN_NS
|
||||
|
||||
void init_entity(Entity &entity, SDL_Renderer *renderer,std::string type, std::string name);
|
||||
|
||||
#endif
|
||||
+241
-17
@@ -1,22 +1,246 @@
|
||||
#include "main.hpp"
|
||||
#include "exitcleanup.hpp"
|
||||
#include "init.hpp"
|
||||
#include "types.hpp"
|
||||
#include <SDL3/SDL.h>
|
||||
#include <SDL3_image/SDL_image.h>
|
||||
#include <cmath>
|
||||
#include <csignal>
|
||||
#include <iostream>
|
||||
#include <vector>
|
||||
#include <ctime>
|
||||
#include <iomanip>
|
||||
|
||||
Main::Main()
|
||||
{
|
||||
time_passed = 0.0;
|
||||
}
|
||||
std::vector<Entity *> loaded_entities;
|
||||
sdl_session main_sdl_session;
|
||||
|
||||
Main::~Main()
|
||||
{
|
||||
// Required destructor implementation
|
||||
}
|
||||
int main() {
|
||||
SDL_Init(SDL_INIT_VIDEO);
|
||||
|
||||
void Main::_bind_methods()
|
||||
{
|
||||
ClassDB::bind_method(D_METHOD("_process", "delta"), &Main::_process);
|
||||
}
|
||||
main_sdl_session.window =
|
||||
SDL_CreateWindow("Naval Swarm", SCREEN_WIDTH, SCREEN_HEIGHT, 0);
|
||||
SDL_Renderer *renderer =
|
||||
SDL_CreateRenderer(main_sdl_session.window, "gpu,vulcan");
|
||||
|
||||
void Main::_process(double delta)
|
||||
{
|
||||
time_passed += delta;
|
||||
set_rotation(time_passed);
|
||||
// Load textures
|
||||
SDL_Texture *bgTexture = IMG_LoadTexture(renderer, "assets/background.png");
|
||||
|
||||
// Initialize player
|
||||
Entity destroyer;
|
||||
|
||||
init_entity(destroyer, renderer, "ship", "destroyer");
|
||||
|
||||
destroyer.position = {WORLD_WIDTH / 2.0f, WORLD_HEIGHT / 2.0f,
|
||||
static_cast<float>(destroyer.srcRect.w),
|
||||
static_cast<float>(destroyer.srcRect.h)};
|
||||
|
||||
// Initialize camera
|
||||
Camera camera;
|
||||
bool running = true;
|
||||
Uint64 lastFrameTime = SDL_GetTicksNS();
|
||||
float deltaTime = 0.0f;
|
||||
|
||||
time_t start_time = std::time(nullptr);
|
||||
|
||||
while (running) {
|
||||
const Uint64 frameStart = SDL_GetTicksNS();
|
||||
|
||||
|
||||
// Event handling
|
||||
SDL_Event event;
|
||||
while (SDL_PollEvent(&event)) {
|
||||
if (event.type == SDL_EVENT_QUIT) {
|
||||
running = false;
|
||||
}
|
||||
if (event.type == SDL_EVENT_MOUSE_WHEEL) {
|
||||
float zoom_factor = (event.wheel.y > 0) ? 0.9f : 1.1f;
|
||||
camera.view.w *= zoom_factor;
|
||||
camera.view.h *= zoom_factor;
|
||||
|
||||
// Zoom towards mouse position
|
||||
SDL_FPoint mouse_world_pos = {
|
||||
camera.view.x + event.wheel.mouse_x,
|
||||
camera.view.y + event.wheel.mouse_y
|
||||
};
|
||||
|
||||
camera.view.x = mouse_world_pos.x - (event.wheel.mouse_x * zoom_factor);
|
||||
camera.view.y = mouse_world_pos.y - (event.wheel.mouse_y * zoom_factor);
|
||||
}
|
||||
if (event.type == SDL_EVENT_MOUSE_BUTTON_DOWN) {
|
||||
// Check specific button (e.g., left mouse button)
|
||||
if (event.button.button == SDL_BUTTON_LEFT) {
|
||||
std::clog << "Left mouse clicked at ("
|
||||
<< std::fixed << std::setprecision(1) << event.button.x << ", " << event.button.y << ")\n"
|
||||
<< "Camera position: (" << camera.view.x << ", " << camera.view.y << ")\n"
|
||||
<< "Target position: (" << (camera.view.x + event.button.x) << ", "
|
||||
<< (camera.view.y + event.button.y) << ")\ntime since start: " << (std::time(nullptr) - start_time) << "\n";
|
||||
destroyer.Tposition.x = camera.view.x + event.button.x;
|
||||
destroyer.Tposition.y = camera.view.y + event.button.y;
|
||||
destroyer.gotoT = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Input handling
|
||||
const bool *keystate = SDL_GetKeyboardState(NULL);
|
||||
|
||||
// Toggle camera mode with C key
|
||||
static Uint32 lastToggle = 0;
|
||||
if (keystate[SDL_SCANCODE_C] && (SDL_GetTicks() - lastToggle > 200)) {
|
||||
camera.followPlayer = !camera.followPlayer;
|
||||
lastToggle = SDL_GetTicks();
|
||||
}
|
||||
|
||||
//DEBUG
|
||||
if (keystate[SDL_SCANCODE_B] && (SDL_GetTicks() - lastToggle > 200)) {
|
||||
std::clog << "x: " << destroyer.position.x << " y: " << destroyer.position.y << "\n";
|
||||
}
|
||||
if (keystate[SDL_SCANCODE_O] && (SDL_GetTicks() - lastToggle > 200)) {
|
||||
|
||||
destroyer.position.x = 0;
|
||||
destroyer.position.y = 0;
|
||||
}
|
||||
|
||||
// Player movement
|
||||
int moveX = keystate[SDL_SCANCODE_RIGHT] - keystate[SDL_SCANCODE_LEFT];
|
||||
int moveY = keystate[SDL_SCANCODE_DOWN] - keystate[SDL_SCANCODE_UP];
|
||||
|
||||
// There is propably more eficient way to do this
|
||||
switch (moveX) {
|
||||
case 1:
|
||||
switch (moveY) {
|
||||
case 1:
|
||||
destroyer.angle = 135;
|
||||
break;
|
||||
case -1:
|
||||
destroyer.angle = 45;
|
||||
break;
|
||||
default:
|
||||
destroyer.angle = 90;
|
||||
}
|
||||
break;
|
||||
case -1:
|
||||
switch (moveY) {
|
||||
case 1:
|
||||
destroyer.angle = 225;
|
||||
break;
|
||||
case -1:
|
||||
destroyer.angle = 315;
|
||||
break;
|
||||
default:
|
||||
destroyer.angle = 270;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
switch (moveY) {
|
||||
case 1:
|
||||
destroyer.angle = 180;
|
||||
break;
|
||||
case -1:
|
||||
destroyer.angle = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
float step = destroyer.speed * deltaTime;
|
||||
destroyer.position.x += (float)moveX * step;
|
||||
destroyer.position.y += (float)moveY * step;
|
||||
|
||||
if (destroyer.gotoT) {
|
||||
float dx = destroyer.Tposition.x - destroyer.Central_position().x;
|
||||
float dy = destroyer.Tposition.y - destroyer.Central_position().y;
|
||||
|
||||
if(dx != 0 && dy != 0) {
|
||||
destroyer.angle = std::atan2(dy, dx) * 180 / M_PI + 90;
|
||||
}
|
||||
|
||||
float distance = std::sqrt(dx * dx + dy * dy);
|
||||
if (distance > 0) {
|
||||
dx /= distance;
|
||||
dy /= distance;
|
||||
|
||||
if (distance <= step) {
|
||||
destroyer.Central_position(destroyer.Tposition.x,
|
||||
destroyer.Tposition.y);
|
||||
|
||||
} else {
|
||||
destroyer.position.x += dx * step;
|
||||
destroyer.position.y += dy * step;
|
||||
}
|
||||
|
||||
} else {
|
||||
destroyer.gotoT = false;
|
||||
}
|
||||
}
|
||||
|
||||
// Camera handling
|
||||
camera.view.w = SCREEN_WIDTH / camera.zoom;
|
||||
camera.view.h = SCREEN_HEIGHT / camera.zoom;
|
||||
|
||||
if (camera.followPlayer) {
|
||||
float targetX =
|
||||
destroyer.position.x + destroyer.position.w / 2 - camera.view.w / 2;
|
||||
float targetY =
|
||||
destroyer.position.y + destroyer.position.h / 2 - camera.view.h / 2;
|
||||
camera.view.x += (targetX - camera.view.x) * camera.smoothness;
|
||||
camera.view.y += (targetY - camera.view.y) * camera.smoothness;
|
||||
} else {
|
||||
float camMoveX = keystate[SDL_SCANCODE_D] - keystate[SDL_SCANCODE_A];
|
||||
float camMoveY = keystate[SDL_SCANCODE_S] - keystate[SDL_SCANCODE_W];
|
||||
camera.view.x += camMoveX * camera.speed * deltaTime;
|
||||
camera.view.y += camMoveY * camera.speed * deltaTime;
|
||||
}
|
||||
|
||||
// World bounds
|
||||
destroyer.position.x = SDL_clamp(destroyer.position.x, 0.0f,
|
||||
WORLD_WIDTH - destroyer.position.w);
|
||||
destroyer.position.y = SDL_clamp(destroyer.position.y, 0.0f,
|
||||
WORLD_HEIGHT - destroyer.position.h);
|
||||
|
||||
camera.view.w = SDL_clamp(camera.view.w, SCREEN_WIDTH * camera.zoom, SCREEN_WIDTH * 4.0f);
|
||||
camera.view.h = SDL_clamp(camera.view.h,SCREEN_HEIGHT * camera.zoom,SCREEN_HEIGHT * 4.0f);
|
||||
camera.view.x = SDL_clamp(camera.view.x, 0.0f, WORLD_WIDTH - camera.view.w);
|
||||
camera.view.y = SDL_clamp(camera.view.y, 0.0f, WORLD_HEIGHT - camera.view.h);
|
||||
|
||||
// ANIMATION HERE
|
||||
|
||||
// Rendering
|
||||
SDL_SetRenderDrawColor(renderer, 30, 30, 45, 255);
|
||||
SDL_RenderClear(renderer);
|
||||
|
||||
// Draw background
|
||||
if (bgTexture) {
|
||||
SDL_FRect bgDest = {-camera.view.x, -camera.view.y, WORLD_WIDTH,
|
||||
WORLD_HEIGHT};
|
||||
SDL_RenderTexture(renderer, bgTexture, NULL, &bgDest);
|
||||
}
|
||||
|
||||
// Draw player (simplified without animation)
|
||||
SDL_FRect srcFRect;
|
||||
SDL_RectToFRect(&destroyer.srcRect, &srcFRect);
|
||||
SDL_FRect destRect = {destroyer.position.x - camera.view.x,
|
||||
destroyer.position.y - camera.view.y,
|
||||
destroyer.position.w, destroyer.position.h};
|
||||
SDL_RenderTextureRotated(renderer, destroyer.texture, &srcFRect, &destRect,
|
||||
destroyer.angle, nullptr, SDL_FLIP_NONE);
|
||||
|
||||
SDL_RenderPresent(renderer);
|
||||
|
||||
// Frame timing (unchanged)
|
||||
const Uint64 frameTime = SDL_GetTicksNS() - frameStart;
|
||||
if (frameTime < TARGET_FRAME_TIME_NS) {
|
||||
const Uint64 sleepTime = TARGET_FRAME_TIME_NS - frameTime;
|
||||
SDL_DelayNS(sleepTime - 2'000'000);
|
||||
while (SDL_GetTicksNS() - frameStart < TARGET_FRAME_TIME_NS) {
|
||||
}
|
||||
}
|
||||
|
||||
deltaTime = (SDL_GetTicksNS() - lastFrameTime) / 1e9f;
|
||||
lastFrameTime = SDL_GetTicksNS();
|
||||
}
|
||||
|
||||
// Cleanup
|
||||
SDL_DestroyTexture(bgTexture);
|
||||
GeneralCleanUp();
|
||||
SDL_Quit();
|
||||
return 0;
|
||||
}
|
||||
|
||||
+7
-17
@@ -1,20 +1,10 @@
|
||||
#include <godot_cpp/classes/sprite2d.hpp>
|
||||
#include <vector>
|
||||
#include "types.hpp"
|
||||
|
||||
using namespace godot;
|
||||
#ifndef MAIN_NS
|
||||
#define MAIN_NS
|
||||
|
||||
class Main : public Sprite2D
|
||||
{
|
||||
GDCLASS(Main, Sprite2D) // Must be in public section
|
||||
extern std::vector<Entity*> loaded_entities;
|
||||
extern sdl_session main_sdl_session;
|
||||
|
||||
private:
|
||||
double time_passed;
|
||||
|
||||
protected:
|
||||
static void _bind_methods();
|
||||
|
||||
public:
|
||||
Main();
|
||||
virtual ~Main() override; // Required for proper destruction
|
||||
|
||||
void _process(double delta) override;
|
||||
};
|
||||
#endif
|
||||
+109
@@ -0,0 +1,109 @@
|
||||
#include "const.hpp"
|
||||
#include <SDL3/SDL.h>
|
||||
#include <SDL3_image/SDL_image.h>
|
||||
#include <iostream>
|
||||
#include <optional>
|
||||
#include <cmath>
|
||||
|
||||
#ifndef TYPES_NS
|
||||
#define TYPES_NS
|
||||
|
||||
struct Angle {
|
||||
private:
|
||||
float value{0};
|
||||
|
||||
void normalize() {
|
||||
value = std::fmod(value, 360);
|
||||
if (value < 0)
|
||||
value += 360; // Handle negative values
|
||||
}
|
||||
|
||||
public:
|
||||
// Constructor
|
||||
Angle(int val = 0) : value(val) { normalize(); }
|
||||
|
||||
// Assignment operator
|
||||
Angle &operator=(int val) {
|
||||
value = val;
|
||||
normalize();
|
||||
return *this;
|
||||
}
|
||||
|
||||
// Compound assignment
|
||||
Angle &operator+=(int rhs) {
|
||||
value += rhs;
|
||||
normalize();
|
||||
return *this;
|
||||
}
|
||||
|
||||
Angle &operator-=(int rhs) {
|
||||
value -= rhs;
|
||||
normalize();
|
||||
return *this;
|
||||
}
|
||||
|
||||
// Type conversion
|
||||
operator int() const { return value; }
|
||||
|
||||
// Stream output
|
||||
friend std::ostream &operator<<(std::ostream &os, const Angle &a) {
|
||||
return os << a.value;
|
||||
}
|
||||
};
|
||||
|
||||
struct basic_cords {
|
||||
float x;
|
||||
float y;
|
||||
};
|
||||
|
||||
struct Entity {
|
||||
SDL_FRect position;
|
||||
SDL_FRect Tposition;
|
||||
bool gotoT = false;
|
||||
SDL_Texture *texture;
|
||||
SDL_Rect srcRect;
|
||||
float speed;
|
||||
Angle angle = 0;
|
||||
|
||||
basic_cords Central_position(std::optional<float> x = std::nullopt,
|
||||
std::optional<float> y = std::nullopt) {
|
||||
if (x != std::nullopt) {
|
||||
position.x = *x - position.w / 2;
|
||||
}
|
||||
if (y != std::nullopt) {
|
||||
position.y = *y - position.h / 2;
|
||||
}
|
||||
|
||||
return {position.x + position.w / 2, position.y + position.h / 2};
|
||||
}
|
||||
};
|
||||
|
||||
struct Camera {
|
||||
SDL_FRect view = {0.0f, 0.0f, SCREEN_WIDTH, SCREEN_HEIGHT};
|
||||
|
||||
basic_cords Center_of_view(std::optional<float> x = std::nullopt,
|
||||
std::optional<float> y = std::nullopt) {
|
||||
if (x != std::nullopt) {
|
||||
view.x = *x - view.w / 2;
|
||||
}
|
||||
if (y != std::nullopt) {
|
||||
view.y = *y - view.h / 2;
|
||||
}
|
||||
|
||||
return {view.x + view.w / 2, view.y + view.h / 2};
|
||||
}
|
||||
|
||||
bool followPlayer = false;
|
||||
float speed = 500.0f;
|
||||
float smoothness = 0.1f;
|
||||
float zoom = 1.0f;
|
||||
float minZoom = 0.5f;
|
||||
float maxZoom = 3.0f;
|
||||
float zoomSpeed = 0.1f;
|
||||
};
|
||||
|
||||
struct sdl_session {
|
||||
SDL_Window *window;
|
||||
SDL_Renderer *renderer;
|
||||
};
|
||||
#endif
|
||||
-10
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json",
|
||||
"documentation": "https://github.com/microsoft/vcpkg/blob/master/docs/users/manifests.md",
|
||||
"name": "naval-swarm",
|
||||
"version": "0.1.0",
|
||||
"dependencies": [
|
||||
"fmt",
|
||||
"spdlog"
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user