Esempio n. 1
0
def ant(scl):
    save_res = irit.GetResolution()
    bodyall = antbody()
    body = irit.nth(bodyall, 1)
    eyes = irit.nth(bodyall, 2)
    leg = antleg()
    llegs = irit.list(
        leg * irit.sc(1.1) * irit.sx(1.3) * irit.ry((-45)) * irit.trans(
            (0.1, 0, 1.02)),
        leg * irit.sc(1.3) * irit.ry(10) * irit.trans((0.1, 0.05, 1)),
        leg * irit.sc(1.2) * irit.sx(1.4) * irit.ry(40) * irit.trans(
            (0.1, 0.02, 0.95)))
    irit.SetResolution(20)
    irit.attrprop(llegs, "u_resolution", irit.GenRealObject(0.2))
    antennas = irit.list(
        antantenna() * irit.ry((-110)) * irit.trans(((-0.02), 0.2, 1.6)),
        antantenna() * irit.ry((-70)) * irit.trans((0.02, 0.2, 1.6)))
    irit.attrprop(antennas, "u_resolution", irit.GenRealObject(0.2))
    body = (body + irit.gpolygon(llegs, 1) + irit.gpolygon(llegs, 1) * irit.sx(
        (-1)) + irit.gpolygon(antennas, 1))
    irit.attrib(body, "rgb", irit.GenStrObject("255,50,50"))
    irit.SetResolution(save_res)
    retval = irit.list(
        body,
        eyes) * irit.sz(1.3) * irit.sc(1) * irit.ty(0.28785) * irit.rx(90)
    return retval
Esempio n. 2
0
def antanim(scl):
    save_res = irit.GetResolution()
    bodyall = antbody()
    body = irit.nth(bodyall, 1)
    eyes = irit.nth(bodyall, 2)
    llegs = irit.list(
        antlleganim(1) * irit.sc(1.1) * irit.sx(1.3) * irit.ry(
            (-45)) * irit.trans((0.1, 0, 1.02)),
        antlleganim((-1)) * irit.sc(1.3) * irit.ry(10) * irit.trans(
            (0.1, 0.05, 1)),
        antlleganim(1) * irit.sc(1.2) * irit.sx(1.4) * irit.ry(40) *
        irit.trans((0.1, 0.02, 0.95)))
    rlegs = irit.list(
        antrleganim(
            (-1)) * irit.sc(1.1) * irit.sx(1.3) * irit.ry(45) * irit.trans(
                ((-0.1), 0, 1.02)),
        antrleganim(1) * irit.sc(1.3) * irit.ry((-10)) * irit.trans(
            ((-0.1), 0.05, 1)),
        antrleganim((-1)) * irit.sc(1.2) * irit.sx(1.4) * irit.ry(
            (-40)) * irit.trans(((-0.1), 0.02, 0.95)))
    irit.SetResolution(20)
    antennas = irit.list(
        antantenna() * irit.ry((-110)) * irit.trans(((-0.02), 0.2, 1.6)),
        antantenna() * irit.ry((-70)) * irit.trans((0.02, 0.2, 1.6)))
    irit.attrprop(antennas, "u_resolution", irit.GenRealObject(0.2))
    body = (body + irit.gpolygon(antennas, 1))
    irit.attrib(body, "rgb", irit.GenStrObject("255,50,50"))
    irit.SetResolution(save_res)
    retval = irit.list(
        body, llegs, rlegs,
        eyes) * irit.sz(1.3) * irit.sc(1) * irit.ty(0.28785) * irit.rx(90)
    mov_y = irit.creparam( irit.ctlpt( irit.E1, 0 ) + \
                            irit.ctlpt( irit.E1, (-1 ) ), 0, 1.2 )
    irit.attrib(retval, "animation", mov_y)
    return retval
Esempio n. 3
0
def squareunitbars( w, d, h, legw, legd ):
    fbar = irit.box( ( legw, 0, 0 ), w - 2 * legw, legd, legw )
    sbar = irit.box( ( 0, legd, 0 ), legd, d - 2 * legd, legw )
    barframe = irit.list( fbar, sbar, fbar * irit.ty( d - legd ), sbar * irit.tx( w - legd ) )
    retval = irit.list( barframe * irit.tz( 0.1 ), barframe * irit.tz( h - 0.1 ) )
    irit.attrprop( retval, "ptexture", woodtext )
    irit.attrprop( retval, "rgb", woodclr )
    return retval
