// from absolute cube coords to cube coords relative to big hex center
functionrel_coords(xyz){
const[x,y,z]=xyz;
constijk=small_to_big(xyz)
const[xc,yc,zc]=center_of(ijk);
return[x-xc,y-yc,z-zc];
}
// from absolute (or relative) cube coords to one integer
functionhexmod(xyz){
const[x,y,z]=xyz;
constm=my.mod(y+s*x,A);
returnm;
}
functioninv_hexmod(m){
constms=my.div(m+r,s),
mcs=my.div(m+2*r,s-1);
constx=ms*(r+1)+mcs*-r,
y=m+ms*(-2*r-1)+mcs*(-r-1),
z=-m+ms*r+mcs*(2*r+1);
return[x,y,z];
}
Purpose-built for displays of data
Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.