/// <summary> /// Helper Method to get color from proximal synapse state /// </summary> /// <param name="distalSynapse"></param> /// <param name="color"></param> /// <param name="alphaValue"></param> private void GetColorFromDistalSynapse ( DistalSynapse distalSynapse, out Color color, out float alphaValue ) { color = this._dictionaryDistalSynapseColors[HtmDistalSynapseColors.Default].HtmColor; alphaValue = .1f; // All conditions can be false. Simulation3DForm visualizerForm = Simulation3D.Form; //Color color = distalSynapse.IsActive ( Global.T ) ? Color.Black : Color.White; try { if (distalSynapse.IsActive ( Global.T )) { alphaValue = 1f; color = this._dictionaryDistalSynapseColors[HtmDistalSynapseColors.Active].HtmColor; } else // Not Active. { alphaValue = 1f; color = this._dictionaryDistalSynapseColors[HtmDistalSynapseColors.Default].HtmColor; } //selected if (distalSynapse.mouseSelected) { color = selectedColor; alphaValue = 1f; //color = this._dictionaryProximalSynapseColors[HtmProximalSynapseColors.MouseSelected].HtmColor; } //mouseOver if (distalSynapse.mouseOver) { color = mouseOverColor; alphaValue = 1f; //color = this._dictionaryProximalSynapseColors[HtmProximalSynapseColors.MouseOver].HtmColor; } } catch (Exception) { } }
public void TestSynapse() { this.DefaultSynapseValues(); var cell = new Cell(null, 0); cell.ActiveState[Global.T] = true; cell.LearnState[Global.T] = true; Synapse syn = new DistalSynapse(cell, Synapse.ConnectedPermanence); Assert.Equal(true, syn.IsConnected()); Assert.Equal(true, syn.IsActive(Global.T)); Assert.Equal(false, syn.IsActive(Global.T - 1)); Assert.Equal(false, syn.IsActiveFromLearning(Global.T - 1)); syn.DecreasePermanence(); Assert.Equal(false, syn.IsConnected()); Assert.Equal(true, syn.IsActive(Global.T)); cell.ActiveState[Global.T] = false; Assert.Equal(false, syn.IsActive(Global.T)); }