---
title: Shape and Proportion
url: https://doc.liz6.com/en/general-education/visual-foundations/03-shape-and-proportion
locale: en
area: general-education
tags:
- General Education
- Visual Foundations
- General education
- Visual foundations
date: 2026-09-10
modified: 2026-09-10
description: 'Two vase silhouettes look almost identical, yet one feels heavier. The cause may be simple: a little more width, a lower shoulder, or a different tilt.'
---

# Shape and Proportion

Two vase silhouettes look almost identical, yet one feels heavier. The cause may be simple: a little more width, a lower shoulder, or a different tilt.

**Compare overall relationships before inspecting local turns.** This lesson uses proportion, direction and surrounding space to make shape differences easier to identify. The aim is to say what differs, and what you are comparing it with.

## Start with a few reference points

Find the top, bottom, leftmost and rightmost points, then the main direction through the shape. A centerline helps with an approximately symmetrical vase. For a tilted leaf, that main axis should tilt too.

Width-to-height ratio describes width relative to height. Enlarging both dimensions equally preserves the ratio; changing only width changes the shape. You can measure with pixels, fingers or marks on paper. Use a consistent scale and viewing condition.

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 400 210" width="400" height="210" role="img" aria-labelledby="vf-3-wide-title" data-diagram-layout="wide" data-diagram-theme="native">
<title id="vf-3-wide-title">A reference vase; B a wider vase of the same height. Matching guide boxes support comparison.</title>
<defs>
<radialGradient id="vf-3-wide-ball" cx="30%" cy="25%" r="80%">
<stop stop-color="#eee"/>
<stop offset=".5" stop-color="#aaa"/>
<stop offset="1" stop-color="#3f3f3f"/>
</radialGradient>
</defs>
<rect width="100%" height="100%" fill="#e8e4dc"/>
<g transform="translate(0 0) scale(1)">
<rect x="44" y="30" width="112" height="132" fill="none" stroke="#999" stroke-dasharray="4 4"/>
<g transform="translate(100 0) scale(1 1) translate(-100 0)">
<path d="M78 32H122V63C122 81 154 91 149 124L139 158H61L51 124C46 91 78 81 78 63Z" fill="#536a78"/>
</g>
<text x="100" y="198" text-anchor="middle" font-family="sans-serif" font-size="22" fill="#34302a">A</text>
</g>
<g transform="translate(200 0) scale(1)">
<rect x="44" y="30" width="112" height="132" fill="none" stroke="#999" stroke-dasharray="4 4"/>
<g transform="translate(100 0) scale(1.3 1) translate(-100 0)">
<path d="M78 32H122V63C122 81 154 91 149 124L139 158H61L51 124C46 91 78 81 78 63Z" fill="#536a78"/>
</g>
<text x="100" y="198" text-anchor="middle" font-family="sans-serif" font-size="22" fill="#34302a">B</text>
</g>
</svg>

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 250 525" width="250" height="525" role="img" aria-labelledby="vf-3-compact-title" data-diagram-layout="compact" data-diagram-theme="native">
<title id="vf-3-compact-title">A reference vase; B a wider vase of the same height. Matching guide boxes support comparison.</title>
<defs>
<radialGradient id="vf-3-compact-ball" cx="30%" cy="25%" r="80%">
<stop stop-color="#eee"/>
<stop offset=".5" stop-color="#aaa"/>
<stop offset="1" stop-color="#3f3f3f"/>
</radialGradient>
</defs>
<rect width="100%" height="100%" fill="#e8e4dc"/>
<g transform="translate(0 0) scale(1.25)">
<rect x="44" y="30" width="112" height="132" fill="none" stroke="#999" stroke-dasharray="4 4"/>
<g transform="translate(100 0) scale(1 1) translate(-100 0)">
<path d="M78 32H122V63C122 81 154 91 149 124L139 158H61L51 124C46 91 78 81 78 63Z" fill="#536a78"/>
</g>
<text x="100" y="198" text-anchor="middle" font-family="sans-serif" font-size="22" fill="#34302a">A</text>
</g>
<g transform="translate(0 262.5) scale(1.25)">
<rect x="44" y="30" width="112" height="132" fill="none" stroke="#999" stroke-dasharray="4 4"/>
<g transform="translate(100 0) scale(1.3 1) translate(-100 0)">
<path d="M78 32H122V63C122 81 154 91 149 124L139 158H61L51 124C46 91 78 81 78 63Z" fill="#536a78"/>
</g>
<text x="100" y="198" text-anchor="middle" font-family="sans-serif" font-size="22" fill="#34302a">B</text>
</g>
</svg>

