         self.colorModel.fill(color)
     }
 
+    public func fill(_ r: CGFloat, _ g: CGFloat, _ b: CGFloat, _ a: CGFloat = 255) {
+        self.colorModel.fill(r, g, b, a)
+    }
+
     public func stroke(_ color: UIColor) {
         self.colorModel.stroke(color)
+    }
+
+    public func stroke(_ r: CGFloat, _ g: CGFloat, _ b: CGFloat, _ a: CGFloat = 255) {
+        self.colorModel.stroke(r, g, b, a)
     }
 
     public func strokeWeight(_ weight: CGFloat) {


protocol ColorModelContract {
    func background(_ color: UIColor)
    func clear()
    func fill(_ color: UIColor)
    func stroke(_ color: UIColor)
    func strokeWeight(_ weight: CGFloat)
    func noFill()
    func noStroke()

        g!.clear(self.frameComponents.bounds)
    }

    func background(_ r: CGFloat, _ g: CGFloat, _ b: CGFloat, _ a: CGFloat) {
        self.background(UIColor(red: r / 255.0, green: g / 255.0, blue: b / 255.0, alpha: a / 255.0))
    }

    func clear() {
        let g = UIGraphicsGetCurrentContext()
        g!.clear(self.frameComponents.bounds)
