POV-Ray : Newsgroups : povray.general : Windows 95 query : Re: Mobius Strip help Server Time
13 Aug 2024 13:22:15 EDT (-0400)
  Re: Mobius Strip help  
From: Thomas Willhalm
Date: 20 Oct 1998 13:05:36
Message: <qqmzpar43sq.fsf@goldach.fmi.uni-konstanz.de>
Colm Hayden <c.h### [at] apion-tsscom> writes:

> Hi all, could anyone please help me.
> 
> I would like (desperatley need) to render a mobius strip in POV-Ray but
> can't figure out how. Does anyone know? Any help greatly appreciated.
[...]

You can approximate it with bicubic patches. I have generated them with an
external program:

------------------------------ begin pov code ------------------------------
//
// POV-Ray file generated from "DAT/MOEBIUS.MAK"
// by Convert (c) 1997 Thomas Willhalm
//

#include "colors.inc"

global_settings { assumed_gamma 1.2 }

background { color White }

light_source { <3,10,7> rgb 1 }

camera {
   location  <7,7,7>
   look_at <0,0,0>
}

#declare rad =0;
#declare st = 4;
#declare fl = 0.0;
#declare tex1=texture{pigment{color Blue}};

// MQUAD8 No. 1
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
  <4,0,1><4.06713,0.530867,1><4.02573,1.066,0.9936><3.8758,1.6054,0.9808>
 
<4,0,0.333333><3.92123,0.510456,0.333333><3.83976,1.02902,0.3312><3.75557,1.5557,0.326933>
 
<4,0,-0.333333><3.87582,0.510022,-0.333333><3.75429,1.012,-0.3312><3.6354,1.50593,-0.326933>
  <4,0,-1><3.9309,0.529567,-1><3.76933,1.01493,-0.9936><3.5153,1.4561,-0.9808>
  texture {tex1}
}
// MQUAD8 No. 2
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<3.8758,1.6054,0.9808><3.72327,2.14513,0.9679><3.46433,2.643,0.948933><3.099,3.099,0.9239>
 
<3.75557,1.5557,0.326933><3.48369,2.00493,0.322633><3.2047,2.45923,0.316311><2.9186,2.9186,0.307967>
 
<3.6354,1.50593,-0.326933><3.32929,1.92169,-0.322633><3.03022,2.33244,-0.316311><2.7382,2.7382,-0.307967>
 
<3.5153,1.4561,-0.9808><3.26007,1.8954,-0.9679><2.9409,2.26263,-0.948933><2.5578,2.5578,-0.9239>
  texture {tex1}
}
// MQUAD8 No. 3
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<3.099,3.099,0.9239><2.73117,3.55413,0.8987><2.27927,3.92407,0.8679><1.7433,4.2088,0.8315>
 
<2.9186,2.9186,0.307967><2.48861,3.2346,0.299567><2.0496,3.5506,0.2893><1.60157,3.8666,0.277167>
 
<2.7382,2.7382,-0.307967><2.30306,3.00027,-0.299567><1.87693,3.26233,-0.2893><1.45983,3.5244,-0.277167>
 
<2.5578,2.5578,-0.9239><2.1745,2.85113,-0.8987><1.76127,3.05927,-0.8679><1.3181,3.1822,-0.8315>
  texture {tex1}
}
// MQUAD8 No. 4
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<1.7433,4.2088,0.8315><1.20547,4.49137,0.794967><0.624367,4.65747,0.7535><0,4.7071,0.7071>
 
<1.60157,3.8666,0.277167><1.07547,3.99497,0.264989><0.541611,4.118,0.251167><0,4.2357,0.2357>
 
<1.45983,3.5244,-0.277167><0.965467,3.59903,-0.264989><0.478856,3.679,-0.251167><0,3.7643,-0.2357>
 
<1.3181,3.1822,-0.8315><0.875467,3.30357,-0.794967><0.4361,3.34047,-0.7535><0,3.2929,-0.7071>
  texture {tex1}
}
// MQUAD8 No. 5
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<0,4.7071,0.7071><-0.6253,4.75383,0.660667><-1.2416,4.6727,0.610167><-1.8489,4.4637,0.5556>
 
<0,4.2357,0.2357><-0.5419,4.1501,0.220222><-1.08749,4.05539,0.203389><-1.63677,3.95157,0.1852>
 