Esempio n. 4
0
def squareunitlegs( w, d, h, legw, legd ):
    grooved = ( legw - legd )
    lleg = ( irit.box( ( 0, 0, 0 ), legw, legd, h ) - irit.box( ( legw/3, (-0.01 ), 0.1 ), legw/3, 0.02, h - 0.3 ) - irit.box( ( (-0.01 ), legd/3, 0.1 ), 0.02, legd/3, h - 0.3 ) - irit.box( ( legw - grooved, legd - 0.02, 0.2 ), 0.1, 0.1, h - 0.3 ) )
    rleg = ( irit.box( ( 0, 0, 0 ), legw, legd, h ) - irit.box( ( legw/3, (-0.01 ), 0.1 ), legw/3, 0.02, h - 0.3 ) - irit.box( ( legw - 0.01, legd/3, 0.1 ), 0.02, legd/3, h - 0.3 ) - irit.box( ( grooved, legd - 0.02, 0.2 ), (-0.1 ), 0.1, h - 0.3 ) )
    retval = irit.list( lleg, rleg * irit.tx( w - legw ), lleg * irit.rz( 180 ) * irit.tx( w ) * irit.ty( d ), rleg * irit.rz( 180 ) * irit.tx( legw ) * irit.ty( d ) )
    irit.attrprop( retval, "ptexture", woodtext )
    irit.attrprop( retval, "rgb", woodclr )
    return retval
Esempio n. 5
0
def centerunitwalls( w, d, h, legw, legd ):
    backwall = irit.box( ( legd, d - legd - 0.018, 0.2 ), w - 2 * legd, 0.002, h - 0.3 )
    leftwall = irit.box( ( legd + 0.001, legd, 0.2 ), 0.002, d - 2 * legd, h - 0.3 )
    rightwall = irit.box( ( w - legd - 0.003, legd, 0.2 ), 0.002, d - 2 * legd, h - 0.3 )
    bottomwall = irit.box( ( legd, legd, 0.2 - 0.015 ), w - 2 * legd, d - 2 * legd, 0.015 )
    retval = irit.list( backwall, leftwall, rightwall, bottomwall )
    irit.attrprop( retval, "ptexture", woodtext )
    irit.attrprop( retval, "rgb", woodclr )
    return retval
Esempio n. 6
0
def cornerunitlegs( w, h, legw, legd ):
    grooved = ( legw - legd )
    lleg = ( irit.box( ( 0, 0, 0 ), legw, legd, h ) - irit.box( ( legw/3, (-0.01 ), 0.1 ), legw/3, 0.02, h - 0.3 ) - irit.box( ( (-0.01 ), legd/3, 0.1 ), 0.02, legd/3, h - 0.3 ) - irit.box( ( legd, legd - 0.02, 0.2 ), 0.1, 0.1, h - 0.3 ) )
    sleg = ( irit.box( ( 0, 0, 0 ), legw, legd, h ) - irit.box( ( legw/3, (-0.01 ), 0.1 ), legw/3, 0.02, h - 0.3 ) - irit.box( ( (-0.1 ), legd - 0.02, 0.2 ), 0.2, 0.1, h - 0.3 ) )
    rleg = ( irit.box( ( 0, 0, 0 ), legw, legd, h ) - irit.box( ( legw/3, (-0.01 ), 0.1 ), legw/3, 0.02, h - 0.3 ) - irit.box( ( legw - 0.01, legd/3, 0.1 ), 0.02, legd/3, h - 0.3 ) - irit.box( ( grooved, legd - 0.02, 0.2 ), (-0.1 ), 0.1, h - 0.3 ) )
    cleg = ( irit.box( ( 0, 0, 0 ), legw, legw, h ) - irit.box( ( legd, legd, 0.2 ), 0.1, 0.1, h - 0.3 ) )
    retval = irit.list( lleg, sleg * irit.tx( w - legw ), sleg * irit.tx( w ) * irit.rz( 90 ) * irit.tx( 2 * w ), rleg * irit.rz( 90 ) * irit.tx( 2 * w ) * irit.ty( 2 * w - legw ), cleg * irit.rz( (-90 ) ) * irit.ty( w * 2 ) )
    irit.attrprop( retval, "ptexture", woodtext )
    irit.attrprop( retval, "rgb", woodclr )
    return retval
