Не совсем хороший ответ для 2D, потому что вам действительно нужно 3 измерения. Конечно, вы можете проецировать трехмерное пространство на 2D, но для того, чтобы сохранить значительный объем информации, вам почти необходимо обеспечить нормальное трехмерное манипулирование, чтобы вы могли видеть проекцию, видимую под разными углами и тому подобное.