<0,3.7643,-0.2357><-0.478567,3.6469,-0.220222><-0.953444,3.53861,-0.203389><-1.42463,3.43943,-0.1852>
 
<0,3.2929,-0.7071><-0.4353,3.24423,-0.660667><-0.839467,3.12237,-0.610167><-1.2125,2.9273,-0.5556>
  texture {tex1}
}
// MQUAD8 No. 6
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<-1.8489,4.4637,0.5556><-2.45583,4.2517,0.500967><-3.0001,3.92437,0.443333><-3.4817,3.4817,0.3827>
 
<-1.63677,3.95157,0.1852><-2.10846,3.65979,0.166989><-2.57826,3.35799,0.147778><-3.04617,3.04617,0.127567>
 
<-1.42463,3.43943,-0.1852><-1.81808,3.15314,-0.166989><-2.21341,2.87688,-0.147778><-2.61063,2.61063,-0.127567>
 
<-1.2125,2.9273,-0.5556><-1.5847,2.73177,-0.500967><-1.90557,2.48103,-0.443333><-2.1751,2.1751,-0.3827>
  texture {tex1}
}
// MQUAD8 No. 7
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<-3.4817,3.4817,0.3827><-3.96147,3.0365,0.322033><-4.33477,2.5113,0.2595><-4.6016,1.9061,0.1951>
 
<-3.04617,3.04617,0.127567><-3.37038,2.59043,0.107344><-3.6875,2.127,0.0865><-3.99753,1.65587,0.0650333>
 
<-2.61063,2.61063,-0.127567><-2.86449,2.20127,-0.107344><-3.12543,1.7996,-0.0865><-3.39347,1.40563,-0.0650333>
 
<-2.1751,2.1751,-0.3827><-2.4438,1.869,-0.322033><-2.64857,1.5291,-0.2595><-2.7894,1.1554,-0.1951>
  texture {tex1}
}
// MQUAD8 No. 8
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<-4.6016,1.9061,0.1951><-4.8656,1.29933,0.130667><-4.9984,0.663967,0.0656333><-5,0,0>
 
<-3.99753,1.65587,0.0650333><-4.11969,1.10679,0.0435556><-4.23162,0.554833,0.0218778><-4.33333,0,0>
 
<-3.39347,1.40563,-0.0650333><-3.47431,0.934211,-0.0435556><-3.56538,0.465667,-0.0218778><-3.66667,0,0>
 
<-2.7894,1.1554,-0.1951><-2.92947,0.7816,-0.130667><-2.99967,0.396467,-0.0656333><-3,0,0>
  texture {tex1}
}
// MQUAD8 No. 9
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<-5,0,0><-4.9984,-0.663967,-0.0656333><-4.8656,-1.29933,-0.130667><-4.6016,-1.9061,-0.1951>
 
<-4.33333,0,0><-4.23162,-0.554833,-0.0218778><-4.11969,-1.10679,-0.0435556><-3.99753,-1.65587,-0.0650333>
 
<-3.66667,0,0><-3.56538,-0.465667,0.0218778><-3.47431,-0.934211,0.0435556><-3.39347,-1.40563,0.0650333>
 
<-3,0,0><-2.99967,-0.396467,0.0656333><-2.92947,-0.7816,0.130667><-2.7894,-1.1554,0.1951>
  texture {tex1}
}
// MQUAD8 No. 10
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<-4.6016,-1.9061,-0.1951><-4.33477,-2.5113,-0.2595><-3.96147,-3.0365,-0.322033><-3.4817,-3.4817,-0.3827>
 
<-3.99753,-1.65587,-0.0650333><-3.6875,-2.127,-0.0865><-3.37038,-2.59043,-0.107344><-3.04617,-3.04617,-0.127567>
 
<-3.39347,-1.40563,0.0650333><-3.12543,-1.7996,0.0865><-2.86449,-2.20127,0.107344><-2.61063,-2.61063,0.127567>
 
<-2.7894,-1.1554,0.1951><-2.64857,-1.5291,0.2595><-2.4438,-1.869,0.322033><-2.1751,-2.1751,0.3827>
  texture {tex1}
}
// MQUAD8 No. 11
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<-3.4817,-3.4817,-0.3827><-3.0001,-3.92437,-0.443333><-2.45583,-4.2517,-0.500967><-1.8489,-4.4637,-0.5556>
 
<-3.04617,-3.04617,-0.127567><-2.57826,-3.35799,-0.147778><-2.10846,-3.65979,-0.166989><-1.63677,-3.95157,-0.1852>
 
