Pouch Power Pedal

Pouch Power Pedal - DrawGPT

Info

Created On: May 9, 2025
Created By: User #1
pelican riding a bicycle
Bot
Why did the pelican get a bike? Because he wanted to ruffle some feathers... on the road!

SVG Code

                    <!--

Generated by DrawGPT.
Free, open source, AI generated images in SVG, PNG, and HTML Canvas format.
https://drawgpt.ai

Created: 2025-05-16T23:21:00+00:00
-->
<svg   viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
  <title>Pouch Power Pedal</title>
  <desc>Why did the pelican get a bike? Because he wanted to ruffle some feathers... on the road!</desc>
  <metadata type="keywords">pelican, bicycle, cycling, bird, funny</metadata>

  <!-- Background Sky Gradient -->
  <defs>
    <linearGradient id="skyGradient" x1="0%" y1="0%" x2="0%" y2="100%">
      <stop offset="0%" stop-color="#87CEEB" id="skyGradientStop1"/>
      <stop offset="100%" stop-color="#E0F6FF" id="skyGradientStop2"/>
    </linearGradient>
  </defs>
  <rect id="backgroundSky" class="background" x="0" y="0" width="512" height="300" fill="url(#skyGradient)"/>

  <!-- Background Ground -->
  <rect id="backgroundGround" class="background" x="0" y="250" width="512" height="262" fill="#7CFC00"/>
  <path id="road" class="ground" d="M0 350 L512 350 L512 450 L0 450 Z" fill="#808080"/>
  <line id="roadLine1" class="road-marking" x1="100" y1="400" x2="150" y2="400" stroke="#FFFF00" stroke-width="5">
      <animate attributeName="x1" from="-50" to="512" dur="5s" repeatCount="indefinite"/>
      <animate attributeName="x2" from="0" to="562" dur="5s" repeatCount="indefinite"/>
  </line>
   <line id="roadLine2" class="road-marking" x1="250" y1="400" x2="300" y2="400" stroke="#FFFF00" stroke-width="5">
      <animate attributeName="x1" from="100" to="662" dur="5s" repeatCount="indefinite"/>
      <animate attributeName="x2" from="150" to="712" dur="5s" repeatCount="indefinite"/>
  </line>
   <line id="roadLine3" class="road-marking" x1="400" y1="400" x2="450" y2="400" stroke="#FFFF00" stroke-width="5">
      <animate attributeName="x1" from="250" to="812" dur="5s" repeatCount="indefinite"/>
      <animate attributeName="x2" from="300" to="862" dur="5s" repeatCount="indefinite"/>
  </line>


  <!-- Distant Hills -->
  <path id="hills" class="background" d="M0 280 Q100 250 200 280 T400 280 Q450 290 512 270 L512 350 L0 350 Z" fill="#556B2F"/>

  <!-- Clouds -->
  <circle id="cloud1_part1" class="cloud" cx="100" cy="100" r="30" fill="#FFFFFF">
    <animate attributeName="cx" from="100" to="150" dur="5s" repeatCount="indefinite" additive="sum"/>
  </circle>
  <circle id="cloud1_part2" class="cloud" cx="130" cy="100" r="25" fill="#FFFFFF">
    <animate attributeName="cx" from="130" to="180" dur="5s" repeatCount="indefinite" additive="sum"/>
  </circle>
  <circle id="cloud1_part3" class="cloud" cx="115" cy="85" r="20" fill="#FFFFFF">
     <animate attributeName="cx" from="115" to="165" dur="5s" repeatCount="indefinite" additive="sum"/>
  </circle>

  <circle id="cloud2_part1" class="cloud" cx="400" cy="150" r="25" fill="#FFFFFF">
     <animate attributeName="cx" from="400" to="450" dur="5s" repeatCount="indefinite" additive="sum"/>
  </circle>
  <circle id="cloud2_part2" class="cloud" cx="425" cy="150" r="20" fill="#FFFFFF">
     <animate attributeName="cx" from="425" to="475" dur="5s" repeatCount="indefinite" additive="sum"/>
  </circle>
   <circle id="cloud2_part3" class="cloud" cx="412" cy="138" r="18" fill="#FFFFFF">
     <animate attributeName="cx" from="412" to="462" dur="5s" repeatCount="indefinite" additive="sum"/>
  </circle>


  <!-- Bicycle -->
  <g id="bicycle" class="vehicle" transform="translate(150, 300)">
    <!-- Frame -->
    <path id="bikeFrame" class="frame" d="M50 50 L200 50 L180 150 L70 150 L50 50 Z M70 150 L150 200 L200 50 M150 200 L250 150" fill="none" stroke="#000000" stroke-width="8" stroke-linecap="round" stroke-linejoin="round"/>

    <!-- Front Wheel -->
    <circle id="frontWheel" class="wheel" cx="50" cy="150" r="45" fill="#FFFFFF" stroke="#000000" stroke-width="5">
      <animateTransform attributeName="transform" type="rotate" from="0 50 150" to="360 50 150" dur="1s" repeatCount="indefinite"/>
    </circle>
    <!-- Front Spokes -->
     <line id="frontSpoke1" class="spoke" x1="50" y1="150" x2="50" y2="105" stroke="#000000" stroke-width="2">
        <animateTransform attributeName="transform" type="rotate" from="0 50 150" to="360 50 150" dur="1s" repeatCount="indefinite"/>
     </line>
     <line id="frontSpoke2" class="spoke" x1="50" y1="150" x2="95" y2="150" stroke="#000000" stroke-width="2">
        <animateTransform attributeName="transform" type="rotate" from="0 50 150" to="360 50 150" dur="1s" repeatCount="indefinite"/>
     </line>
      <line id="frontSpoke3" class="spoke" x1="50" y1="150" x2="50" y2="195" stroke="#000000" stroke-width="2">
        <animateTransform attributeName="transform" type="rotate" from="0 50 150" to="360 50 150" dur="1s" repeatCount="indefinite"/>
     </line>
      <line id="frontSpoke4" class="spoke" x1="50" y1="150" x2="5" y2="150" stroke="#000000" stroke-width="2">
        <animateTransform attributeName="transform" type="rotate" from="0 50 150" to="360 50 150" dur="1s" repeatCount="indefinite"/>
     </line>


    <!-- Back Wheel -->
    <circle id="backWheel" class="wheel" cx="250" cy="150" r="45" fill="#FFFFFF" stroke="#000000" stroke-width="5">
      <animateTransform attributeName="transform" type="rotate" from="0 250 150" to="-360 250 150" dur="1s" repeatCount="indefinite"/>
    </circle>
     <!-- Back Spokes -->
     <line id="backSpoke1" class="spoke" x1="250" y1="150" x2="250" y2="105" stroke="#000000" stroke-width="2">
        <animateTransform attributeName="transform" type="rotate" from="0 250 150" to="-360 250 150" dur="1s" repeatCount="indefinite"/>
     </line>
     <line id="backSpoke2" class="spoke" x1="250" y1="150" x2="295" y2="150" stroke="#000000" stroke-width="2">
        <animateTransform attributeName="transform" type="rotate" from="0 250 150" to="-360 250 150" dur="1s" repeatCount="indefinite"/>
     </line>
      <line id="backSpoke3" class="spoke" x1="250" y1="150" x2="250" y2="195" stroke="#000000" stroke-width="2">
        <animateTransform attributeName="transform" type="rotate" from="0 250 150" to="-360 250 150" dur="1s" repeatCount="indefinite"/>
     </line>
      <line id="backSpoke4" class="spoke" x1="250" y1="150" x2="205" y2="150" stroke="#000000" stroke-width="2">
        <animateTransform attributeName="transform" type="rotate" from="0 250 150" to="-360 250 150" dur="1s" repeatCount="indefinite"/>
     </line>

    <!-- Handlebars -->
    <path id="handlebars" class="controls" d="M50 50 L30 30 C10 10 10 0 30 0 L50 0" fill="none" stroke="#000000" stroke-width="5" stroke-linecap="round"/>
     <circle id="bell" class="accessory" cx="40" cy="0" r="5" fill="#FFFF00" stroke="#000000" stroke-width="1"/>

    <!-- Seat -->
    <path id="seat" class="seat" d="M160 30 Q180 20 200 30 C210 40 200 50 190 50 L170 50 Z" fill="#8B4513" stroke="#000000" stroke-width="2"/>
    <line id="seatPost" class="seat" x1="180" y1="50" x2="180" y2="30" stroke="#000000" stroke-width="3"/>


    <!-- Pedals and Crank -->
    <circle id="crank" class="drive" cx="150" cy="200" r="10" fill="#000000"/>
    <line id="crankArmR" class="drive" x1="150" y1="200" x2="180" y2="210" stroke="#000000" stroke-width="4">
        <animateTransform attributeName="transform" type="rotate" from="0 150 200" to="360 150 200" dur="1s" repeatCount="indefinite"/>
    </line>
    <circle id="pedalR" class="drive" cx="180" cy="210" r="8" fill="#FF0000" stroke="#000000" stroke-width="2">
         <animateTransform attributeName="transform" type="rotate" from="0 150 200" to="360 150 200" dur="1s" repeatCount="indefinite"/>
    </circle>
     <line id="crankArmL" class="drive" x1="150" y1="200" x2="120" y2="190" stroke="#000000" stroke-width="4">
         <animateTransform attributeName="transform" type="rotate" from="180 150 200" to="540 150 200" dur="1s" repeatCount="indefinite"/>
     </line>
    <circle id="pedalL" class="drive" cx="120" cy="190" r="8" fill="#0000FF" stroke="#000000" stroke-width="2">
        <animateTransform attributeName="transform" type="rotate" from="180 150 200" to="540 150 200" dur="1s" repeatCount="indefinite"/>
    </circle>

    <!-- Chain -->
     <path id="chain" class="drive" d="M250 150 C230 170 170 170 150 200" fill="none" stroke="#000000" stroke-width="3"/>

  </g>

  <!-- Pelican -->
  <g id="pelican" class="bird" transform="translate(250, 170)">
    <!-- Body -->
    <ellipse id="pelicanBody" class="body" cx="50" cy="50" rx="40" ry="60" fill="#FFFFFF" stroke="#000000" stroke-width="3"/>
    <path id="pelicanWing" class="wing" d="M80 50 Q120 20 100 0 L80 30 Z" fill="#CCCCCC" stroke="#000000" stroke-width="2"/>

    <!-- Head -->
    <path id="pelicanNeck" class="neck" d="M50 0 Q40 -30 30 -50" fill="none" stroke="#000000" stroke-width="5"/>
    <circle id="pelicanHead" class="head" cx="30" cy="-50" r="20" fill="#FFFFFF" stroke="#000000" stroke-width="3"/>

    <!-- Beak and Pouch -->
    <path id="pelicanBeakTop" class="beak" d="M30 -50 L80 -70 Q120 -60 100 -40 L30 -50 Z" fill="#FFA500" stroke="#000000" stroke-width="2"/>
    <path id="pelicanBeakBottom" class="beak" d="M30 -50 L80 -30 Q120 -40 100 -60 L30 -50 Z" fill="#FFA500" stroke="#000000" stroke-width="2"/>
    <path id="pelicanPouch" class="pouch" d="M80 -30 C90 -20 90 0 80 10 C70 20 60 20 50 10 C40 0 40 -20 50 -30 Z" fill="#FFFF00" stroke="#000000" stroke-width="2"/>

    <!-- Eye -->
    <circle id="pelicanEye" class="eye" cx="38" cy="-45" r="5" fill="#000000"/>
    <circle id="pelicanPupil" class="eye" cx="40" cy="-46" r="2" fill="#FFFFFF"/>


    <!-- Legs - positioned on pedals -->
    <line id="pelicanLegR" class="leg" x1="70" y1="110" x2="-180" y2="140" stroke="#000000" stroke-width="4">
         <animateTransform attributeName="transform" type="rotate" from="0 70 110" to="360 70 110" dur="1s" repeatCount="indefinite"/>
    </line>
    <circle id="pelicanFootR" class="foot" cx="-180" cy="140" r="10" fill="#FF4500" stroke="#000000" stroke-width="2">
         <animateTransform attributeName="transform" type="rotate" from="0 70 110" to="360 70 110" dur="1s" repeatCount="indefinite"/>
    </circle>

     <line id="pelicanLegL" class="leg" x1="30" y1="110" x2="-120" y2="120" stroke="#000000" stroke-width="4">
         <animateTransform attributeName="transform" type="rotate" from="0 30 110" to="360 30 110" dur="1s" repeatCount="indefinite"/>
     </line>
    <circle id="pelicanFootL" class="foot" cx="-120" cy="120" r="10" fill="#FF4500" stroke="#000000" stroke-width="2">
         <animateTransform attributeName="transform" type="rotate" from="0 30 110" to="360 30 110" dur="1s" repeatCount="indefinite"/>
    </circle>


     <!-- Animation: Pelican body bobbing -->
    <animateTransform attributeName="transform"
                      attributeType="XML"
                      type="translate"
                      values="250 170; 250 175; 250 170"
                      dur="1s"
                      repeatCount="indefinite"
                      additive="sum"/>

     <!-- Animation: Pelican head tilt slightly -->
     <animateTransform attributeName="transform"
                      attributeType="XML"
                      type="rotate"
                      values="0 30 -50; 5 30 -50; -5 30 -50; 0 30 -50"
                      dur="2s"
                      repeatCount="indefinite"
                      additive="sum"/>


  </g>


   <!-- Overlay grass/detail on ground -->
  <path id="foregroundGrass" class="ground" d="M0 430 Q50 420 100 430 Q150 440 200 430 Q250 420 300 430 Q350 440 400 430 Q450 420 512 430 L512 512 L0 512 Z" fill="#556B2F"/>
   <circle id="flower1" class="plant" cx="50" cy="425" r="5" fill="#FF69B4"/>
    <line id="stem1" class="plant" x1="50" y1="425" x2="50" y2="435" stroke="#228B22" stroke-width="2"/>
    <circle id="flower2" class="plant" cx="450" cy="428" r="6" fill="#BA55D3"/>
     <line id="stem2" class="plant" x1="450" y1="428" x2="450" y2="440" stroke="#228B22" stroke-width="2"/>


   <!-- Ensure animations are exactly 5s loop -->
    <animateTransform xlink:href="#frontWheel" attributeName="transform" type="rotate" from="0 50 150" to="360 50 150" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#frontSpoke1" attributeName="transform" type="rotate" from="0 50 150" to="360 50 150" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#frontSpoke2" attributeName="transform" type="rotate" from="0 50 150" to="360 50 150" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#frontSpoke3" attributeName="transform" type="rotate" from="0 50 150" to="360 50 150" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#frontSpoke4" attributeName="transform" type="rotate" from="0 50 150" to="360 50 150" dur="5s" repeatCount="indefinite"/>

    <animateTransform xlink:href="#backWheel" attributeName="transform" type="rotate" from="0 250 150" to="-360 250 150" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#backSpoke1" attributeName="transform" type="rotate" from="0 250 150" to="-360 250 150" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#backSpoke2" attributeName="transform" type="rotate" from="0 250 150" to="-360 250 150" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#backSpoke3" attributeName="transform" type="rotate" from="0 250 150" to="-360 250 150" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#backSpoke4" attributeName="transform" type="rotate" from="0 250 150" to="-360 250 150" dur="5s" repeatCount="indefinite"/>

    <animateTransform xlink:href="#crankArmR" attributeName="transform" type="rotate" from="0 150 200" to="360 150 200" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#pedalR" attributeName="transform" type="rotate" from="0 150 200" to="360 150 200" dur="5s" repeatCount="indefinite"/>
     <animateTransform xlink:href="#crankArmL" attributeName="transform" type="rotate" from="180 150 200" to="540 150 200" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#pedalL" attributeName="transform" type="rotate" from="180 150 200" to="540 150 200" dur="5s" repeatCount="indefinite"/>

     <!-- Link pelican leg animation to pedals -->
     <animateTransform xlink:href="#pelicanLegR" attributeName="transform" type="rotate" from="0 70 110" to="360 70 110" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#pelicanFootR" attributeName="transform" type="rotate" from="0 70 110" to="360 70 110" dur="5s" repeatCount="indefinite"/>

     <animateTransform xlink:href="#pelicanLegL" attributeName="transform" type="rotate" from="0 30 110" to="360 30 110" dur="5s" repeatCount="indefinite"/>
    <animateTransform xlink:href="#pelicanFootL" attributeName="transform" type="rotate" from="0 30 110" to="360 30 110" dur="5s" repeatCount="indefinite"/>


     <!-- Ensure cloud animation is 5s loop -->
    <animate attributeName="cx" from="100" to="150" dur="5s" repeatCount="indefinite" xlink:href="#cloud1_part1"/>
    <animate attributeName="cx" from="130" to="180" dur="5s" repeatCount="indefinite" xlink:href="#cloud1_part2"/>
     <animate attributeName="cx" from="115" to="165" dur="5s" repeatCount="indefinite" xlink:href="#cloud1_part3"/>
     <animate attributeName="cx" from="400" to="450" dur="5s" repeatCount="indefinite" xlink:href="#cloud2_part1"/>
    <animate attributeName="cx" from="425" to="475" dur="5s" repeatCount="indefinite" xlink:href="#cloud2_part2"/>
    <animate attributeName="cx" from="412" to="462" dur="5s" repeatCount="indefinite" xlink:href="#cloud2_part3"/>

    <!-- Road line animation durations are also implicitly 5s with repeatCount=indefinite -->


