<HTML><HEAD><link type="text/css" href="../css/main_styles.css" rel="stylesheet"></HEAD>
<BODY><TITLE>%mqc_fam_check_member_geometry</TITLE><H1>%mqc_fam_check_member_geometry </H1><P CLASS="Paragraph">Classname: <B>%mqc_fam_check_member_geometry </B></P><P CLASS="Paragraph">Inherits from: <B><A href=..\checkmate\xug_base_checker.html>%ug_base_checker </A></B></P><PRE STYLE=\"text-align : left;\" CLASS=\"Code\"> </PRE><PRE STYLE=\"text-align : left;\" CLASS=\"Code\"> 
<B>Description:</B>
   Validate if member geometry can update correctly.
 Parameters:
     (Boolean)  disabled?        -  If it is true, the checker is disabled.
                                    Default is False.
     (Boolean)  save_log_in_part -  The flag indicates whether the checking results can
                                    be saved to the part file
                                    Default is True.
     (Integer)  log_type         -  Indicate which logging type to use to report the violation.
                                      1 - LOG_ERROR,
                                      2 - LOG_WARNING,
                                      3 - LOG_INFO,
                                      Default is 1 to log error.
     (String)  log_msg           -  User defined message to be added when the system reports the violation.
                                    Default is an empty string.
 Result:  None
</PRE><PRE><FONT COLOR= blue>DefClass: %mqc_fam_check_member_geometry( %ug_base_checker );
</FONT></PRE><DIV><PRE STYLE=\"text-align : left;\" CLASS=\"Code\"><FONT COLOR=blue>( String )                      %test_category: "Modeling.Part Family";
( String )                      %displayed_name: "Validate member geometry";

</SPAN></FONT></PRE></DIV><DIV><PRE STYLE=\"text-align : left;\" CLASS=\"Code\"><FONT COLOR=blue>( list )                        log_type_option: { LOG_ERROR, 
                                                   LOG_WARNING, 
                                                   LOG_INFO};
( string )                      log_type_label: "Log Option";


</SPAN></FONT></PRE></DIV><DIV><PRE STYLE=\"text-align : left;\" CLASS=\"Code\"><FONT COLOR=blue>( Boolean Parameter )           disabled?: false;
( Boolean Parameter )           save_log_in_part: true;
( Integer Parameter )           log_type: 1;
( string Parameter )            log_msg: "";
</SPAN></FONT></PRE></DIV><PRE STYLE=\"text-align : left;\" CLASS=\"Code\">  checking ...</PRE><DIV><PRE STYLE=\"text-align : left;\" CLASS=\"Code\"><FONT COLOR=blue>( string )                      log_msg_label: "Log Message";


</SPAN></FONT></PRE></DIV><DIV><PRE STYLE=\"text-align : left;\" CLASS=\"Code\"><FONT COLOR=blue> ( any Uncached ) do_check:
@{
    $usr_msg << If ( "" = log_msg: ) Then "" Else log_msg: + "~n";

    If ( mqc_fam_is_template?( "" ) )
    Then
    @{
        $family_name << First( mqc_fam_ask_template_names( "" ) );
        $member_list << mqc_fam_ask_member_names( "", "" );
    
        $error_members << If ( Empty?( $member_list ) )
                          Then
                          @{
                              ug_mqc_lprintf( {"MQC debug: This is an empty template"} );
                              {};
                          }
                          Else Loop
                          {
                             For  $member_index  From  1  To  Length( $member_list );
                             For  $member_name   Is    Nth( $member_index, $member_list );
                             If ( mqc_fam_validate_member_geom( $family_name, $member_index ) = 0 )
                             Append { $member_name };
                          };

        If ( Empty?( $error_members ) )
        Then ug_mqc_lprintf( {"MQC debug: all members' geometry are right or no members."} )
        Else
        @{
            $error_member_number << Length( $error_members );
            $error_members_str << "~n     "+
                                  mqc_list_to_string( $error_members, "~n    " );
            ug_mqc_log( Nth( log_type:, log_type_option: ), {}, 
                       $usr_msg +
                       "Found " + Stringvalue($error_member_number)+
                       " member(s) with invalid geometry." +
                       "~nFollowing list the error member(s):" +
                       $error_members_str );
        };
    }
    Else  ug_mqc_lprintf( {"MQC debug: This is not a family template part."} );
};

</SPAN></FONT></PRE></DIV></TABLE><p class=EndLine>&nbsp;</p><p class=blank>&nbsp;</p></BODY></HTML>