public SuperEllipsoid(double e, double n, Point3 loc)
 {
     this.e       = e;
     this.n       = n;
     this.loc     = loc;
     this.texture = new POVColor("Green");
 }
示例#2
0
 public JuliaFractal(String algebra, String function, int precision, int iterations,
                     Point3 location   = null, float x            = -0.162f, float y = 0.163f, float z = 0.560f, float k = -0.599f,
                     Signal <float> rx = null, Signal <float> ry  = null, Signal <float> rz = null, Signal <float> rk = null,
                     Point3 rotation   = null, PovTexture texture = null, String finish     = null, bool reactive     = false)
 {
     this.reactive = reactive;
     this.loc      = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot      = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.tex      = texture ?? new POVColor("Red");
     this.finish   = finish ?? "finish {phong .9 reflection .5}";
     this.x        = rx ?? new Lift0f(x);
     this.y        = ry ?? new Lift0f(y);
     this.z        = rz ?? new Lift0f(z);
     this.k        = rk ?? new Lift0f(k);
     if (algebra.Equals("quaternion"))
     {
         this.algebra = algebra;
     }
     else if (algebra.Equals(" hypercomplex"))
     {
         this.algebra = algebra;
     }
     else
     {
         this.algebra = "quaternion";
     }
     this.precision  = precision;
     this.iterations = iterations;
     this.function   = function;
 }
示例#3
0
 public Ovus(Point3 loc, float topRadius, float bottomRadius, PovTexture texture)
 {
     this.loc          = loc;
     this.topRadius    = topRadius;
     this.bottomRadius = bottomRadius;
     this.texture      = texture;
 }
 public SuperEllipsoid(double e, double n, Point3 loc, PovTexture texture)
 {
     this.e       = e;
     this.n       = n;
     this.texture = texture;
     this.loc     = loc;
 }
 public JuliaFractal(String algebra, String function, int precision, int iterations,
     Point3 location = null, float x = -0.162f, float y = 0.163f, float z = 0.560f, float k = -0.599f,
     Signal<float> rx = null, Signal<float> ry = null, Signal<float> rz = null, Signal<float> rk = null,
     Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.reactive = reactive;
     this.loc = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.tex = texture ?? new POVColor("Red");
     this.finish = finish ?? "finish {phong .9 reflection .5}";
     this.x = rx ?? new Lift0f(x);
     this.y = ry ?? new Lift0f(y);
     this.z = rz ?? new Lift0f(z);
     this.k = rk ?? new Lift0f(k);
     if (algebra.Equals("quaternion"))
     {
         this.algebra = algebra;
     }
     else if (algebra.Equals(" hypercomplex"))
     {
         this.algebra = algebra;
     }
     else this.algebra = "quaternion";
     this.precision = precision;
     this.iterations = iterations;
     this.function = function;
 }
示例#6
0
 public Ovus(Point3 loc, float topRadius, float bottomRadius)
 {
     this.loc          = loc;
     this.topRadius    = topRadius;
     this.bottomRadius = bottomRadius;
     this.texture      = new POVColor("Red");
 }
 public JuliaFractal(float x, float y, float z, float k, Point3 loc, String algebra, String function,
                     int precision, int iterations, PovTexture texture)
 {
     this.loc      = loc;
     this.x        = x;
     this.y        = y;
     this.z        = z;
     this.k        = k;
     this.function = function;
     this.texture  = texture;
     if (algebra.Equals("quaternion"))
     {
         this.algebra = algebra;
     }
     else if (algebra.Equals(" hypercomplex"))
     {
         this.algebra = algebra;
     }
     else
     {
         this.algebra = "quaternion";
     }
     this.precision  = precision;
     this.iterations = iterations;
 }
示例#8
0
 public Box(Point3 lowerleftcorner = null, Point3 upperrightcorner = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, bool reactive = false)
 {
     this.reactive = reactive;
     this.lowleft  = lowerleftcorner ?? new Point3(0, 0, 0, reactive: reactive);
     this.upright  = upperrightcorner ?? new Point3(0, 0, 0, reactive: reactive);
     this.trans    = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot      = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.tex      = texture ?? new POVColor("Red");
 }
