Пример #1
0
def animbisectcrv2( crv1, crv2, data, cntr ):
    irit.color( crv1, irit.YELLOW )
    irit.color( crv2, irit.YELLOW )
    irit.adwidth( crv1, 4 )
    irit.adwidth( crv2, 4 )
    i = 0
    while ( i <= irit.SizeOf( cntr ) - 1 ):
        pt = irit.coord( cntr, i )
        pt1 = irit.ceval( crv1, irit.FetchRealObject(irit.coord( pt, 0 ) ))
        pt2 = irit.ceval( crv2, irit.FetchRealObject(irit.coord( pt, 1 ) ))
        nrml1 = cnormalplnr( crv1, irit.coord( pt, 0 ) )
        nrml2 = cnormalplnr( crv2, irit.coord( pt, 1 ) )
        aaa = irit.ptslnln( irit.Fetch3TupleObject(irit.coerce( pt1, irit.POINT_TYPE )), 
										  irit.Fetch3TupleObject(nrml1), 
										  irit.Fetch3TupleObject(irit.coerce( pt2, irit.POINT_TYPE )), 
										  irit.Fetch3TupleObject(nrml2 ))
        if (irit.IsNullObject(aaa)):
            interpt = irit.GenNullObject();
        else:
            interpt = irit.nth( aaa, 1 )
        if ( irit.ThisObject(interpt) == irit.POINT_TYPE ):
            irit.color( pt1, irit.GREEN )
            irit.color( pt2, irit.GREEN )
            irit.color( interpt, irit.WHITE )
            bisectlns = irit.coerce( pt1, irit.E2 ) + irit.coerce( interpt, irit.E2 ) + irit.coerce( pt2, irit.E2 )
            irit.color( bisectlns, irit.MAGENTA )
            if ( irit.FetchRealObject(irit.coord( interpt, 1 )) < 10 and \
				 irit.FetchRealObject(irit.coord( interpt, 1 )) > (-10 ) and \
				 irit.FetchRealObject(irit.coord( interpt, 2 )) < 10 and \
				 irit.FetchRealObject(irit.coord( interpt, 2 )) > (-10 ) ):
                irit.view( irit.list( crv1, crv2, data, pt1, pt2, interpt, \
                bisectlns ), irit.ON )
        i = i + 1
Пример #2
0
def getbisectpt( crv1, crv2, pt ):
    pt1 = irit.ceval( crv1, irit.FetchRealObject(irit.coord( pt, 0 ) ))
    pt2 = irit.ceval( crv2, irit.FetchRealObject(irit.coord( pt, 1 ) ))
    nrml1 = irit.cnormalplnr( crv1, irit.FetchRealObject(irit.coord( pt, 0 ) ))
    nrml2 = irit.cnormalplnr( crv2, irit.FetchRealObject(irit.coord( pt, 1 ) ))
    interpts = irit.ptslnln( irit.coerce( pt1, irit.POINT_TYPE ), nrml1, irit.coerce( pt2, irit.POINT_TYPE ), nrml2 )
    retval = irit.nth( interpts, 1 )
    return retval
Пример #3
0
def getbisectcrv( crv1, crv2, cntr ):
    ptlist = irit.nil(  )
    i = 0
    while ( i <= irit.SizeOf( cntr ) - 1 ):
        pt = irit.coord( cntr, i )
        pt1 = irit.ceval( crv1, irit.coord( pt, 0 ) )
        pt2 = irit.ceval( crv2, irit.coord( pt, 1 ) )
        nrml1 = irit.cnormalplnr( crv1, irit.coord( pt, 0 ) )
        nrml2 = irit.cnormalplnr( crv2, irit.coord( pt, 1 ) )
        interpts = irit.ptslnln( irit.coerce( pt1, irit.POINT_TYPE ), nrml1, irit.coerce( pt2, irit.POINT_TYPE ), nrml2 )
        irit.snoc( irit.nth( interpts, 1 ), ptlist )
        i = i + 1
    retval = irit.cbspline( 2, ptlist, irit.list( irit.KV_OPEN ) )
    return retval
Пример #4
0
def animbisectcrv( crv1, crv2, data, cntr ):
    irit.color( crv1, irit.YELLOW )
    irit.color( crv2, irit.YELLOW )
    irit.adwidth( crv1, 4 )
    irit.adwidth( crv2, 4 )
    i = 0
    while ( i <= irit.SizeOf( cntr ) - 1 ):
        pt = irit.coord( cntr, i )
        pt1 = irit.ceval( crv1, irit.coord( pt, 0 ) )
        pt2 = irit.ceval( crv2, irit.coord( pt, 1 ) )
        nrml1 = irit.cnormalplnr( crv1, irit.coord( pt, 0 ) )
        nrml2 = irit.cnormalplnr( crv2, irit.coord( pt, 1 ) )
        interpt = irit.nth( irit.ptslnln( irit.coerce( pt1, irit.POINT_TYPE ), nrml1, irit.coerce( pt2, irit.POINT_TYPE ), nrml2 ), 1 )
        if ( irit.ThisObject(interpt) == irit.POINT_TYPE ):
            irit.color( pt1, irit.GREEN )
            irit.color( pt2, irit.GREEN )
            irit.color( interpt, irit.WHITE )
            irit.view( irit.list( crv1, crv2, pt1, pt2, data, interpt ), irit.ON )
        i = i + 1
