This question has been flagged
114 Vistas

Este UCS tem o objetivo de permitir alterar a posição das dobradiças manualmente, a partir do seu referencial quando estas se sobrepõe com algum componente:


 


Para efetuar as modificações temos de selecionar a porta correspondente que contém a dobradiça, para poder ativar os atributos de posicionamento:



Após a ativação, podemos inserir medidas de acréscimo à posição referencial de origem, definidas pelo material de dobradiças.




Os UCS necessários para esta funcionalidade são os seguintes:




BIT_GEN - DOBRADIÇAS POSIÇÃO MANUAL 1

;Dobradiças posicionadas manualmente 1/2

For Each DOR Opening

IF DobEdit == Null Then ; Adiciona opção
DobEdit<bool> := 0
DobEdit<style> = 1
DobEdit<desc> = 'Posição Dobradiças Manual'
End If

If DobEdit == true Then
Dobradica_Currente<int> := 1
While this.HNG@{Dobradica_Currente}.PID != Null Do ; Cálcula total de dobradiças
Dobradica_Currente<int> += 1
End While
Total_Dobradicas<int> := Dobradica_Currente
Dobradica_Currente<int> := 1
While this.HNG@{Dobradica_Currente}.PID != Null Do
Dobradica_Invertida<int> := Total_Dobradicas - Dobradica_Currente
IF Dob{Dobradica_Currente} == Null Then ; Adiciona campo para offset da dobradiça em Y
Dob{Dobradica_Currente}<meas> := 0
Dob{Dobradica_Currente}<style> = 1
Dob{Dobradica_Currente}<desc> = 'Posição Dobradiças Manual - {Dobradica_Invertida} ?'
End If
Delete Dobradica_Invertida
DobY{Dobradica_Currente}<meas> := this.HNG@{Dobradica_Currente}.Y
Dobradica_Currente<int> += 1
End While
Dobradica_Currente<int> := 1
While S_HNGPLT@{Dobradica_Currente}.PID != Null Do
DobCalcY{Dobradica_Currente}<meas> := S_HNGPLT@{Dobradica_Currente}.Y
Dobradica_Currente<int> += 1
End While
Delete Dobradica_Currente
Else
Dobradica_Currente<int> := 1
While this.HNG@{Dobradica_Currente}.PID != Null Do
Delete DobY{Dobradica_Currente}
Delete Dob{Dobradica_Currente}
Delete DobCalcY{Dobradica_Currente}
Dobradica_Currente<int> += 1
End While
Delete Dobradica_Currente
End If

BIT_GEN - DOBRADIÇAS POSIÇÃO MANUAL 2

;Dobradiças posicionadas manualmente 2/2

For Each HNG|S_HNGPLT Part

If Name = 'HNG' Then ; Alteração das Dobradiças
    Dobradica_Currente<int> := 1
While :Dob{Dobradica_Currente} != Null Do
IF :DobY{Dobradica_Currente} == Y Then
Y += :Dob{Dobradica_Currente}
End If
Dobradica_Currente<int> += 1
End While
    Delete Dobradica_Currente
End If
If Name = 'S_HNGPLT' Then ; Alteração dos calços
    Dobradica_Currente<int> := 1
While DOR.DobCalcY{Dobradica_Currente} != Null Do
IF DOR.DobCalcY{Dobradica_Currente} == Y Then
Y += DOR.Dob{Dobradica_Currente}
End If
Dobradica_Currente<int> += 1
End While
    Delete Dobradica_Currente
End If
Avatar
Descartar