1. A computer implemented method for interacting with a virtual environment, the virtual environment including a plurality of connection points for objects therein, the method comprising: determining a plurality of valid start points from among the plurality of connection points; displaying a plurality of valid start points on a display; receiving a user selection of a start point from among the plurality of valid start points; calculating at least one valid end point from among the connection points based on the received user selection; receiving an end point selection from among the at least one valid end point; updating the virtual environment to include new environment based on the received start point and the end point selection; and animating the creation of the new environment between the user selection and the end point selection.