Se la prima istruzione GROUP_UNION viene calcolata correttamente, deve esserci un errore con il gruppo "ext_end".
Senza conoscere questo codice e / o screenshot, non posso aiutarti!
Here you are all the code 3D
id=0
ROTX 90
SECT_FACESTYLE fcs_crr
GOSUB "carrier"
GOSUB "ext_end"
SECT_FACESTYLE fcs_stp
GOSUB "steps"
GOSUB "step_end"
END
"carrier":
IF unn THEN
GROUP "carrier"
ENDIF
PRISM 5 , wdt ,
0 , -thk ,
0 , 0 ,
stp*stps , rsr*stps ,
stp*stps , rsr*stps - thk ,
0 , -thk
IF unn THEN
GROUP_END
!GROUP_PLACE "carrier"
ENDIF
IF unn THEN
GROUP "carrier_steps"
ENDIF
FOR n = 1 TO stps
GOSUB "step_carrier"
TRANS stp , rsr , 0
NEXT
RESTORE stps
IF unn THEN
GROUP_END
!GROUP_PLACE "carrier_steps"
ENDIF
!IF unn THEN
!res=""
!res=GROUP_UNION("carrier_steps","carrier")
!GROUP_PLACE res
!ENDIF
IF unn THEN
res=""
res=GROUP_UNION("carrier_steps","carrier")
res=GROUP_UNION(res,"ext_end")
GROUP_PLACE res
ENDIF
RETURN
"ext_end":
ang = ATAN ( rsr / stp )
dx = ( thk - end_thk ) / TAN ( ang )
dy = ( thk - end_thk )
TRANS stps * stp,stps * rsr,0
HANDLE 0,0,0,id,"ext_end",1
HANDLE ext_end,0,0,id,"ext_end",2
HANDLE -1,0,0,id,"ext_end",3
id=id+1
PRISM 4 , wdt ,
0 , 0 ,
ext_end , 0 ,
ext_end , -end_thk ,
dx , -end_thk,
0 , -end_thk - dy,
0 , 0
RESTORE 1
RETURN
"steps":
IF unn THEN
GROUP "steps"
ENDIF
FOR n = 1 TO stps
GOSUB "step"
TRANS stp , rsr , 0
NEXT
RESTORE stps
IF unn THEN
GROUP_END
!GROUP_PLACE "steps"
ENDIF
IF unn THEN
GROUP "risers"
ENDIF
FOR n = 1 TO stps
GOSUB "riser"
TRANS stp , rsr , 0
NEXT
RESTORE stps
IF unn THEN
GROUP_END
!GROUP_PLACE "risers"
ENDIF
IF unn THEN
res=""
res=GROUP_UNION("steps","risers")
GROUP_PLACE res
ENDIF
RETURN
"step_carrier":
PRISM 4 , wdt ,
0 , 0 ,
0 , rsr ,
stp , rsr ,
0 , 0
RETURN
"step":
PRISM 5 , wdt ,
-rst-nos,rsr ,
-rst-nos,rsr+stt ,
stp,rsr+stt ,
stp,rsr ,
-rst-nos,rsr
RETURN
"riser":
PRISM 5 , wdt ,
-rst , stt ,
-rst , rsr ,
0 , rsr ,
0 , stt,
-rst , stt
RETURN
"step_end":
TRANS stps * stp,stps * rsr,0
PRISM 5 , wdt ,
0,0,
ext_end,0,
ext_end,stt,
0,stt,
0,0
RESTORE 1
RETURN