示例#9
0
 public Torus(float outerrad = 1.0f, Signal <float> outerradr = null, float innerrad = 1.0f, Signal <float> innerradr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, bool reactive = false)
 {
     this.outerrad = outerradr ?? new Lift0f(outerrad);
     this.innerrad = innerradr ?? new Lift0f(innerrad);
     this.trans    = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot      = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.tex      = texture ?? new POVColor("Red");
     this.reactive = reactive;
 }
示例#10
0
 public Sphere(Point3 location = null, float radius = 1.0f, Signal <float> rrad = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, bool reactive = false)
 {
     this.reactive = reactive;
     this.loc      = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.trans    = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot      = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.tex      = texture ?? new POVColor("Red");
     this.rad      = rrad ?? new Lift0f(radius);
 }
示例#11
0
 public Cylinder(Point3 basepoint = null, Point3 toppoint = null, float radius = 1.0f, Point3 translate = null, Point3 rotation = null, PovTexture texture = null)
 {
     this.basep = basepoint ?? new Point3(0, 0, 0);
     this.topp  = toppoint ?? new Point3(0, 0, 0);
     this.rad   = radius;
     this.trans = translate ?? new Point3(0, 0, 0);
     this.rot   = rotation ?? new Point3(0, 0, 0);
     this.tex   = texture ?? new POVColor("Red");
 }
示例#12
0
 public Plane(Point3 normal = null, float disp = -1.0f, Signal <float> dispr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, bool reactive = false)
 {
     this.n        = normal ?? new Point3(0, 1, 0, reactive: reactive);
     this.d        = dispr ?? new Lift0f(disp);
     this.trans    = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot      = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.tex      = texture ?? new POVColor("Red");
     this.reactive = reactive;
 }
示例#13
0
 public Plane(Point3 normal = null, float disp = -1.0f, Signal<float> dispr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.normal = normal ?? new Point3(0, 1, 0, reactive: reactive);
     this.disp = dispr ?? new Lift0f(disp);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.texture = texture ?? new POVColor("Red");
     this.finish = finish ?? "finish {phong .9 reflection .5}";
     this.reactive = reactive;
 }
示例#14
0
 public Torus(float outerrad = 1.0f, Signal<float> outerradr = null, float innerrad = 1.0f, Signal<float> innerradr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.outerrad = outerradr ?? new Lift0f(outerrad);
     this.innerrad = innerradr ?? new Lift0f(innerrad);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.texture = texture ?? new POVColor("Red");
     this.finish = finish ?? "finish {phong .9 reflection .5}";
     this.reactive = reactive;
 }
示例#15
0
 public Box(Point3 lowerleftcorner = null, Point3 upperrightcorner = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.reactive = reactive;
     this.lowerleftcorner = lowerleftcorner ?? new Point3(0, 0, 0, reactive: reactive);
     this.upperrightcorner = upperrightcorner ?? new Point3(0, 0, 0, reactive: reactive);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.finish = finish ?? "finish {phong .9 reflection .5}";
     this.texture = texture ?? new POVColor("Red");
 }
示例#16
0
 public Sphere(Point3 location = null, float radius = 1.0f, Signal <float> rrad = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.reactive  = reactive;
     this.location  = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation  = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.texture   = texture ?? new POVColor("Red");
     this.finish    = finish ?? "finish {phong .9 reflection .5}";
     this.radius    = rrad ?? new Lift0f(radius);
 }
示例#17
0
 public Plane(Point3 normal = null, float disp = -1.0f, Signal <float> dispr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.normal    = normal ?? new Point3(0, 1, 0, reactive: reactive);
     this.disp      = dispr ?? new Lift0f(disp);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation  = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.texture   = texture ?? new POVColor("Red");
     this.finish    = finish ?? "finish {phong .9 reflection .5}";
     this.reactive  = reactive;
 }
示例#18
0
 public Torus(float outerrad = 1.0f, Signal <float> outerradr = null, float innerrad = 1.0f, Signal <float> innerradr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.outerrad  = outerradr ?? new Lift0f(outerrad);
     this.innerrad  = innerradr ?? new Lift0f(innerrad);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation  = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.texture   = texture ?? new POVColor("Red");
     this.finish    = finish ?? "finish {phong .9 reflection .5}";
     this.reactive  = reactive;
 }
示例#19
0
 public Box(Point3 lowerleftcorner = null, Point3 upperrightcorner = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.reactive         = reactive;
     this.lowerleftcorner  = lowerleftcorner ?? new Point3(0, 0, 0, reactive: reactive);
     this.upperrightcorner = upperrightcorner ?? new Point3(0, 0, 0, reactive: reactive);
     this.translate        = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation         = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.finish           = finish ?? "finish {phong .9 reflection .5}";
     this.texture          = texture ?? new POVColor("Red");
 }
