Mathematical graphics-besserx (béserz) Curved Surface

Source: Internet
Author: User

Mathematical graphics-besserx (béserz) Curved Surface
In the previous section, we talked about the béserx curve, which is an extension of another dimension. the formula is still the curve formula: \ mathbf {B} (t) = \ mathbf {P} _ 0 (1-t) ^ 3 + 3 \ mathbf {P} _ 1 t (1-t) ^ 2 + 3 \ mathbf {P} _ 2t ^ 2 (1-t) + \ mathbf {P} _ 3 t ^ 3 \ mbox {,} t \ in [0, 1]. The reason for changing from a curve to a surface is that the vertex is horizontally connected and then vertically connected. many computer graphics tutorials will contain the DEMO of the besell surface. here, I still use my script code to generate the besell surface. the vertices in the Code are controlled to generate random numbers, so each Generated Surface image is different. for related software, see: Mathematical graphics visualization tool. Use script code with custom syntax to generate mathematical graphics. the software is free and open-source. QQ chat group: 367752815 secondary besell surface: three control vertices need to be generated to copy the code vertices = D1: 100 D2: 100 u = from 0 to 1 D1v = from 0 to 1 D2 ax0 = rand2 (-10, 10) ay0 = rand2 (-10, 10) az0 = rand2 (-10, 10) bx0 = rand2 (-10, 10) by0 = rand2 (-10, 10) bz0 = rand2 (-10, 10) cx0 = rand2 (-10, 10) cy0 = rand2 (-10, 10) cz0 = rand2 (-10, 10) ax1 = rand2 (-10, 10) ay1 = rand2 (-10, 10) az1 = rand2 (-10, 10) bx1 = rand2 (-10, 10) by1 = rand2 (-10, 10) bz1 = rand2 (-10, 10) cx1 = rand2 (-10, 10) cy1 = rand2 (-10, 10) cz1 = rand2 (-10, 10) ax2 = rand2 (-10, 10) ay2 = rand2 (-10, 10) az2 = rand2 (-10, 10) bx2 = rand2 (-10, 10) by2 = rand2 (-10, 10) bz2 = rand2 (-10, 10) cx2 = rand2 (-10, 10) cy2 = rand2 (-10, 10) cz2 = rand2 (-10, 10) ax3 = rand2 (-10, 10) ay3 = rand2 (-10, 10) az3 = rand2 (-10, 10) bx3 = rand2 (-10, 10) by3 = rand2 (-10, 10) bz3 = rand2 (-10, 10) cx3 = rand2 (-10, 10) cy3 = rand2 (-10, 10) cz3 = rand2 (-10, 10) u1 = (1-u) * (1-u) u2 = 2 * (1-u) * u u3 = u * u ax = u1 * ax0 + u2 * ax1 + u3 * ax2ay = u1 * ay0 + u2 * ay1 + u3 * ay2az = u1 * az0 + u2 * az1 + u3 * az2bx = u1 * bx0 + u2 * bx1 + u3 * bx2by = u1 * by0 + u2 * by1 + u3 * by2bz = u1 * bz0 + u2 * bz1 + u3 * bz2cx = u1 * cx0 + u2 * cx1 + u3 * cx2cy = u1 * cy0 + u2 * cy1 + u3 * cy2cz = u1 * cz0 + u2 * cz1 + u3 * cz2 v1 = (1-v) * (1-v) v2 = 2 * (1-v) * v v3 = v * v x = v1 * ax + v2 * bx + v3 * cxy = v1 * ay + v2 * by + v3 * cyz = v1 * az + v2 * bz + v3 * cz u = u * 10 v = v * 10 copy the code three times to the besell surface: you need to generate 4*4 control vertices copy codes vertices = D1: 100 D2: 100 u = from 0 to 1 D1v = from 0 to 1 D2 ax0 = rand2 (-10, 10) ay0 = rand2 (-10, 10) az0 = rand2 (-10, 10) bx0 = rand2 (-10, 10) by0 = rand2 (-10, 10) bz0 = rand2 (-10, 10) cx0 = rand2 (-10, 10) cy0 = rand2 (-10, 10) cz0 = rand2 (-10, 10) dx0 = rand2 (-10, 10) dy0 = rand2 (-10, 10) dz0 = rand2 (-10, 10) ax1 = rand2 (-10, 10) ay1 = rand2 (-10, 10) az1 = rand2 (-10, 10) bx1 = rand2 (-10, 10) by1 = rand2 (-10, 10) bz1 = rand2 (-10, 10) cx1 = rand2 (-10, 10) cy1 = rand2 (-10, 10) cz1 = rand2 (-10, 10) dx1 = rand2 (-10, 10) dy1 = rand2 (-10, 10) dz1 = rand2 (-10, 10) ax2 = rand2 (-10, 10) ay2 = rand2 (-10, 10) az2 = rand2 (-10, 10) bx2 = rand2 (-10, 10) by2 = rand2 (-10, 10) bz2 = rand2 (-10, 10) cx2 = rand2 (-10, 10) cy2 = rand2 (-10, 10) cz2 = rand2 (-10, 10) dx2 = rand2 (-10, 10) dy2 = rand2 (-10, 10) dz2 = rand2 (-10, 10) ax3 = rand2 (-10, 10) ay3 = rand2 (-10, 10) az3 = rand2 (-10, 10) bx3 = rand2 (-10, 10) by3 = rand2 (-10, 10) bz3 = rand2 (-10, 10) cx3 = rand2 (-10, 10) cy3 = rand2 (-10, 10) cz3 = rand2 (-10, 10) dx3 = rand2 (-10, 10) dy3 = rand2 (-10, 10) dz3 = rand2 (-10, 10) u1 = pow (1-U), 3) u2 = 3 * pow (1-u), 2) * u u3 = 3 * u * (1-u) u4 = u * u ax = u1 * ax0 + u2 * ax1 + u3 * ax2 + u4 * ax3ay = u1 * ay0 + u2 * ay1 + u3 * ay2 + u4 * ay3az = u1 * az0 + u2 * az1 + u3 * az2 + u4 * az3bx = u1 * bx0 + u2 * bx1 + u3 * bx2 + u4 * bx3by = u1 * by0 + u2 * by1 + u3 * by2 + u4 * by3bz = u1 * bz0 + u2 * bz1 + u3 * bz2 + u4 * bz3cx = u1 * cx0 + u2 * cx1 + u3 * cx2 + u4 * cx3cy = u1 * cy0 + u2 * cy1 + u3 * cy2 + u4 * cy3cz = u1 * cz0 + u2 * cz1 + u3 * cz2 + u4 * cz3dx = u1 * dx0 + u2 * dx1 + u3 * dx2 + u4 * dx3dy = u1 * dy0 + u2 * dy1 + u3 * dy2 + u4 * dy3dz = u1 * dz0 + u2 * dz1 + u3 * dz2 + u4 * dz3 v1 = pow (1-v ), 3) v2 = 3 * pow (1-v), 2) * v v3 = 3 * v * (1-v) v4 = v * v x = v1 * ax + v2 * bx + v3 * cx + v4 * dxy = v1 * ay + v2 * by + v3 * cy + v4 * dyz = v1 * az + v2 * bz + v3 * cz + v4 * dz u = u * 10 v = v * 10

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.