A and B have the same height, but B is wider. Do not start with decorative details around the rim. Compare the overall ratio, then locate the widest region and inspect how the shoulders turn into the neck. **A bounding box can reveal an overall mismatch without proving that the contour inside it is accurate.**

## Empty space has a shape too

The hole inside a cup handle, a gap between a leaf and the table edge, or a wedge between two objects can each be seen as a shape. The object is often called the positive shape; the space around or between objects is negative space.

“Negative” does not mean unimportant. Looking at a familiar object can trigger an idea of what it ought to look like. Comparing the gaps on its two sides may reveal a difference that this familiar idea concealed.

Negative space also depends on framing. Put the same vase in a narrower frame and less space remains beside it. Keep the frame fixed when comparing these gaps.

## Judge first, then overlay

Adjust the right-hand vase until you think its width matches the reference. Reveal the overlay, then switch to negative space and watch what happens around a widening object.

**Look first, then reveal the guides**

The reference vase stays fixed. Only the comparison vase changes width; its height stays fixed. Overlay checks the contours, while negative-space mode highlights the surrounding region. At a width ratio of 1.00 the contours coincide.


Overlaying the shapes aligns their centers, making departures easier to see. It checks an observation; it does not replace one. Make a judgment before revealing the answer so you can identify what you overlooked.

Only width changes in this experiment. In an actual image, check tilt and contour turns separately too. Two silhouettes can share the same overall proportions and still have different shoulders. One similarity score cannot replace these specific observations.

## Worked example: draw this teapot, not a remembered teapot symbol

A pale teapot in side view, with an upward-left spout and a dark handle enclosing a clear opening on the right.

AI-generated observation reference. Compare visible evidence; use the authored diagrams for exact geometric relationships.


