'**SUMMARY**
This is a method to draw Features on any given image.
**PARAMETERS**
* *features* - FeatureSet or any Feature (eg. Line, Circle, Corner, etc)
* *color*    - Color of the Feature to be drawn
* *width*    - width of the Feature to be drawn
* *autocolor*- If true a color is randomly selected for each feature
**RETURNS**
None
**EXAMPLE**
img = Image("lenna")
lines = img.equalize().findLines()
img.draw(lines)
img.show()'

def draw(self, features, color=Color.GREEN, width=1, autocolor=False):

    if (type(features) == type(self)):
        warnings.warn('You    need    to    pass    drawable    features.')
        return None
    if hasattr(features, 'draw'):
        from copy import deepcopy
        if isinstance(features, FeatureSet):
            cfeatures = deepcopy(features)
            for cfeat in cfeatures:
                cfeat.image = self
            cfeatures.draw(color, width, autocolor)
        else:
            cfeatures = deepcopy(features)
            cfeatures.image = self
            cfeatures.draw(color, width)
    else:
        warnings.warn('You    need    to    pass    drawable    features.')
    return None
