►
From YouTube: BHTMS - ScalarOverlapDiagram Part 1
Description
Broadcasted live on Twitch -- Watch live at https://www.twitch.tv/rhyolight_
A
A
A
B
A
A
A
A
A
A
To
a
circle,
isn't
that
nice,
alright,
nice
and
smooth
conversion
from
line
to
circle
and
it
even
handles
the
hover
while
it's
transferring
from
one
state
to
another,
so
I'm
happy
with
that
I'm
happy
with
that.
Just
like
that
honestly
I
think
that's
exactly
how
I
left
it
I,
don't
think.
I
have
any
of
this
code.
I.
A
A
A
A
Allow
chatters
to
somehow
notify
me
or
play
a
sound
or
something
so
if
I'm
ignoring
you
guys
and
you
need
you
want
to
get
my
attention,
I'll
probably
only
allow
some
chatters
to
do.
This
probably
have
to
follow
the
channel
or
something,
but
some
way
to.
Let
me
know
that
you're
trying
to
get
my
attention,
because
sometimes
I
not
paying
attention,
chat
very
much
I'm
soft.
My
little
world
I
need
a
USB
extension
from
heaven.
It's
a
good
point
thanks
for
the
thanks
for
the
reminder.
B
A
A
A
I,
what
I
need
is
a
small
to
large,
HDMI,
cable,
okay,
thanks
Falco
for
distracting
me
with
there's
something
I've
actually
needed
to
do.
Okay,
so
we're
gonna,
look
at
the
old
source,
widgets,
the
HTM,
S,
coating
numbers,
cyclic,
encoder,
okay
and
I
know:
there's
dot
width,
its
width,
something
SVG
I'm,
changing
the
oh,
no,
its
height
height,
we're
dynamically
changing
the
SVG
height
somewhere,
so
I
want
to
see
where
it's
most
likely
happening.
It's
only
seven
Heights
I
think
I'm
gonna
have
to
manually
find
it
that
one
set
up
that
GUI
create
encoder.
A
Update
output
bits
update,
display,
encoder
display.
Oh
that's
right!
It's
in
this!
It's
not
even
here.
It's
in
this
fancy
encoders
like
display,
which
a
fancy
cyclic
encoder
rush,
I
forgot
about
this
I
create
I,
already
had
created
a
component
for
this.
Here
it
is
update
display.
So
so
right,
yes,
oh
I
did
this
with
jQuery
did
I
not
what
is
SVG.
A
How
am
I
setting
is
it's?
Hopefully
it's
not
Jake,
very
it's
d3,
okay,
so
it's
d3,
okay!
So
we're
setting
an
attribute
every
time
this
is
called.
It's
gonna
dynamically
set
the
height
on
this
SVG,
based
on
the
display
state,
so
it'll
be
a
certain
size
if
it's
a
circle,
another
another
height,
if
it's
a
line
so
I
so
I.
So
what
I
really
need
to
do
is.
A
Where
did
I
define
this
in
render
I
don't
know,
I
might
actually
need
these
scales
circle
to
line
scale
Y
line
to
circle
scale,
Y
I
do
I
need
these
scales
to
okay,
so
I
need
these
scales
and
I
need
this
little
bit
here
to
make
this
work.
If
I
want
to
do
the
automatic
thing,
oh
hey,
David,
live
share,
right,
I
forgot
about
for
sure,
so
I
get
a
question.
I
put
this
in
chat
for
you.
A
Maybe
I'll
just
turn
it
into
an
issue
and
with
the
relevant
code
that
I
just
basically
stole
and
put
it
off,
because
I
really
want
to
keep
pushing
and
I
want
to
get
to.
I
want
to
get
to
the
spacial
Pooler
I
want
to
try
and
get
to
time
encoders
next
week.
So
I
want
to
start
working
on
the
overlap,
diagram
and
the
discrete
coding
diagram
and
keep
pushing.
A
It's
a
hue
I,
it's
part
of
a
diet.
It's
not
a
diagram.
It's
just
a
UI
tweak
on
a
current
diagram:
okay,
SVG
for
cyclic
code
earth
diagram
should
adjust
height
based
on
transition
of
one
height
or
line
state,
another
for
circle,
state
and
transition
between,
and
then
I
have
code.
I'm,
not
sure.
If
this
is
gonna
work,
I'm
gonna
just
try
it,
though
whoops
not
that.
A
B
A
B
A
A
A
A
A
So
I'm
gonna,
so
I
haven't
touched
a
line
of
code
right,
yeah
I
haven't
touched
a
line
of
code,
so
I'm
gonna
move
on
I'm
gonna
leave
this
I'm,
not
gonna,
fix
it
and
I'm
gonna
move
on
cyclic
decoder,
dynamic,
diagram,
height
yeah.
These
toons
are
funky
today,
because
it's
a
different
playlists
called
mellow
beats.
It's
not
nighttime
low
fine,
but
I
like
it,
because
it's
funky
and
it's
almost
all
instrumental
so
I,
don't
have
to
pay
much
attention
to
it
all
right.
So
the.
A
So
now
we
need
to
consider
whether
we
need
a
base
class.
Okay,
David
you
can.
You
can
help
me
with
this,
since
it's
very,
this
is
probably
pretty
react.
Specific,
maybe
I
don't
know,
but
what
I
want
to
think
about
is
now
that
we've
got
two
components
that
are
diagrams.
We
have
a
simple
scalar
encoder
and
a
cyclic
scalar
encoder.
A
It's
it's
probably
a
good
idea.
Let's
split
this
and
take
a
look
at
them.
It's
probably
a
good
idea
to
investigate
them
and
see.
If
there
are,
there
is
an
opportunity.
Now,
since
we
we
have
two
diagrams
that
are
both
essentially
creating
similar
d3
constructions,
whether
they're,
whether
this
we
should
think
about
abstracting
a
class.
A
A
A
class
it
would
very
likely
be
would
be
to
handle
some
of
the
d3
stuff.
You
can
see
your
similar
things
happening.
Orient
d3
render
number
line,
render
value
market
render
output
cells.
So
we
we
have
a
bit
of
a
pattern
here
for
this,
but
I
don't
want
to
put
in
place
too
much
of
there
was
any
restrictions.
I
want
to
be
unfettered,
but
but
I,
but
if
there's
a
bunch
of
like
if
orient
3d,
is
essentially
the
same,
the
same
thing.
How
do
I
dive
into
that,
like?
I
can
command
click.
B
A
A
A
It
abstract
value
marker
into
its
own
component,
all
together,
I
guess
it
doesn't
have
to
be
that's
a
good
point.
So
let
me
think
about
this.
That's
a
good
point,
so
in
the
so
here,
I
would
create
that's
where
I
would
just
instantiate
it
right
as
the
value
value
marker.
Then
I
can
do
the
same
thing
here
and
then
get
rid
of
the
whole.
The
whole
entrance
right
that
renders
the
value
marker
reads.
Essentially
it
would
render
itself
we
just
make
sure
there's
nothing
d3
ish
that
was
gonna
cute.
This
yeah
I.
A
Think
I
think
it's
not
big
enough
of
a
deal
for
me
to
change
anything.
So,
let's
move
on,
let's
move
along
I've
investigated
it.
We
looked
into
it,
but
at
least
we
know
where
it's
possible
that
we
could
do
some
abstraction
and
and
what
might
be
affected.
So
as
we
built
as
we
make
our
next
diagram,
we
can
think
about
that
and
keep
it
in
mind.
A
A
A
So
the
point
here
is
to
show
to
encoding
Xin
the
same
space
and
and
how
they
can
be
encoded.
Similarly,
based
on
the
the
W
and
n
settings
of
the
space,
so
we'll
have
one
encoder,
that's
one
color
I
like
the
yellow
and
blue
interaction
and
having
a
green
in
the
middle.
We
don't
have
to
use
this
color
specifically,
but
I
like
this
interaction.
I'd
like
to
not
have
these
things.
That
would
be
much
more
intuitive
if
the
user
grabbed
at
the
value
itself
and
drugged
it.
A
That
would
be
my
preference
of
you
to
rub
right
here
and
moved
it
like
that.
So
I'm,
not
gonna,
recreate
this
I
think
we're
going
to
we'll
just
start
with.
So
there's
no
number
line
in
this
one.
It's
just
the
output
cells
and
then
two
in
coatings
that
are
going
to
be
movable
somehow
by
the
user.
I,
don't
think
we
need
to
use
Paige,
Global's
page
variables
at
all
here.
I
think
we
can
just
stand.
She
ate
it.
So
here's
the
way
I
would
write
it.
A
W
and
n
are
the
only
things
they're
gonna
pass
into
this.
This
is
going
to
be.
What
are
we
gonna
call
this
all
the
examples
shown
have
been
continuous
and
coatings.
This
also
means
numbers
near
one
another
and
the
number
line
had
been
represented.
Similarly,
for
example,
you
can
see
encodings
for
two
numbers.
Let
me
refresh
the
page,
so
you
can
see
four
five
and
four
and
five.
Given
the
aquatic
parameters
to
find
below.
You
can
see
the
overlapping
bits
in
green.
A
So
maybe
we'll
call
this
scaler
overlapping
overlap.
Diagram
scaler,
overlap,
diagram.
Let's
call
it
that
so
we're
gonna
create
a
new
diagram
here,
we'll
call
it
scaler
overlap,
diagram
JSX,
so
our
third
diagram
and,
let's
just
steal
equity
before
will-
will
steal
the
the
structure
of
it
from
another.
Encoder
scaler
overlap,
diagram.
A
Okay,
we
will
I,
don't
know
if
I
used
it
abounded
encoder
last
time
or
not,
let's
see,
oh,
it
doesn't
even
go
to
the
end.
That's
weird
I
like
like
prevent
it
from
even
coming
to
the
end.
I,
don't
know
why
I
did
that,
but
probably
because
it
did
something
weird
at
the
at
the
boundaries
and
I
didn't
want
to
mess
with
it.
Okay,
so
I
just
bound
those
manually
to
so
so.
I
could
hard
code.
A
A
A
I'm
sure
we
will
want
this
sure
we'll
want
that
aurilla
d3
we'll
come
back
to
this.
So
I'll
just
comment
it
out.
Reset
encoder
I
have
I'm
still
I'm,
not
gonna,
something
differents
gonna
happen
there,
but
it's
rendered
number
line
is
going
to
be
gone
under
value.
Marker
is
gone
under
up
it.
Cells
is
alive
and
well
and.
A
A
A
B
A
A
A
A
A
B
A
A
This
is
going
to
be
specifically
for
these
two
values:
let's
just
call
them
blue
and
yellow,
well,
well:
I'm,
just
gonna
call
blue
and
yellow
Blue
is
for
yellow
this
five
and
then
we're
going
to
call
it
where
they're
gonna
be
Paige,
Paige
state
variables
from
here
on
out,
and
so
that
way
we
can
send
them
in
this
dot.
State
dot,
blue,
yellow
this
dot
state
that
yellow
come
into
this
guy
and
there
you
go
you're
getting
a
so
this
is
going
to
be
instead
of
value,
a
value
B.
A
A
B
A
B
A
A
A
A
A
A
A
A
A
A
A
Okay,
attr,
oh
yeah!
This
is
probably
a
real
error.
Now
a
scaler
overlap,
91
okay,
so
we
got
past
initialization
and
our
we're
actually
doing
things
so
we're
making
progress.
I,
hear
you
guys,
thanks
for
keeping
me
on
the
right
track
as
far
as
code,
the
code
goes.
This
is
certainly
cleaner
and
now
I
can
go
in
and
change
the
colors
easily.
What
I'd
really
like
to
do
is
take
any
two
colors
that
maybe
you're
given
and
create
the
color
in
between.
A
A
A
Let's
debug
alright,
so
where
you
getting
called
from,
why
isn't
it
debugging
into
its?
Let's
start
it
right
here.
This
will
probably
tell
us
better
come
on
I,
don't
understand
why
sometimes
the
debug
does
a
debugger
doesn't
work,
it
doesn't
kick
and
until
I
do
this
now
I
do
this
works
so
is
G
a
thing.
It
is
a
thing
is
Rex
a
thing:
No,
okay,
so
we're
selecting
or
taking
the
G
selecting
all
Rex.
The
encoding
is
undefined.
That's
the
problem!
Well,
that
makes
sense.
That
makes
sense.
A
So
that's
that's
a
key
problem,
that's
just
something
we
have
to
do
so.
If
the
encoding
is
undefined,
that's
because
we're
not
defining
it
in
orient
3d
we're
not
doing
anything.
We're
not
we're
not
setting
up
the
encoder
at
all.
Okay,
so
we're
gonna
have
two
encoders,
but
we're
gonna
have
one
encoder
yeah.
B
A
A
A
A
A
In
here
reset
the
encoder,
so
we're
not
gonna
have
this
value
anymore.
We're
gonna,
have
a
value
and
a
value
B,
so
I'm
not
gonna,
even
send
it
in
the
encoders.
Since
this
is
part
of
our
we
have
access
to
this.
We
don't
need
to
look
at
this
value.
We're
gonna
have
an
encoding,
a
and
encoding
be
essentially
so
we'll
have
encoding
a,
and
this
will
be
value.
A
and
we'll
have
encoding
B
baby.
A
A
Resolution
so
so
this
allows
us
to
pass
in
all
these
things
and
it'll
affect
it,
but
we
won't
so
now
orient
3d
I
think
we
still
need
to
do
this.
This
is
just
to
sort
of
create
the
linear
interpolation,
the
scales
that
we
need
to
do
to
do.
The
linear,
interpolation,
the
a
value
and
that's
linear
scale
from
min
to
max
to
a
screen
value
and
then
the
bit
index
to
the
output
display
value.
These
are
things
that
we're
going
to
use
later.
A
A
We're
still
we're
not
using
those
encoding
properly
so
in
the
output
cells,
we're
gonna
render
we're
gonna
have
to
encoding
and
we're
not
gonna
be
able
to
just
do
like
this.
Here's.
What
we'll
do
well
send
we're
gonna,
create
a
new
data.
Object.
That's
going
to
create
this
gonna
have
both
encoding
Xin
it
so,
let's
say
let
dual:
let's
call
it
a
dual
encoding
and
we'll
take
this
dot
encoding
a
and
we'll
map
it.
A
Or
he
and
I
house,
it's
called
BNI
for
now
and
then
we're
going
to
output
an
object
for
each
one,
a
it's
going
to
be
the
value
and
B
is
going
to
be
this
dot
encoding
D
at
that
index,
so
we'll
have
both
of
the
encoding
values
available.
I
think
I
should
probably
say
coding.
V
equals
this
dot
encoding
B,
so
that
I
don't
have
to
use
this
within
this
function.
Now
I
can
take
this
encoding.
This
can
also
be
a
constant
we're
not
going
to
touch
it
and
send
it.
B
A
Instead
of
the
just
a
single
encoding,
so
now
now
we've
got
a
data
object
right
here
that
has
an
A
and
a
B
value,
all
right,
so
I'm
gonna
hard
code,
the
colors
first.
So
first
of
all,
let's
just
say
instead
of
D,
let's
just
say:
if
d
dot
a
is
greater
than
0
or
D,
be
greater
than
0
will
return
the
on
color.
So
we
should
at.
A
A
A
A
A
If
D
to
a
is
great
greater
than
zero
and
D
B
is
greater
than
zero
turn,
both
color,
if
da,
is
greater
than
zero
return.
A
color
if
D
be
greater
than
zero
return,
B,
color,
otherwise
return
off
to
chain
Oh.
What
happened?
Handle
number
line
hovers
not
a
function.
Why
is
there
a
number
line
hover
happening
because
I
need
to
change
this?
A
A
All
right,
it's
working
great
though
this
is
this
would
be
great
with
with
something
a
little
bit
more
dynamic,
like
I,
really
want
to
drag
I
like
the
drag
thing,
but
it's
okay
for
now.
Okay,
so
what
else
have
you
so
I
want
to
be
able
to?
Let's
render
this
higher?
First
of
all,
it's
really
low,
we're
gonna,
we're
gonna,
render
it
at
the
top,
and
then
we're
gonna
put
these
Bezier
curves
under
it
with
a
value
under
it.
That's
which
is
what
I
want
to
do
next,
and
instead
of
four
and
five.
A
A
A
A
A
A
A
A
It's
not
coming
from
here
anymore.
No,
no!
It's
coming
from
there.
It's
just
not
managed
by
the
parent,
so
I'll
get
this
value
and
then
I
couldn't
basically
do
what
I
want
with
it.
But
I
have
to
call
update
myself
if
it
changes,
because
component
did
updates
not
being
called.
Is
that
the
deal
so
updates
never
being
called,
it
is
being
called
I'm
afraid
this
is
something
to
do
with
the
encoders
I.
A
It's
called
unmount
yeah,
but
not
on
update,
but
it
even
on
mount.
It
should
render
first
it
should
render
once
I
should
get
these
in
coatings
with
a
value
of
4
and
B.
The
coating
a
should
have
okay,
so
the
encoders
are.
There
should
be
values
in
here.
There
should
be
number
ones
in
here,
so
the
encoders
aren't
being
created
properly
bounded
undefined
men,
Oh,
min
and
Max
are
backwards.
A
All
right
come
on
minimax
backwards.
There
we
go
there,
we
go.
That's
it!
That's
what
I
want
it's
all
good,
let's
see
if
it
updates,
though
yeah
it's,
not
updating.
So
that's
what
that's
where
your
advice
comes
in
so
now,
because
component
did
update,
is
not
happening
and
I'm
because
I'm
not
these,
these
things
don't
work
anymore.
I.
A
A
A
So
I
won't
have
a
parameter
for
it.
Does
that
make
sense,
David
I
could
keep
I
could
keep
this
value
a
and
B
as
the
state
that
value
a
and
value
B,
etc,
but
I'm
not
going
to
use
parameter
a
and
parameter
B
I
will
just
have
a
display
there.
Yeah
yeah,
that's
not
going
to
do
what
I'm
going
to
do
so.
So
this
would
be
code.
A
I
just
want
to
display
it
there
I
could
so
so
then
I
can
keep
the
state
global
I
can
have
the
parent
update
it
bubble
it
up,
so
that
the
displays,
update
and
I
can
keep
the
scrubber
I.
Don't
want
the
scrubber,
though
I.
Don't
that's
not
the
way.
I
want
the
user
to
interface
with
this
I
want
the
I
want
them
to
hover
over
these,
but
over.
These
I
want
this
to
change
that
I
want
them
to
grab
it
and
pull
it
over.
A
This
way,
grab
that
and
pull
it
over
that
way,
that'll
be
within
the
diagram,
though
that'll
be
a
d3
interaction.
It'll
call
up
to
update
so
I
have
to
add
that
update
feature
back
to
get
that
to
work,
which
is
this
this
thing
so
on
on
update
of
well
I,
guess,
I'm,
going
to
begin
B
and
n
write
a
B,
the
value?
Well,
no,
no
I
know
it's
a
do.
I
know
it's
doing
fine!
It's
not
going
to
be
this
simple
as
just
set
state.
A
A
A
A
B
A
To
save
what
we
have-
oh,
let
me
change
this
to
this
is
gonna,
be
the
same
thing:
I
don't
want
this
I!
Don't
want
this
to
be
I.
Want
this
to
update
as
things
change
right
here,
but
but
I
don't
want
the
user
to
be
able
to
change
it
here.
I
wanted
to
be
able
to
change
it
within
the
diagram.
Alright,
so
let
me
get
a
commit
in
here.
A
A
A
A
A
A
You
got
a
PR
out
of
mine
12
days
ago.
This
is
probably
pretty
old,
or
is
this
one
of
them
that
I
just
explained
going
off?
Oh
I
gotta
go
I
gotta
go
get
my
kids
forgot.
Okay,
so
I'm
gonna
be
back.
I
want
to
be
back.
You
know
we
did
pretty
good
and
I
just
pushed.
Let
me
just
push
real
quick,
yeah
I
just
pushed
so
I'm
gonna
go
yeah
good
job.
A
A
Don't
think
the
credits
are
gonna
say
anything
actually,
because
oh
man,
damn
you
OBS,
come
on,
can't
be
serious
seriously.