Return to Statement


Geometric Properties of a Face at a Parameter Example

The following example tests the output of the SPROPF command against similar statements.

 
ENTITY/FAC, FACES(2)
NUMBER/PARS(2), USRESP, BADFLG
NUMBER/OLDDAT(20), NEWDAT(20)
PARS(1) = 0.5
PARS(2) = 0.5
STEP1:
MASK/ALL
IDENT/'Select One Face', FACES, USRESP
FAC = FACES(1)
JUMP/HALT:, HALT:, USRESP
STEP2:
&COLOR(FAC) = &COLOR(FAC) + 1
PARAM/ 'Specify Parameter', 'U = ', PARS(1), 'V = ', PARS(2), USRESP
&COLOR(FAC) = &COLOR(FAC) - 1
JUMP/ STEP1:, HALT:, USRESP
STEP3:
OLDDAT(1..3) = SPOSF(FAC,PARS(1),PARS(2))
OLDDAT(4..6) = SDDUF(FAC,PARS(1),PARS(2))
OLDDAT(7..9) = SDDVF(FAC,PARS(1),PARS(2))
OLDDAT(16..18) = SNORF(FAC,PARS(1),PARS(2))
NEWDAT(1..20) = SPROPF(FAC,PARS(1),PARS(2))
STEP4:
PRINT/' '
PRINT/'POINT'
PRINT/NEWDAT(1..3)
PRINT/'1st U'
PRINT/NEWDAT(4..6)
PRINT/'1st V'
PRINT/NEWDAT(7..9)
PRINT/'2nd U'
PRINT/NEWDAT(10..12)
PRINT/'2nd V'
PRINT/NEWDAT(13..15)
PRINT/'UNIT NORMAL'
PRINT/NEWDAT(16..18)
PRINT/'RADII OF CURVATURE'
PRINT/NEWDAT(19..20)
PRINT/' '
PRINT/'---------------------'
PRINT/OLDDAT(1..3)
PRINT/OLDDAT(4..6)
PRINT/OLDDAT(7..9)
PRINT/OLDDAT(16..18)
STEP5:
BADFLG = 0
IF/NEWDAT(1) <> OLDDAT(1), BADFLG = 1
IF/NEWDAT(2) <> OLDDAT(2), BADFLG = 1
IF/NEWDAT(3) <> OLDDAT(3), BADFLG = 1
IF/NEWDAT(4) <> OLDDAT(4), BADFLG = 1
IF/NEWDAT(5) <> OLDDAT(5), BADFLG = 1
IF/NEWDAT(6) <> OLDDAT(6), BADFLG = 1
IF/NEWDAT(7) <> OLDDAT(7), BADFLG = 1
IF/NEWDAT(8) <> OLDDAT(8), BADFLG = 1
IF/NEWDAT(9) <> OLDDAT(9), BADFLG = 1
IF/NEWDAT(16) <> OLDDAT(16), BADFLG = 1
IF/NEWDAT(17) <> OLDDAT(17), BADFLG = 1
IF/NEWDAT(18) <> OLDDAT(18), BADFLG = 1
IF/BADFLG == 1, MESSG / 'Results Are Bad'
JUMP/STEP1:
HALT:
HALT

See Also

Position on a Surface - SPOSF
Vector Normal to a Surface - SNORF
U,V Parameters of a Point on a Surface - SDDUF
Surface Partial Derivative, V Param - SDDVF