draw shape by behaviour