示例#20
0
 public Sphere(Point3 location = null, float radius = 1.0f, Signal<float> rrad = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.reactive = reactive;
     this.location = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.texture = texture ?? new POVColor("Red");
     this.finish = finish ?? "finish {phong .9 reflection .5}";
     this.radius = rrad ?? new Lift0f(radius);
 }
示例#21
0
 public Cone(Point3 bottompoint = null, float bottomradius = 1.0f, Point3 toppoint = null, float topradius = 0.0f, Point3 translate = null, Point3 rotation = null, PovTexture texture = null)
 {
     this.botp   = bottompoint ?? new Point3(0, 0, 0);
     this.botrad = bottomradius;
     this.topp   = toppoint ?? new Point3(0, 0, 0);
     this.toprad = topradius;
     this.trans  = translate ?? new Point3(0, 0, 0);
     this.rot    = rotation ?? new Point3(0, 0, 0);
     this.tex    = texture ?? new POVColor("Red");
 }
示例#22
0
 public Cylinder(Point3 basepoint = null, Point3 toppoint = null, float radius = 1.0f, Signal<float> radiusr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.basepoint = basepoint ?? new Point3(0, 0, 0, reactive: reactive);
     this.toppoint = toppoint ?? new Point3(0, 0, 0, reactive: reactive);
     this.radius = radiusr ?? new Lift0f(radius);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.finish = finish ?? "finish {phong .9 reflection .5}";
     this.texture = texture ?? new POVColor("Red");
     this.reactive = reactive;
 }
示例#23
0
 public Cylinder(Point3 basepoint = null, Point3 toppoint = null, float radius = 1.0f, Signal <float> radiusr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.basepoint = basepoint ?? new Point3(0, 0, 0, reactive: reactive);
     this.toppoint  = toppoint ?? new Point3(0, 0, 0, reactive: reactive);
     this.radius    = radiusr ?? new Lift0f(radius);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation  = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.finish    = finish ?? "finish {phong .9 reflection .5}";
     this.texture   = texture ?? new POVColor("Red");
     this.reactive  = reactive;
 }
示例#24
0
 public Plane(Point3 vectorx = null, Point3 vectory = null, float disp = -1.0f, Signal<float> dispr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, bool reactive = false)
 {
     Point3 n = vectorx.crossproduct(vectory);
     this.normal = n ?? new Point3(0, 1, 0, reactive: reactive);
     this.normal.reactive = reactive;
     this.disp = dispr ?? new Lift0f(disp);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.texture = texture ?? new POVColor("Red");
     this.reactive = reactive;
 }
示例#25
0
 public Cone(Point3 bottompoint = null, float bottomradius = 1.0f, Signal <float> bottomradiusr = null, Point3 toppoint = null, float topradius = 0.0f, Signal <float> topradiusr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.bottompoint  = bottompoint ?? new Point3(0, 0, 0);
     this.bottomradius = bottomradiusr ?? new Lift0f(bottomradius);
     this.toppoint     = toppoint ?? new Point3(0, 0, 0);
     this.topradius    = topradiusr ?? new Lift0f(topradius);
     this.translate    = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation     = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.finish       = finish ?? "finish {phong .9 reflection .5}";
     this.texture      = texture ?? new POVColor("Red");
     this.reactive     = reactive;
 }
示例#26
0
        public Plane(Point3 vectorx = null, Point3 vectory = null, float disp = -1.0f, Signal <float> dispr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, bool reactive = false)
        {
            Point3 n = vectorx.crossproduct(vectory);

            this.normal          = n ?? new Point3(0, 1, 0, reactive: reactive);
            this.normal.reactive = reactive;
            this.disp            = dispr ?? new Lift0f(disp);
            this.translate       = translate ?? new Point3(0, 0, 0, reactive: reactive);
            this.rotation        = rotation ?? new Point3(0, 0, 0, reactive: reactive);
            this.texture         = texture ?? new POVColor("Red");
            this.reactive        = reactive;
        }