Пример #5
0
def getbisectlines( crv1, crv2, cntr, n, start, end ):
    if ( start == (-1 ) ):
        start = 0
    if ( end == (-1 ) ):
        end = irit.SizeOf( cntr ) - 1
    retval = irit.nil(  )
    ii = start
    while ( ii <= end ):
        i = irit.floor( ii )
        pt = irit.coord( cntr, i )
        pt1 = irit.ceval( crv1, irit.coord( pt, 0 ) )
        pt2 = irit.ceval( crv2, irit.coord( pt, 1 ) )
        nrml1 = irit.cnormalplnr( crv1, irit.coord( pt, 0 ) )
        nrml2 = irit.cnormalplnr( crv2, irit.coord( pt, 1 ) )
        interpts = irit.ptslnln( irit.coerce( pt1, irit.POINT_TYPE ), nrml1, irit.coerce( pt2, irit.POINT_TYPE ), nrml2 )
        irit.snoc( irit.coerce( pt1, irit.E2 ) + irit.coerce( irit.nth( interpts, 1 ), irit.E2 ) + irit.coerce( pt2, irit.E2 ), retval )
        ii = ii + ( end - start - 1 )/n - 1e-005
    irit.color( retval, irit.CYAN )
    irit.awidth( retval, 0.0001 )
    return retval
Пример #6
0
aaa = irit.Fetch4TupleObject(pl1)

results = irit.list( irit.dstptln( ( 0, 0, 0 ), ( 1, 0, 0 ), ( 1, 1, 0 ) ), \
      irit.dstptln( ( 0, 0, 0 ), ( 1, 0, 0 ), ( 1, 1, 1 ) ), \
      irit.dstptpln( ( 0, 0, 0 ), aaa ), \
      irit.dstptpln( ( 1, 2, 3 ), aaa ), \
      irit.dstlnln( ( 1, 0, 0 ), ( 1, 1, 0 ), ( 0, 1, 0 ), ( 1, 1, 0 ) ), \
      irit.dstlnln( ( 1, 0, 0 ), ( 0, 1, 0 ), ( 0, 1, 0 ), ( 1, 0, 0 ) ), \
      irit.dstlnln( ( 1, 0, 0 ), ( 0, 1, 1 ), ( 0, 1, 0 ), ( 1, 0, 0 ) ), \
      irit.pln3pts( ( 0, 0, 1 ), ( 1, 0, 2 ), ( 0, 1, 3 ) ), \
      irit.ptptln( ( 0, 0, 0 ), ( 1, 0, 0 ), ( 1, 1, 0 ) ), \
      irit.ptptln( ( 0, 0, 0 ), ( 1, 1, 0 ), ( 1, 1, 1 ) ), \
      irit.ptlnpln( ( 1, 0, 1 ), ( 1, 1, 1 ), aaa ), \
      irit.ptlnpln( ( 4, 5, 6 ), ( 8, 9, 10 ), aaa ), \
      irit.ptslnln( ( 1, 0, 0 ), ( 0, 1, 0 ), ( 0, 1, 0 ), ( 1, 0, 0 ) ), \
      irit.ptslnln( ( 1, 0, 0 ), ( 0, 1, 1 ), ( 0, 1, 0 ), ( 1, 0, 0 ) ), \
      irit.tnscrcr( ( 0.2, (-1 ), 0 ), 0.5, ( 0, 1, 0 ), 0.2, 0 ), \
      irit.tnscrcr( ( 0.2, (-1 ), 0 ), 0.5, ( 0, 1, 0 ), 0.2, 1 ), \
      irit.tnscrcr( ( (-2 ), 0.3, 0 ), 0.7, ( 1, 0, 0 ), 1, 0 ), \
      irit.tnscrcr( ( (-2 ), 0.3, 0 ), 0.7, ( 1, 0, 0 ), 1, 1 ), \
      irit.ptscrcr( ( 0, 1, 0 ), ( 0, 0, 1 ), 2, ( 0, 0, 1 ), ( 0, 1, 0 ), 2 ), \
      irit.ptscrcr( ( 0, 1, 0 ), ( 0, 0, 1 ), 1, ( 0, 0, 1 ), ( 0, 1, 0 ), 1 ), \
      irit.ptscrcr( ( 0, 0, 0 ), ( 0, 0, 1 ), 2, ( 2, 0, 0 ), ( 0, 0, 1 ), 2 ), \
      irit.ptscrcr( ( 9, 1, 0 ), ( 0, 0, 1 ), 9, ( 1, 9, 0 ), ( 0, 0, 1 ), 8 ), \
      irit.ptscrcr( ( 0, 0, 0 ), ( 0, 0, 1 ), 2, ( 4, 0, 0 ), ( 0, 0, 1 ), 2 ), \
      irit.ptscrcr( ( 0, 0, 0 ), ( 0, 0, 1 ), 3, ( 9, 0, 0 ), ( 0, 0, 1 ), 4 ), \
      irit.pt3bary( ( 0, 0, 0 ), ( 1, 0, 0 ), ( 0, 1, 0 ), ( 0.25, 0.25, 0 ) ), \
      irit.pt3bary( ( 0, 0, 0 ), ( 1, 0, 0 ), ( 0, 1, 0 ), ( 0.5, 0.5, 0 ) ) )
irit.save("bsc_geom", results)