프로젝트

일반

사용자정보

새기능 #1426

백흠경이(가) 약 4년 전에 변경

# Shipping Size 설정, Shipping Size 벗어날 시 자동으로 Field Joint 부여
# Straight Pipe의 경우 Cut Length에 기준해서 Field Joint 생성 & 부여

{{plantuml(svg)
@startuml

note
==옵션 처리==
1. Tee의 허용 거리는 1,200mm
2. Nozzle Weld의 허용 거리는 Branch Size에 따라 결정됨
- 8" 이하 : branch Center기준 500mm
- 10" ~ 16" : Branch Center기준 600mm
- 18" ~ 32" : Branch Center기준 700mm
- 34" ~ 40" : Branch Center기준 800mm
- 42" ~ 56" : Branch Center기준 900mm
- 58" ~ 72" : Branch Center기준 1,200mm
- 74" 이상 : Branch Center기준 1,500 mm
3. Support의 허용 거리는 1,000mm
end note

start

:SBP(Shipping Box 위치)를 구함
(NEW SBP=SBP)
Initial Loop = True;

:**(1) FWP(앞에서 NEW SBP에서 가장 가까운 Joint)를 구함**
동일한 위치의 Weld를 포함;
if (Initial Loop and FWP is Tee?) then (true)
:**FWP 허용 이격 거리 = 200mm(초기값)**; FWP의 이격 거리**;
else (false)
:**FWP 허용 이격 거리 = FWP의 이격 거리**; 200mm(초기값)**;
endif
if (NEW SBP와 FWP의 거리가 FWP 허용 거리 이내?) then (false)
:BWP(뒤에서 NEW SBP에서 가장 가까운 Joint)를 구함
동일한 위치의 Weld를 포함하지 않음;
if (NEW SBP와 BWP의 거리가 허용 거리 이내?) then (true)
if (BWP가 Shipping Box 시작점?) then (false)
if (BWP가 Tee?) then (true)
:NEW SBP 지점에서 가까운 Tee의 Port를 F/W로 변경;
else (false)
if (BWP is Olet or Support or Elbow) then (true)
:NEW SBP 위치 계산
(BWP 위치에서 BWP 허용 거리만큼 뒤로 이동);
if (NEW SBP와 BWP의 사이에 Weld 존재?) then (true)
:NEW SBP를 BWP에서 가장 가까운 Weld로 이동;
else (false)
endif
:**(1)로 이동**
Initial Loop = False;
stop
else (false)
:<color:red>**ERROR**</color>;
end
endif
endif
else (true)
:<color:red>**ERROR**</color>;
end
endif
else (false)
endif
else (true)
:NEW SBP 계산
(FWP에서 FWP 허용 거리만큼 뒤로 이동);
if (NEW SBP와 FWP의 사이에 Weld 존재?) then (true)
:NEW SBP를 BWP로 이동;
if (NEW SBP is Shipping Box 시작점?) then (true)
:<color:red>**ERROR**</color>;
end
else (false)
endif
else (false)
endif
:**(1) 로 이동**
Initial Loop = False;
stop
endif

:SBP = NEW SBP;
:SBP에 Shipping Box Welding Point 생성;

end

@enduml
}}

뒤로

클립보드 이미지 추가 (최대 크기: 500 MB)