circuitscript 0.0.14 → 0.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitlab-ci.yml +22 -19
- package/__tests__/helpers.ts +12 -0
- package/__tests__/renderData/script1.cst.svg +1 -1
- package/__tests__/renderData/script2.cst.svg +1 -1
- package/__tests__/renderData/script3.cst.svg +1 -1
- package/__tests__/renderData/script4.cst +27 -5
- package/__tests__/renderData/script4.cst.svg +1 -1
- package/__tests__/renderData/script5.cst.svg +1 -1
- package/__tests__/testParse.ts +37 -2
- package/build/src/draw_symbols.js +207 -63
- package/build/src/geometry.js +35 -4
- package/build/src/helpers.js +7 -3
- package/build/src/layout.js +30 -17
- package/build/src/regenerate-tests.js +1 -1
- package/build/src/visitor.js +12 -4
- package/examples/example_arduino_uno.cst +390 -120
- package/examples/lib.cst +25 -28
- package/libs/lib.cst +23 -28
- package/package.json +1 -1
- package/src/draw_symbols.ts +270 -64
- package/src/geometry.ts +46 -5
- package/src/helpers.ts +8 -5
- package/src/layout.ts +42 -21
- package/src/regenerate-tests.ts +1 -1
- package/src/visitor.ts +16 -4
package/.gitlab-ci.yml
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
image: node:18
|
|
2
2
|
|
|
3
|
-
variables:
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
3
|
+
# variables:
|
|
4
|
+
# ARTIFACT_DOWNLOAD_ATTEMPTS: 2 # Number of retries for restoring saved artifacts.
|
|
5
|
+
# FORCE_COLOR: '1' # Whether to force colour output in compatible tooling.
|
|
6
|
+
# GET_SOURCES_ATTEMPTS: 2 # Number of retries for git commands.
|
|
7
|
+
# GIT_STRATEGY: fetch # How to pull submodules.
|
|
8
|
+
# GIT_SUBMODULE_STRATEGY: recursive # How to treat nested git submodules.
|
|
9
|
+
# RESTORE_CACHE_ATTEMPTS: 2 # Number of retries for restoring cached files.
|
|
10
10
|
|
|
11
11
|
stages:
|
|
12
12
|
- prepare
|
|
@@ -14,6 +14,11 @@ stages:
|
|
|
14
14
|
- test_build
|
|
15
15
|
- publish
|
|
16
16
|
|
|
17
|
+
.common_rules:
|
|
18
|
+
rules:
|
|
19
|
+
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
20
|
+
# - if: $CI_COMMIT_TAG
|
|
21
|
+
|
|
17
22
|
# Installs all dependencies.
|
|
18
23
|
install:
|
|
19
24
|
stage: prepare
|
|
@@ -27,11 +32,11 @@ install:
|
|
|
27
32
|
when: on_success
|
|
28
33
|
expire_in: 12h
|
|
29
34
|
script:
|
|
35
|
+
- echo $CI_COMMIT_BRANCH
|
|
36
|
+
- echo $CI_COMMIT_TAG
|
|
37
|
+
- echo $CI_PIPELINE_SOURCE
|
|
38
|
+
- echo $CI_COMMIT_REF_NAME
|
|
30
39
|
- npm install --no-progress --no-audit --no-fund --verbose
|
|
31
|
-
# only:
|
|
32
|
-
# - merge_requests
|
|
33
|
-
# - develop
|
|
34
|
-
# - main
|
|
35
40
|
|
|
36
41
|
test_jest:
|
|
37
42
|
stage: test_jest
|
|
@@ -42,6 +47,8 @@ test_jest:
|
|
|
42
47
|
script:
|
|
43
48
|
- npm run build:release || true
|
|
44
49
|
- npm run test
|
|
50
|
+
rules:
|
|
51
|
+
- !reference [.common_rules, rules]
|
|
45
52
|
|
|
46
53
|
test_build:
|
|
47
54
|
stage: test_build
|
|
@@ -54,6 +61,8 @@ test_build:
|
|
|
54
61
|
- ls
|
|
55
62
|
- ls build
|
|
56
63
|
- node build/src/main.js
|
|
64
|
+
rules:
|
|
65
|
+
- !reference [.common_rules, rules]
|
|
57
66
|
|
|
58
67
|
# Publishes the package to npm.
|
|
59
68
|
publish:
|
|
@@ -66,11 +75,5 @@ publish:
|
|
|
66
75
|
- npm run build:release || true
|
|
67
76
|
- npm publish --verbose
|
|
68
77
|
resource_group: 'deployment-$CI_COMMIT_REF_SLUG'
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
# when: never
|
|
72
|
-
# - if: '$CI_COMMIT_REF_NAME != "main" && $CI_COMMIT_REF_NAME != "develop"'
|
|
73
|
-
# when: never
|
|
74
|
-
# - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_COMMIT_REF_NAME == "develop"'
|
|
75
|
-
# when: never
|
|
76
|
-
# - when: on_success
|
|
78
|
+
rules:
|
|
79
|
+
- !reference [.common_rules, rules]
|
package/__tests__/helpers.ts
CHANGED
|
@@ -57,6 +57,7 @@ export async function runScript(script: string): Promise<{
|
|
|
57
57
|
|
|
58
58
|
export function findItem(instances: Map<string, ClassComponent>, typeProp: string,
|
|
59
59
|
refdes: string, value: string): ClassComponent | null {
|
|
60
|
+
// Find matching item by refdes and by value parameter
|
|
60
61
|
|
|
61
62
|
for (const [, instance] of instances) {
|
|
62
63
|
if (instance.typeProp === typeProp && instance.assignedRefDes === refdes) {
|
|
@@ -66,5 +67,16 @@ export function findItem(instances: Map<string, ClassComponent>, typeProp: strin
|
|
|
66
67
|
}
|
|
67
68
|
}
|
|
68
69
|
|
|
70
|
+
return null;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export function findItemByRefDes(instances: Map<string, ClassComponent>, typeProp: string,
|
|
74
|
+
refdes: string): ClassComponent | null {
|
|
75
|
+
for (const [, instance] of instances) {
|
|
76
|
+
if (instance.typeProp === typeProp && instance.assignedRefDes === refdes) {
|
|
77
|
+
return instance;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
69
81
|
return null;
|
|
70
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="410" height="510.5" viewBox="-25 -25.5 410 510.5"><g transform="matrix(1,0,0,1,0,0)"><path d="M -20 -20.5 L -20 480 M 0 -20.5 L 0 480 M 20 -20.5 L 20 480 M 40 -20.5 L 40 480 M 60 -20.5 L 60 480 M 80 -20.5 L 80 480 M 100 -20.5 L 100 480 M 120 -20.5 L 120 480 M 140 -20.5 L 140 480 M 160 -20.5 L 160 480 M 180 -20.5 L 180 480 M 200 -20.5 L 200 480 M 220 -20.5 L 220 480 M 240 -20.5 L 240 480 M 260 -20.5 L 260 480 M 280 -20.5 L 280 480 M 300 -20.5 L 300 480 M 320 -20.5 L 320 480 M 340 -20.5 L 340 480 M 360 -20.5 L 360 480 M 380 -20.5 L 380 480" fill="none" stroke-dasharray="1,19" stroke-width="1" stroke="#aaaaaa"></path></g><g transform="matrix(1,0,0,1,20,30)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,-5)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5V</tspan></text></g></g><g transform="matrix(1,0,0,1,20.000000000000004,120)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">10k</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R1</tspan></text><path d="M -10.000000000000002 -40 L 10.000000000000002 40 M 10.000000000000002 -40 L -10.000000000000002 40" stroke-width="2" stroke="red"></path></g></g><g transform="matrix(1,0,0,1,20.000000000000004,190)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g><g transform="matrix(1,0,0,1,60,120)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">20k</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R2</tspan></text></g></g><g transform="matrix(1,0,0,1,60,190)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g><g transform="matrix(1,0,0,1,100,100)"><g><path d="M -10 -3 L 10 -3" stroke-width="1" stroke="#333333" fill="none"></path><path d="M -10 3 L 10 3" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 -20 L 0 -3 M 0 20 L 0 3" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,12,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">C1</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="hanging" font-weight="regular" transform="matrix(1,0,0,1,12,5)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">100n</tspan></text></g></g><g transform="matrix(1,0,0,1,100,150)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g><g transform="matrix(1,0,0,1,140,60)"><g><path d="M 0 0 L 0 0" stroke-width="2" stroke="#333333"></path></g></g><g transform="matrix(1,0,0,1,210,80)"><g><path d="M -50 -40 L 50 -40 L 50 40 L -50 40 Z" stroke-width="1" stroke="#333333" fill="#fffeaf"></path><path d="M -70 -20 L -50 -20 M -70 0 L -50 0 M -70 20 L -50 20 M 70 -20 L 50 -20 M 70 0 L 50 0 M 70 20 L 50 20" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,-46,-20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,-52,-22)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,-46,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,-52,-2)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,-46,20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,-52,18)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="end" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,46,-20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">6</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,52,-22)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">6</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="end" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,46,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,52,-2)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="end" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,46,20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">4</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,52,18)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">4</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,-50,-44)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">tmp</tspan></text></g></g><g transform="matrix(1,0,0,1,300,130)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g><g transform="matrix(1,0,0,1,340,140)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">10k</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R3</tspan></text><path d="M -10.000000000000002 -40 L 10.000000000000002 40 M 10.000000000000002 -40 L -10.000000000000002 40" stroke-width="2" stroke="red"></path></g></g><g transform="matrix(1,0,0,1,340,210)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g><g transform="matrix(1,0,0,1,180,290)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,-5)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3V</tspan></text></g></g><g transform="matrix(1,0,0,1,180,360)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">20k</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R4</tspan></text></g></g><g transform="matrix(1,0,0,1,180,430)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g><g><line x1="20" y1="40" x2="20" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="20" y1="60" x2="20" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="20" y1="60" x2="60" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="60" y1="60" x2="60" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="60" y1="60" x2="100" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="100" y1="60" x2="100" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="100" y1="60" x2="140" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><circle r="2.5" cx="2.5" cy="2.5" transform="matrix(1,0,0,1,17.5,57.5)" fill="#008400" stroke="none"></circle><circle r="2.5" cx="2.5" cy="2.5" transform="matrix(1,0,0,1,57.5,57.5)" fill="#008400" stroke="none"></circle><circle r="2.5" cx="2.5" cy="2.5" transform="matrix(1,0,0,1,97.5,57.5)" fill="#008400" stroke="none"></circle><line x1="20.000000000000004" y1="160" x2="20.000000000000004" y2="180" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="60" y1="160" x2="60" y2="180" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="100" y1="120" x2="100" y2="140" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="280" y1="100" x2="300" y2="100" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="300" y1="100" x2="300" y2="120" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="340" y1="180" x2="340" y2="200" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="180" y1="400" x2="180" y2="420" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="280" y1="80" x2="340" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="340" y1="80" x2="340" y2="100" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="180" y1="300" x2="180" y2="320" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line></g><g></g></svg>
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="410" height="510.5" viewBox="-25 -25.5 410 510.5"><g transform="matrix(1,0,0,1,0,0)"><path d="M -20 -20.5 L -20 480 M 0 -20.5 L 0 480 M 20 -20.5 L 20 480 M 40 -20.5 L 40 480 M 60 -20.5 L 60 480 M 80 -20.5 L 80 480 M 100 -20.5 L 100 480 M 120 -20.5 L 120 480 M 140 -20.5 L 140 480 M 160 -20.5 L 160 480 M 180 -20.5 L 180 480 M 200 -20.5 L 200 480 M 220 -20.5 L 220 480 M 240 -20.5 L 240 480 M 260 -20.5 L 260 480 M 280 -20.5 L 280 480 M 300 -20.5 L 300 480 M 320 -20.5 L 320 480 M 340 -20.5 L 340 480 M 360 -20.5 L 360 480 M 380 -20.5 L 380 480" fill="none" stroke-dasharray="1,19" stroke-width="1" stroke="#aaaaaa"></path></g><g transform="matrix(1,0,0,1,20,30)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,-5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5V</tspan></text></g></g></g><g transform="matrix(1,0,0,1,20.000000000000004,120)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,1.9999999999999987,-22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,2.0000000000000013,22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">10k</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R1</tspan></text></g><path d="M -10.000000000000002 -40 L 10.000000000000002 40 M 10.000000000000002 -40 L -10.000000000000002 40" stroke-width="2" stroke="red"></path></g></g><g transform="matrix(1,0,0,1,20.000000000000004,190)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g transform="matrix(1,0,0,1,60,120)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,1.9999999999999987,-22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,2.0000000000000013,22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">20k</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R2</tspan></text></g></g></g><g transform="matrix(1,0,0,1,60,190)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g transform="matrix(1,0,0,1,100,100)"><g><path d="M -10 -3 L 10 -3" stroke-width="1" stroke="#333333" fill="none"></path><path d="M -10 3 L 10 3" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 -20 L 0 -3 M 0 20 L 0 3" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,2,-5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(1,0,0,1,2,5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="hanging" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(1,0,0,1,12,0)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">C1</tspan></text></g><g transform="matrix(1,0,0,1,12,5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="hanging" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">100n</tspan></text></g></g></g><g transform="matrix(1,0,0,1,100,150)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g transform="matrix(1,0,0,1,140,60)"><g><path d="M 0 0 L 0 0" stroke-width="2" stroke="#333333"></path></g></g><g transform="matrix(1,0,0,1,210,80)"><g><path d="M -50 -40 L 50 -40 L 50 40 L -50 40 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -70 -20 L -50 -20 M -70 0 L -50 0 M -70 20 L -50 20 M 70 -20 L 50 -20 M 70 0 L 50 0 M 70 20 L 50 20" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,-46,-20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(1,0,0,1,-52,-22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(1,0,0,1,-46,0)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(1,0,0,1,-52,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(1,0,0,1,-46,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3</tspan></text></g><g transform="matrix(1,0,0,1,-52,18)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3</tspan></text></g><g transform="matrix(1,0,0,1,46,-20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="end" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">6</tspan></text></g><g transform="matrix(1,0,0,1,52,-22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">6</tspan></text></g><g transform="matrix(1,0,0,1,46,0)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="end" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5</tspan></text></g><g transform="matrix(1,0,0,1,52,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5</tspan></text></g><g transform="matrix(1,0,0,1,46,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="end" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">4</tspan></text></g><g transform="matrix(1,0,0,1,52,18)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">4</tspan></text></g><g transform="matrix(1,0,0,1,-50,-44)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">J1</tspan></text></g></g></g><g transform="matrix(1,0,0,1,300,130)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g transform="matrix(1,0,0,1,340,140)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,1.9999999999999987,-22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,2.0000000000000013,22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">10k</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R3</tspan></text></g><path d="M -10.000000000000002 -40 L 10.000000000000002 40 M 10.000000000000002 -40 L -10.000000000000002 40" stroke-width="2" stroke="red"></path></g></g><g transform="matrix(1,0,0,1,340,210)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g transform="matrix(1,0,0,1,180,290)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,-5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3V</tspan></text></g></g></g><g transform="matrix(1,0,0,1,180,360)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,1.9999999999999987,-22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,2.0000000000000013,22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">20k</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R4</tspan></text></g></g></g><g transform="matrix(1,0,0,1,180,430)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g><line x1="20" y1="40" x2="20" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="20" y1="60" x2="20" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="20" y1="60" x2="60" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="60" y1="60" x2="60" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="60" y1="60" x2="100" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="100" y1="60" x2="100" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="100" y1="60" x2="140" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><circle r="2.5" cx="2.5" cy="2.5" transform="matrix(1,0,0,1,17.5,57.5)" fill="#008400" stroke="none"></circle><circle r="2.5" cx="2.5" cy="2.5" transform="matrix(1,0,0,1,57.5,57.5)" fill="#008400" stroke="none"></circle><circle r="2.5" cx="2.5" cy="2.5" transform="matrix(1,0,0,1,97.5,57.5)" fill="#008400" stroke="none"></circle><line x1="20.000000000000004" y1="160" x2="20.000000000000004" y2="180" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="60" y1="160" x2="60" y2="180" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="100" y1="120" x2="100" y2="140" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="280" y1="100" x2="300" y2="100" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="300" y1="100" x2="300" y2="120" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="340" y1="180" x2="340" y2="200" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="180" y1="400" x2="180" y2="420" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="280" y1="80" x2="340" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="340" y1="80" x2="340" y2="100" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="180" y1="300" x2="180" y2="320" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line></g><g></g></svg>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="290" height="150.5" viewBox="-25 -25.5 290 150.5"><g transform="matrix(1,0,0,1,0,0)"><path d="M -20 -20.5 L -20 120 M 0 -20.5 L 0 120 M 20 -20.5 L 20 120 M 40 -20.5 L 40 120 M 60 -20.5 L 60 120 M 80 -20.5 L 80 120 M 100 -20.5 L 100 120 M 120 -20.5 L 120 120 M 140 -20.5 L 140 120 M 160 -20.5 L 160 120 M 180 -20.5 L 180 120 M 200 -20.5 L 200 120 M 220 -20.5 L 220 120 M 240 -20.5 L 240 120 M 260 -20.5 L 260 120" fill="none" stroke-dasharray="1,19" stroke-width="1" stroke="#aaaaaa"></path></g><g transform="matrix(1,0,0,1,30,20)"><g><path d="M -9.18485099360515e-16 15 L 9.18485099360515e-16 -15" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 10 6.123233995736766e-16 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="290" height="150.5" viewBox="-25 -25.5 290 150.5"><g transform="matrix(1,0,0,1,0,0)"><path d="M -20 -20.5 L -20 120 M 0 -20.5 L 0 120 M 20 -20.5 L 20 120 M 40 -20.5 L 40 120 M 60 -20.5 L 60 120 M 80 -20.5 L 80 120 M 100 -20.5 L 100 120 M 120 -20.5 L 120 120 M 140 -20.5 L 140 120 M 160 -20.5 L 160 120 M 180 -20.5 L 180 120 M 200 -20.5 L 200 120 M 220 -20.5 L 220 120 M 240 -20.5 L 240 120 M 260 -20.5 L 260 120" fill="none" stroke-dasharray="1,19" stroke-width="1" stroke="#aaaaaa"></path></g><g transform="matrix(1,0,0,1,30,20)"><g><path d="M -9.18485099360515e-16 15 L 9.18485099360515e-16 -15" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 10 6.123233995736766e-16 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,-1,1,6.123233995736766e-17,-5,-3.061616997868383e-16)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5V</tspan></text></g></g></g><g transform="matrix(1,0,0,1,120,20)"><g><path d="M -20 -10 L 20 -10 L 20 10 L -20 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -40 0 L -20 0 M 40 0 L 20 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,-22,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(1,0,0,1,22,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(1,0,0,1,0,1)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">10k</tspan></text></g><g transform="matrix(1,0,0,1,-20,-15)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R1</tspan></text></g></g></g><g transform="matrix(1,0,0,1,210,20)"><g><path d="M -6.123233995736766e-16 10 L 6.123233995736766e-16 -10 L 10 6.123233995736766e-16 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -10 -6.123233995736766e-16 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,-1,1,6.123233995736766e-17,20,1.2246467991473533e-15)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g transform="matrix(1,0,0,1,30,80)"><g><path d="M -9.18485099360515e-16 15 L 9.18485099360515e-16 -15" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 10 6.123233995736766e-16 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,-1,1,6.123233995736766e-17,-5,-3.061616997868383e-16)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5V</tspan></text></g></g></g><g transform="matrix(1,0,0,1,120,80)"><g><path d="M -20 -10 L 20 -10 L 20 10 L -20 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -40 0 L -20 0 M 40 0 L 20 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,-22,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(1,0,0,1,22,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(1,0,0,1,0,1)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">10k</tspan></text></g><g transform="matrix(1,0,0,1,-20,-15)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R2</tspan></text></g></g></g><g transform="matrix(1,0,0,1,210,80)"><g><path d="M -6.123233995736766e-16 10 L 6.123233995736766e-16 -10 L 10 6.123233995736766e-16 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -10 -6.123233995736766e-16 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,-1,1,6.123233995736766e-17,20,1.2246467991473533e-15)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g><line x1="40" y1="20" x2="80" y2="20" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="40" y1="80" x2="80" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="160" y1="20" x2="200" y2="20" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="160" y1="80" x2="200" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line></g><g></g></svg>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="410" height="790.5" viewBox="-25 -25.5 410 790.5"><g transform="matrix(1,0,0,1,0,0)"><path d="M -20 -20.5 L -20 760 M 0 -20.5 L 0 760 M 20 -20.5 L 20 760 M 40 -20.5 L 40 760 M 60 -20.5 L 60 760 M 80 -20.5 L 80 760 M 100 -20.5 L 100 760 M 120 -20.5 L 120 760 M 140 -20.5 L 140 760 M 160 -20.5 L 160 760 M 180 -20.5 L 180 760 M 200 -20.5 L 200 760 M 220 -20.5 L 220 760 M 240 -20.5 L 240 760 M 260 -20.5 L 260 760 M 280 -20.5 L 280 760 M 300 -20.5 L 300 760 M 320 -20.5 L 320 760 M 340 -20.5 L 340 760 M 360 -20.5 L 360 760 M 380 -20.5 L 380 760" fill="none" stroke-dasharray="1,19" stroke-width="1" stroke="#aaaaaa"></path></g><g transform="matrix(1,0,0,1,140,170)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,-5)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3v3</tspan></text></g></g><g transform="matrix(1,0,0,1,140,240)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">20k</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R1</tspan></text></g></g><g transform="matrix(1,0,0,1,140,360)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">20k</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R2</tspan></text></g></g><g transform="matrix(1,0,0,1,140,430)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g><g transform="matrix(1,0,0,1,210,300)"><g><path d="M 2.7554552980815444e-15 -15 L -2.7554552980815444e-15 15" stroke-width="1" stroke="#333333" fill="none"></path><path d="M -10 -1.8369701987210296e-15 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(-1.8369701987210297e-16,1,-1,-1.8369701987210297e-16,5,9.184850993605148e-16)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">out</tspan></text></g></g><g transform="matrix(1,0,0,1,160,530)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,-5)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3v3</tspan></text></g></g><g transform="matrix(1,0,0,1,160,600)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">10k</tspan></text><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R3</tspan></text></g></g><g transform="matrix(1,0,0,1,200,630)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,-5)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">out</tspan></text></g></g><g><line x1="140" y1="180" x2="140" y2="200" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="160" y1="540" x2="160" y2="560" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="140" y1="280" x2="140" y2="300" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="140" y1="300" x2="140" y2="320" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="140" y1="300" x2="200" y2="300" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="160" y1="640" x2="160" y2="660" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="160" y1="660" x2="200" y2="660" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="200" y1="660" x2="200" y2="640" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><circle r="2.5" cx="2.5" cy="2.5" transform="matrix(1,0,0,1,137.5,297.5)" fill="#008400" stroke="none"></circle><line x1="140" y1="400" x2="140" y2="420" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line></g><g><rect width="360" height="740" fill="none" stroke-width="1" stroke="#111111" transform="matrix(1,0,0,1,0,0)"></rect><rect width="320" height="700" fill="none" stroke-width="1" stroke="#111111" transform="matrix(1,0,0,1,20,20)"></rect><rect width="280" height="660" fill="none" stroke-width="1" stroke="#111111" transform="matrix(1,0,0,1,40,40)"></rect><rect width="240" height="420" fill="none" stroke-width="1" stroke="#111111" transform="matrix(1,0,0,1,60,60)"></rect></g><g transform="matrix(1,0,0,1,180,100)"><g><path d="M0 0 " stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="16" text-anchor="middle" dominant-baseline="text-top" font-weight="bold" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">Voltage divider circuit</tspan></text></g></g></svg>
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="410" height="790.5" viewBox="-25 -25.5 410 790.5"><g transform="matrix(1,0,0,1,0,0)"><path d="M -20 -20.5 L -20 760 M 0 -20.5 L 0 760 M 20 -20.5 L 20 760 M 40 -20.5 L 40 760 M 60 -20.5 L 60 760 M 80 -20.5 L 80 760 M 100 -20.5 L 100 760 M 120 -20.5 L 120 760 M 140 -20.5 L 140 760 M 160 -20.5 L 160 760 M 180 -20.5 L 180 760 M 200 -20.5 L 200 760 M 220 -20.5 L 220 760 M 240 -20.5 L 240 760 M 260 -20.5 L 260 760 M 280 -20.5 L 280 760 M 300 -20.5 L 300 760 M 320 -20.5 L 320 760 M 340 -20.5 L 340 760 M 360 -20.5 L 360 760 M 380 -20.5 L 380 760" fill="none" stroke-dasharray="1,19" stroke-width="1" stroke="#aaaaaa"></path></g><g transform="matrix(1,0,0,1,140,170)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,-5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3v3</tspan></text></g></g></g><g transform="matrix(1,0,0,1,140,240)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,1.9999999999999987,-22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,2.0000000000000013,22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">20k</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R1</tspan></text></g></g></g><g transform="matrix(1,0,0,1,140,360)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,1.9999999999999987,-22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,2.0000000000000013,22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">20k</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R2</tspan></text></g></g></g><g transform="matrix(1,0,0,1,140,430)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g transform="matrix(1,0,0,1,210,300)"><g><path d="M 2.7554552980815444e-15 -15 L -2.7554552980815444e-15 15" stroke-width="1" stroke="#333333" fill="none"></path><path d="M -10 -1.8369701987210296e-15 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(-1.8369701987210297e-16,1,-1,-1.8369701987210297e-16,5,9.184850993605148e-16)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">out</tspan></text></g></g></g><g transform="matrix(1,0,0,1,160,530)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,-5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3v3</tspan></text></g></g></g><g transform="matrix(1,0,0,1,160,600)"><g><path d="M 9.999999999999998 -20 L 10.000000000000002 20 L -9.999999999999998 20 L -10.000000000000002 -20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -2.4492935982947065e-15 -40 L -1.2246467991473533e-15 -20 M 2.4492935982947065e-15 40 L 1.2246467991473533e-15 20" stroke-width="2" stroke="#333333"></path><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,1.9999999999999987,-22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,2.0000000000000013,22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,-1,6.123233995736766e-17)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">10k</tspan></text></g><g transform="matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,14.999999999999998,-20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R3</tspan></text></g></g></g><g transform="matrix(1,0,0,1,200,630)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,-5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">out</tspan></text></g></g></g><g><line x1="140" y1="180" x2="140" y2="200" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="160" y1="540" x2="160" y2="560" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="140" y1="280" x2="140" y2="300" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="140" y1="300" x2="140" y2="320" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="140" y1="300" x2="200" y2="300" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="160" y1="640" x2="160" y2="660" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="160" y1="660" x2="200" y2="660" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="200" y1="660" x2="200" y2="640" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><circle r="2.5" cx="2.5" cy="2.5" transform="matrix(1,0,0,1,137.5,297.5)" fill="#008400" stroke="none"></circle><line x1="140" y1="400" x2="140" y2="420" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line></g><g><rect width="360" height="740" fill="none" stroke-width="1" stroke="#111111" transform="matrix(1,0,0,1,0,0)"></rect><rect width="320" height="700" fill="none" stroke-width="1" stroke="#111111" transform="matrix(1,0,0,1,20,20)"></rect><rect width="280" height="660" fill="none" stroke-width="1" stroke="#111111" transform="matrix(1,0,0,1,40,40)"></rect><rect width="240" height="420" fill="none" stroke-width="1" stroke="#111111" transform="matrix(1,0,0,1,60,60)"></rect></g><g transform="matrix(1,0,0,1,180,100)"><g><path d="M0 0 " stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,0)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="16" text-anchor="middle" dominant-baseline="text-top" font-weight="bold" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">Voltage divider circuit</tspan></text></g></g></g></svg>
|
|
@@ -11,8 +11,8 @@ def res_2(value):
|
|
|
11
11
|
hline: 0, -20, 20
|
|
12
12
|
vline: 0, 20, 20
|
|
13
13
|
line: 0, 0, 20, 20
|
|
14
|
-
pin: 1, -width / 2, 0, -width/2
|
|
15
|
-
pin: 2, width/2, 0, width/2
|
|
14
|
+
pin: 1, -width / 2 - 20, 0, -width/2, 0
|
|
15
|
+
pin: 2, width/2 + 20, 0, width/2, 0
|
|
16
16
|
label: ("value", 0, 0, value, fontSize=10, anchor="middle", vanchor="middle")
|
|
17
17
|
label: ("refdes", -width/2, -height/2 -5 , "?", fontSize=10, anchor="left")
|
|
18
18
|
|
|
@@ -21,12 +21,34 @@ def res_2(value):
|
|
|
21
21
|
value: value
|
|
22
22
|
size: "0402"
|
|
23
23
|
footprint: "Resistor_SMD:R_0402_1005Metric"
|
|
24
|
-
|
|
24
|
+
|
|
25
|
+
def componentA():
|
|
26
|
+
width = 40
|
|
27
|
+
height = 40
|
|
28
|
+
|
|
29
|
+
return create component:
|
|
30
|
+
pins: 3
|
|
31
|
+
display: create graphic:
|
|
32
|
+
rect: 0, 0, width, height
|
|
33
|
+
label: "refdes", -width/2, -height/2 -4, "?"
|
|
34
|
+
|
|
35
|
+
hpin: 1, -width/2 - 20, 0, 20
|
|
36
|
+
hpin: 2, width/2 + 20, 0, -20
|
|
37
|
+
vpin: 3, 0, height/2 + 20, -20
|
|
38
|
+
|
|
25
39
|
v5v = supply("5v")
|
|
26
40
|
gnd = dgnd()
|
|
27
41
|
|
|
28
42
|
at v5v
|
|
29
43
|
wire down 20
|
|
30
44
|
add res_2(10k)
|
|
31
|
-
wire
|
|
32
|
-
|
|
45
|
+
wire right 20
|
|
46
|
+
|
|
47
|
+
to a = componentA()
|
|
48
|
+
|
|
49
|
+
at a:
|
|
50
|
+
2:
|
|
51
|
+
wire right 20 down 20
|
|
52
|
+
to gnd
|
|
53
|
+
3:
|
|
54
|
+
wire down 20 to gnd
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="290" height="210.5" viewBox="-25 -25.5 290 210.5"><g transform="matrix(1,0,0,1,0,0)"><path d="M -20 -20.5 L -20 180 M 0 -20.5 L 0 180 M 20 -20.5 L 20 180 M 40 -20.5 L 40 180 M 60 -20.5 L 60 180 M 80 -20.5 L 80 180 M 100 -20.5 L 100 180 M 120 -20.5 L 120 180 M 140 -20.5 L 140 180 M 160 -20.5 L 160 180 M 180 -20.5 L 180 180 M 200 -20.5 L 200 180 M 220 -20.5 L 220 180 M 240 -20.5 L 240 180 M 260 -20.5 L 260 180" fill="none" stroke-dasharray="1,19" stroke-width="1" stroke="#aaaaaa"></path></g><g transform="matrix(1,0,0,1,20,30)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,-5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5v</tspan></text></g></g></g><g transform="matrix(1,0,0,1,60,60)"><g><path d="M -20 -10 L 20 -10 L 20 10 L -20 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -20 L 20 -20" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 20 L 0 40" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 0 L 20 20" stroke-width="1" stroke="#333333" fill="none"></path><path d="M -40 0 L -20 0 M 40 0 L 20 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,-22,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(1,0,0,1,22,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(1,0,0,1,0,0)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="middle" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">10k</tspan></text></g><g transform="matrix(1,0,0,1,-20,-15)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">R1</tspan></text></g></g></g><g transform="matrix(1,0,0,1,160,60)"><g><path d="M -20 -20 L 20 -20 L 20 20 L -20 20 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -40 0 L -20 0 M 40 0 L 20 0 M 0 40 L 0 20" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,-20,-24)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">J1</tspan></text></g><g transform="matrix(1,0,0,1,-22,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(1,0,0,1,22,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(1,0,0,1,2,22)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="hanging" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">3</tspan></text></g></g></g><g transform="matrix(1,0,0,1,220,90)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g transform="matrix(1,0,0,1,160,130)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g><line x1="20" y1="40" x2="20" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="100" y1="60" x2="120" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="200" y1="60" x2="220" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="220" y1="60" x2="220" y2="80" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="160" y1="100" x2="160" y2="120" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line></g><g></g></svg>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="190" height="310.5" viewBox="-25 -25.5 190 310.5"><g transform="matrix(1,0,0,1,0,0)"><path d="M -20 -20.5 L -20 280 M 0 -20.5 L 0 280 M 20 -20.5 L 20 280 M 40 -20.5 L 40 280 M 60 -20.5 L 60 280 M 80 -20.5 L 80 280 M 100 -20.5 L 100 280 M 120 -20.5 L 120 280 M 140 -20.5 L 140 280 M 160 -20.5 L 160 280" fill="none" stroke-dasharray="1,19" stroke-width="1" stroke="#aaaaaa"></path></g><g transform="matrix(1,0,0,1,20,90)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev/svgjs" width="190" height="310.5" viewBox="-25 -25.5 190 310.5"><g transform="matrix(1,0,0,1,0,0)"><path d="M -20 -20.5 L -20 280 M 0 -20.5 L 0 280 M 20 -20.5 L 20 280 M 40 -20.5 L 40 280 M 60 -20.5 L 60 280 M 80 -20.5 L 80 280 M 100 -20.5 L 100 280 M 120 -20.5 L 120 280 M 140 -20.5 L 140 280 M 160 -20.5 L 160 280" fill="none" stroke-dasharray="1,19" stroke-width="1" stroke="#aaaaaa"></path></g><g transform="matrix(1,0,0,1,20,90)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g transform="matrix(1,0,0,1,70,60)"><g><path d="M 10.000000000000002 -9.999999999999998 L 9.999999999999998 10.000000000000002 L -10 -1.2246467991473533e-15 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M -10.000000000000002 9.999999999999998 L -9.999999999999998 -10.000000000000002" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 9.797174393178826e-16 -8 L -4.999999999999998 -18" stroke-width="1" stroke="#333333" fill="none"></path><path d="M -2.999999999999999 -8 L -7.999999999999998 -18" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 30 3.67394039744206e-15 L 10 1.2246467991473533e-15 M -30 -3.67394039744206e-15 L -10 -1.2246467991473533e-15" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,12,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(1,0,0,1,-12,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(1,0,0,1,-15,5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="end" dominant-baseline="hanging" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">D1</tspan></text></g><g transform="matrix(1,0,0,1,-15,25)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GREEN</tspan></text></g></g></g><g transform="matrix(1,0,0,1,120,30.000000000000007)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,-5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5v</tspan></text></g></g></g><g transform="matrix(1,0,0,1,20,170)"><g><path d="M -15 0 L 15 0" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,-5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">5v</tspan></text></g></g></g><g transform="matrix(1,0,0,1,70,200)"><g><path d="M -10 10 L -10 -10 L 10 0 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 10 -10 L 10 10" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 0 8 L 5 18" stroke-width="1" stroke="#333333" fill="none"></path><path d="M 3 8 L 8 18" stroke-width="1" stroke="#333333" fill="none"></path><path d="M -30 0 L -10 0 M 30 0 L 10 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,-12,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="end" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">1</tspan></text></g><g transform="matrix(1,0,0,1,12,-2)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="8" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">2</tspan></text></g><g transform="matrix(1,0,0,1,15,5)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="hanging" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">D2</tspan></text></g><g transform="matrix(1,0,0,1,15,25)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="start" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">RED</tspan></text></g></g></g><g transform="matrix(1,0,0,1,120,230)"><g><path d="M -10 0 L 10 0 L 0 10 Z" stroke-width="1" stroke="#333333" fill="#ffffff"></path><path d="M 0 -10 L 0 0" stroke-width="2" stroke="#333333"></path><g transform="matrix(1,0,0,1,0,20)"><text fill="#333333" font-family="Open Sans-Regular, Arial" font-size="10" text-anchor="middle" dominant-baseline="text-top" font-weight="regular" transform="matrix(1,0,0,1,0,0)" svgjs:data="{"leading":"1.3"}"><tspan dy="0" x="0" svgjs:data="{"newLined":true}">GND</tspan></text></g></g></g><g><line x1="20" y1="80" x2="20" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="20" y1="60" x2="40" y2="60" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="100" y1="200" x2="120" y2="200" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="120" y1="200" x2="120" y2="220" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="100" y1="60.00000000000001" x2="120" y2="60.00000000000001" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="120" y1="60.00000000000001" x2="120" y2="40.00000000000001" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="20" y1="180" x2="20" y2="200" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line><line x1="20" y1="200" x2="40" y2="200" stroke-linecap="square" stroke-width="1" stroke="#008400" fill="none"></line></g><g></g></svg>
|
package/__tests__/testParse.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
|
-
import { findItem, runScript } from './helpers';
|
|
3
|
-
import { script1, script10, script11, script12, script2, script3, script6, script7, script8, script9 } from './parseScripts';
|
|
2
|
+
import { findItem, findItemByRefDes, runScript } from './helpers.js';
|
|
3
|
+
import { script1, script10, script11, script12, script2, script3, script6, script7, script8, script9 } from './parseScripts.js';
|
|
4
4
|
|
|
5
5
|
describe('test parsing', () => {
|
|
6
6
|
|
|
@@ -68,6 +68,41 @@ branch:
|
|
|
68
68
|
expect(findItem(instances, 'cap', 'C1', 'numeric:100n')).not.toBeNull();
|
|
69
69
|
});
|
|
70
70
|
|
|
71
|
+
test('component annotation with custom type param', async () => {
|
|
72
|
+
|
|
73
|
+
const script = `
|
|
74
|
+
import lib
|
|
75
|
+
|
|
76
|
+
v5v = supply("5V")
|
|
77
|
+
gnd = dgnd()
|
|
78
|
+
|
|
79
|
+
a = create component:
|
|
80
|
+
type: "X"
|
|
81
|
+
pins: 2
|
|
82
|
+
|
|
83
|
+
a2 = create component:
|
|
84
|
+
type: "X"
|
|
85
|
+
pins: 3
|
|
86
|
+
|
|
87
|
+
at v5v
|
|
88
|
+
wire down 20 right 20
|
|
89
|
+
to a pin 1
|
|
90
|
+
|
|
91
|
+
at v5v
|
|
92
|
+
wire down 20 right 20
|
|
93
|
+
to a2 pin 3
|
|
94
|
+
|
|
95
|
+
`
|
|
96
|
+
const {hasError, visitor} = await runScript(script);
|
|
97
|
+
expect(hasError).toBe(false);
|
|
98
|
+
|
|
99
|
+
visitor.annotateComponents();
|
|
100
|
+
|
|
101
|
+
const instances = visitor.dumpInstances();
|
|
102
|
+
|
|
103
|
+
expect(findItemByRefDes(instances, 'X', 'X1')).not.toBeNull();
|
|
104
|
+
expect(findItemByRefDes(instances, 'X', 'X2')).not.toBeNull();
|
|
105
|
+
});
|
|
71
106
|
|
|
72
107
|
test('component annotation with defined refdes', async () => {
|
|
73
108
|
|