Begin with the combined outline of spout, body and handle. “Round belly plus handle” may produce a recognizable symbol while losing this object's proportions. The following silhouettes are structural exercises, not pixel-by-pixel tracings of the photograph.

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 520" width="640" height="520" data-vf-case="3" data-diagram-layout="wide" data-diagram-theme="native" role="img" aria-labelledby="case-3-wide-title">
<title id="case-3-wide-title">Teapot comparison: A reference; B width change; C tilted axis; D the handle opening as a shape.</title>
<rect width="100%" height="100%" fill="#f6f4ef"/>
<g transform="translate(0 0)">
<defs>
<clipPath id="case-3-wide-0">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-3-wide-0)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<rect x="44" y="39" width="240" height="165" fill="none" stroke="#a28249" stroke-dasharray="5 4"/>
<path d="M149 25V218" stroke="#a28249" stroke-dasharray="5 4"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">A</text>
</g>
<g transform="translate(320 0)">
<defs>
<clipPath id="case-3-wide-1">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-3-wide-1)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="translate(-23 0) scale(1.15 1)">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<rect x="44" y="39" width="240" height="165" fill="none" stroke="#a28249" stroke-dasharray="5 4"/>
<path d="M149 25V218" stroke="#a28249" stroke-dasharray="5 4"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">B</text>
</g>
<g transform="translate(0 260)">
<defs>
<clipPath id="case-3-wide-2">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-3-wide-2)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="rotate(-14 150 131)">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<rect x="44" y="39" width="240" height="165" fill="none" stroke="#a28249" stroke-dasharray="5 4"/>
<path d="M149 25V218" stroke="#a28249" stroke-dasharray="5 4"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">C</text>
</g>
<g transform="translate(320 260)">
<defs>
<clipPath id="case-3-wide-3">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-3-wide-3)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<path d="M229 96Q267 87 264 139Q261 165 232 169" fill="#d6a34a" stroke="#ab7423" stroke-width="2"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">D</text>
</g>
</svg>

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 1040" width="320" height="1040" data-vf-case="3" data-diagram-layout="compact" data-diagram-theme="native" role="img" aria-labelledby="case-3-compact-title">
<title id="case-3-compact-title">Teapot comparison: A reference; B width change; C tilted axis; D the handle opening as a shape.</title>
<rect width="100%" height="100%" fill="#f6f4ef"/>
<g transform="translate(0 0)">
<defs>
<clipPath id="case-3-compact-0">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-3-compact-0)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<rect x="44" y="39" width="240" height="165" fill="none" stroke="#a28249" stroke-dasharray="5 4"/>
<path d="M149 25V218" stroke="#a28249" stroke-dasharray="5 4"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">A</text>
</g>
<g transform="translate(0 260)">
<defs>
<clipPath id="case-3-compact-1">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-3-compact-1)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="translate(-23 0) scale(1.15 1)">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<rect x="44" y="39" width="240" height="165" fill="none" stroke="#a28249" stroke-dasharray="5 4"/>
<path d="M149 25V218" stroke="#a28249" stroke-dasharray="5 4"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">B</text>
</g>
<g transform="translate(0 520)">
<defs>
<clipPath id="case-3-compact-2">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-3-compact-2)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="rotate(-14 150 131)">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<rect x="44" y="39" width="240" height="165" fill="none" stroke="#a28249" stroke-dasharray="5 4"/>
<path d="M149 25V218" stroke="#a28249" stroke-dasharray="5 4"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">C</text>
</g>
<g transform="translate(0 780)">
<defs>
<clipPath id="case-3-compact-3">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-3-compact-3)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<path d="M229 96Q267 87 264 139Q261 165 232 169" fill="#d6a34a" stroke="#ab7423" stroke-width="2"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">D</text>
</g>
</svg>

**First, establish separate references for whole and part.** Locate the leftmost spout, rightmost handle, highest knob and lowest base. Then compare the body alone. A bounding box that includes handle and spout cannot supply the width of the belly.

**Second, compare important heights.** Where is the spout opening relative to the lid? At what level does the handle join the body? Is the widest part above or below halfway? These relationships provide firmer guidance than following a contour while guessing each next mark.

**Third, check direction independently.** B changes width only; C tilts the whole silhouette. Both cannot be repaired by making the body narrower. Compare the body's main axis and the spout's angle with a true horizontal or the paper edge. Do not assume the object is perfectly upright.

**Fourth, examine the handle opening.** D emphasizes that negative shape. Is it round, elongated or an asymmetric crescent? Is its upper part wider than its lower part? Compressing the opening can make the handle heavy even when its outside bounds stay unchanged. Inspect opening, outer contour and both attachment points together.

**Finally, refine local curvature.** Identify the shoulder's quicker turn, the base's closure and the spout's taper. Once the main references are stable, a local correction need not disturb the whole drawing.