<-2.61063,-2.61063,0.127567><-2.21341,-2.87688,0.147778><-1.81808,-3.15314,0.166989><-1.42463,-3.43943,0.1852>
 
<-2.1751,-2.1751,0.3827><-1.90557,-2.48103,0.443333><-1.5847,-2.73177,0.500967><-1.2125,-2.9273,0.5556>
  texture {tex1}
}
// MQUAD8 No. 12
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<-1.8489,-4.4637,-0.5556><-1.2416,-4.6727,-0.610167><-0.6253,-4.75383,-0.660667><0,-4.7071,-0.7071>
 
<-1.63677,-3.95157,-0.1852><-1.08749,-4.05539,-0.203389><-0.5419,-4.1501,-0.220222><0,-4.2357,-0.2357>
 
<-1.42463,-3.43943,0.1852><-0.953444,-3.53861,0.203389><-0.478567,-3.6469,0.220222><0,-3.7643,0.2357>
 
<-1.2125,-2.9273,0.5556><-0.839467,-3.12237,0.610167><-0.4353,-3.24423,0.660667><0,-3.2929,0.7071>
  texture {tex1}
}
// MQUAD8 No. 13
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<0,-4.7071,-0.7071><0.624367,-4.65747,-0.7535><1.20547,-4.49137,-0.794967><1.7433,-4.2088,-0.8315>
 
<0,-4.2357,-0.2357><0.541611,-4.118,-0.251167><1.07547,-3.99497,-0.264989><1.60157,-3.8666,-0.277167>
 
<0,-3.7643,0.2357><0.478856,-3.679,0.251167><0.965467,-3.59903,0.264989><1.45983,-3.5244,0.277167>
 
<0,-3.2929,0.7071><0.4361,-3.34047,0.7535><0.875467,-3.30357,0.794967><1.3181,-3.1822,0.8315>
  texture {tex1}
}
// MQUAD8 No. 14
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<1.7433,-4.2088,-0.8315><2.27927,-3.92407,-0.8679><2.73117,-3.55413,-0.8987><3.099,-3.099,-0.9239>
 
<1.60157,-3.8666,-0.277167><2.0496,-3.5506,-0.2893><2.48861,-3.2346,-0.299567><2.9186,-2.9186,-0.307967>
 
<1.45983,-3.5244,0.277167><1.87693,-3.26233,0.2893><2.30306,-3.00027,0.299567><2.7382,-2.7382,0.307967>
 
<1.3181,-3.1822,0.8315><1.76127,-3.05927,0.8679><2.1745,-2.85113,0.8987><2.5578,-2.5578,0.9239>
  texture {tex1}
}
// MQUAD8 No. 15
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
 
<3.099,-3.099,-0.9239><3.46433,-2.643,-0.948933><3.72327,-2.14513,-0.9679><3.8758,-1.6054,-0.9808>
 
<2.9186,-2.9186,-0.307967><3.2047,-2.45923,-0.316311><3.48369,-2.00493,-0.322633><3.75557,-1.5557,-0.326933>
 
<2.7382,-2.7382,0.307967><3.03022,-2.33244,0.316311><3.32929,-1.92169,0.322633><3.6354,-1.50593,0.326933>
 
<2.5578,-2.5578,0.9239><2.9409,-2.26263,0.948933><3.26007,-1.8954,0.9679><3.5153,-1.4561,0.9808>
  texture {tex1}
}
// MQUAD8 No. 16
bicubic_patch {
  type 0 flatness fl u_steps st v_steps st
  <3.8758,-1.6054,-0.9808><4.02573,-1.066,-0.9936><4.06713,-0.530867,-1><4,0,-1>
 
<3.75557,-1.5557,-0.326933><3.83976,-1.02902,-0.3312><3.92123,-0.510456,-0.333333><4,0,-0.333333>
 
<3.6354,-1.50593,0.326933><3.75429,-1.012,0.3312><3.87582,-0.510022,0.333333><4,0,0.333333>
  <3.5153,-1.4561,0.9808><3.76933,-1.01493,0.9936><3.9309,-0.529567,1><4,0,1>
  texture {tex1}
}

------------------------------  end  pov code ------------------------------

I hope this helps.

Thomas

-- 
http://www.fmi.uni-konstanz.de/~willhalm


Post a reply to this message

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