</svg>

                
DrawGPT logo DrawGPT logo

Compare & Benchmark AI Models

Try the new DrawGPT Compare

  • Instantly compare the latest AI models side-by-side.
  • Top models: GPT, Gemini, Claude, Grok, SDXL.
  • From OpenAI, Google, Anthropic, xAI, Scenario.gg.
  • Generate images or text with multiple models at once.
  • See results in real time, share, and benchmark.
Try DrawGPT Compare →
DrawGPT Compare demo
DrawGPT logo DrawGPT logo

Draw, Sketch, Paint, or Doodle Instantly

This is where you can draw anything—then AI turns it into real 3D images and more!

  • Draw, sketch, paint, or doodle anything right in your browser.
  • AI transforms your creations into 3D images, vector art, and more.
  • Create images from text prompts using top AI models: DALL-E 3, Gemini, Stable Diffusion, and more.
  • No subscription required – just use tokens for each image.
  • Download as PNG, SVG, or vector graphics.
  • Perfect for logos, icons, art, textures, patterns, and game assets.
  • Type anything, get an image instantly. Commercial use allowed!
Try DrawGPT Draw →
DrawGPT Draw demo

NEW COMMUNITY AI IMAGES


These are recent AI images made by the community! These may use any AI model including DALL-E 3, Flux, Stable Diffusion, GPT-4, o1, and more and may be anything from simple animated SVGs to PNGs.

FAQ

What is DrawGPT?

DrawGPT is a an AI art generator that uses GPT-4, o1, o3, DALL-E 3, Gemini 2.0, Imagegen 3.0, Flux, Stable Diffusion, and Custom GPTs, ChatGPT, and other large language models to generate new images from text prompts.

Why Is This Different?

This does not require access to premium AI model subscriptions, it is able to be used by anyone with an internet connection and tokens. This allows everyone to get access to the very best AI art generation technology.

Artificial intelligence may create strange or unusual images. It is being used to generated images for advertising, entertainment, gaming, marketing, and fun right now!

Because Draw GPT has access to do many models we assume the model providers have followed best practices when attributing or utilizing data and images in the training data.

Yes! You can use the images for commercial purposes! And so can Draw GPT.

What Can DrawGPT Draw?

DrawGPT can draw anything you can think of and more! Just type your text prompt in to the textbox exactly like ChatGPT and see what the AI gives you! Seriously, you can get GPT to draw just about anything for you that you can type in the box.

DrawGPT creates images in PNG, SVG, and Javascript format for download and use. This is different than other AI art projects that only create images in PNG format; being able to get a scene graph via Javascript draw commands is a unique feature of this project and getting any AI art in SVG vector format is unique to DrawGPT.

Many people use this to generate quick art for simple projects, video game assets, new business logos, and more. It is also used to generate images for advertising, entertainment, gaming, marketing, creating art for ads and blog posts with AI and fun.

Want to learn more about DrawGPT, the types of possible image renders, and how to use DrawGPT in your next project as a developer?
Check out our AI image generation API!

Why Are They Weird?

DrawGPT is runs on an AI that has never actually "seen" an image as embodied AI in its life!

This method of drawing images using raw code is not a great way to draw complex images with lots of structure. It may be able to make photograph quality artwork and professional illustrations with AI but it can fail when using certain types of typography.

Is This ChatGPT?

Yes and no. Same same but different.

ChatGPT runs on the same model that this project uses, so this is like using ChatGPT to generate images, but it is a different instance of the model. This means that the AI is not precisly the same but it is the same quality AI, image generation AI, large language model, and overall AI art that ChatGPT is using and that Chat GPT can draw.

What is the difference? ChatGPT is specifically wired up to be conversational and track a conversation thread across multiple user prompts. Images in ChatGPT using DALL-E 3 are not saved to the Intenet and made available publicly.

In comparison DrawGPT does not remember things from prompt to prompt, each image is a unique image that does not reference any of the images or prompts previously supplied.

Copyright

You can do what you want it's your party.

We humbly ask that you backlink to DrawGPT if you do use our images in any promotion or commercial ways, but it is not required.

At the moment all images & Javascript code generated by this tool under the CC0 License with outrageous added term that the license can be revoked or retroactively changed at any time without warning for any image.

Yes! You can use the images for commercial purposes! And so can DrawGPT.

Images & Prompts Private

Images & prompts may be made made public.

Depending on the situation the prompts themselves are stored internally for research purposes.

Employees at OpenAI and DrawGPT have access to any prompts you submit.

DO NOT SUBMIT PERSONAL INFORMATION.