示例#27
0
 public SuperEllipsoid(Point3 location  = null, float e         = 3f, float n = 2f, Signal <float> re = null, Signal <float> rn = null,
                       Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.reactive = reactive;
     this.loc      = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.trans    = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot      = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.finish   = finish ?? "finish {phong .9 reflection .5}";
     this.e        = re ?? new Lift0f(e);
     this.n        = rn ?? new Lift0f(n);
     this.tex      = texture ?? new POVColor("Red");
 }
示例#28
0
 public Cone(Point3 bottompoint = null, float bottomradius = 1.0f, Signal<float> bottomradiusr = null, Point3 toppoint = null, float topradius = 0.0f, Signal<float> topradiusr = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null ,String finish = null, bool reactive = false)
 {
     this.bottompoint = bottompoint ?? new Point3(0, 0, 0);
     this.bottomradius = bottomradiusr ?? new Lift0f(bottomradius);
     this.toppoint = toppoint ?? new Point3(0, 0, 0);
     this.topradius = topradiusr ?? new Lift0f(topradius);
     this.translate = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rotation = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.finish = finish ?? "finish {phong .9 reflection .5}";
     this.texture = texture ?? new POVColor("Red");
     this.reactive = reactive;
 }
 public SuperEllipsoid(Point3 location = null,float e =3f, float n = 2f, Signal<float> re = null,Signal<float> rn = null,
     Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.reactive = reactive;
     this.loc = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.trans = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.finish = finish ?? "finish {phong .9 reflection .5}";
     this.e = re ?? new Lift0f(e);
     this.n = rn ?? new Lift0f(n);
     this.tex = texture ?? new POVColor("Red");
 }
示例#30
0
 public Ovus(Point3 location = null, float topRadius = 1.0f, float bottomRadius = 2f, Signal<float> rt = null,
     Signal<float> rb = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null,
     bool reactive = false)
 {
     this.reactive = reactive;
     this.loc = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.trans = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.finish = finish ?? "finish {phong .9 reflection .5}";
     this.tex = texture ?? new POVColor("Red");
     this.topRadius = rt ?? new Lift0f(topRadius);
     this.bottomRadius = rb ?? new Lift0f(bottomRadius);
 }
示例#31
0
 public Lathe(String spline_type, int numPoints, PointF[] p, Point3 loc, PovTexture texture)
 {
     this.spline_type = spline_type;
     this.numPoints   = numPoints;
     this.loc         = loc;
     this.p           = p;
     this.texture     = texture;
     for (int i = 0; i < p.Length - 1; i++)
     {
         points += "< " + p[i].X + ", " + p[i].Y + "> , ";
     }
     points += "< " + p[p.Length - 1].X + ", " + p[p.Length - 1].Y + ">";
 }
示例#32
0
 //String bounds;
 public Parametric(String xFunc, String yFunc, String zFunc, float u1,
                   float u2, float v1, float v2, Point3 loc)
 {
     this.xFunc   = xFunc;
     this.yFunc   = yFunc;
     this.zFunc   = zFunc;
     this.u1      = u1;
     this.u2      = u2;
     this.v1      = v1;
     this.v2      = v2;
     this.loc     = loc;
     this.texture = new POVColor("Green");
 }
示例#33
0
 public Ovus(Point3 location   = null, float topRadius  = 1.0f, float bottomRadius = 2f, Signal <float> rt    = null,
             Signal <float> rb = null, Point3 translate = null, Point3 rotation    = null, PovTexture texture = null, String finish = null,
             bool reactive     = false)
 {
     this.reactive     = reactive;
     this.loc          = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.trans        = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot          = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.finish       = finish ?? "finish {phong .9 reflection .5}";
     this.tex          = texture ?? new POVColor("Red");
     this.topRadius    = rt ?? new Lift0f(topRadius);
     this.bottomRadius = rb ?? new Lift0f(bottomRadius);
 }
示例#34
0
        public Sor(int numPoints, PointF[] p, Point3 loc)
        {
            this.numPoints = numPoints;
            this.loc       = loc;
            this.p         = p;

            this.texture = new POVColor("Green");
            for (int i = 0; i < p.Length - 1; i++)
            {
                points += "< " + p[i].X + ", " + p[i].Y + "> , ";
            }
            points += "< " + p[p.Length - 1].X + ", " + p[p.Length - 1].Y + ">";
        }
