File:Ripple Surface.png
Summary
| Description |
A 3D rendering of the surface given by: |
| Date | 12 April 2007 (upload date) |
| Source | Self-made, using Mathematica 5.1. |
| Author | Inductiveload |
Mathematica Code
This code does not require any modules to be loaded. It uses Chris Hill's Anti-aliasing code.
gr = Plot3D[Cos[x^2 + y^2],
{x, -4, 4},
{y, -4, 4},
PlotPoints -> 600,
Mesh -> False,
BoxRatios -> {2, 2, 0.2},
Ticks -> False,
Axes -> False,
Boxed -> False,
ImageSize -> 800]
aa[gr_] := Module[{siz, kersiz, ker, dat, as, ave, is, ar},
is = ImageSize /. Options[gr, ImageSize];
ar = AspectRatio /. Options[gr, AspectRatio];
If[! NumberQ[is], is = 288];
kersiz = 4;
img = ImportString[ExportString[gr, PNG, ImageSize -> (is kersiz)], PNG];
siz = Reverse@Dimensions[img[[1, 1]]][[{1, 2}]];
ker = Table[N[1/kersiz^2], {kersiz}, {kersiz}];
dat = N[img[[1, 1]]];
as = Dimensions[dat];
ave = Partition[Transpose[Flatten[
ListConvolve[ker, dat[[All, All, #]]]] & /@ Range[as[[3]]]],
as[[2]] - kersiz + 1];
ave = Take[ave, Sequence @@ ({1, Dimensions[ave][[#]], kersiz} & /@ Range[
Length[Dimensions[ave]] - 1])];
Show[Graphics[Raster[ave, {{0, 0},
siz/kersiz}, {0, 255}, ColorFunction -> RGBColor]], PlotRange -> \
{{0, siz[[1]]/kersiz}, {0, siz[[2]]/kersiz}}, ImageSize -> is, AspectRatio ->
ar]
]
finalgraphic = aa[gr]
Licensing
| I, the copyright holder of this work, release this work into the public domain. This applies worldwide. In some countries this may not be legally possible; if so: I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law. |