irit.free(t3) s1 = irit.convex(s1) irit.view(s1, irit.ON) s2 = s1 * irit.roty(90) s3 = s1 * irit.rotz(90) irit.view(irit.list(s2, s3), irit.OFF) s4 = (s1 + s2 + s3) irit.free(s1) irit.free(s2) irit.free(s3) irit.view(s4, irit.ON) irit.SetResolution(64) t4 = irit.sphere((0, 0, 0), 1) s5 = (t4 - s4) irit.free(s4) irit.free(t4) final = irit.convex(s5) irit.free(s5) irit.printf("total time = %f\n", irit.list(irit.time(0))) # In Seconds irit.interact(final) irit.save("solid4", final)
# Simple molecule - 8 atoms connected as a cube. # t = irit.time( 1 ) save_res = irit.GetResolution() save_view = irit.GetViewMatrix() irit.SetViewMatrix( irit.GetViewMatrix() * \ irit.scale( ( 0.6, 0.6, 0.6 ) ) * \ irit.rotx( 20 ) * \ irit.roty( 45 ) * \ irit.trans( ( (-0.3 ), 0.2, 0 ) )) irit.SetResolution( 16) s1 = irit.sphere( ( 0, 0, 0 ), 0.2 ) s2 = irit.sphere( ( 1, 0, 0 ), 0.2 ) irit.SetResolution( 8) c1 = irit.cylin( ( 0, 0, 0 ), ( 1, 0, 0 ), 0.05, 3 ) irit.view( irit.list( irit.GetViewMatrix(), s1, s2, c1 ), irit.ON ) b1 = ( (s1 ^ s2) + c1 ) irit.free( s1 ) irit.free( s2 ) irit.free( c1 ) b2 = b1 * irit.trans( ( 0, 1, 0 ) ) irit.view( irit.list( b1, b2 ), irit.ON )
irit.snoc( p * irit.tx( 0 ), pts ) i = i + 1 irit.interact( irit.list( view_mat0, crv1, pts ) ) irit.save( "pt_incrv", irit.list( irit.GetViewMatrix(), crv1, pts ) ) irit.free( crv1 ) # ############################################################################# # # Point inclusion in a polyhedra: # pl1 = ( irit.sphere( ( 0, 0, 0 ), 1 ) - irit.cone( ( (-1.3 ), (-2 ), (-1 ) ), ( 5, 5, 5 ), 1, 0 ) ) irit.view( irit.list( irit.GetAxes(), pl1 ), irit.ON ) pts = irit.nil( ) i = 0 while ( i <= 1000 ): p = irit.point( irit.random( (-1 ), 1 ), irit.random( (-1 ), 1 ), irit.random( (-1 ), 1 ) ) if ( irit.FetchRealObject(irit.ppinclude( pl1, irit.Fetch3TupleObject(p) ) ) ): irit.color( p, irit.GREEN ) else: irit.color( p, irit.RED ) irit.snoc( p * irit.tx( 0 ), pts ) i = i + 1 irit.interact( irit.list( irit.GetViewMatrix(), pl1, pts ) )
irit.ctlpt( irit.E2, (-0.0522 ), 0.203 ), \ irit.ctlpt( irit.E2, (-0.151 ), (-0.0858 ) ), \ irit.ctlpt( irit.E2, (-0.142 ), (-0.219 ) ), \ irit.ctlpt( irit.E2, (-0.00121 ), (-0.288 ) ), \ irit.ctlpt( irit.E2, 0.125, (-0.21 ) ), \ irit.ctlpt( irit.E2, 0.143, (-0.0708 ) ), \ irit.ctlpt( irit.E2, 0.0448, 0.203 ), \ irit.ctlpt( irit.E2, 0.105, 0.216 ), \ irit.ctlpt( irit.E2, 0.218, 0.241 ) ), irit.list( irit.KV_PERIODIC ) ) * irit.sc( 3 ) # d is a piecewise points curve and so is drawn as a control polygon, dp. d = irit.duality(irit.coerce(c, irit.KV_OPEN)) dp = irit.getctlpolygon(d + irit.ceval(d, 0)) irit.color(dp, irit.YELLOW) pt1 = irit.sphere((0, 0, 0), 0.15) irit.attrib(pt1, "rgb", irit.GenStrObject("255,128,0")) mov_xyz1 = c * irit.tx(0) irit.attrib(pt1, "animation", mov_xyz1) pt2 = pt1 irit.attrib(pt2, "rgb", irit.GenStrObject("255,128,128")) mov_xyz2 = d * irit.tx(0) irit.attrib(pt2, "animation", mov_xyz2) all = irit.list(c, dp, pt1, pt2) * irit.sc(0.5) * irit.tx((-0.2)) irit.interact(all) irit.save("duality0", all) #
def antbody(): save_res = irit.GetResolution() c = irit.pcircle((0, 0, 0), 1) body = (-irit.sfromcrvs( irit.list( c * irit.sc(1e-006) * irit.ty((-0.1)) * irit.tz(0.19), c * irit.sy(0.8) * irit.sc(0.07) * irit.ty((-0.1)) * irit.tz(0.19), c * irit.sy(0.8) * irit.sc(0.11) * irit.ty((-0.1)) * irit.tz(0.21), c * irit.sy(0.8) * irit.sc(0.14) * irit.ty((-0.1)) * irit.tz(0.23), c * irit.sy(0.8) * irit.sc(0.14) * irit.ty((-0.1)) * irit.tz(0.26), c * irit.sy(0.8) * irit.sc(0.11) * irit.ty((-0.1)) * irit.tz(0.28), c * irit.sy(0.8) * irit.sc(0.11) * irit.ty((-0.1)) * irit.tz(0.29), c * irit.sy(0.8) * irit.sc(0.24) * irit.ty( (-0.05)) * irit.tz(0.31), c * irit.sy(0.8) * irit.sc(0.27) * irit.ty( (-0.05)) * irit.tz(0.41), c * irit.sy(0.8) * irit.sc(0.19) * irit.ty( (-0.05)) * irit.tz(0.44), c * irit.sy(0.8) * irit.sc(0.19) * irit.ty( (-0.05)) * irit.tz(0.45), c * irit.sy(0.8) * irit.sc(0.3) * irit.ty( (-0.035)) * irit.tz(0.47), c * irit.sy(0.8) * irit.sc(0.32) * irit.ty( (-0.035)) * irit.tz(0.59), c * irit.sy(0.8) * irit.sc(0.24) * irit.ty( (-0.035)) * irit.tz(0.62), c * irit.sy(0.8) * irit.sc(0.24) * irit.ty( (-0.035)) * irit.tz(0.63), c * irit.sy(0.8) * irit.sc(0.3) * irit.ty((-0.03)) * irit.tz(0.65), c * irit.sy(0.8) * irit.sc(0.28) * irit.ty( (-0.03)) * irit.tz(0.76), c * irit.sy(0.8) * irit.sc(0.07) * irit.ty((-0.1)) * irit.tz(0.85), c * irit.sy(0.8) * irit.sc(0.07) * irit.ty((-0.1)) * irit.tz(0.87), c * irit.sy(0.8) * irit.sc(0.18) * irit.ty((-0.1)) * irit.tz(0.93), c * irit.sy(0.8) * irit.sc(0.18) * irit.ty((-0.1)) * irit.tz(1.03), c * irit.sy(0.8) * irit.sc(0.07) * irit.ty((-0.1)) * irit.tz(1.1), c * irit.sy(0.8) * irit.sc(0.07) * irit.ty((-0.1)) * irit.tz(1.12), c * irit.sy(0.8) * irit.sc(0.18) * irit.ty( (-0.06)) * irit.tz(1.18), c * irit.sy(0.8) * irit.sc(0.18) * irit.ty( (-0.03)) * irit.tz(1.32), c * irit.sy(0.8) * irit.sc(0.07) * irit.ty((-0)) * irit.tz(1.41), c * irit.sy(0.8) * irit.sc(0.07) * irit.ty((-0)) * irit.tz(1.43), c * irit.sy(0.8) * irit.sc(0.22) * irit.ty(0.05) * irit.tz(1.5), c * irit.sy(0.8) * irit.sc(0.2) * irit.ty((-0)) * irit.tz(1.66), c * irit.sy(0.8) * irit.sc(0.05) * irit.ty( (-0.22)) * irit.tz(1.85), c * irit.sy(0.8) * irit.sc(1e-006) * irit.ty( (-0.22)) * irit.tz(1.86)), 3, irit.KV_OPEN)) irit.SetResolution(15) eye1 = irit.sphere((0, 0, 0), 0.08) * irit.rx(20) * irit.ry( (-20)) * irit.trans((0.15, 0.05, 1.59)) eye2 = eye1 * irit.sx((-1)) irit.SetResolution(20) bodycut = body / eye1 ^ eye2 irit.attrib(bodycut, "rgb", irit.GenStrObject("255,50,50")) eye1cut = eye1 / body irit.attrib(eye1cut, "reflection", irit.GenStrObject("0.85")) irit.attrib(eye1cut, "rgb", irit.GenStrObject("15,15,15")) eye2cut = eye2 / body irit.attrib(eye2cut, "reflection", irit.GenStrObject("0.85")) irit.attrib(eye2cut, "rgb", irit.GenStrObject("15,15,15")) irit.SetResolution(save_res) retval = irit.list(bodycut, irit.list(eye1cut, eye2cut)) return retval
save_mat = irit.GetViewMatrix() save_res = irit.GetResolution() irit.SetResolution(12) b1 = irit.box(((-0.5), (-0.2), 0), 1, 0.4, 0.15) b1 = putrgbonvertices(b1, irit.GenStrObject("255,255,0")) b2 = irit.box(((-0.25), (-0.3), 0.1), 0.5, 0.6, 0.5) b2 = putrgbonvertices(b2, irit.GenStrObject("0,255,0")) m1 = (b1 - b2) irit.free(b1) irit.free(b2) irit.interact(irit.list(irit.GetViewMatrix(), m1)) c1 = irit.sphere((0, 0, 0.2), 0.18) c1 = putrgbonvertices(c1, irit.GenStrObject("0,255,255")) irit.view(c1, irit.OFF) m2 = (m1 - c1) irit.free(m1) irit.free(c1) irit.view(m2, irit.ON) c2 = irit.circle((0.55, 0, 0), 0.12) c2 = irit.extrude(c2, ((-0.2), 0, 0.2), 0) c2 = c2 * irit.circpoly((0, 0, 1), (0.55, 0, 0.05), 0.25) c3 = irit.circle(((-0.55), 0, 0), 0.12) c3 = irit.extrude(c3, (0.2, 0, 0.2), 0) c3 = c3 * irit.circpoly((0, 0, 1), ((-0.55), 0, 0.05), 0.25)
s * \ irit.sc( 0.18 ) * \ irit.tx( 0.1 ) * \ irit.tz( 1.5 ) ) tv = irit.tfromsrfs(discs, 3, irit.KV_OPEN) irit.attrib(tv, "transp", irit.GenRealObject(0.5)) # view( list( irit.GetAxes(), Tv, Teapot ), 1 ); # ############################################################################ # # Let the Teapot and Spheres come out of the teapot... # irit.SetResolution(10) s1 = irit.sphere((0.2, 0.2, 0.8), 0.18) irit.color(s1, irit.YELLOW) s2 = irit.sphere((0.75, 0.25, 0.16667), 0.12) * irit.sz(3) irit.color(s2, irit.MAGENTA) c1 = irit.maxedgelen( irit.triangl( irit.cylin( ( 0.15, 0.85, 0.01 ), ( 0, 0, 0.98 ), 0.1, 3 ), 1 ),\ 0.2 ) irit.color(c1, irit.CYAN) c2 = irit.maxedgelen( irit.triangl( irit.cylin( ( 0.85, 0.85, 0.01 ), ( 0, 0, 0.98 ), 0.1, 3 ), 1 ),\ 0.2 ) irit.color(c2, irit.CYAN) genie = irit.list( teapotorig * irit.sc( 0.15 ) * irit.ry( (-90 ) ) * irit.trans( ( 0.5, 0.4, 0.47 ) ), s1, s2, c1,\ c2 ) b = irit.box((0, 0, 0), 1, 1, 1) irit.attrib(b, "transp", irit.GenRealObject(0.5))
def snaket( t ): p = irit.point( 0, 0, 0 ) ct = irit.cbspline( 3, irit.list( p * \ ctx( 0 + t, 1.5 ) * \ irit.ty( 0.22 ), p * \ ctx( 0 + t, 1.5 ) * \ irit.ty( 0.22 ), p * \ ctx( 0.3 + t, 1.5 ) * \ irit.ty( 0.17 ) * \ irit.tz( 0.3 ), p * \ ctx( 2 + t, 1.5 ) * \ irit.ty( (-0.06 ) ) * \ irit.tz( 2 ), p * \ ctx( 4 + t, 1.5 ) * \ irit.ty( (-0.06 ) ) * \ irit.tz( 4 ), p * \ ctx( 6 + t, 1.5 ) * \ irit.ty( (-0.06 ) ) * \ irit.tz( 6 ), p * \ ctx( 8 + t, 2.5 ) * \ irit.ty( (-0.065 ) ) * \ irit.tz( 8 ), p * \ ctx( 10 + t, 2.5 ) * \ irit.ty( (-0.07 ) ) * \ irit.tz( 10 ), p * \ ctx( 12 + t, 2.5 ) * \ irit.ty( (-0.075 ) ) * \ irit.tz( 12 ), p * \ ctx( 14 + t, 1.5 ) * \ irit.ty( (-0.08 ) ) * \ irit.tz( 14 ), p * \ ctx( 16 + t, 1.5 ) * \ irit.ty( (-0.09 ) ) * \ irit.tz( 16 ), p * \ ctx( 18 + t, 1.5 ) * irit.ty( (-0.1 ) ) * irit.tz( 18 ), p * \ irit.ty( (-0.1 ) ) * \ irit.tz( 20 ), p * \ irit.ty( (-0.1 ) ) * \ irit.tz( 21 ) ), irit.list( irit.KV_OPEN ) ) c = irit.circle( ( 0, 0, 0 ), 0.36 ) * irit.rz( (-90 ) ) scalecrv = irit.cbspline( 3, irit.list( irit.ctlpt( irit.E2, 0, 0.001 ), \ irit.ctlpt( irit.E2, 0.1, 0.1 ), \ irit.ctlpt( irit.E2, 0.2, 0.4 ), \ irit.ctlpt( irit.E2, 0.3, 0.7 ), \ irit.ctlpt( irit.E2, 0.4, 0.8 ), \ irit.ctlpt( irit.E2, 0.5, 0.9 ), \ irit.ctlpt( irit.E2, 0.6, 0.95 ), \ irit.ctlpt( irit.E2, 0.7, 1 ), \ irit.ctlpt( irit.E2, 0.8, 1 ) ), irit.list( irit.KV_OPEN ) ) s1 = irit.swpsclsrf( c, ct, scalecrv, irit.vector( 0, 1, 0 ), 1 ) irit.attrib( s1, "ptexture", irit.GenStrObject("snake2.gif,1,30" )) s2 = irit.sfromcrvs( irit.list( c * \ irit.ty( (-0.1 ) ) * \ irit.tz( 21 ), c * \ irit.ty( (-0.1 ) ) * \ irit.tz( 22 ), c * \ irit.ty( (-0.14 ) ) * \ irit.sx( 2.2 ) * \ irit.sy( 1.2 ) * \ irit.tz( 23 ), c * \ irit.ty( (-0.14 ) ) * \ irit.sx( 2.2 ) * \ irit.sy( 1.2 ) * \ irit.tz( 24 ), c * \ irit.sy( 0.9 ) * \ irit.ty( (-0.1 ) ) * \ irit.sx( 1.2 ) * \ irit.tz( 25 ), c * \ irit.ty( (-0.1 ) ) * \ irit.sc( 0.001 ) * \ irit.tz( 25 ) ), 3, 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
while ( j <= irit.SizeOf( p ) - 1 ): h = irit.pattrib( p, j, "hcurv", irit.nil( ) ) mean = mean + h n = n + 1 j = j + 1 i = i + 1 retval = mean/float(n) return retval # ############################################################################ irit.SetResolution( 30 ) b1 = irit.box( ( (-0.3 ), (-0.3 ), 0 ), 0.6, 0.6, 0.15 ) c1 = irit.cylin( ( 0, 0, 0.1 ), ( 0, 0, 0.65 ), 0.14, 3 ) s1 = irit.sphere( ( 0, 0, 0.65 ), 0.3 ) t1 = irit.torus( ( 0, 0, 0.7 ), ( 0, 0, 1 ), 0.3, 0.15 ) obj = irit.maxedgelen( irit.triangl( b1 + c1 + s1 - t1, 1 ), 0.1 ) irit.free( b1 ) irit.free( c1 ) irit.free( s1 ) irit.free( t1 ) crvtrobj = irit.pcrvtr( obj, 1, 0 ) irit.free( obj ) crvtrobjrgb = gauss2rgb( crvtrobj, 15 ) irit.interact( crvtrobjrgb )
# # # Simple animation demo # # Zvika Zilberman and Haggay Dagan # save_mat = irit.GetViewMatrix() save_res = irit.GetResolution() irit.SetViewMatrix( irit.GetViewMatrix() * irit.sc( 0.1 ) ) irit.viewobj( irit.GetViewMatrix() ) a = irit.sphere( ( 0.99, 0, 0 ), 1 ) b = irit.sphere( ( (-0.99 ), 0, 0 ), 1 ) pt0 = irit.ctlpt( irit.E3, 0, 0, 0 ) pt1 = irit.ctlpt( irit.E3, 1, 1, 0 ) pt2 = irit.ctlpt( irit.E3, 2, 2, 0 ) pt4 = irit.ctlpt( irit.E3, 4, 4, 0 ) pt5 = irit.ctlpt( irit.E3, (-1 ), (-1 ), 0 ) pt6 = irit.ctlpt( irit.E3, (-2 ), (-2 ), 0 ) pt7 = irit.ctlpt( irit.E3, (-4 ), (-4 ), 0 ) pt8 = irit.ctlpt( irit.E3, 0.4, 0.4, 0 ) pt9 = irit.ctlpt( irit.E3, 2, 2, 0 ) pt11 = irit.ctlpt( irit.E2, 3, 3 ) pt12 = irit.ctlpt( irit.E2, (-3 ), (-3 ) ) pt13 = irit.ctlpt( irit.E2, 1.5, 1.5 ) pt14 = irit.ctlpt( irit.E2, (-1.5 ), (-1.5 ) )
irit.cylin((0.8, 0, 0), (0.8, 0, 0), 0.3, 1), irit.cylin((0, (-0.8), 0), (0.1, (-0.5), 0.2), 0.3, 3), irit.cylin((0, 0.8, 0), (0, 0.8, 0), 0.3, 2), irit.cylin((0, 0, (-0.8)), (0.4, 0.2, (-0.5)), 0.3, 3), irit.cylin((0, 0, 0.8), (0, 0, 0.8), 0.3, 1)) irit.color(cyls, irit.RED) cones = irit.list(irit.cone(((-0.5), 0, 0), ((-0.5), 0, 0), 0.5, 0), irit.cone((0.5, 0, 0), (0.5, 0, 0), 0.5, 1), irit.cone((0, (-0.5), 0), (0, (-0.5), 0), 0.5, 1), irit.cone((0, 0.5, 0), (0, 0.5, 0), 0.5, 0), irit.cone((0, 0, (-0.5)), (0, 0, (-0.5)), 0.5, 1), irit.cone((0, 0, 0.5), (0, 0, 0.5), 0.5, 1)) irit.color(cones, irit.RED) spr = irit.sphere((0, 0, 0), 0.5) irit.color(spr, irit.RED) trs = irit.torus((0, 0, 0), (0.1, 0.2, 1), 0.5, 0.2) irit.color(trs, irit.RED) # # Create primitive as exact rational surfaces. # save_prim_srfs = irit.iritstate("primsrfs", irit.GenRealObject(1)) irit.interact( irit.list(irit.GetViewMatrix(), axes15, cones, irit.cone(((-0.5), 0, 0), ((-0.5), 0, 0), 0.5, 0), irit.cone((0.5, 0, 0), (0.5, 0, 0), 0.5, 1), irit.cone((0, (-0.5), 0), (0, (-0.5), 0), 0.5, 3), irit.cone((0, 0.5, 0), (0, 0.5, 0), 0.5, 2),
# # testing functions for the point fitting functions, for primitives. # save_res = irit.GetResolution() ri = irit.iritstate("randominit", irit.GenRealObject(1964)) # Seed-initiate the randomizer, irit.free(ri) # # A Sphere: returned is (Error, Xcntr, Ycntr, Zcntr, Radius) # irit.SetResolution(20) x1 = irit.triangl(irit.sphere((1, 2, 3), 4), 1) irit.SetResolution(5) x2 = irit.triangl(irit.sphere(((-1.4), 2.2, 5.3), 1.4), 1) spfit = irit.list(irit.fitpmodel(x1, 1, 0.01, 100), irit.fitpmodel(x1, 1, 1e-005, 100), irit.fitpmodel(x2, 1, 0.01, 100), irit.fitpmodel(x2, 1, 1e-006, 100)) # # A cylinder: returned is (Error, Xcntr, Ycntr, Zcntr, # Xdir, Ydir, Zdir, Radius) # irit.SetResolution(20)
# c2 = irit.cylin((1, 0, 0.05), (0, 0, 0.4), 0.15, 3) irit.attrib(c2, "id", irit.GenRealObject(2)) irit.SetResolution(8) t1 = irit.circpoly((0, 1, 0), (0.151, 0, 0.25), 0.03) irit.SetResolution(16) t2 = irit.surfrev(t1) * irit.trans((1, 0, 0)) irit.free(t1) irit.attrib(t2, "id", irit.GenRealObject(3)) b1 = (c2 - t2) irit.free(c2) irit.free(t2) irit.SetResolution(12) s1 = irit.sphere((1, 0, 0), 0.135) irit.attrib(s1, "id", irit.GenRealObject(4)) b2 = (b1 - s1) irit.free(b1) irit.free(s1) irit.view(irit.list(irit.GetViewMatrix(), b2), irit.ON) v1 = (0, 0.19, 0.35) v2 = (0, (-0.19), 0.35) v3 = (1, (-0.14), 0.35) v4 = (1, 0.14, 0.35) crosssec = irit.poly(irit.list(v1, v2, v3, v4), irit.FALSE) ext1 = irit.extrude(crosssec, (0, 0, 0.07), 3) irit.attrib(ext1, "id", irit.GenRealObject(5))
#This is an IRIT script and as such requires both math and irit import: # import math import irit # # # Few simple test of disjoint booleans. # # # The inner sphere is disjoint to begin with; # s1 = irit.sphere( ( 0, 0, 0 ), 1 ) ^ (-irit.sphere( ( 0, 0, 0 ), 0.7 ) ) c1 = irit.cylin( ( 0, 0, 0.8 ), ( 0, 0, 1 ), 0.2, 3 ) c2 = irit.cylin( ( 0, (-2 ), 0 ), ( 0, 4, 0 ), 0.5, 3 ) b1 = ( s1 + c1 + c1 * irit.rx( 180 ) ) b2 = ( b1 - c2 ) irit.interact( b2 ) irit.save( "disjnt1", b2 ) # # The inner sphere is disjoint to begin with; #
irit.ctlpt( irit.E3, 0.5, 0, 0.23 ), \ irit.ctlpt( irit.E3, 0.5, 0, 0.5 ) ), irit.list( irit.KV_OPEN ) ) irit.SetResolution(res) srf5 = irit.gpolygon( irit.sfromcrvs( irit.list(cross, cross * irit.ty(0.4), cross * irit.ty(0.6) * irit.tz((-0.1))), 3, irit.KV_OPEN), 1) irit.free(cross) srf6 = srf4 * srf5 * srf5 * irit.ry(180) irit.free(srf4) irit.free(srf5) irit.SetResolution(res * 7) srf7 = irit.sphere((0, 0, 0), 1.4) * irit.tx(0.65) * irit.ty((-1.305)) srf8 = (srf6 - srf7) irit.free(srf6) irit.free(srf7) irit.SetResolution(res * 7) srf9 = irit.sphere((0, 0, 0), 1.4) * irit.tx((-0.65)) * irit.ty((-1.305)) handset = irit.convex(srf8 - srf9) irit.free(srf8) irit.free(srf9) irit.color(handset, irit.WHITE) irit.interact(irit.list(irit.GetAxes(), handset))
irit.cone((0, 0, 0.5), (0, 0, 0.5), 0.5, 0))) irit.interact( irit.list(irit.GetViewMatrix(), axes15, irit.cone(((-0.5), 0, 0), ((-0.5), 0, 0), 0.5, 1), irit.cone((0.5, 0, 0), (0.5, 0, 0), 0.5, 1), irit.cone((0, (-0.5), 0), (0, (-0.5), 0), 0.5, 1), irit.cone((0, 0.5, 0), (0, 0.5, 0), 0.5, 1), irit.cone((0, 0, (-0.5)), (0, 0, (-0.5)), 0.5, 1), irit.cone((0, 0, 0.5), (0, 0, 0.5), 0.5, 1))) irit.interact( irit.list(irit.GetViewMatrix(), axes15, irit.cylin(((-0.8), 0, 0), ((-0.5), 0.3, 0.3), 0.3, 0), irit.cylin((0.8, 0, 0), (0.8, 0, 0), 0.3, 1), irit.cylin((0, 0.8, 0), (0, 0.8, 0), 0.3, 2), irit.cylin((0, (-0.8), 0), (0.1, (-0.5), 0.2), 0.3, 3), irit.cylin((0, 0, (-0.8)), (0.4, 0.2, (-0.5)), 0.3, 3), irit.cylin((0, 0, 0.8), (0, 0, 0.8), 0.3, 1))) irit.interact( irit.list(irit.GetViewMatrix(), axes15, irit.sphere((0, 0, 0), 0.5))) irit.interact( irit.list(irit.GetViewMatrix(), axes15, irit.torus((0, 0, 0), (0.1, 0.2, 1), 0.5, 0.2))) irit.free(axes15) irit.SetViewMatrix(save_mat)