Esempio n. 7
0
def testrun( numcrvs, crvdeg, crvlen, crvsize, seed, subeps,\
    numeps, opti ):
    ri = irit.iritstate("randominit", irit.GenIntObject(seed))
    c = randomcrvs(numcrvs, crvdeg, crvlen, crvsize)
    irit.attrprop(c, "color", irit.GenIntObject(14))
    irit.view(c, irit.ON)
    msc = irit.mscirc(c, irit.list(subeps, numeps))
    irit.view(msc, irit.OFF)
    irit.pause()
    retval = irit.list(msc, c)
    return retval
Esempio n. 8
0
def centerunitinterior( w, d, h, legw, legd ):
    intwidth = w/3
    vertwalls = irit.list( irit.box( ( intwidth, 0.01, 0.2 ), 0.01, d - 0.01 - legd, h - 0.2 ),\
    irit.box( ( intwidth * 2, 0.01, 0.2 ), 0.01, d - 0.01 - legd, h - 0.2 ) )
    shelfs = irit.list( irit.box( ( legd, 0.01, h * 0.55 ), intwidth - legd, d - 0.01 - legd, 0.01 ),\
    irit.box( ( intwidth * 2 + 0.01, 0.01, h * 0.45 ), intwidth - legd - 0.01, d - 0.01 - legd, 0.01 ),\
    irit.box( ( intwidth * 2 + 0.01, 0.01, h * 0.65 ), intwidth - legd - 0.01, d - 0.01 - legd, 0.01 ) )
    retval = irit.list( vertwalls, shelfs )
    irit.attrprop( retval, "ptexture", woodtext )
    irit.attrprop( retval, "rgb", woodclr )
    return retval
Esempio n. 9
0
def cornerunitbars( w, h, legw, legd ):
    sbar = irit.box( ( legw, 0, 0 ), w - 2 * legw, legd, legw )
    lbar = irit.box( ( legd, 0, 0 ), 2 * w - legd - legw, legd, legw )
    arcbar1 = irit.arc( ( w, 0, 0 ), ( w, w, 0 ), ( 2 * w, w, 0 ) )
    arcbar2 = irit.offset( arcbar1, (-legd ), 0.1, 0 )
    arcbar = irit.list( irit.extrude( arcbar1 + (-arcbar2 ) + irit.ctlpt( irit.E3, w, 0, 0 ), ( 0, 0, legw ), 0 ), irit.ruledsrf( arcbar1, arcbar2 ), irit.ruledsrf( arcbar1, arcbar2 ) * irit.tz( legw ) )
    barframe = irit.list( arcbar, sbar, sbar * irit.tx( w ) * irit.rz( 90 ) * irit.tx( 2 * w ), lbar * irit.rz( 90 ) * irit.tx( legd ), lbar * irit.tx( legw - legd ) * irit.ty( 2 * w - legd ) )
    retval = irit.list( barframe * irit.tz( 0.1 ), barframe * irit.tz( h - 0.1 ) )
    irit.attrprop( retval, "ptexture", woodtext )
    irit.attrprop( retval, "rgb", woodclr )
    return retval
Esempio n. 10
0
def marbleshelfunit( w, h ):
    prof1 = ( irit.ctlpt( irit.E3, 2 * w, 0, 0 ) + irit.cbspline( 3, irit.list( \
               irit.ctlpt( irit.E3, 2 * w, w, 0 ), \
               irit.ctlpt( irit.E3, 2 * w, 2 * w, 0 ), \
               irit.ctlpt( irit.E3, w, 2 * w, 0 ) ), irit.list( irit.KV_OPEN ) ) + \
               irit.ctlpt( irit.E3, 0, 2 * w, 0 ) )
    prof2 = ( \
               irit.ctlpt( irit.E3, 0, 2 * w, 0 ) + \
               irit.ctlpt( irit.E3, 0, 0, 0 ) + \
               irit.ctlpt( irit.E3, 2 * w, 0, 0 ) )
    retval = irit.list( irit.extrude( prof1 + prof2, ( 0, 0, 0.025 ), 0 ), irit.ruledsrf( prof1, (-prof2 ) ), irit.ruledsrf( prof1, (-prof2 ) ) * irit.tz( 0.025 ) ) * irit.tz( h )
    irit.attrprop( retval, "ptexture", marbletext )
    irit.attrprop( retval, "rgb", marbleclr )
    return retval
