     }
 
     /**
+     *  @return Returns true when the measureSizes() code can skip the call to
+     *  measure(). For example this is usually true when both explicitWidth and
+     *  explicitHeight are set. For path, this is true when the bounds of the path
+     *  have not changed.
+     */    
+    protected function skipMeasure():Boolean
+    {
+        return !isNaN(explicitWidth) && !isNaN(explicitHeight);
+    }
+
+    /**
      *  @private
      */
     private function measureSizes():Boolean

                _measuredMinHeight *= yScale;
                _measuredHeight *= yScale;
            }
        }
        else
        {
            invalidateSizeFlag = false;
            _measuredMinWidth = 0;
            _measuredMinHeight = 0;
        }

        adjustSizesForScaleChanges();

        }
       
    }
    
    //--------------------------------------------------------------------------
    //
    //  Methods: Measurement
