How It Works: Scaling & Measurement Methodology
A transparent overview of the mathematical calculations, ground-datum alignment, and unit conversions powering BodyComparison.
1. Ground Line Alignment (The Zero Datum)
In architectural drafting and anthropometry, any valid height measurement requires a single, invariant reference plane known as the zero datum.
In our tool, the ground line represents flat barefoot standing elevation ($Y = 0$). Regardless of whether a silhouette represents a toddler at 85 cm or a professional basketball player at 215 cm, the bottom-most boundary of each silhouette's feet is fixed to this shared coordinate line:
Silhouette_Feet_Y = Canvas_Height - Ground_Offset_YSilhouette_Head_Y = Silhouette_Feet_Y - (Height_cm × Pixels_Per_cm)
By keeping the ground line unified, you immediately perceive natural eye-lines, shoulder levels, and waistlines without perspective distortion.
2. Unit Conversion Standards
To maintain absolute precision and prevent discrepancies when toggling between metric and imperial modes, all internal coordinates are stored using centimeters as the base canonical unit.
Conversion between Imperial (feet and inches) and Metric uses the international yard and pound agreement definition established in 1959, which defines one inch as exactly 25.4 millimeters:
1 inch = 2.54 cm (exact)Total_Inches = (Feet × 12) + InchesHeight_cm = Total_Inches × 2.54
When converting from centimeters back to feet and inches for display, we compute the integer quotient for feet and round the remaining inches to one decimal place:
Total_Inches = Height_cm / 2.54Feet = Math.floor(Total_Inches / 12)Inches = (Total_Inches % 12).toFixed(1)
3. Vector Silhouette Proportions
A common flaw with amateur height comparison tools is stretching a single raster image vertically without adjusting its width, which produces unnaturally stretched or squished human figures.
BodyComparison solves this using scalable vector graphics (SVG) with proportional aspect locking:
- Anatomical Normalization: Each silhouette template is modeled inside a 100×200 coordinate space where 200 represents the total standing stature from vertex of head to bottom of heel.
-
Isotropic Scaling: When scaled to height $H$, both horizontal and vertical dimensions scale by the identical factor:
This ensures shoulders, torso, and limbs maintain biologically realistic proportions.
Scale_Factor = (Height_cm × Base_Px_Per_Cm) / 200 - Distinct Age & Sex Silhouettes: Children have significantly larger head-to-body ratios (approximately 1:5 or 1:6) compared to adults (approximately 1:7.5 to 1:8). Our dedicated youth silhouette faithfully models this developmental difference.
4. Pairwise Difference Analytics
When you select two individuals in the comparison tool, our differential engine computes both the absolute elevation gap and the proportional ratio difference:
Absolute_Difference = |Height_A - Height_B|Percentage_Taller = (|Height_A - Height_B| / min(Height_A, Height_B)) × 100%
By anchoring the percentage to the shorter individual, the metric accurately reflects how much taller the taller subject is relative to the baseline.