E GRAZIE X LA VOSTRA GENTILEZZA
MI CHIAMO MAX
E O APPENA FINITO UN CORSO PER UTILIZIARE UN PANTOGRAFO
E VOLEVO SAPER CHI SAPEVA PROGRAMMARE COSI ?
POTETE SCRIVERE SU **********
PROCEDURE
CHIUDI_GEN2 ( REAL d_H_porta , REAL d_L_porta , REAL d_Spessore_porta , BOOL b_apertura_DX , BOOL b_lavora_primo_giro ,
REAL d_offset_bordo_cerniera , REAL d_spessore_inferiore )
[
outputf ( "chiudiporta generico 2 " ) ;
REAL d_l_scasso = 286.0 ; // larghezza scasso ( direzione X )
REAL d_h_scasso = 34.0 ; // altezza scasso ( direzione Y )
REAL d_l_dist_scasso = 99 + ( d_l_scasso / 2 ) ; // distanza tra battuta e centro scasso in X
REAL d_h_dist_scasso = ( d_Spessore_porta / 2 ) ; // distanza tra battuta e centro scasso in Y ( centrata sulla mezzeria )
REAL d_profondita_scasso = 46 + 3 + 6 ; // profondità scasso
REAL d_l_placca = 340.0 ; // larghezza placca ( direzione X )
REAL d_h_placca = 30 ; // altezza placca ( direzione Y )
REAL d_l_dist_placca = 72 + ( d_l_placca / 2 ) ; // distanza tra battuta e centro placca in X
REAL d_h_dist_placca = ( d_Spessore_porta / 2 ) ; // distanza tra battuta e centro placca in Y ( centrata sulla mezzeria )
REAL d_s_placca = 9 ; // spessore placca
REAL d_l_dist_ribasso = 72.0 ; // distanza tra battuta e ATTACCO ribasso in X
REAL d_h_dist_ribasso = 30 ; // distanza tra battuta e ATTACCO ribasso in Y
REAL d_l_ribasso = 340.0 ; // larghezza ribasso ( direzione X )
// il ribasso è largo come mezza porta ( dalla mezzeria verso il lato aperto ) + mezza placca
REAL d_h_ribasso = ( d_Spessore_porta / 2 ) + ( d_h_placca / 2 ) ; // altezza ribasso ( direzione Y )
REAL d_s_ribasso = 5.0 ; // spessore ribasso
INT n_numero_passate = 8 ; // numero passate in profondità
// -------------------------------------------------------------------
// dichiarazione variabili
REAL d_Zt = 0.0 ; // distanza tra faccia superiore e centro della placca
REAL d_Xt = 0 ; // temporaneo
REAL d_Yt = 0 ; // temporaneo
// -------------------------------------------------------------------
// scasso profondo
// if ( b_apertura_DX ) {
// d_Xt = d_l_dist_scasso - d_offset_bordo_cerniera ;
// }
// else {
// d_Xt = d_L_porta - d_l_dist_scasso + d_offset_bordo_cerniera ;
// } ; // endif apertura dx
// d_Yt = d_H_porta ;
// d_Zt = - d_h_dist_scasso ;
// LIBRARY : NAME = "%CMSGLC%\\COMPO\\CHIU_SCASSO.CMP", SYSTEM_SPACE ;
// CALL CHIU_SCASSO ( d_Xt , d_Yt , d_Zt , d_l_scasso , d_h_scasso , d_profondita_scasso , n_numero_passate , b_apertura_DX ) ;
// FORGET LIBRARY "CHIU_SCASSO" ;
// FORGET SYSTEM_SPACE DEFINITION OF "CHIU_SCASSO" ;
// -------------------------------------------------------------------
// placca
if ( b_apertura_DX ) {
d_Xt = d_l_dist_placca - d_offset_bordo_cerniera ;
}
else {
d_Xt = d_L_porta - d_l_dist_placca + d_offset_bordo_cerniera ;
} ; // endif apertura dx
d_Yt = d_H_porta ;
d_Zt = - d_h_dist_placca ;
LIBRARY : NAME = "%CMSGLC%\\COMPO\\CHIU_PLACCA.CMP", SYSTEM_SPACE ;
CALL CHIU_PLACCA ( d_Xt , d_Yt , d_Zt , d_l_placca , d_h_placca , d_s_placca , b_apertura_DX ) ;
FORGET LIBRARY "CHIU_PLACCA" ;
FORGET SYSTEM_SPACE DEFINITION OF "CHIU_PLACCA" ;
// -------------------------------------------------------------------
// ribasso : attenzione, non è una tasca ma ha un lato aperto tipo scasso pomella
// punto di inserzione : angolo in basso a destra
if ( b_apertura_DX ) {
d_Xt = d_l_dist_ribasso - d_offset_bordo_cerniera ;
}
else {
d_Xt = d_L_porta - d_l_dist_ribasso + d_offset_bordo_cerniera - d_l_ribasso ;
} ; // endif apertura dx
d_Yt = d_H_porta ;
d_Zt = - d_Spessore_porta ;
LIBRARY : NAME = "%CMSGLC%\\COMPO\\CHIU_RIBASSO.CMP", SYSTEM_SPACE ;
CALL CHIU_RIBASSO ( d_Xt , d_Yt , d_Zt , d_l_ribasso , d_h_ribasso , d_s_ribasso , b_apertura_DX ) ;
FORGET LIBRARY "CHIU_RIBASSO" ;
FORGET SYSTEM_SPACE DEFINITION OF "CHIU_RIBASSO" ;
] ;