ГОС! Р ИСО 10303-203-2003
dl := normalisc(axisl);
и :=■[ d 1. orthogonal complement^ I)):
IF EXISTS (axis2) THEN
factor := dot_pn>duct(axis2, u|2|);
IF factor < 0 THEN
u|2|.dircction_ratios|l| -u|2|.dircclk>n_ratios| 11:
u|21-dircclion_ratios(2| :■ -u|2].dircction_ratios(2|;
E N D JF;
END IF :
ELSE
IF EXJSTS(axis2) THEN
dl normalise!axis2);
u := |orthogonal_complcmcnt(dl), dl|;
u| I|.dircction_ratios| 11:« -u|l].direction_ratios| l|;
u|l|.direction_ratios|2] :** -u|l|.directkm_ratios|2|:
ELSE
u :* |dummy_gri 11direction (|1 .0)), dummy_gn l
direction (|0. I]>J;
E N D JF :
E N D JF ;
E N D JF ;
RETURN (u);
END_FUNCT10N; - - basc_axis
FUNCTION boolean_choose(b: BOOLEAN:
choicel, choice2: GENERIC: item): GENERIC: item;
IF b THEN
RETURN (choice!) ;
ELSE
RETURN (choicc2) ;
E N D JF:
ENDJUNCTION; - - boolcan.choosc
FUNCTION build_2axes(ief_d)rcctk>n: direction): LIST (2:2] OF direction:
LOCAL
d : direction := NVL(normalise! redirection), dummy_gri 11
direction ((1.0))):
ENDJ.OCAL;
RETURN (|d. orthogonal_complcment(d)|) ;
END_FUNCTION; - - build_2axcs
FUNCTION build_axcs (axis. rcf_dircction: direction
): LIST |3:3| OF direction;
LOCAL
dI : direction;
d2 : direction:
END_LOCAL ;
dl :« NVL(normalisc(axis), dummy_gri 11direction((0, 0, 11»:
d2 :» fu5t_proj_axis(d 1, redirection);
RETURN <|d2. normalise (cross produced I. d2)) .orientation, dlj);
END.FUNCTION; - - build_axcs
FUNCTION cc_dcsign_date_timc_corrclation
(e : cc_design_date_andjime_assignmcnt) : BOOLEAN;
LOCAL
dt_rde: STRING;
END_LOCAL;
dt_role := c\date_and_limc_assignmcnt.role.namc;
CASE dt_rolc OF
’creation date’: IF SIZEOF (e.items) < >