示例#35
0
 public Parametric(String xFunc, String yFunc, String zFunc, float u1,
                   float u2, float v1, float v2, Point3 loc, PovTexture texture)
 {
     this.xFunc   = xFunc;
     this.yFunc   = yFunc;
     this.zFunc   = zFunc;
     this.u1      = u1;
     this.u2      = u2;
     this.v1      = v1;
     this.v2      = v2;
     this.loc     = loc;
     this.texture = texture;
     this.loc     = loc;
 }
示例#36
0
        public Sor(String spline_type, float height1, float height2, int numPoints, PointF[] p, Point3 loc, PovTexture texture)
        {
            this.numPoints = numPoints;
            this.loc       = loc;
            this.p         = p;

            this.texture = new POVColor("Green");
            for (int i = 0; i < p.Length - 1; i++)
            {
                points += "< " + p[i].X + ", " + p[i].Y + "> , ";
            }
            points      += "< " + p[p.Length - 1].X + ", " + p[p.Length - 1].Y + ">";
            this.texture = texture;
        }
示例#37
0
        public Sor(int numPoints, PointF[] p,
                   Point3 location  = null, float radius    = 1.0f, Signal <float> rrad = null,
                   Point3 translate = null, Point3 rotation = null, PovTexture texture  = null, String finish = null, bool reactive = false)
        {
            this.numPoints = numPoints;
            this.loc       = location ?? new Point3(0, 0, 0, reactive: reactive);
            this.rot       = rotation ?? new Point3(0, 0, 0, reactive: reactive);
            this.tex       = texture ?? new POVColor("Green");
            this.p         = p;
            this.finish    = finish ?? "finish {phong .9 reflection .5}";

            for (int i = 0; i < p.Length - 1; i++)
            {
                points += "< " + p[i].X + ", " + p[i].Y + "> , ";
            }
            points += "< " + p[p.Length - 1].X + ", " + p[p.Length - 1].Y + ">";
        }
