code: private void render(SVG.Rect obj)
     {
        debug("Rect render");
  
        if (obj.width == null || obj.height == null || obj.width.isZero() || obj.height.isZero())
           return;
  
        updateStyleForElement(state, obj);
  
        if (!display())
           return;
        if (!visible())
           return;
  
        if (obj.transform != null)
           canvas.concat(obj.transform);
  
        Path  path = makePathAndBoundingBox(obj);
        updateParentBoundingBox(obj);
  
        checkForGradientsAndPatterns(obj);
        checkForClipPath(obj);
  
        boolean  compositing = pushLayer();
  
        if (state.hasFill)
           doFilledPath(obj, path);
        if (state.hasStroke)
           doStroke(path);
  
  
        if (compositing)
           popLayer(obj);
     }
docs: ==============================================================================