### Mark the observation sequence on the image

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 520" width="640" height="520" data-vf-case="steps-teapot" data-diagram-layout="wide" data-diagram-theme="native" role="img" aria-labelledby="case-steps-teapot-wide-title">
<title id="case-steps-teapot-wide-title">Four observation passes: whole teapot, outer bounds, landmarks, handle opening.</title>
<rect width="100%" height="100%" fill="#f6f4ef"/>
<g transform="translate(0 0)">
<defs>
<clipPath id="case-steps-teapot-wide-0">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-steps-teapot-wide-0)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">A</text>
</g>
<g transform="translate(320 0)">
<defs>
<clipPath id="case-steps-teapot-wide-1">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-steps-teapot-wide-1)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<rect x="45" y="35" width="240" height="174" fill="none" stroke="#a28249" stroke-dasharray="5 4"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">B</text>
</g>
<g transform="translate(0 260)">
<defs>
<clipPath id="case-steps-teapot-wide-2">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-steps-teapot-wide-2)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<circle cx="55" cy="91" r="4" fill="#a28249"/>
<text x="62" y="84" font-size="20" font-family="sans-serif" fill="#293b43">1</text>
<circle cx="149" cy="41" r="4" fill="#a28249"/>
<text x="156" y="34" font-size="20" font-family="sans-serif" fill="#293b43">2</text>
<circle cx="270" cy="131" r="4" fill="#a28249"/>
<text x="277" y="124" font-size="20" font-family="sans-serif" fill="#293b43">3</text>
<circle cx="167" cy="201" r="4" fill="#a28249"/>
<text x="174" y="194" font-size="20" font-family="sans-serif" fill="#293b43">4</text>
<path d="M10 91L310 91" stroke="#a28249" stroke-width="2" fill="none" stroke-dasharray="4 4"/>
<path d="M149 20L149 219" stroke="#a28249" stroke-width="2" fill="none" stroke-dasharray="4 4"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">C</text>
</g>
<g transform="translate(320 260)">
<defs>
<clipPath id="case-steps-teapot-wide-3">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-steps-teapot-wide-3)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<path d="M229 96Q267 87 264 139Q261 165 232 169" fill="#d6a34a" stroke="#ab7423" stroke-width="2"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">D</text>
</g>
</svg>

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 1040" width="320" height="1040" data-vf-case="steps-teapot" data-diagram-layout="compact" data-diagram-theme="native" role="img" aria-labelledby="case-steps-teapot-compact-title">
<title id="case-steps-teapot-compact-title">Four observation passes: whole teapot, outer bounds, landmarks, handle opening.</title>
<rect width="100%" height="100%" fill="#f6f4ef"/>
<g transform="translate(0 0)">
<defs>
<clipPath id="case-steps-teapot-compact-0">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-steps-teapot-compact-0)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">A</text>
</g>
<g transform="translate(0 260)">
<defs>
<clipPath id="case-steps-teapot-compact-1">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-steps-teapot-compact-1)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<rect x="45" y="35" width="240" height="174" fill="none" stroke="#a28249" stroke-dasharray="5 4"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">B</text>
</g>
<g transform="translate(0 520)">
<defs>
<clipPath id="case-steps-teapot-compact-2">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-steps-teapot-compact-2)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<circle cx="55" cy="91" r="4" fill="#a28249"/>
<text x="62" y="84" font-size="20" font-family="sans-serif" fill="#293b43">1</text>
<circle cx="149" cy="41" r="4" fill="#a28249"/>
<text x="156" y="34" font-size="20" font-family="sans-serif" fill="#293b43">2</text>
<circle cx="270" cy="131" r="4" fill="#a28249"/>
<text x="277" y="124" font-size="20" font-family="sans-serif" fill="#293b43">3</text>
<circle cx="167" cy="201" r="4" fill="#a28249"/>
<text x="174" y="194" font-size="20" font-family="sans-serif" fill="#293b43">4</text>
<path d="M10 91L310 91" stroke="#a28249" stroke-width="2" fill="none" stroke-dasharray="4 4"/>
<path d="M149 20L149 219" stroke="#a28249" stroke-width="2" fill="none" stroke-dasharray="4 4"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">C</text>
</g>
<g transform="translate(0 780)">
<defs>
<clipPath id="case-steps-teapot-compact-3">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-steps-teapot-compact-3)">
<rect x="10" y="8" width="300" height="220" fill="#ece7dc"/>
<g transform="">
<path d="M209 78C285 44 291 185 210 184" fill="none" stroke="#4d5355" stroke-width="16"/>
<path d="M103 70H191Q221 85 220 151Q217 195 167 201Q119 203 100 169L51 98L66 85L105 118Q96 84 103 70Z" fill="#7e918f"/>
<path d="M99 70Q149 42 198 70Z" fill="#4d5355"/>
<circle cx="149" cy="49" r="8" fill="#4d5355"/>
</g>
<path d="M229 96Q267 87 264 139Q261 165 232 169" fill="#d6a34a" stroke="#ab7423" stroke-width="2"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">D</text>
</g>
</svg>