示例#38
0
        public Sor(int numPoints, PointF[] p,
            Point3 location = null, float radius = 1.0f, Signal<float> rrad = null,
            Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
        {
            this.numPoints = numPoints;
            this.loc = location ?? new Point3(0, 0, 0, reactive: reactive);
            this.rot = rotation ?? new Point3(0, 0, 0, reactive: reactive);
            this.tex = texture ?? new POVColor("Green");
            this.p = p;
            this.finish = finish ?? "finish {phong .9 reflection .5}";

            for (int i = 0; i < p.Length - 1; i++)
            {
                points += "< " + p[i].X + ", " + p[i].Y + "> , ";
            }
            points += "< " + p[p.Length - 1].X + ", " + p[p.Length - 1].Y + ">";
        }
示例#39
0
 public Prism(String spline_type, float height1, float height2, int numPoints, Point2[] p, Point3 loc = null,
     bool reactive = false, Signal<float> rh1 = null, Signal<float> rh2 = null, Signal<float> nps = null)
 {
     this.reactive = reactive;
     this.spline_type = spline_type;
     this.numPoints = nps ?? new Lift0f(numPoints);
     this.loc = loc ?? new Point3(0, 0, 0, reactive: reactive);
     this.p = p;
     this.height1 = rh1 ?? new Lift0f(height1);
     this.height2 = rh2 ?? new Lift0f(height2);
     this.texture = new POVColor("Green");
     //ints = this.height1+", "+this.height2+", " + this.numPoints;
     for (int i = 0; i < p.Length - 1; i++)
     {
         points += "< " + p[i].x + ", " + p[i].y + "> , ";
     }
     points += "< " + p[p.Length - 1].x + ", " + p[p.Length - 1].y + ">";
 }
示例#40
0
 public Prism(String spline_type, float height1, float height2, int numPoints, Point2[] p, Point3 loc = null,
              bool reactive = false, Signal <float> rh1 = null, Signal <float> rh2 = null, Signal <float> nps = null)
 {
     this.reactive    = reactive;
     this.spline_type = spline_type;
     this.numPoints   = nps ?? new Lift0f(numPoints);
     this.loc         = loc ?? new Point3(0, 0, 0, reactive: reactive);
     this.p           = p;
     this.height1     = rh1 ?? new Lift0f(height1);
     this.height2     = rh2 ?? new Lift0f(height2);
     this.texture     = new POVColor("Green");
     //ints = this.height1+", "+this.height2+", " + this.numPoints;
     for (int i = 0; i < p.Length - 1; i++)
     {
         points += "< " + p[i].x + ", " + p[i].y + "> , ";
     }
     points += "< " + p[p.Length - 1].x + ", " + p[p.Length - 1].y + ">";
 }
示例#41
0
 public Parametric(String xFunc, String yFunc, String zFunc,
     Point3 location = null, float u1 = 0f, float u2 = 7f, float v1 = 0f, float v2 = 7f, Signal<float> ru1 = null,
     Signal<float> ru2 = null, Signal<float> rv1 = null, Signal<float> rv2 = null,String bounds = "{box {<-1,-1,-1>*2*pi,<1,8/3,1>*2*pi}}",
     Point3 translate = null, Point3 rotation = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.reactive = reactive;
     this.xFunc = xFunc;
     this.yFunc = yFunc;
     this.zFunc = zFunc;
     this.bounds = bounds;
     this.u1 = ru1 ?? new Lift0f(u1);
     this.u2 = ru2 ?? new Lift0f(u2);
     this.v1 = rv1 ?? new Lift0f(v1);
     this.v2 = rv2 ?? new Lift0f(v2);
     this.finish = finish ?? "finish {phong .9 reflection .5}";
     this.loc = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.trans = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.tex = texture ?? new POVColor("Red");
 }
示例#42
0
 public Parametric(String xFunc, String yFunc, String zFunc,
                   Point3 location    = null, float u1 = 0f, float u2 = 7f, float v1 = 0f, float v2 = 7f, Signal <float> ru1 = null,
                   Signal <float> ru2 = null, Signal <float> rv1 = null, Signal <float> rv2 = null, String bounds = "{box {<-1,-1,-1>*2*pi,<1,8/3,1>*2*pi}}",
                   Point3 translate   = null, Point3 rotation    = null, PovTexture texture = null, String finish = null, bool reactive = false)
 {
     this.reactive = reactive;
     this.xFunc    = xFunc;
     this.yFunc    = yFunc;
     this.zFunc    = zFunc;
     this.bounds   = bounds;
     this.u1       = ru1 ?? new Lift0f(u1);
     this.u2       = ru2 ?? new Lift0f(u2);
     this.v1       = rv1 ?? new Lift0f(v1);
     this.v2       = rv2 ?? new Lift0f(v2);
     this.finish   = finish ?? "finish {phong .9 reflection .5}";
     this.loc      = location ?? new Point3(0, 0, 0, reactive: reactive);
     this.trans    = translate ?? new Point3(0, 0, 0, reactive: reactive);
     this.rot      = rotation ?? new Point3(0, 0, 0, reactive: reactive);
     this.tex      = texture ?? new POVColor("Red");
 }
示例#43
0
 public Sphere(Point3 loc, float radius)
 {
     this.loc = loc;
     this.radius = radius;
     this.texture = new POVColor("Red");
 }
示例#44
0
 public static Box box(Point3 lowerleftcorner = null, Point3 upperrightcorner = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, string finish = null, bool reactive = true)
 {
     return new Box(lowerleftcorner, upperrightcorner, translate, rotation, texture, finish, reactive);
 }
示例#45
0
 //Simple Reactive Objects
 public static Sphere sphere(Point3 location = null, float radius = 1.0f, Signal<float> rrad = null, Point3 translate = null, Point3 rotation = null, PovTexture texture = null, string finish = null, bool reactive = true)
 {
     return new Sphere(location, radius, rrad, translate, rotation, texture, finish, reactive);
 }
示例#46
0
 public static Cone cone(Point3 bottompoint = null, float bottomradius = 1.0f, Point3 toppoint = null, float topradius = 0.0f, Point3 translate = null, Point3 rotation = null, PovTexture texture = null)
 {
     return(new Cone(bottompoint, bottomradius, toppoint, topradius, translate, rotation, texture));
 }
示例#47
0
 public Sphere(Point3 loc, float radius, PovTexture texture)
 {
     this.loc = loc;
     this.radius = radius;
     this.texture = texture;
 }
示例#48
0
 public static Cone cone(Point3 bottompoint = null, float bottomradius = 1.0f, Signal<float> bottomradiusr = null, Point3 toppoint = null, float topradius = 0.0f,Signal<float> topradiusr = null, Point3 translate = null, Point3 rotation = null, string finish = null, PovTexture texture = null, bool reactive =true)
 {
     return new Cone(bottompoint, bottomradius, bottomradiusr, toppoint, topradius, topradiusr, translate, rotation, texture, finish, reactive);
 }