Tension Level concept Introduced

This commit is contained in:
Luis Fernando Molina committed 2020-02-04 12:30:15 +01:00
1 parent d45d1e7f92
commit 664014e50b
9 files changed
+66 -26

No files matched your search

@@ -145,7 +145,7 @@ function newNodeCloning () {
isPinned: node.payload.floatingObject.isPinned,
isFrozen: (node.payload.floatingObject.isFrozen && node.payload.floatingObject.frozenManually),
isCollapsed: (node.payload.floatingObject.isCollapsed && node.payload.floatingObject.collapsedManually),
isTensed: (node.payload.floatingObject.isTensed && node.payload.floatingObject.tensedManually)
tensionLevel: (node.payload.floatingObject.tensionLevel)
},
uiObject: {
isRunning: node.payload.uiObject.isRunning,
@@ -148,7 +148,7 @@ function newProtocolNode () {
isPinned: node.payload.floatingObject.isPinned,
isFrozen: (node.payload.floatingObject.isFrozen && node.payload.floatingObject.frozenManually),
isCollapsed: (node.payload.floatingObject.isCollapsed && node.payload.floatingObject.collapsedManually),
isTensed: (node.payload.floatingObject.isTensed && node.payload.floatingObject.tensedManually)
tensionLevel: (node.payload.floatingObject.tensionLevel)
},
uiObject: {
isRunning: node.payload.uiObject.isRunning,
+1
View File
@@ -83,6 +83,7 @@ function newCircularMenu () {
menuItem.disableIfPropertyIsDefined = menuItemInitialValue.disableIfPropertyIsDefined
menuItem.propertyToCheckFor = menuItemInitialValue.propertyToCheckFor
menuItem.ring = menuItemInitialValue.ring
menuItem.icons = menuItemInitialValue.icons
if (menuItem.label === undefined) {
menuItem.type = 'Icon Only'
+9 -2
View File
@@ -9,6 +9,7 @@ function newCircularMenuItem () {
confirmationLabel: undefined,
iconOn: undefined,
iconOff: undefined,
icons: undefined,
currentIcon: undefined,
disableIfPropertyIsDefined: undefined,
propertyToCheckFor: undefined,
@@ -92,6 +93,7 @@ function newCircularMenuItem () {
thisObject.container = undefined
thisObject.iconOn = undefined
thisObject.iconOff = undefined
thisObject.icons = undefined
thisObject.currentIcon = undefined
thisObject.payload = undefined
thisObject.actionFunction = undefined
@@ -208,8 +210,13 @@ function newCircularMenuItem () {
thisObject.iconOn = canvas.designerSpace.iconByUiObjectType.get(thisObject.relatedUiObject)
thisObject.iconOff = canvas.designerSpace.iconByUiObjectType.get(thisObject.relatedUiObject)
} else {
thisObject.iconOn = canvas.designerSpace.iconCollection.get(thisObject.iconPathOn)
thisObject.iconOff = canvas.designerSpace.iconCollection.get(thisObject.iconPathOff)
if (thisObject.iconPathOn !== undefined && thisObject.iconPathOff !== undefined) {
thisObject.iconOn = canvas.designerSpace.iconCollection.get(thisObject.iconPathOn)
thisObject.iconOff = canvas.designerSpace.iconCollection.get(thisObject.iconPathOff)
} else {
thisObject.iconOn = canvas.designerSpace.iconCollection.get(thisObject.icons[thisObject.actionStatus()])
thisObject.iconOff = canvas.designerSpace.iconCollection.get(thisObject.icons[thisObject.actionStatus()])
}
}
}
+40 -12
View File
@@ -22,7 +22,7 @@ function newFloatingObject () {
targetRadius: 0, // This is the target radius of the floating object with zoom applied. It should be animated until reaching this value.
isPinned: false,
isFrozen: false,
isTensed: false,
tensionLevel: TENSION_LEVEL.NO_TENSION,
isCollapsed: false,
isParentCollapsed: false,
frozenManually: false,
@@ -139,7 +139,7 @@ function newFloatingObject () {
}
function getTensionStatus () {
return thisObject.isTensed
return thisObject.tensionLevel
}
function freezeToggle () {
@@ -165,14 +165,25 @@ function newFloatingObject () {
}
function tensionToggle () {
if (thisObject.isTensed !== true) {
thisObject.isTensed = true
thisObject.tensedManually = true
} else {
thisObject.isTensed = false
thisObject.tensedManually = false
switch (thisObject.tensionLevel) {
case TENSION_LEVEL.NO_TENSION:
thisObject.tensionLevel = TENSION_LEVEL.LEVEL_360
break
case TENSION_LEVEL.LEVEL_360:
thisObject.tensionLevel = TENSION_LEVEL.LEVEL_180
break
case TENSION_LEVEL.LEVEL_180:
thisObject.tensionLevel = TENSION_LEVEL.LEVEL_90
break
case TENSION_LEVEL.LEVEL_90:
thisObject.tensionLevel = TENSION_LEVEL.LEVEL_45
break
case TENSION_LEVEL.LEVEL_45:
thisObject.tensionLevel = TENSION_LEVEL.NO_TENSION
break
}
return thisObject.isTensed
return thisObject.tensionLevel
}
function physics () {
@@ -212,7 +223,7 @@ function newFloatingObject () {
function tensionPhysics () {
/* Tension Effect */
if (thisObject.isTensed === true) {
if (thisObject.tensionLevel !== TENSION_LEVEL.NO_TENSION && thisObject.isOnFocus !== true) {
let parent = thisObject.payload.chainParent
if (parent === undefined) { return }
if (parent.payload === undefined) { return }
@@ -223,6 +234,22 @@ function newFloatingObject () {
let axisCount = parentChildren.childrenCount
let axisIndex = parentChildren.childIndex
let baseAngle = 0
let tensionLevelAngle
switch (thisObject.tensionLevel) {
case TENSION_LEVEL.LEVEL_360:
tensionLevelAngle = 360
break
case TENSION_LEVEL.LEVEL_180:
tensionLevelAngle = 180
break
case TENSION_LEVEL.LEVEL_90:
tensionLevelAngle = 90
break
case TENSION_LEVEL.LEVEL_45:
tensionLevelAngle = 45
break
}
if (axisIndex === undefined) {
axisCount = 1
@@ -242,9 +269,10 @@ function newFloatingObject () {
}
}
let angleStep = 360 / axisCount
let separatorAngle = (360 - tensionLevelAngle) / 2
let angleStep = tensionLevelAngle / axisCount
thisObject.payload.angle = baseAngle + (axisIndex - 1) * angleStep
thisObject.payload.angle = baseAngle + separatorAngle + (axisIndex - 1) * angleStep
if (thisObject.payload.angle >= 360) {
thisObject.payload.angle = thisObject.payload.angle - 360
}
+1 -1
View File
@@ -864,7 +864,7 @@ function newUiObject () {
/* Target Line */
let LINE_STYLE = UI_COLOR.TITANIUM_YELLOW
if (thisObject.payload.floatingObject.isTensed === true) {
if (thisObject.payload.floatingObject.tensionLevel !== TENSION_LEVEL.NO_TENSION) {
LINE_STYLE = UI_COLOR.GOLDEN_ORANGE
}
if (thisObject.payload.floatingObject.isFrozen === true) {
@@ -57,16 +57,12 @@ function newUiObjectConstructor () {
if (payload.node.savedPayload.floatingObject.isCollapsed === true) {
floatingObject.collapseToggle()
}
if (payload.node.savedPayload.floatingObject.isTensed === true) {
floatingObject.tensionToggle()
}
floatingObject.tensionLevel = payload.node.savedPayload.floatingObject.tensionLevel
}
/* For brand new objects being created directly by the user, we will make them inherit some properties from their parents. */
if (userAddingNew === true) {
if (payload.parentNode.payload.floatingObject.isTensed === true) {
floatingObject.tensionToggle()
}
floatingObject.tensionLevel = payload.parentNode.payload.floatingObject.tensionLevel
}
let uiObject = newUiObject()
@@ -146,8 +142,7 @@ function newUiObjectConstructor () {
currentStatus: true,
label: undefined,
visible: true,
iconPathOn: 'menu-tensor-fixed-angles',
iconPathOff: 'menu-tensor-free-angles',
icons: ['menu-tensor-free-angles', 'menu-tensor-fixed-angles', 'menu-share', 'compass', 'broken-link'],
rawRadius: 8,
targetRadius: 0,
currentRadius: 0,
@@ -315,6 +310,7 @@ function newUiObjectConstructor () {
switch (payload.node.type) {
case 'Workspace': {
level_0()
floatingObject.tensionLevel = TENSION_LEVEL.LEVEL_360
break
}
+8
View File
@@ -51,6 +51,14 @@ const GET_CONTAINER_PURPOSE = {
DRAGGING: 4
}
const TENSION_LEVEL = {
NO_TENSION: 0,
LEVEL_360: 1,
LEVEL_180: 2,
LEVEL_90: 3,
LEVEL_45: 4
}
/* User Interface Panels */
UI_PANEL = {
+1 -1
View File
@@ -1 +1 @@
{"type":"Workspace","name":"Bot Instance Config Cleaned","rootNodes":[{"type":"Network","name":"Superalgos","networkNodes":[{"type":"Network Node","name":"My Computer","dataStorage":{"type":"Data Storage","name":"New Data Storage","sessionIndependentData":{"type":"Session Independent Data","name":"New Session Independent Data","singleMarketData":[{"type":"Single Market Data","name":"Poloniex BTC/USDT","dataProducts":[{"type":"Data Product","name":"Candles","id":"55e735a5-60c9-4e2d-a582-a6c6eddf3502","savedPayload":{"position":{"x":20609.060583563103,"y":26956.02472972635},"targetPosition":{"x":20728.19588814266,"y":27145.882418400266},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"isTensed":true},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Candles","id":"36ae2d5d-6734-4526-b2f8-31c89a0c4fc1"}}},{"type":"Data Product","name":"Volumes","id":"ffaf5a8e-12d6-4040-922d-57845eb3377c","savedPayload":{"position":{"x":20786.769043391556,"y":26720.59025452689},"targetPosition":{"x":20728.19588814266,"y":27145.882418400266},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"isTensed":true},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Volumes","id":"b2d5ba69-67ac-490f-9e74-28239b35a92e"}}},{"type":"Data Product","name":"Candle-Stairs","id":"e1c46e1f-09d1-46a2-b738-e761b4e04cd9","savedPayload":{"position":{"x":21035.604312895422,"y":26867.33498240933},"targetPosition":{"x":20728.19588814266,"y":27145.882418400266},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"isTensed":true},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Candle-Stairs","id":"642474e9-da61-4168-97dc-7f7869bebc02"}}},{"type":"Data Product","name":"Volume-Stairs","id":"eefaf182-ffe4-457e-a7fa-f43dfabdc086","savedPayload":{"position":{"x":21313.878440686374,"y":27122.80731223341},"targetPosition":{"x":20728.19588814266,"y":27145.882418400266},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"isTensed":true},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Volume-Stairs","id":"846e9572-c4d6-4c7e-942e-c82402c5ecea"}}},{"type":"Data Product","name":"Bollinger Bands","id":"3576cfd0-1774-4094-b8a0-66e182fc4c41","savedPayload":{"position":{"x":21192.046121269403,"y":27504.219756869486},"targetPosition":{"x":20728.19588814266,"y":27145.882418400266},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"isTensed":true},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Bollinger Bands","id":"29088877-8d63-4217-8d34-8742afc262f4"}}},{"type":"Data Product","name":"Percentage Bandwidth","id":"4dfde44c-0bbf-4204-91de-ce99ecba4cf2","savedPayload":{"position":{"x":20863.410278195162,"y":27763.695479649887},"targetPosition":{"x":20728.19588814266,"y":27145.882418400266},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"isTensed":true},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Percentage Bandwidth","id":"3b7885a0-cd72-4a3f-a38b-3dc8c47bd068"}}},{"type":"Data Product","name":"Bollinger Channels Objects","id":"6986bcb1-119c-48c9-a00b-d046e9e07951","savedPayload":{"position":{"x":20389.450696849115,"y":27792.09804727952},"targetPosition":{"x":20728.19588814266,"y":27145.882418400266},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"isTensed":true},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Bollinger Channels Objects","id":"1f111f72-624f-4166-9f99-ab8d785d5267"}}},{"type":"Data Product","name":"Bollinger Sub-Channels Objects","id":"85098ab8-a125-49f1-b24d-416c2090c7a0","savedPayload":{"position":{"x":20385.185994501047,"y":27286.852678370993},"targetPosition":{"x":20728.19588814266,"y":27145.882418400266},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"isTensed":true},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Bollinger Sub-Channels Objects","id":"080c87fc-4546-4482-ab11-180a33f6d9ab"}}}],"id":"49a747b4-2eb7-41d6-b0e2-493f43ceed44","savedPayload":{"position":{"x":20727.379077830854,"y":27145.746269357067},"targetPosition":{"x":20256.325880871336,"y":26996.112582106336},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"isTensed":true},"uiObject":{},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"d4098b73-7e25-434e-8fd9-342393cbb400"}}},{"type":"Single Market Data","name":"Kraken ETH/BTC","dataProducts":[{"type":"Data Product","name":"Candles","id":"fce50098-d674-4006-94ad-cce46f3d59a4","savedPayload":{"position":{"x":20736.33904295617,"y":27187.275014254603},"targetPosition":{"x":20344.69667221882,"y":27169.01171494068},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"isTensed":true},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Candles","id":"36ae2d5d-6734-4526-b2f8-31c89a0c4fc1"}}},{"type":"Data Product","name":"Volumes","id":"601b3615-Line truncated
{"type":"Workspace","name":"New Tension Level","rootNodes":[{"type":"Network","name":"Superalgos","networkNodes":[{"type":"Network Node","name":"My Computer","dataStorage":{"type":"Data Storage","name":"New Data Storage","sessionIndependentData":{"type":"Session Independent Data","name":"New Session Independent Data","singleMarketData":[{"type":"Single Market Data","name":"Poloniex BTC/USDT","dataProducts":[{"type":"Data Product","name":"Candles","id":"55e735a5-60c9-4e2d-a582-a6c6eddf3502","savedPayload":{"position":{"x":20411.876309482992,"y":24072.552323772936},"targetPosition":{"x":22132.22295470948,"y":27728.70529460941},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"tensionLevel":1},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Candles","id":"36ae2d5d-6734-4526-b2f8-31c89a0c4fc1"}}},{"type":"Data Product","name":"Volumes","id":"ffaf5a8e-12d6-4040-922d-57845eb3377c","savedPayload":{"position":{"x":21576.750162194072,"y":24897.940068643937},"targetPosition":{"x":22132.22295470948,"y":27728.70529460941},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"tensionLevel":1},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Volumes","id":"b2d5ba69-67ac-490f-9e74-28239b35a92e"}}},{"type":"Data Product","name":"Candle-Stairs","id":"e1c46e1f-09d1-46a2-b738-e761b4e04cd9","savedPayload":{"position":{"x":22164.192575141195,"y":25096.697726539976},"targetPosition":{"x":22132.22295470948,"y":27728.70529460941},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"tensionLevel":1},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Candle-Stairs","id":"642474e9-da61-4168-97dc-7f7869bebc02"}}},{"type":"Data Product","name":"Volume-Stairs","id":"eefaf182-ffe4-457e-a7fa-f43dfabdc086","savedPayload":{"position":{"x":22284.363972425384,"y":25711.81834982707},"targetPosition":{"x":22132.22295470948,"y":27728.70529460941},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"tensionLevel":1},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Volume-Stairs","id":"846e9572-c4d6-4c7e-942e-c82402c5ecea"}}},{"type":"Data Product","name":"Bollinger Bands","id":"3576cfd0-1774-4094-b8a0-66e182fc4c41","savedPayload":{"position":{"x":22968.55103697409,"y":28375.729219407665},"targetPosition":{"x":22132.22295470948,"y":27728.70529460941},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"tensionLevel":1},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Bollinger Bands","id":"29088877-8d63-4217-8d34-8742afc262f4"}}},{"type":"Data Product","name":"Percentage Bandwidth","id":"4dfde44c-0bbf-4204-91de-ce99ecba4cf2","savedPayload":{"position":{"x":22350.09846955143,"y":28730.262872271254},"targetPosition":{"x":22132.22295470948,"y":27728.70529460941},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"tensionLevel":1},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Percentage Bandwidth","id":"3b7885a0-cd72-4a3f-a38b-3dc8c47bd068"}}},{"type":"Data Product","name":"Bollinger Channels Objects","id":"6986bcb1-119c-48c9-a00b-d046e9e07951","savedPayload":{"position":{"x":19144.214049771195,"y":27912.629819702946},"targetPosition":{"x":22132.22295470948,"y":27728.70529460941},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"tensionLevel":1},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Bollinger Channels Objects","id":"1f111f72-624f-4166-9f99-ab8d785d5267"}}},{"type":"Data Product","name":"Bollinger Sub-Channels Objects","id":"85098ab8-a125-49f1-b24d-416c2090c7a0","savedPayload":{"position":{"x":18615.447470194533,"y":27165.9917332436},"targetPosition":{"x":22132.22295470948,"y":27728.70529460941},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"tensionLevel":1},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Bollinger Sub-Channels Objects","id":"080c87fc-4546-4482-ab11-180a33f6d9ab"}}}],"id":"49a747b4-2eb7-41d6-b0e2-493f43ceed44","savedPayload":{"position":{"x":22132.22295470948,"y":27728.70529460941},"targetPosition":{"x":20178.49770620469,"y":27037.544811321794},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"tensionLevel":1},"uiObject":{},"referenceParent":{"type":"Market","name":"BTC/USDT","id":"d4098b73-7e25-434e-8fd9-342393cbb400"}}},{"type":"Single Market Data","name":"Kraken ETH/BTC","dataProducts":[{"type":"Data Product","name":"Candles","id":"fce50098-d674-4006-94ad-cce46f3d59a4","savedPayload":{"position":{"x":22188.207505020688,"y":27958.48275803743},"targetPosition":{"x":20614.630309702367,"y":27883.52403758208},"floatingObject":{"isPinned":false,"isFrozen":false,"isCollapsed":true,"tensionLevel":1},"uiObject":{},"referenceParent":{"type":"Product Definition","name":"Candles","id":"36ae2d5d-6734-4526-b2f8-31c89a0c4fc1"}}},{"type":"Data Product","name":"Volumes","id":"601b3615-7045-4e8f-Line truncated