[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [gcompris/gsoc_pulkit_digital_electricity] src/activities/digital_electricity: digital_electricity,
From: Pulkit Gupta <pulkitnsit () gmail ! com>
Date: 2016-08-27 13:29:35
Message-ID: E1bddfz-0007Ob-Vw () code ! kde ! org
[Download RAW message or body]
Git commit 742c6cfd44af40676c4e8041640e63dfffdf96be by Pulkit Gupta.
Committed on 27/08/2016 at 13:25.
Pushed by pulkitgupta into branch 'gsoc_pulkit_digital_electricity'.
digital_electricity, add signal generator component, and add sticky eraser option.
M +7 -1 src/activities/digital_electricity/ListWidget.qml
M +1 -1 src/activities/digital_electricity/components/ElectricalComponent.qml
A +166 -0 src/activities/digital_electricity/components/SignalGenerator.qml \
[License: GPL (v3+)] M +18 -5 \
src/activities/digital_electricity/digital_electricity.js A +273 -0 \
src/activities/digital_electricity/resource/arrowDown.svg A +207 -0 \
src/activities/digital_electricity/resource/arrowUp.svg A +552 -0 \
src/activities/digital_electricity/resource/signalGenerator.svg A +336 -0 \
src/activities/digital_electricity/resource/valueContainer.svg
http://commits.kde.org/gcompris/742c6cfd44af40676c4e8041640e63dfffdf96be
diff --git a/src/activities/digital_electricity/ListWidget.qml \
b/src/activities/digital_electricity/ListWidget.qml index 5ec8bb2..3755505 100644
--- a/src/activities/digital_electricity/ListWidget.qml
+++ b/src/activities/digital_electricity/ListWidget.qml
@@ -120,9 +120,15 @@ Item {
anchors.fill: parent
onClicked: {
toolDelete.state = toolDelete.state == "selected" ? \
"notSelected" : "selected"
- Activity.toolDelete = !Activity.toolDelete //true
+ Activity.toolDelete = !Activity.toolDelete
+ Activity.toolDeleteSticky = false
//console.log("state",toolDelete.state)
}
+ onDoubleClicked: {
+ Activity.toolDeleteSticky = true
+ Activity.toolDelete = true
+ toolDelete.state = "selected"
+ }
}
states: [
State {
diff --git a/src/activities/digital_electricity/components/ElectricalComponent.qml \
b/src/activities/digital_electricity/components/ElectricalComponent.qml index \
6a7047a..ad9cee3 100644
--- a/src/activities/digital_electricity/components/ElectricalComponent.qml
+++ b/src/activities/digital_electricity/components/ElectricalComponent.qml
@@ -121,7 +121,7 @@ Image {
}
onClicked: {
console.log("Component index",index,electricalComponent)
- if(Activity.toolDelete) {
+ if(Activity.toolDelete || Activity.toolDeleteSticky) {
Activity.removeComponent(index)
}
else {
diff --git a/src/activities/digital_electricity/components/SignalGenerator.qml \
b/src/activities/digital_electricity/components/SignalGenerator.qml new file mode \
100644 index 0000000..85b4ce4
--- /dev/null
+++ b/src/activities/digital_electricity/components/SignalGenerator.qml
@@ -0,0 +1,166 @@
+/* GCompris - SignalGenerator.qml
+ *
+ * Copyright (C) 2016 Pulkit Gupta <pulkitnsit@gmail.com>
+ *
+ * Authors:
+ * Bruno Coudoin <bruno.coudoin@gcompris.net> (GTK+ version)
+ * Pulkit Gupta <pulkitnsit@gmail.com> (Qt Quick port)
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, see <http://www.gnu.org/licenses/>.
+ */
+import QtQuick 2.3
+import GCompris 1.0
+import "../digital_electricity.js" as Activity
+import "../../../core"
+
+ElectricalComponent {
+ id: signalGenerator
+ imgWidth: 0.25
+ imgHeight: 0.18
+ imgSrc: "signalGenerator.svg"
+ toolTipTxt: qsTr("Signal Generator")
+ terminalSize: 0.451
+ noOfInputs: 0
+ noOfOutputs: 1
+
+ information: qsTr("Signal Generator is used to generate alternating signals of 0 \
and 1. " + + "It takes frequency as input, and generate outputs \
accordingly. Frequency " + + "refers to the number of times the \
output will change in 1 second. So 1 Hz " + + "means that the \
output will change after every 1 second, 0.5 Hz means that " + + \
"the output will change after every 2 seconds, and so on. For the demonstration " + + \
"purpose, the minimum frequency of signal generator in this activity is " + + \
"0.25 Hz, and maximum frequency is 2 Hz. The frequency can be changed by clicking " + \
+ "on the arrows on the signal generator") +
+ property alias outputTerminals: outputTerminals
+ property double frequency: 0.25
+
+ Repeater {
+ id: outputTerminals
+ model: 1
+ delegate: outputTerminal
+ Component {
+ id: outputTerminal
+ TerminalPoint {
+ posX: 0.914
+ posY: 0.512
+ value: 0
+ type: "Out"
+ }
+ }
+ }
+
+ function updateOutput(wireVisited) {
+ var terminal = outputTerminals.itemAt(0)
+ terminal.value = terminal.value == 1 ? 0 : 1
+ for(var i = 0 ; i < terminal.wires.length ; ++i)
+ terminal.wires[i].to.value = terminal.value
+
+ var componentVisited = []
+ for(var i = 0 ; i < terminal.wires.length ; ++i) {
+ var wire = terminal.wires[i]
+ var component = wire.to.parent
+ if(componentVisited[component] != true && wireVisited[wire] != true) {
+ componentVisited[component] = true
+ wireVisited[wire] = true
+ component.updateOutput(wireVisited)
+ }
+ }
+ }
+
+ Timer {
+ id: timer
+ interval: 1000 / signalGenerator.frequency
+ running: true
+ repeat: true
+ onTriggered: Activity.updateComponent(signalGenerator.index)
+ }
+
+ Image {
+ source: Activity.url + "arrowUp.svg"
+ height: 0.339 * parent.height
+ width: 0.123 * parent.width
+ property double posX: 0.632
+ property double posY: 0.284
+ x: (parent.width - parent.paintedWidth) / 2 + posX * parent.paintedWidth - \
width / 2 + y: (parent.height - parent.paintedHeight) / 2 + posY * \
parent.paintedHeight - height / 2 + fillMode: Image.PreserveAspectFit
+ mipmap: true
+ antialiasing: true
+ MouseArea {
+ anchors.fill: parent
+ anchors.centerIn: parent
+ enabled: signalGenerator.frequency != 2
+ onPressed: {
+ //console.log("Up pressed")
+ signalGenerator.frequency += 0.25
+ timer.restart()
+ outputTerminals.itemAt(0).value = 1
+ Activity.updateComponent(signalGenerator.index)
+ }
+ }
+ }
+
+ Image {
+ source: Activity.url + "arrowDown.svg"
+ height: 0.339 * parent.height
+ width: 0.123 * parent.width
+ property double posX: 0.632
+ property double posY: 0.713
+ x: (parent.width - parent.paintedWidth) / 2 + posX * parent.paintedWidth - \
width / 2 + y: (parent.height - parent.paintedHeight) / 2 + posY * \
parent.paintedHeight - height / 2 + fillMode: Image.PreserveAspectFit
+ mipmap: true
+ antialiasing: true
+ MouseArea {
+ anchors.fill: parent
+ anchors.centerIn: parent
+ enabled: signalGenerator.frequency != 0.25
+ onPressed: {
+ //console.log("Down pressed")
+ signalGenerator.frequency -= 0.25
+ timer.restart()
+ outputTerminals.itemAt(0).value = 1
+ Activity.updateComponent(signalGenerator.index)
+ }
+ }
+ }
+
+ Image {
+ //id: valueContainer
+ source: Activity.url + "valueContainer.svg"
+ sourceSize.height: 0.818 * parent.height
+ sourceSize.width: 0.512 * parent.width
+ property double posX: 0.306
+ property double posY: 0.503
+ x: (parent.width - parent.paintedWidth) / 2 + posX * parent.paintedWidth - \
width / 2 + y: (parent.height - parent.paintedHeight) / 2 + posY * \
parent.paintedHeight - height / 2 + GCText {
+ id: value
+ anchors.centerIn: parent
+ fontSizeMode: Text.Fit
+ minimumPointSize: 6
+ font.pointSize: 40
+ //font.pixelSize: 40
+ color: "white"
+ style: Text.Outline
+ styleColor: "black"
+ horizontalAlignment: Text.AlignRight
+ verticalAlignment: Text.AlignVCenter
+ height: parent.height - 10
+ width: parent.width - 10
+ text: qsTr("%1 Hz").arg(signalGenerator.frequency.toFixed(2))
+ }
+ }
+}
diff --git a/src/activities/digital_electricity/digital_electricity.js \
b/src/activities/digital_electricity/digital_electricity.js index 82230d7..47403dc \
100644
--- a/src/activities/digital_electricity/digital_electricity.js
+++ b/src/activities/digital_electricity/digital_electricity.js
@@ -27,6 +27,7 @@ var numberOfLevel = 4
var items
var url = "qrc:/gcompris/src/activities/digital_electricity/resource/"
var toolDelete
+var toolDeleteSticky
var selectedIndex
var animationInProgress
var selectedTerminal
@@ -76,6 +77,12 @@ function start(items_) {
"imgHeight": 0.18,
"toolTipText": qsTr("Digital Light")
})
+ items.availablePieces.model.append( {
+ "imgName": "signalGenerator.svg",
+ "imgWidth": 0.25,
+ "imgHeight": 0.18,
+ "toolTipText": qsTr("Signal Generator")
+ })
initLevel()
}
@@ -101,8 +108,9 @@ function initLevel() {
components = []
connected = []
animationInProgress = false
- deselect()
toolDelete = false
+ toolDeleteSticky = false
+ deselect()
updateToolTip("")
}
@@ -140,6 +148,8 @@ function createComponent(x, y, src) {
electricComponent = Qt.createComponent(componentLocation + \
"SevenSegment.qml") else if(src == "DigitalLightOff.svg")
electricComponent = Qt.createComponent(componentLocation + \
"DigitalLight.qml") + else if(src == "signalGenerator.svg")
+ electricComponent = Qt.createComponent(componentLocation + \
"SignalGenerator.qml")
//console.log("Error loading component:", electricComponent.errorString())
components[index] = electricComponent.createObject(
@@ -148,7 +158,8 @@ function createComponent(x, y, src) {
"posX": x,
"posY": y
});
-
+ toolDeleteSticky = false
+ deselect()
componentSelected(index)
updateComponent(index)
}
@@ -192,7 +203,7 @@ function terminalPointSelected(terminal) {
}
function updateComponent(index) {
-
+ //console.log("updateComponent",index)
var wireVisited = []
components[index].updateOutput(wireVisited)
}
@@ -262,12 +273,14 @@ function updateWires(index) {
function deselect() {
- //items.availablePieces.toolDelete.state = "notSelected"
+ if(toolDeleteSticky == false) {
+ toolDelete = false
+ items.availablePieces.toolDelete.state = "notSelected"
+ }
items.availablePieces.rotateLeft.state = "canNotBeSelected"
items.availablePieces.rotateRight.state = "canNotBeSelected"
items.availablePieces.info.state = "canNotBeSelected"
items.infoTxt.visible = false
- //toolDelete = false
selectedIndex = -1
selectedTerminal = -1
for(var i = 0 ; i < components.length ; ++i) {
diff --git a/src/activities/digital_electricity/resource/arrowDown.svg \
b/src/activities/digital_electricity/resource/arrowDown.svg new file mode 100644
index 0000000..c6be6c8
--- /dev/null
+++ b/src/activities/digital_electricity/resource/arrowDown.svg
@@ -0,0 +1,273 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns:ns1="http://sozi.baierouge.fr"
+ id="svg2"
+ sodipodi:docname="arrow_orange_down.svg"
+ inkscape:export-filename="/datas/wiki/arrow_orange_down.png"
+ viewBox="0 0 36 38"
+ sodipodi:version="0.32"
+ inkscape:export-xdpi="90.000000"
+ version="1.0"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape"
+ inkscape:export-ydpi="90.000000"
+ inkscape:version="0.46"
+ sodipodi:docbase="G:\Projs\Cliparts Stocker\released"
+ >
+ <defs
+ id="defs4"
+ >
+ <linearGradient
+ id="linearGradient1552"
+ >
+ <stop
+ id="stop1554"
+ style="stop-color:#f9cc84"
+ offset="0"
+ />
+ <stop
+ id="stop1556"
+ style="stop-color:#fed27f"
+ offset="1"
+ />
+ </linearGradient
+ >
+ <radialGradient
+ id="radialGradient1687"
+ gradientUnits="userSpaceOnUse"
+ cy=".40530"
+ cx="-18.3"
+ gradientTransform="matrix(-.13160 1.117 -1.0576 -.12462 33.357 39.585)"
+ r="17.1"
+ inkscape:collect="always"
+ >
+ <stop
+ id="stop1427"
+ style="stop-color:#f0d81f"
+ offset="0"
+ />
+ <stop
+ id="stop1429"
+ style="stop-color:#f08b0a"
+ offset="1"
+ />
+ </radialGradient
+ >
+ <linearGradient
+ id="linearGradient1696"
+ y2="16.238"
+ xlink:href="#linearGradient1552"
+ gradientUnits="userSpaceOnUse"
+ x2="30.302"
+ gradientTransform="translate(.0076982 .038005)"
+ y1="47.962"
+ x1="36.312"
+ inkscape:collect="always"
+ />
+ <linearGradient
+ id="linearGradient1699"
+ y2="47.922"
+ xlink:href="#linearGradient1552"
+ gradientUnits="userSpaceOnUse"
+ x2="27.857"
+ gradientTransform="translate(-.026524)"
+ y1="16.238"
+ x1="32"
+ inkscape:collect="always"
+ />
+ <linearGradient
+ id="linearGradient1702"
+ y2="47.922"
+ gradientUnits="userSpaceOnUse"
+ x2="27.857"
+ y1="16.238"
+ x1="32"
+ inkscape:collect="always"
+ >
+ <stop
+ id="stop1520"
+ style="stop-color:#f3ac39;stop-opacity:.62876"
+ offset="0"
+ />
+ <stop
+ id="stop1522"
+ style="stop-color:#fcba94;stop-opacity:.78261"
+ offset="1"
+ />
+ </linearGradient
+ >
+ </defs
+ >
+ <sodipodi:namedview
+ id="base"
+ bordercolor="#666666"
+ inkscape:grid-points="true"
+ inkscape:pageshadow="2"
+ inkscape:window-y="110"
+ pagecolor="#ffffff"
+ inkscape:window-height="693"
+ inkscape:grid-bbox="true"
+ inkscape:zoom="13.078947"
+ inkscape:window-x="110"
+ showgrid="false"
+ borderopacity="1.0"
+ inkscape:current-layer="layer1"
+ inkscape:cx="28.513078"
+ inkscape:cy="19"
+ showguides="false"
+ inkscape:window-width="1156"
+ inkscape:pageopacity="0.0"
+ inkscape:document-units="px"
+ >
+ <inkscape:grid
+ id="GridFromPre046Settings"
+ opacity=".2"
+ visible="true"
+ color="#0000ff"
+ enabled="true"
+ originy="0px"
+ originx="0px"
+ empspacing="4"
+ spacingy="1px"
+ spacingx="1px"
+ empopacity="0.4"
+ type="xygrid"
+ empcolor="#0000ff"
+ />
+ </sodipodi:namedview
+ >
+ <g
+ id="layer1"
+ inkscape:label="Calque 1"
+ inkscape:groupmode="layer"
+ >
+ <g
+ id="g1421"
+ transform="translate(-14,-13)"
+ >
+ <path
+ id="path2125"
+ sodipodi:nodetypes="ccccsccccsccccc"
+ style="fill:#a54005"
+ d="m22 14c-1 0-1 1-1 1v17c-1 0.049-5 0-5 0-0.447 0.009-0.846 0.109-1.016 \
0.523s-0.077 0.889 0.235 1.209l16 16c0.435 0.422 1.127 0.422 1.562 0l16-16c0.312-0.32 \
0.405-0.795 0.235-1.209s-0.569-0.514-1.016-0.523h-5v-17.049s0-1-1-1c-6 0-14 0.049-20 \
0.049z" + />
+ <path
+ id="path3636"
+ style="fill:url(#radialGradient1687)"
+ d="m41.781 15.156c-5.903 0.002-13.643 0.061-19.562 0.063v16.781c0.001 \
0.649-0.508 1.186-1.157 1.219-1.093 0.053-4.057 0.008-4.624 0l15.562 15.562 \
15.531-15.562h-4.531c-0.673 0-1.219-0.546-1.219-1.219v-16.844z" + />
+ <path
+ id="path1511"
+ sodipodi:nodetypes="ccscccsc"
+ style="fill:url(#linearGradient1702)"
+ d="m41 17c-0.906-1.031-17-1-18 0s0.122 14.11 0.094 15c-0.094 3-4.094 \
1-3.094 3 2 3 11 12 12 12s10-9 12-12c1-2-3 0-3.094-3-0.029-0.935 1.188-14.031 \
0.094-15z" + />
+ <path
+ id="path1548"
+ sodipodi:nodetypes="ccccc"
+ style="fill:url(#linearGradient1699)"
+ d="m19.973 35c2 3 11 12 12 12s7.027-5.459 9.027-8.502c-0.973 0-4 3.502-9 \
3.502-4 0-9-9-12.027-7z" + />
+ <path
+ id="path1558"
+ sodipodi:nodetypes="cscsccc"
+ style="fill:url(#linearGradient1696)"
+ d="m32.035 16.276c-4.262 0.004-8.531 0.25-9.031 0.75-0.699 0.698-0.4 \
6.176-0.157 10.188 0.153 2.786 0.153 2.786 1.153-0.214 3.493-10.479 16.082-8.316 \
17.41-7.943-0.063-1.007-0.175-1.826-0.406-2.031-0.454-0.515-4.707-0.754-8.969-0.75z" \
+ /> + </g
+ >
+ </g
+ >
+ <metadata
+ >
+ <rdf:RDF
+ >
+ <cc:Work
+ >
+ <dc:format
+ >image/svg+xml</dc:format
+ >
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage"
+ />
+ <cc:license
+ rdf:resource="http://creativecommons.org/licenses/publicdomain/"
+ />
+ <dc:publisher
+ >
+ <cc:Agent
+ rdf:about="http://openclipart.org/"
+ >
+ <dc:title
+ >Openclipart</dc:title
+ >
+ </cc:Agent
+ >
+ </dc:publisher
+ >
+ <dc:title
+ >arrow_orange_down</dc:title
+ >
+ <dc:date
+ >2008-05-26T11:33:54</dc:date
+ >
+ <dc:description
+ />
+ <dc:source
+ >https://openclipart.org/detail/16966/arrow_orange_down-by-jean_victor_balin</dc:source
+ >
+ <dc:creator
+ >
+ <cc:Agent
+ >
+ <dc:title
+ >jean_victor_balin</dc:title
+ >
+ </cc:Agent
+ >
+ </dc:creator
+ >
+ <dc:subject
+ >
+ <rdf:Bag
+ >
+ <rdf:li
+ >arrow</rdf:li
+ >
+ <rdf:li
+ >icon</rdf:li
+ >
+ </rdf:Bag
+ >
+ </dc:subject
+ >
+ </cc:Work
+ >
+ <cc:License
+ rdf:about="http://creativecommons.org/licenses/publicdomain/"
+ >
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#Reproduction"
+ />
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#Distribution"
+ />
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#DerivativeWorks"
+ />
+ </cc:License
+ >
+ </rdf:RDF
+ >
+ </metadata
+ >
+</svg
+>
diff --git a/src/activities/digital_electricity/resource/arrowUp.svg \
b/src/activities/digital_electricity/resource/arrowUp.svg new file mode 100644
index 0000000..6fce2b9
--- /dev/null
+++ b/src/activities/digital_electricity/resource/arrowUp.svg
@@ -0,0 +1,207 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg2"
+ sodipodi:docname="arrowUp2.svg"
+ inkscape:export-filename="/datas/wiki/arrow_orange_up.png"
+ viewBox="0 0 36 38"
+ sodipodi:version="0.32"
+ inkscape:export-xdpi="90.000000"
+ version="1.0"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape"
+ inkscape:export-ydpi="90.000000"
+ inkscape:version="0.91 r13725">
+ <defs
+ id="defs4">
+ <linearGradient
+ id="linearGradient1552">
+ <stop
+ id="stop1554"
+ style="stop-color:#f9cc84"
+ offset="0" />
+ <stop
+ id="stop1556"
+ style="stop-color:#fed27f"
+ offset="1" />
+ </linearGradient>
+ <radialGradient
+ id="radialGradient2506"
+ gradientUnits="userSpaceOnUse"
+ cy=".40530"
+ cx="-18.3"
+ gradientTransform="matrix(0.1316,-1.117,1.0576,0.12462,16.795918,11.338541)"
+ r="17.1"
+ inkscape:collect="always">
+ <stop
+ id="stop1427"
+ style="stop-color:#f0d81f"
+ offset="0" />
+ <stop
+ id="stop1429"
+ style="stop-color:#f07d0a"
+ offset="1" />
+ </radialGradient>
+ <linearGradient
+ id="linearGradient2508"
+ y2="47.922"
+ gradientUnits="userSpaceOnUse"
+ x2="27.857"
+ gradientTransform="matrix(-1,0,0,-1,50.152918,50.923541)"
+ y1="16.238"
+ x1="32"
+ inkscape:collect="always">
+ <stop
+ id="stop1520"
+ style="stop-color:#f3ac39;stop-opacity:.62876"
+ offset="0" />
+ <stop
+ id="stop1522"
+ style="stop-color:#fcba94;stop-opacity:.78261"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2510"
+ y2="47.922"
+ xlink:href="#linearGradient1552"
+ gradientUnits="userSpaceOnUse"
+ x2="27.857"
+ gradientTransform="matrix(-1,0,0,-1,50.179918,50.923541)"
+ y1="16.238"
+ x1="32"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient2512"
+ y2="16.238"
+ xlink:href="#linearGradient1552"
+ gradientUnits="userSpaceOnUse"
+ x2="30.302"
+ gradientTransform="matrix(-1,0,0,-1,50.144918,50.885541)"
+ y1="47.962"
+ x1="36.312"
+ inkscape:collect="always" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ bordercolor="#666666"
+ inkscape:grid-points="true"
+ inkscape:pageshadow="2"
+ inkscape:window-y="44"
+ pagecolor="#ffffff"
+ inkscape:window-height="693"
+ inkscape:grid-bbox="true"
+ inkscape:zoom="13.078947"
+ inkscape:window-x="44"
+ showgrid="false"
+ borderopacity="1.0"
+ inkscape:current-layer="layer1"
+ inkscape:cx="16.979055"
+ inkscape:cy="18.70057"
+ showguides="false"
+ inkscape:window-width="1156"
+ inkscape:pageopacity="0.0"
+ inkscape:document-units="px"
+ inkscape:window-maximized="0">
+ <inkscape:grid
+ id="GridFromPre046Settings"
+ opacity=".2"
+ visible="true"
+ color="#0000ff"
+ enabled="true"
+ originy="0px"
+ originx="0px"
+ empspacing="4"
+ spacingy="1px"
+ spacingx="1px"
+ empopacity="0.4"
+ type="xygrid"
+ empcolor="#0000ff" />
+ </sodipodi:namedview>
+ <g
+ id="layer1"
+ inkscape:label="Calque 1"
+ inkscape:groupmode="layer">
+ <g
+ id="g4207">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 28.152918,36.923541 c 1,0 1,-1 1,-1 l 0,-17 c 1,-0.049 5,0 5,0 \
0.447,-0.009 0.846,-0.109 1.016,-0.523 0.17,-0.414 0.077,-0.889 -0.235,-1.209 l \
-16,-15.9999997 c -0.435,-0.42200004 -1.127,-0.42200004 -1.562,0 L \
1.3719179,17.191541 c -0.312,0.32 -0.40500001,0.795 -0.235,1.209 0.17,0.414 \
0.569,0.514 1.016,0.523 l 5,0 0,17.049 c 0,0 0,1 1,1 6.0000001,0 14.0000001,-0.049 \
20.0000001,-0.049 z" + style="fill:#a54005"
+ sodipodi:nodetypes="ccccsccccsccccc"
+ id="path2125" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 8.3719179,35.767541 c 5.9030001,-0.002 13.6430001,-0.061 \
19.5620001,-0.063 l 0,-16.781 c -10e-4,-0.649 0.508,-1.186 1.157,-1.219 1.093,-0.053 \
4.057,-0.008 4.624,0 L 18.152918,2.1425413 2.6219179,17.704541 l 4.531,0 c 0.673,0 \
1.219,0.546 1.219,1.219 l 0,16.844 z" + style="fill:url(#radialGradient2506)"
+ id="path3636" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.1529179,33.923541 c 0.9060001,1.031 17.0000001,1 18.0000001,0 1,-1 \
-0.122,-14.11 -0.094,-15 0.094,-3 4.094,-1 3.094,-3 -2,-3 -11,-11.9999997 \
-12,-11.9999997 -1,0 -10.0000001,8.9999997 -12.0000001,11.9999997 -1,2 3,0 3.094,3 \
0.029,0.935 -1.188,14.031 -0.094,15 z" + \
style="fill:url(#linearGradient2508)" + sodipodi:nodetypes="ccscccsc"
+ id="path1511" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 30.179918,15.923541 c -2,-3 -11,-11.9999997 -12,-11.9999997 -1,0 \
-7.027,5.459 -9.0270001,8.5019997 0.9730001,0 4.0000001,-3.5019997 \
9.0000001,-3.5019997 4,0 9,8.9999997 12.027,6.9999997 z" + \
style="fill:url(#linearGradient2510)" + sodipodi:nodetypes="ccccc"
+ id="path1548" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.117918,34.647541 c 4.262,-0.004 8.531,-0.25 9.031,-0.75 \
0.699,-0.698 0.4,-6.176 0.157,-10.188 -0.153,-2.786 -0.153,-2.786 -1.153,0.214 \
-3.493,10.479 -16.082,8.316 -17.4100001,7.943 0.063,1.007 0.175,1.826 0.406,2.031 \
0.454,0.515 4.7070001,0.754 8.9690001,0.75 z" + \
style="fill:url(#linearGradient2512)" + sodipodi:nodetypes="cscsccc"
+ id="path1558" />
+ </g>
+ </g>
+ <metadata
+ id="metadata25">
+ <rdf:RDF>
+ <cc:Work>
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <cc:license
+ rdf:resource="http://creativecommons.org/licenses/publicdomain/" />
+ <dc:publisher>
+ <cc:Agent
+ rdf:about="http://openclipart.org/">
+ <dc:title>Openclipart</dc:title>
+ </cc:Agent>
+ </dc:publisher>
+ <dc:title>arrow_orange_up</dc:title>
+ <dc:date>2008-05-26T11:35:32</dc:date>
+ <dc:description />
+ <dc:source>https://openclipart.org/detail/16969/arrow_orange_up-by-jean_victor_balin</dc:source>
+ <dc:creator>
+ <cc:Agent>
+ <dc:title>jean_victor_balin</dc:title>
+ </cc:Agent>
+ </dc:creator>
+ <dc:subject>
+ <rdf:Bag>
+ <rdf:li>arrow</rdf:li>
+ <rdf:li>icon</rdf:li>
+ </rdf:Bag>
+ </dc:subject>
+ </cc:Work>
+ <cc:License
+ rdf:about="http://creativecommons.org/licenses/publicdomain/">
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#Reproduction" />
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#Distribution" />
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
+ </cc:License>
+ </rdf:RDF>
+ </metadata>
+</svg>
diff --git a/src/activities/digital_electricity/resource/signalGenerator.svg \
b/src/activities/digital_electricity/resource/signalGenerator.svg new file mode \
100644 index 0000000..ec6081b
--- /dev/null
+++ b/src/activities/digital_electricity/resource/signalGenerator.svg
@@ -0,0 +1,552 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg47331"
+ sodipodi:docname="signalGenerator.svg"
+ inkscape:export-filename="/home/cats/Desktop/computer.png"
+ viewBox="0 0 883.94856 337.58"
+ sodipodi:version="0.32"
+ inkscape:export-xdpi="150"
+ version="1.0"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape"
+ inkscape:export-ydpi="150"
+ inkscape:version="0.91 r13725"
+ width="883.94855"
+ height="337.57999">
+ <title
+ id="title3204">Function Generator</title>
+ <defs
+ id="defs47333">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="163.92147 : -145.6547 : 1"
+ inkscape:vp_y="0 : 975.24989 : 0"
+ inkscape:vp_z="413.792 : -145.6547 : 1"
+ inkscape:persp3d-origin="288.85674 : -200.52552 : 1"
+ id="perspective4571" />
+ <linearGradient
+ id="linearGradient49174"
+ y2="466.67999"
+ gradientUnits="userSpaceOnUse"
+ x2="273.32001"
+ gradientTransform="matrix(1.4069,0,0,1.5009,60.989,-990.24)"
+ y1="74.372002"
+ x1="74.372002"
+ inkscape:collect="always">
+ <stop
+ id="stop48365"
+ style="stop-color:#b3b3b3"
+ offset="0" />
+ <stop
+ id="stop48367"
+ style="stop-color:#666666"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2945"
+ y2="845.69"
+ gradientUnits="userSpaceOnUse"
+ x2="158.69"
+ gradientTransform="matrix(0.76083441,0,0,0.27385674,150.34055,13.867473)"
+ y1="502.32001"
+ x1="154.85001"
+ inkscape:collect="always">
+ <stop
+ id="stop48120"
+ style="stop-color:#ffffff"
+ offset="0" />
+ <stop
+ id="stop48122"
+ style="stop-color:#666666;stop-opacity:0"
+ offset="1" />
+ </linearGradient>
+ <filter
+ style="color-interpolation-filters:sRGB"
+ id="filter3732-3"
+ height="1.2345999"
+ width="1.2345999"
+ y="-0.11729"
+ x="-0.11729">
+ <feGaussianBlur
+ id="feGaussianBlur3734-8"
+ stdDeviation="2.1425868" />
+ </filter>
+ <linearGradient
+ id="linearGradient6253"
+ x1="421.85999"
+ gradientUnits="userSpaceOnUse"
+ x2="424.26001"
+ y1="316.17999"
+ y2="361.64001">
+ <stop
+ id="stop5625"
+ stop-color="#e4e4e4"
+ offset="0" />
+ <stop
+ id="stop5627"
+ stop-color="#555753"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4529"
+ x1="426.92001"
+ gradientUnits="userSpaceOnUse"
+ x2="420.22"
+ y1="307.38"
+ y2="349.10001">
+ <stop
+ id="stop3832"
+ stop-color="#babdb6"
+ offset="0" />
+ <stop
+ id="stop3834"
+ stop-color="#eeeeec"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6199">
+ <stop
+ id="stop6201"
+ stop-color="#fff"
+ offset="0" />
+ <stop
+ id="stop6203"
+ stop-color="#fff"
+ stop-opacity="0"
+ offset="1" />
+ </linearGradient>
+ <radialGradient
+ id="radialGradient6259"
+ gradientUnits="userSpaceOnUse"
+ cy="-212.3"
+ cx="426.88"
+ gradientTransform="matrix(1,0,0,0.29879,0,-148.87)"
+ r="27.625">
+ <stop
+ id="stop5731"
+ offset="0" />
+ <stop
+ id="stop5733"
+ stop-opacity="0"
+ offset="1" />
+ </radialGradient>
+ <linearGradient
+ id="linearGradient6261"
+ x1="417.54999"
+ gradientUnits="userSpaceOnUse"
+ x2="429.66"
+ y1="303.73001"
+ y2="351.62">
+ <stop
+ id="stop5753"
+ stop-color="#fff"
+ offset="0" />
+ <stop
+ id="stop5759"
+ stop-color="#d2d3d2"
+ offset=".82471" />
+ <stop
+ id="stop5755"
+ stop-color="#a9aaa8"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6263"
+ x1="414.34"
+ gradientUnits="userSpaceOnUse"
+ x2="437.13"
+ y1="310.62"
+ y2="347.56">
+ <stop
+ id="stop5763"
+ stop-color="#7c7c7c"
+ offset="0" />
+ <stop
+ id="stop5765"
+ stop-color="#fff"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4531"
+ x1="417.89999"
+ gradientUnits="userSpaceOnUse"
+ x2="417.89999"
+ y1="296.47"
+ y2="286.17999">
+ <stop
+ id="stop3814"
+ stop-color="#6ec715"
+ offset="0" />
+ <stop
+ id="stop3816"
+ stop-color="#244207"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4533"
+ x1="417.89999"
+ gradientUnits="userSpaceOnUse"
+ x2="421.94"
+ y1="292.42999"
+ y2="300.5">
+ <stop
+ id="stop3822"
+ stop-color="#888a85"
+ offset="0" />
+ <stop
+ id="stop3824"
+ stop-color="#fff"
+ offset="1" />
+ </linearGradient>
+ <filter
+ style="color-interpolation-filters:sRGB"
+ id="filter3732-3-2"
+ height="1.2345999"
+ width="1.2345999"
+ y="-0.11729"
+ x="-0.11729">
+ <feGaussianBlur
+ id="feGaussianBlur3734-8-1"
+ stdDeviation="2.1425868" />
+ </filter>
+ <radialGradient
+ id="radialGradient6259-6"
+ gradientUnits="userSpaceOnUse"
+ cy="-212.3"
+ cx="426.88"
+ gradientTransform="matrix(1,0,0,0.29879,0,-148.87)"
+ r="27.625">
+ <stop
+ id="stop5731-4"
+ offset="0" />
+ <stop
+ id="stop5733-9"
+ stop-opacity="0"
+ offset="1" />
+ </radialGradient>
+ <radialGradient
+ id="radialGradient2506"
+ gradientUnits="userSpaceOnUse"
+ cy="0.40529999"
+ cx="-18.299999"
+ gradientTransform="matrix(0.1316,-1.117,1.0576,0.12462,16.795918,11.338541)"
+ r="17.1"
+ inkscape:collect="always">
+ <stop
+ id="stop1427"
+ style="stop-color:#f0d81f"
+ offset="0" />
+ <stop
+ id="stop1429"
+ style="stop-color:#f07d0a"
+ offset="1" />
+ </radialGradient>
+ <linearGradient
+ id="linearGradient2508"
+ y2="47.922001"
+ gradientUnits="userSpaceOnUse"
+ x2="27.857"
+ gradientTransform="matrix(-1,0,0,-1,50.152918,50.923541)"
+ y1="16.238001"
+ x1="32"
+ inkscape:collect="always">
+ <stop
+ id="stop1520"
+ style="stop-color:#f3ac39;stop-opacity:.62876"
+ offset="0" />
+ <stop
+ id="stop1522"
+ style="stop-color:#fcba94;stop-opacity:.78261"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2510"
+ y2="47.922001"
+ xlink:href="#linearGradient1552"
+ gradientUnits="userSpaceOnUse"
+ x2="27.857"
+ gradientTransform="matrix(-1,0,0,-1,50.179918,50.923541)"
+ y1="16.238001"
+ x1="32"
+ inkscape:collect="always" />
+ <linearGradient
+ id="linearGradient1552">
+ <stop
+ id="stop1554"
+ style="stop-color:#f9cc84"
+ offset="0" />
+ <stop
+ id="stop1556"
+ style="stop-color:#fed27f"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient2512"
+ y2="16.238001"
+ xlink:href="#linearGradient1552"
+ gradientUnits="userSpaceOnUse"
+ x2="30.302"
+ gradientTransform="matrix(-1,0,0,-1,50.144918,50.885541)"
+ y1="47.962002"
+ x1="36.312"
+ inkscape:collect="always" />
+ <radialGradient
+ id="radialGradient2506-7"
+ gradientUnits="userSpaceOnUse"
+ cy="0.40529999"
+ cx="-18.299999"
+ gradientTransform="matrix(0.1316,-1.117,1.0576,0.12462,16.795918,11.338541)"
+ r="17.1"
+ inkscape:collect="always">
+ <stop
+ id="stop1427-5"
+ style="stop-color:#f0d81f"
+ offset="0" />
+ <stop
+ id="stop1429-8"
+ style="stop-color:#f07d0a"
+ offset="1" />
+ </radialGradient>
+ <linearGradient
+ id="linearGradient4442"
+ y2="16.238001"
+ xlink:href="#linearGradient1552"
+ gradientUnits="userSpaceOnUse"
+ x2="30.302"
+ gradientTransform="matrix(-1,0,0,-1,50.144918,50.885541)"
+ y1="47.962002"
+ x1="36.312"
+ inkscape:collect="always" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2508"
+ id="linearGradient4450"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-1,0,0,-1,50.152918,50.923541)"
+ x1="32"
+ y1="16.238001"
+ x2="27.857"
+ y2="47.922001" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient1552"
+ id="linearGradient4452"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-1,0,0,-1,50.179918,50.923541)"
+ x1="32"
+ y1="16.238001"
+ x2="27.857"
+ y2="47.922001" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient1552"
+ id="linearGradient4454"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-1,0,0,-1,50.144918,50.885541)"
+ x1="36.312"
+ y1="47.962002"
+ x2="30.302"
+ y2="16.238001" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient2508"
+ id="linearGradient4456"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(-1,0,0,-1,50.152918,50.923541)"
+ x1="32"
+ y1="16.238001"
+ x2="27.857"
+ y2="47.922001" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ bordercolor="#666666"
+ inkscape:pageshadow="2"
+ inkscape:guide-bbox="true"
+ pagecolor="#ffffff"
+ inkscape:window-height="705"
+ inkscape:window-maximized="1"
+ inkscape:zoom="0.7005778"
+ inkscape:window-x="-8"
+ showgrid="false"
+ borderopacity="1.0"
+ inkscape:current-layer="layer1"
+ inkscape:cx="322.74115"
+ inkscape:cy="197.9809"
+ showguides="true"
+ inkscape:window-y="-8"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:pageopacity="0.0"
+ inkscape:document-units="px"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(-54.309998,-114.79)">
+ <rect
+ id="rect47341"
+ style="fill:url(#linearGradient49174);stroke:#4d4d4d;stroke-width:16"
+ transform="matrix(0,1,-1,0,0,0)"
+ ry="60.035999"
+ height="621.79999"
+ width="321.57999"
+ y="-684.10999"
+ x="122.79" />
+ <g
+ id="g4339"
+ transform="matrix(0.99842995,0,0,2.4017815,-94.975504,-208.51518)">
+ <rect
+ id="rect48116"
+ style="fill:#008080;stroke:#333333;stroke-width:6.48368311"
+ ry="5.0860443"
+ height="108.4543"
+ width="447.02075"
+ y="151.03702"
+ x="196.75659" />
+ <path
+ id="rect48114"
+ sodipodi:nodetypes="ccccc"
+ style="opacity:0.56499999;fill:url(#linearGradient2945)"
+ d="m 215.19335,155.44038 410.05,0 c -59.54008,65.38533 -294.54478,25.94097 \
-422.83468,93.51709 l 0,-88.91533 c 0,-2.54906 5.70123,-4.60098 12.78252,-4.60098 z" \
+ inkscape:connector-curvature="0" /> + </g>
+ <path
+ d="m 786.33065,286.84661 -98.79995,0"
+ style="fill:none;stroke:#4d4d4d;stroke-width:6.08970118;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+ id="path2906"
+ inkscape:connector-curvature="0" />
+ <circle
+ style="opacity:0.64899998;fill:#000000;fill-opacity:0.93377482;stroke:#000000; \
stroke-width:0;stroke-miterlimit:3.54999995;stroke-dasharray:none;stroke-opacity:0.05298013"
+ id="path5637-8"
+ cx="862.08008"
+ cy="287.5553"
+ r="76.178482" />
+ <g
+ transform="matrix(3.1703101,0,0,3.1703101,555.71881,150.6584)"
+ id="g4207">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 28.152918,36.923541 c 1,0 1,-1 1,-1 l 0,-17 c 1,-0.049 5,0 5,0 \
0.447,-0.009 0.846,-0.109 1.016,-0.523 0.17,-0.414 0.077,-0.889 -0.235,-1.209 l \
-16,-15.9999997 c -0.435,-0.42200004 -1.127,-0.42200004 -1.562,0 L \
1.3719179,17.191541 c -0.312,0.32 -0.40500001,0.795 -0.235,1.209 0.17,0.414 \
0.569,0.514 1.016,0.523 l 5,0 0,17.049 c 0,0 0,1 1,1 6.0000001,0 14.0000001,-0.049 \
20.0000001,-0.049 z" + style="fill:#a54005"
+ sodipodi:nodetypes="ccccsccccsccccc"
+ id="path2125" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 8.3719179,35.767541 c 5.9030001,-0.002 13.6430001,-0.061 \
19.5620001,-0.063 l 0,-16.781 c -10e-4,-0.649 0.508,-1.186 1.157,-1.219 1.093,-0.053 \
4.057,-0.008 4.624,0 L 18.152918,2.1425413 2.6219179,17.704541 l 4.531,0 c 0.673,0 \
1.219,0.546 1.219,1.219 l 0,16.844 z" + style="fill:url(#radialGradient2506)"
+ id="path3636" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.1529179,33.923541 c 0.9060001,1.031 17.0000001,1 18.0000001,0 1,-1 \
-0.122,-14.11 -0.094,-15 0.094,-3 4.094,-1 3.094,-3 -2,-3 -11,-11.9999997 \
-12,-11.9999997 -1,0 -10.0000001,8.9999997 -12.0000001,11.9999997 -1,2 3,0 3.094,3 \
0.029,0.935 -1.188,14.031 -0.094,15 z" + \
style="fill:url(#linearGradient4456)" + sodipodi:nodetypes="ccscccsc"
+ id="path1511" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 30.179918,15.923541 c -2,-3 -11,-11.9999997 -12,-11.9999997 -1,0 \
-7.027,5.459 -9.0270001,8.5019997 0.9730001,0 4.0000001,-3.5019997 \
9.0000001,-3.5019997 4,0 9,8.9999997 12.027,6.9999997 z" + \
style="fill:url(#linearGradient2510)" + sodipodi:nodetypes="ccccc"
+ id="path1548" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.117918,34.647541 c 4.262,-0.004 8.531,-0.25 9.031,-0.75 \
0.699,-0.698 0.4,-6.176 0.157,-10.188 -0.153,-2.786 -0.153,-2.786 -1.153,0.214 \
-3.493,10.479 -16.082,8.316 -17.4100001,7.943 0.063,1.007 0.175,1.826 0.406,2.031 \
0.454,0.515 4.7070001,0.754 8.9690001,0.75 z" + \
style="fill:url(#linearGradient2512)" + sodipodi:nodetypes="cscsccc"
+ id="path1558" />
+ </g>
+ <g
+ transform="matrix(-3.1697085,-0.06175744,0.06175744,-3.1697085,669.69854,416.71901)"
+ id="g4207-3">
+ <path
+ inkscape:connector-curvature="0"
+ d="m 28.152918,36.923541 c 1,0 1,-1 1,-1 l 0,-17 c 1,-0.049 5,0 5,0 \
0.447,-0.009 0.846,-0.109 1.016,-0.523 0.17,-0.414 0.077,-0.889 -0.235,-1.209 l \
-16,-15.9999997 c -0.435,-0.42200004 -1.127,-0.42200004 -1.562,0 L \
1.3719179,17.191541 c -0.312,0.32 -0.40500001,0.795 -0.235,1.209 0.17,0.414 \
0.569,0.514 1.016,0.523 l 5,0 0,17.049 c 0,0 0,1 1,1 6.0000001,0 14.0000001,-0.049 \
20.0000001,-0.049 z" + style="fill:#a54005"
+ sodipodi:nodetypes="ccccsccccsccccc"
+ id="path2125-2" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 8.3719179,35.767541 c 5.9030001,-0.002 13.6430001,-0.061 \
19.5620001,-0.063 l 0,-16.781 c -10e-4,-0.649 0.508,-1.186 1.157,-1.219 1.093,-0.053 \
4.057,-0.008 4.624,0 L 18.152918,2.1425413 2.6219179,17.704541 l 4.531,0 c 0.673,0 \
1.219,0.546 1.219,1.219 l 0,16.844 z" + \
style="fill:url(#radialGradient2506-7)" + id="path3636-6" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 9.1529179,33.923541 c 0.9060001,1.031 17.0000001,1 18.0000001,0 1,-1 \
-0.122,-14.11 -0.094,-15 0.094,-3 4.094,-1 3.094,-3 -2,-3 -11,-11.9999997 \
-12,-11.9999997 -1,0 -10.0000001,8.9999997 -12.0000001,11.9999997 -1,2 3,0 3.094,3 \
0.029,0.935 -1.188,14.031 -0.094,15 z" + \
style="fill:url(#linearGradient4450)" + sodipodi:nodetypes="ccscccsc"
+ id="path1511-9" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 30.179918,15.923541 c -2,-3 -11,-11.9999997 -12,-11.9999997 -1,0 \
-7.027,5.459 -9.0270001,8.5019997 0.9730001,0 4.0000001,-3.5019997 \
9.0000001,-3.5019997 4,0 9,8.9999997 12.027,6.9999997 z" + \
style="fill:url(#linearGradient4452)" + sodipodi:nodetypes="ccccc"
+ id="path1548-1" />
+ <path
+ inkscape:connector-curvature="0"
+ d="m 18.117918,34.647541 c 4.262,-0.004 8.531,-0.25 9.031,-0.75 \
0.699,-0.698 0.4,-6.176 0.157,-10.188 -0.153,-2.786 -0.153,-2.786 -1.153,0.214 \
-3.493,10.479 -16.082,8.316 -17.4100001,7.943 0.063,1.007 0.175,1.826 0.406,2.031 \
0.454,0.515 4.7070001,0.754 8.9690001,0.75 z" + \
style="fill:url(#linearGradient4454)" + sodipodi:nodetypes="cscsccc"
+ id="path1558-5" />
+ </g>
+ </g>
+ <metadata
+ id="metadata67">
+ <rdf:RDF>
+ <cc:Work>
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <cc:license
+ rdf:resource="http://creativecommons.org/publicdomain/zero/1.0/" />
+ <dc:publisher>
+ <cc:Agent
+ rdf:about="http://openclipart.org/">
+ <dc:title>Openclipart</dc:title>
+ </cc:Agent>
+ </dc:publisher>
+ <dc:title>Function Generator</dc:title>
+ <dc:date>2009-11-02T21:36:40</dc:date>
+ <dc:description>A stylized depiction of a function \
generator.</dc:description> + \
<dc:source>https://openclipart.org/detail/28031/function-generator-by-mothinator</dc:source>
+ <dc:creator>
+ <cc:Agent>
+ <dc:title>mothinator</dc:title>
+ </cc:Agent>
+ </dc:creator>
+ <dc:subject>
+ <rdf:Bag>
+ <rdf:li>cartoon</rdf:li>
+ <rdf:li>electronic equipment</rdf:li>
+ <rdf:li>equipment</rdf:li>
+ <rdf:li>function generator</rdf:li>
+ <rdf:li>remix</rdf:li>
+ <rdf:li>science</rdf:li>
+ <rdf:li>scientific equipment</rdf:li>
+ </rdf:Bag>
+ </dc:subject>
+ </cc:Work>
+ <cc:License
+ rdf:about="http://creativecommons.org/publicdomain/zero/1.0/">
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#Reproduction" />
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#Distribution" />
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
+ </cc:License>
+ </rdf:RDF>
+ </metadata>
+</svg>
diff --git a/src/activities/digital_electricity/resource/valueContainer.svg \
b/src/activities/digital_electricity/resource/valueContainer.svg new file mode 100644
index 0000000..b982ddc
--- /dev/null
+++ b/src/activities/digital_electricity/resource/valueContainer.svg
@@ -0,0 +1,336 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ id="svg47331"
+ sodipodi:docname="valueContainer.svg"
+ inkscape:export-filename="/home/cats/Desktop/computer.png"
+ viewBox="0 0 452.792 276.05601"
+ sodipodi:version="0.32"
+ inkscape:export-xdpi="150"
+ version="1.0"
+ inkscape:output_extension="org.inkscape.output.svg.inkscape"
+ inkscape:export-ydpi="150"
+ inkscape:version="0.91 r13725"
+ width="452.79199"
+ height="276.056">
+ <title
+ id="title3204">Function Generator</title>
+ <defs
+ id="defs47333">
+ <inkscape:perspective
+ sodipodi:type="inkscape:persp3d"
+ inkscape:vp_x="163.92147 : -145.6547 : 1"
+ inkscape:vp_y="0 : 975.24989 : 0"
+ inkscape:vp_z="413.792 : -145.6547 : 1"
+ inkscape:persp3d-origin="288.85674 : -200.52552 : 1"
+ id="perspective4571" />
+ <linearGradient
+ id="linearGradient2945"
+ y2="845.69"
+ gradientUnits="userSpaceOnUse"
+ x2="158.69"
+ gradientTransform="matrix(0.76083441,0,0,0.27385674,150.34055,13.867473)"
+ y1="502.32001"
+ x1="154.85001"
+ inkscape:collect="always">
+ <stop
+ id="stop48120"
+ style="stop-color:#ffffff"
+ offset="0" />
+ <stop
+ id="stop48122"
+ style="stop-color:#666666;stop-opacity:0"
+ offset="1" />
+ </linearGradient>
+ <filter
+ style="color-interpolation-filters:sRGB"
+ id="filter3732-3"
+ height="1.2345999"
+ width="1.2345999"
+ y="-0.11729"
+ x="-0.11729">
+ <feGaussianBlur
+ id="feGaussianBlur3734-8"
+ stdDeviation="2.1425868" />
+ </filter>
+ <linearGradient
+ id="linearGradient6253"
+ x1="421.85999"
+ gradientUnits="userSpaceOnUse"
+ x2="424.26001"
+ y1="316.17999"
+ y2="361.64001">
+ <stop
+ id="stop5625"
+ stop-color="#e4e4e4"
+ offset="0" />
+ <stop
+ id="stop5627"
+ stop-color="#555753"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4529"
+ x1="426.92001"
+ gradientUnits="userSpaceOnUse"
+ x2="420.22"
+ y1="307.38"
+ y2="349.10001">
+ <stop
+ id="stop3832"
+ stop-color="#babdb6"
+ offset="0" />
+ <stop
+ id="stop3834"
+ stop-color="#eeeeec"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6199">
+ <stop
+ id="stop6201"
+ stop-color="#fff"
+ offset="0" />
+ <stop
+ id="stop6203"
+ stop-color="#fff"
+ stop-opacity="0"
+ offset="1" />
+ </linearGradient>
+ <radialGradient
+ id="radialGradient6259"
+ gradientUnits="userSpaceOnUse"
+ cy="-212.3"
+ cx="426.88"
+ gradientTransform="matrix(1,0,0,0.29879,0,-148.87)"
+ r="27.625">
+ <stop
+ id="stop5731"
+ offset="0" />
+ <stop
+ id="stop5733"
+ stop-opacity="0"
+ offset="1" />
+ </radialGradient>
+ <linearGradient
+ id="linearGradient6261"
+ x1="417.54999"
+ gradientUnits="userSpaceOnUse"
+ x2="429.66"
+ y1="303.73001"
+ y2="351.62">
+ <stop
+ id="stop5753"
+ stop-color="#fff"
+ offset="0" />
+ <stop
+ id="stop5759"
+ stop-color="#d2d3d2"
+ offset=".82471" />
+ <stop
+ id="stop5755"
+ stop-color="#a9aaa8"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient6263"
+ x1="414.34"
+ gradientUnits="userSpaceOnUse"
+ x2="437.13"
+ y1="310.62"
+ y2="347.56">
+ <stop
+ id="stop5763"
+ stop-color="#7c7c7c"
+ offset="0" />
+ <stop
+ id="stop5765"
+ stop-color="#fff"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4531"
+ x1="417.89999"
+ gradientUnits="userSpaceOnUse"
+ x2="417.89999"
+ y1="296.47"
+ y2="286.17999">
+ <stop
+ id="stop3814"
+ stop-color="#6ec715"
+ offset="0" />
+ <stop
+ id="stop3816"
+ stop-color="#244207"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4533"
+ x1="417.89999"
+ gradientUnits="userSpaceOnUse"
+ x2="421.94"
+ y1="292.42999"
+ y2="300.5">
+ <stop
+ id="stop3822"
+ stop-color="#888a85"
+ offset="0" />
+ <stop
+ id="stop3824"
+ stop-color="#fff"
+ offset="1" />
+ </linearGradient>
+ <filter
+ style="color-interpolation-filters:sRGB"
+ id="filter3732-3-2"
+ height="1.2345999"
+ width="1.2345999"
+ y="-0.11729"
+ x="-0.11729">
+ <feGaussianBlur
+ id="feGaussianBlur3734-8-1"
+ stdDeviation="2.1425868" />
+ </filter>
+ <radialGradient
+ id="radialGradient6259-6"
+ gradientUnits="userSpaceOnUse"
+ cy="-212.3"
+ cx="426.88"
+ gradientTransform="matrix(1,0,0,0.29879,0,-148.87)"
+ r="27.625">
+ <stop
+ id="stop5731-4"
+ offset="0" />
+ <stop
+ id="stop5733-9"
+ stop-opacity="0"
+ offset="1" />
+ </radialGradient>
+ <linearGradient
+ id="linearGradient1552">
+ <stop
+ id="stop1554"
+ style="stop-color:#f9cc84"
+ offset="0" />
+ <stop
+ id="stop1556"
+ style="stop-color:#fed27f"
+ offset="1" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient4442"
+ y2="16.238001"
+ xlink:href="#linearGradient1552"
+ gradientUnits="userSpaceOnUse"
+ x2="30.302"
+ gradientTransform="matrix(-1,0,0,-1,50.144918,50.885541)"
+ y1="47.962002"
+ x1="36.312"
+ inkscape:collect="always" />
+ </defs>
+ <sodipodi:namedview
+ id="base"
+ bordercolor="#666666"
+ inkscape:pageshadow="2"
+ inkscape:guide-bbox="true"
+ pagecolor="#ffffff"
+ inkscape:window-height="705"
+ inkscape:window-maximized="1"
+ inkscape:zoom="0.7005778"
+ inkscape:window-x="-8"
+ showgrid="false"
+ borderopacity="1.0"
+ inkscape:current-layer="layer1"
+ inkscape:cx="295.8801"
+ inkscape:cy="168.12339"
+ showguides="true"
+ inkscape:window-y="-8"
+ inkscape:snap-global="true"
+ inkscape:window-width="1366"
+ inkscape:pageopacity="0.0"
+ inkscape:document-units="px"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <g
+ id="layer1"
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ transform="translate(-98.235,-146.45646)">
+ <g
+ id="g4339"
+ transform="matrix(0.99842904,0,0,2.4017823,-94.975746,-208.51538)">
+ <rect
+ id="rect48116"
+ style="fill:#008080;stroke:#333333;stroke-width:6.48368311"
+ ry="5.0860443"
+ height="108.4543"
+ width="447.02075"
+ y="151.03702"
+ x="196.75659" />
+ <path
+ id="rect48114"
+ sodipodi:nodetypes="ccccc"
+ style="opacity:0.56499999;fill:url(#linearGradient2945)"
+ d="m 215.19335,155.44038 410.05,0 c -59.54008,65.38533 -294.54478,25.94097 \
-422.83468,93.51709 l 0,-88.91533 c 0,-2.54906 5.70123,-4.60098 12.78252,-4.60098 z" \
+ inkscape:connector-curvature="0" /> + </g>
+ </g>
+ <metadata
+ id="metadata67">
+ <rdf:RDF>
+ <cc:Work>
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <cc:license
+ rdf:resource="http://creativecommons.org/publicdomain/zero/1.0/" />
+ <dc:publisher>
+ <cc:Agent
+ rdf:about="http://openclipart.org/">
+ <dc:title>Openclipart</dc:title>
+ </cc:Agent>
+ </dc:publisher>
+ <dc:title>Function Generator</dc:title>
+ <dc:date>2009-11-02T21:36:40</dc:date>
+ <dc:description>A stylized depiction of a function \
generator.</dc:description> + \
<dc:source>https://openclipart.org/detail/28031/function-generator-by-mothinator</dc:source>
+ <dc:creator>
+ <cc:Agent>
+ <dc:title>mothinator</dc:title>
+ </cc:Agent>
+ </dc:creator>
+ <dc:subject>
+ <rdf:Bag>
+ <rdf:li>cartoon</rdf:li>
+ <rdf:li>electronic equipment</rdf:li>
+ <rdf:li>equipment</rdf:li>
+ <rdf:li>function generator</rdf:li>
+ <rdf:li>remix</rdf:li>
+ <rdf:li>science</rdf:li>
+ <rdf:li>scientific equipment</rdf:li>
+ </rdf:Bag>
+ </dc:subject>
+ </cc:Work>
+ <cc:License
+ rdf:about="http://creativecommons.org/publicdomain/zero/1.0/">
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#Reproduction" />
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#Distribution" />
+ <cc:permits
+ rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
+ </cc:License>
+ </rdf:RDF>
+ </metadata>
+</svg>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic