POV-Ray : Newsgroups : povray.binaries.scene-files : flapping butterfly : flapping butterfly Server Time
1 Sep 2024 22:12:55 EDT (-0400)
  flapping butterfly  
From: andrel
Date: 4 Feb 2004 13:16:18
Message: <402136A0.7020206@hotmail.com>
This is my first attempt to model a butterfly that
can flap its wings. The process I used was:
- cut out the butterfly from a picture (that is
  later used for the uv-mapping)
- separate the wings and the body
- make triangulated meshes of all three.
  The wings flat and the body rounded.
- stitch the components together (i.e. make the points
  on the wings that connect to the body the same as
  those on the body)
- rotate the wings in steps of (about) 15 degrees
  I could not just rotate the vertices in the mesh
  as that would disconnect the wings from the body.
  so I:
  - rotate all points in the wings over a line
   from the end of the tail to the point on the wing/body
   connection closest to the head.
  - move the displaced wing/body vertices back.
  - relax the mesh a bit, minimizing the curvature.
  I also had to rotate a bit more than 90 degrees for
  the wings to meet at the top (and then again prevent
  the left and right wings to intersect).
- for all vertices from the 0/15/30/45 degrees rotation
  construct a cubic interpolation through those points.
  and also for the 45/60/75/90.
  I knew that with two cubic splines you can get a good
  approximation of a quarter circle (see e.g. my patchwork
  ball)
- Output all the vertices to a pov include file as smooth
  triangle with uv mapping. For the coordinates use the
  cubic interpolation. At the same time create the #macro
  that chooses the right interpolation (if you do not know
  what I mean: look at the first lines in atalanta.inc)

So I finally ended up with a macro that can put the wings
in any position from flat to totally folded together using
one parameter that ranges from 0 to 1.

Known problems:
- It is only the upper part of the animal (well that is
  what was in the picture, right?)
- I probably should have used a mesh2 struct.
- no legs nor antennae
- probably should also change the body a bit while moving
  the wings.
- wings should probably be able to swing a bit down also.

Questions:
- C/C. Especially comments if I am on the right way to
solve this kind of problem, or if there is a simpler way.
- can I have bitmap on the frontside that differs from
the backside. I can not find such I feature in POV, but
maybe I overlooked. If not, I have to make a separate
backside triangulation (as opposed to using the front
side twice), because I can not get an offset that always
works right.

	Andrel


Post a reply to this message


Attachments:
Download 'atalanta.zip' (138 KB)

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.