A shows the whole object. B adds an outer frame that includes spout and handle, not just body width. C marks 1 spout, 2 top, 3 outer handle and 4 base, with horizontal and axial references. D isolates the handle opening. The frame is an observation guide and the silhouette a simplification, not a precise measurement of the generated photograph.

## Turn a vague impression into a specific correction

| Observation | Possible correction | Reference to retain |
| --- | --- | --- |
| Body height is close, but width is excessive | Bring the sides inward | Top, base and axis |
| The handle feels blocked | Reconsider the enclosed space, not just stroke thickness | Outside edge and attachments |
| The spout looks abruptly stuck on | Check its origin, direction and gradual taper | Body contour and opening position |
| The drawing is tidy but unlike the subject | Find actual asymmetry and characteristic turns | Overall proportions; avoid random distortion |

Repeatedly tracing an edge usually makes it darker without repairing its reference. Describe one relative difference, change that part, then check the whole again.

## Transfer the method to icons, letters and figures

Two icons with equal outer bounds need not have equal visual weight: a thicker, more filled-in icon occupies more area. Letter counters and spaces between letters are negative shapes too. In a standing figure's silhouette, gaps between arms and torso or between legs can help check pose, though they do not replace later study of anatomy.

For accurate copying, use the reference to judge differences. For a caricature, a wider body or smaller handle may be intentional. Establish the purpose before deciding whether a shape needs correction.

## Try a leaf: width or veins first?