Esempio n. 11
0
def centerunitdoors( w, d, h, legw, legd ):
    intwidth = w/3
    leftdoor = irit.box( ( legw + 0.002, 0, 0.202 ), intwidth - legw + 0.0096, 0.01, h - 0.204 - legw )
    rot_z1 = ( irit.ctlpt( irit.E1, 0 ) + \
                irit.ctlpt( irit.E1, 100 ) )
    irit.attrib( leftdoor, "animation", irit.list( irit.tx( (-legw ) ), rot_z1, irit.tx( legw ) ) )
    rightdoor = irit.box( ( intwidth * 2 + 0.002, 0, 0.202 ), intwidth - legw - 0.004, 0.01, h - 0.204 - legw )
    rot_z2 = ( \
                irit.ctlpt( irit.E1, 0 ) + \
                irit.ctlpt( irit.E1, (-100 ) ) )
    irit.attrib( rightdoor, "animation", irit.list( irit.tx( (-w ) + legw ), rot_z2, irit.tx( w - legw ) ) )
    retval = irit.list( leftdoor, rightdoor )
    irit.attrprop( retval, "ptexture", woodtext )
    irit.attrprop( retval, "rgb", woodclr )
    return retval
Esempio n. 12
0
irit.color(s2, irit.GREEN)

s3 = irit.blhermite(c1, c2, d1, d2, csec2, n)
irit.color(s3, irit.YELLOW)

irit.save("blending1", irit.list(s1, s2, s3))

irit.interact(irit.list(irit.GetAxes(), s1, s2, s3))

#
#  Blend on a (polynomial approximation of a) sphere:
#

s = (-irit.surfprev(
    irit.cregion(irit.pcircle((0, 0, 0), 1), 0, 2) * irit.rx(90)))
irit.attrprop(s, "u_resolution", irit.GenIntObject(3))
irit.attrprop(s, "v_resolution", irit.GenIntObject(3))
ds = irit.sderive(s, irit.ROW)

c1 = (-irit.csurface(s, irit.ROW, 0.8))
c2 = (-irit.csurface(s, irit.ROW, 1.2))

d1 = (-irit.csurface(ds, irit.ROW, 0.8))
d2 = (-irit.csurface(ds, irit.ROW, 1.2))

s1 = irit.hermite(c1, c2, d1, d2)
irit.color(s1, irit.RED)

n = irit.csurface(s, irit.ROW, 1)

s2 = irit.blhermite(c1, c2, d1, d2, csec1, n)
Esempio n. 13
0
									irit.KV_OPEN )
    irit.attrib( s2, "ptexture", irit.GenStrObject("snake2.gif,1,5" ))
    eyes = irit.list( irit.sphere( ( 0.42, (-0.35 ), 24.5 ), 0.1 ), irit.sphere( ( (-0.42 ), (-0.35 ), 24.5 ), 0.1 ) )
    irit.color( eyes, irit.BLACK )
    retval = irit.list( s1, s2, eyes ) * irit.rx( (-90 ) ) * irit.tz( 0.261 )
    return retval

view_mat_snake = irit.GetViewMatrix() * \
				 irit.sc( 0.08 ) * \
				 irit.tx( (-1.2 ) ) * \
				 irit.ty( 0.8 ) * \
				 irit.tz( (-0.5 ) )

snake = irit.list( snaket( 2 ) )

irit.attrprop( snake, "u_resolution", irit.GenRealObject(0.2 ))
irit.interact( irit.list( view_mat_snake, xyplane, snake ) )
irit.save( "snake", irit.list( view_mat_snake, xyplane, snaket( 2 ) ) )

irit.view( irit.list( xyplane, view_mat_snake ), irit.ON )
bg_obj = irit.list( xyplane, view_mat_snake )
t = 0
while ( t <= 4 * math.pi ):
    snake = irit.list( snaket( t ) ) * irit.ty( t )
    irit.attrprop( snake, "u_resolution", irit.GenRealObject(0.2 ))
    irit.view( irit.list(snake, bg_obj), irit.ON )
    t = t + math.pi/10

# ############################################################################
irit.free( snake )
irit.free( view_mat_snake )
Esempio n. 14
0
def squareunittop( w, d, h, margin, text, clr ):
    retval = irit.box( ( (-margin ), (-margin ), h ), w + 2 * margin, d + 2 * margin, 0.03 )
    irit.attrprop( retval, "ptexture", text )
    irit.attrprop( retval, "rgb", clr )
    return retval