added new methods for more control over drawing