A is the target silhouette, B an observation drawing, and C adds a box and a horizontal guide to A. Ignore veins. Have B’s top and bottom moved? Which side differs most? Propose one local edit and a follow-up check.

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 520" width="640" height="520" data-vf-case="practice-3" data-diagram-layout="wide" data-diagram-theme="native" role="img" aria-labelledby="case-practice-3-wide-title">
<title id="case-practice-3-wide-title">Try a leaf: width or veins first?</title>
<rect width="100%" height="100%" fill="#f6f4ef"/>
<g transform="translate(0 0)">
<defs>
<clipPath id="case-practice-3-wide-0">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-practice-3-wide-0)">
<rect x="10" y="8" width="300" height="220" fill="#e7e6dc" />
<path d="M151 39Q63 78 113 154L159 195Q208 124 151 39Z" fill="#6b8174"/>
<path d="M151 39L159 195" stroke="#d4dbba" stroke-width="2" fill="none"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">A</text>
</g>
<g transform="translate(320 0)">
<defs>
<clipPath id="case-practice-3-wide-1">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-practice-3-wide-1)">
<rect x="10" y="8" width="300" height="220" fill="#e7e6dc" />
<path d="M151 39Q63 78 113 154L159 195Q260 124 151 39Z" fill="#6b8174"/>
<path d="M151 39L159 195" stroke="#d4dbba" stroke-width="2" fill="none"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">B</text>
</g>
<g transform="translate(0 260)">
<defs>
<clipPath id="case-practice-3-wide-2">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-practice-3-wide-2)">
<rect x="10" y="8" width="300" height="220" fill="#e7e6dc" />
<path d="M151 39Q63 78 113 154L159 195Q208 124 151 39Z" fill="#6b8174"/>
<path d="M151 39L159 195" stroke="#d4dbba" stroke-width="2" fill="none"/>
<rect x="96" y="38" width="119" height="157" fill="none" stroke="#ad7131" stroke-dasharray="4 4"/>
<path d="M10 110L310 110" stroke="#ad7131" stroke-width="2" fill="none" stroke-dasharray="4 4"/>
<text x="222" y="106" font-size="18" font-family="sans-serif" fill="#293b43">½</text>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">C</text>
</g>
</svg>

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 780" width="320" height="780" data-vf-case="practice-3" data-diagram-layout="compact" data-diagram-theme="native" role="img" aria-labelledby="case-practice-3-compact-title">
<title id="case-practice-3-compact-title">Try a leaf: width or veins first?</title>
<rect width="100%" height="100%" fill="#f6f4ef"/>
<g transform="translate(0 0)">
<defs>
<clipPath id="case-practice-3-compact-0">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-practice-3-compact-0)">
<rect x="10" y="8" width="300" height="220" fill="#e7e6dc" />
<path d="M151 39Q63 78 113 154L159 195Q208 124 151 39Z" fill="#6b8174"/>
<path d="M151 39L159 195" stroke="#d4dbba" stroke-width="2" fill="none"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">A</text>
</g>
<g transform="translate(0 260)">
<defs>
<clipPath id="case-practice-3-compact-1">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-practice-3-compact-1)">
<rect x="10" y="8" width="300" height="220" fill="#e7e6dc" />
<path d="M151 39Q63 78 113 154L159 195Q260 124 151 39Z" fill="#6b8174"/>
<path d="M151 39L159 195" stroke="#d4dbba" stroke-width="2" fill="none"/>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">B</text>
</g>
<g transform="translate(0 520)">
<defs>
<clipPath id="case-practice-3-compact-2">
<rect x="10" y="8" width="300" height="220" rx="3"/>
</clipPath>
</defs>
<g clip-path="url(#case-practice-3-compact-2)">
<rect x="10" y="8" width="300" height="220" fill="#e7e6dc" />
<path d="M151 39Q63 78 113 154L159 195Q208 124 151 39Z" fill="#6b8174"/>
<path d="M151 39L159 195" stroke="#d4dbba" stroke-width="2" fill="none"/>
<rect x="96" y="38" width="119" height="157" fill="none" stroke="#ad7131" stroke-dasharray="4 4"/>
<path d="M10 110L310 110" stroke="#ad7131" stroke-width="2" fill="none" stroke-dasharray="4 4"/>
<text x="222" y="106" font-size="18" font-family="sans-serif" fill="#293b43">½</text>
</g>
<text x="160" y="251" text-anchor="middle" font-size="21" font-family="sans-serif" fill="#555">C</text>
</g>
</svg>

<details data-vf-practice="3"><summary>Decide first, then reveal the explanation</summary>

The endpoints and left boundary match; B bulges farther to the right. Bring that contour inward, especially from the middle toward the bottom, rather than scaling the entire leaf down. Recheck the widest point’s height, endpoints and surrounding spaces. Vein detail cannot repair a silhouette. C’s guides do not require symmetry.

</details>

## Two short checks

**Situation one:** Two leaf drawings have equal bounding-box width and height. Must their contours match?

<details><summary>Show a possible explanation</summary><p>No. The box constrains only the extreme positions. The leaf tip, indentations and contour turns may still differ. Use the box for the overall relationship, then inspect the axis and significant turns.</p></details>

**Situation two:** Two cups have equal-sized bodies, but one handle looks tighter. What can you compare besides the handle itself?

<details><summary>Show a possible explanation</summary><p>Compare the empty region enclosed by the handle. Is it narrower, flatter, or pinched near the top? Also compare where the handle joins the body. This turns an uneasy impression into a specific relationship.</p></details>

## Make an observation you can act on

“This shape looks bad” gives little direction. “Its height is unchanged, its width has increased, and the gap on the right has narrowed” can be checked. This is the value of careful observation: turning an impression into a comparison.

Optional practice: choose scissors or a handled cup. Draw only the gaps inside and around it, then return to the object's contour. Attractive linework is not the goal; observing this object instead of a remembered symbol is.

Further reading: [Ctrl+Paint: Negative Space](https://www.ctrlpaint.com/videos/drawing-shape-negative-space), [Getty: Elements of Art](https://www.getty.edu/education/teachers/building_lessons/formal_analysis.html). The composition lesson returns to these spaces as deliberate parts of a layout.
