Creative Challenge
"A cityscape inside a giant teacup, in pop art style"
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="skyGradient" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#FF5E7D" />
<stop offset="100%" stop-color="#FFDB4D" />
</linearGradient>
<pattern id="dots" width="10" height="10" patternUnits="userSpaceOnUse">
<circle cx="5" cy="5" r="2" fill="#FF5E7D" />
</pattern>
<filter id="shadow" x="-20%" y="-20%" width="140%" height="140%">
<feDropShadow dx="3" dy="3" stdDeviation="5" flood-opacity="0.3" />
</filter>
<clipPath id="teacupClip">
<path d="M60,160 C60,120 240,120 240,160 L225,240 C225,250 75,250 75,240 Z" />
</clipPath>
</defs>
<!-- Background -->
<rect width="300" height="300" fill="url(#skyGradient)" />
<rect width="300" height="300" fill="url(#dots)" opacity="0.1" />
<!-- Saucer -->
<ellipse cx="150" cy="245" rx="125" ry="30" fill="#4BE3FC" stroke="#000" stroke-width="3" />
<ellipse cx="150" cy="245" rx="95" ry="15" fill="#FF3DA5" stroke="#000" stroke-width="2" />
<!-- Teacup -->
<path d="M60,160 C60,120 240,120 240,160 L225,240 C225,250 75,250 75,240 Z" fill="#4BE3FC" stroke="#000" stroke-width="3" />
<!-- Handle -->
<path d="M240,180 C270,180 280,200 260,220 C240,240 240,210 240,195" fill="#4BE3FC" stroke="#000" stroke-width="3" />
<!-- Skyline inside cup (clipped) -->
<g clip-path="url(#teacupClip)">
<!-- Background for city -->
<rect x="60" y="160" width="180" height="90" fill="#5D3EFC" />
<!-- Pop art pattern -->
<rect x="60" y="160" width="180" height="90" fill="#FFEF4D" opacity="0.2" />
<!-- Buildings -->
<rect x="70" y="170" width="25" height="80" fill="#FF3DA5" stroke="#000" stroke-width="2" />
<rect x="75" y="180" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="85" y="190" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="75" y="210" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="85" y="230" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="100" y="140" width="20" height="110" fill="#4BE3FC" stroke="#000" stroke-width="2" />
<rect x="105" y="150" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="110" y="170" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="105" y="190" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="110" y="210" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="125" y="160" width="30" height="90" fill="#FFEF4D" stroke="#000" stroke-width="2" />
<rect x="130" y="180" width="8" height="8" fill="#FF3DA5" stroke="#000" stroke-width="1" />
<rect x="142" y="180" width="8" height="8" fill="#FF3DA5" stroke="#000" stroke-width="1" />
<rect x="130" y="196" width="8" height="8" fill="#FF3DA5" stroke="#000" stroke-width="1" />
<rect x="142" y="196" width="8" height="8" fill="#FF3DA5" stroke="#000" stroke-width="1" />
<rect x="130" y="212" width="8" height="8" fill="#FF3DA5" stroke="#000" stroke-width="1" />
<rect x="142" y="212" width="8" height="8" fill="#FF3DA5" stroke="#000" stroke-width="1" />
<rect x="130" y="228" width="8" height="8" fill="#FF3DA5" stroke="#000" stroke-width="1" />
<rect x="142" y="228" width="8" height="8" fill="#FF3DA5" stroke="#000" stroke-width="1" />
<polygon points="165,170 195,170 180,130" fill="#FF6542" stroke="#000" stroke-width="2" />
<rect x="175" y="170" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="170" y="190" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="185" y="190" width="5" height="10" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="200" y="180" width="30" height="70" fill="#5D3EFC" stroke="#000" stroke-width="2" />
<rect x="205" y="190" width="8" height="8" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="217" y="190" width="8" height="8" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="205" y="205" width="8" height="8" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="217" y="205" width="8" height="8" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="205" y="220" width="8" height="8" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<rect x="217" y="220" width="8" height="8" fill="#FFEF4D" stroke="#000" stroke-width="1" />
<!-- Halftone pattern overlay -->
<rect x="60" y="160" width="180" height="90" fill="url(#dots)" opacity="0.1" />
</g>
<!-- Teacup rim details -->
<path d="M60,160 C60,120 240,120 240,160" fill="none" stroke="#000" stroke-width="3" />
<path d="M75,240 C75,250 225,250 225,240" fill="none" stroke="#000" stroke-width="2" />
<!-- Steam -->
<path d="M120,110 C130,100 110,90 120,80 C130,70 110,60 125,50" fill="none" stroke="white" stroke-width="4" stroke-linecap="round" opacity="0.7" />
<path d="M150,100 C160,90 140,80 150,70 C160,60 140,50 155,40" fill="none" stroke="white" stroke-width="4" stroke-linecap="round" opacity="0.7" />
<path d="M180,110 C190,100 170,90 180,80 C190,70 170,60 185,50" fill="none" stroke="white" stroke-width="4" stroke-linecap="round" opacity="0.7" />
<!-- Pop art sun -->
<circle cx="40" cy="40" r="20" fill="#FFEF4D" stroke="#000" stroke-width="2" />
<circle cx="40" cy="40" r="28" fill="none" stroke="#FFEF4D" stroke-width="2" />
<circle cx="40" cy="40" r="35" fill="none" stroke="#FFEF4D" stroke-width="2" />
<!-- Comic style text bubble -->
<path d="M230,80 C250,80 260,75 260,65 C260,50 240,50 230,50 C220,50 200,45 200,65 C200,85 210,80 230,80 Z" fill="white" stroke="#000" stroke-width="2" />
<text x="230" y="65" font-family="Comic Sans MS, cursive" font-size="12" text-anchor="middle" fill="#FF3DA5">POP!</text>
</svg>
<svg viewBox="0 0 300 300" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="cupGrad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#ff3366"/>
<stop offset="100%" stop-color="#ff0033"/>
</linearGradient>
<radialGradient id="bubbleGrad" cx="50%" cy="50%" r="50%">
<stop offset="70%" stop-color="#00ffff"/>
<stop offset="100%" stop-color="#0066ff"/>
</radialGradient>
<pattern id="halftone" patternUnits="userSpaceOnUse" width="8" height="8">
<circle cx="4" cy="4" r="2" fill="#000" opacity="0.3"/>
</pattern>
</defs>
<rect width="300" height="300" fill="url(#bubbleGrad)"/>
<!-- Teacup -->
<path d="M50 220 Q150 180 250 220 L230 280 L70 280 Z" fill="url(#cupGrad)"/>
<path d="M230 220 Q210 170 170 160 Q150 150 130 160 Q90 170 70 220" fill="none" stroke="#fff" stroke-width="4"/>
<!-- Cityscape -->
<g transform="translate(80 180) scale(0.8)">
<rect x="20" y="-60" width="30" height="80" fill="#ffd700"/>
<polygon points="35,-140 60,-60 10,-60" fill="#00cc99"/>
<rect x="60" y="-100" width="25" height="120" fill="#ff6666"/>
<rect x="100" y="-80" width="40" height="100" fill="#9933ff"/>
<circle cx="120" cy="-90" r="5" fill="#fff"/>
<rect x="150" y="-130" width="35" height="150" fill="#00ffff"/>
</g>
<!-- Pop Art Elements -->
<path d="M120 100 Q140 80 160 100 T200 60" fill="none" stroke="#fff" stroke-width="3" stroke-dasharray="4 4"/>
<ellipse cx="200" cy="100" rx="40" ry="20" fill="#ff0066" opacity="0.8"/>
<rect x="180" y="30" width="40" height="60" fill="#ffff00" transform="skewX(-15)"/>
<!-- Steam Effects -->
<g opacity="0.7">
<circle cx="150" cy="50" r="40" fill="url(#halftone)"/>
<path d="M130 80 Q140 60 160 50 Q180 40 200 60" fill="none" stroke="#fff" stroke-width="4"/>
</g>
<!-- Comic-style Outline -->
<path d="M50 220 Q150 180 250 220 L230 280 L70 280 Z" fill="none" stroke="#000" stroke-width="2"/>
</svg>
Judge's Analysis
Player 1's submission effectively captures the idea of a cityscape inside a giant teacup with clear architectural elements and vibrant pop art colors.
The use of distinct building shapes and the inclusion of steam enhances the concept.
In contrast, Player 2's image is more abstract and less direct in representing the prompt, making Player 1's submission more aligned with the criteria.
These metrics analyze technical aspects of both SVG drawings. Look for differences that might explain the judge's decision. Use the "View Code" button above to see the SVG code for each drawing.
Shapes Metrics
The total number of shape elements (rect, circle, ellipse, line, polygon, polyline, path) in the SVG.
The number of rectangle elements (rect) in the SVG.
The number of circle elements (circle) in the SVG.
The number of ellipse elements (ellipse) in the SVG.
The number of line elements (line) in the SVG.
The number of polygon elements (polygon) in the SVG.
The number of path elements (path) in the SVG.
The number of group elements (g) in the SVG.
Visual Effects Metrics
The number of gradient definitions (linearGradient, radialGradient) in the SVG.
The number of pattern definitions (pattern) in the SVG.
The number of filter definitions (filter) in the SVG.
The number of mask definitions (mask) in the SVG.
The number of clipping path definitions (clipPath) in the SVG.
The number of elements with opacity attributes in the SVG.
The number of elements with stroke attributes in the SVG.
Colors Metrics
The number of unique colors used in the SVG.
Interactivity Metrics
The number of animation elements (animate, animateMotion, animateTransform, set) in the SVG.
The number of elements with transform attributes in the SVG.
Complexity Metrics
The total number of path commands in all path elements (M, L, C, Q, etc.) in the SVG.
The maximum nesting level of group elements (g) in the SVG.
The number of elements defined within the defs element in the SVG.
The number of use elements (use) in the SVG.
Text Metrics
The number of text elements (text) in the SVG.
AI Judging Process
Creativity
Originality, innovative use of shapes and unique approach to the prompt.
Prompt Adherence
How accurately the SVG captures the essence of the prompt.
Visual Appeal
Aesthetic quality including composition, color usage and overall visual impact.
How does judging work?
SVG drawings are converted to static PNG images for evaluation. The AI judge receives the original prompt and both images, then determines which drawing better fulfills the evaluation criteria without seeing animations, interactivity, or SVG code.
Similar Challenges
"A cat juggling planets in space."
"A treehouse in a floating bubble over a city at sunset."
"A snail racing a skateboard on a glassy lake."
"Floating Clock Tower within a Crystal Ball"