주 콘텐츠로 건너뛰기
단면 설정 생성 편집

Section Properties ( PSC )

PSC 단면을 조회하거나 등록·변경하는 함수입니다. PSC는 치수를 vSIZE 하나에 담지 않고 네 개의 배열로 나눠서 받습니다.

・ aSizes : I단 외형 치수 (vSIZE_PSC_A)

・ bSizes : I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes : J단 외형 치수 (vSIZE_PSC_C)

・ dSizes : J단 내부 셀 치수 (vSIZE_PSC_D)

배열이 몇 개짜리인지는 형상마다 다르며, 각 함수가 알아서 맞춰 줍니다. 모자라면 0으로 채우고 넘치면 잘라내므로 시트 범위를 그대로 넘겨도 됩니다. 아래 예제는 모두 제품에서 실제로 생성해 ope/SECTPROP으로 확인한 값입니다.

형상 SHAPE 코드 방식 함수명
전 형상 - PSC SectionPsc
PSC 1 Cell 1CEL PSC SectionPsc1Cell
PSC 2 Cell 2CEL PSC SectionPsc2Cell
PSC 3 Cell 3CEL PSC SectionPsc3Cell
PSC n Cell NCEL PSC SectionPscNCell
PSC n Cell type 2 NCE2 PSC SectionPscNCell2
PSC Mid Girder PSCM PSC SectionPscMid
PSC I Girder PSCI PSC SectionPscI
PSC Half PSCH PSC SectionPscHalf
PSC Tee PSCT PSC SectionPscTee
PSC Plate / Slab PSCB PSC SectionPscPlate

SectionPsc(sectId, sectName, shape, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags], [pscOpt1], [pscOpt2], [nA], [nB], [nC], [nD], [nJoint], [useSymmetric], [useSmallHole])

SectionPsc1Cell(sectId, sectName, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags])

SectionPsc2Cell(sectId, sectName, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags])

SectionPsc3Cell(sectId, sectName, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags])

SectionPscNCell(sectId, sectName, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags], [pscOpt1], [pscOpt2])

SectionPscNCell2(sectId, sectName, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags], [pscOpt1], [pscOpt2])

SectionPscMid(sectId, sectName, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags], [pscOpt1], [pscOpt2])

SectionPscI(sectId, sectName, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags])

SectionPscHalf(sectId, sectName, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags], [pscOpt1], [pscOpt2])

SectionPscTee(sectId, sectName, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags])

SectionPscPlate(sectId, sectName, aSizes, bSizes, cSizes, dSizes, [sWidth], [jointFlags], [pscOpt1], [pscOpt2])

모든 함수는 아래 선택 인자를 공통으로 받습니다. 생략하면 기본값이 들어갑니다.

・ offsetPt: 단면 기준점 (기본 "CC")

・ useShearDeform: 전단 변형 고려 (기본 True)

・ useWarping: 뒤틀림 효과 고려 (기본 False)

치수는 현재 모델의 길이 단위를 따릅니다. 아래 예제는 모두 m 기준이므로 먼저 Unit "KN", "M" 으로 단위를 맞춰 두십시오.

SectionPsc

PSC 단면을 형상 코드와 네 개의 치수 배열로 직접 등록하는 범용 함수입니다. 아래 전용 함수들이 모두 이 함수를 호출합니다. 전용 함수가 없는 형상이나 제품 버전이 올라가 새 형상이 생겼을 때 씁니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ jointFlags: 절점 사용 여부 배열. 생략하면 전부 True

・ pscOpt1, pscOpt2: 형상별 옵션 문자열

・ nA, nB, nC, nD: 각 배열이 요구하는 값 개수

・ nJoint: JOINT 배열 길이 (0이면 JOINT를 보내지 않음)

・ useSymmetric: 좌우 대칭 사용 여부

・ useSmallHole: 작은 구멍 사용 여부

Debug.Print SectionPsc(30, "PSC_Any", shape:="1CEL", _
            aSizes:=Array(0.23, 0.42, 0.055, 0.18, 1.68, 0.23), _
            bSizes:=Array(1.23, 0.44, 0.9, 0.6, 0.02, 1.8), _
            cSizes:=Array(0.22, 0.44, 0.05, 0.14, 1.23, 0.88, 0.2, 0.025, 0.09, 0.21), _
            dSizes:=Array(1.91, 0.89, 1.56, 1.69, 1.48, 0.57, 1.1, 0), _
            sWidth:=0.23, nA:=6, nB:=6, nC:=10, nD:=8, nJoint:=8, useSymmetric:=True)

SectionPsc1Cell

1셀 PSC 박스 단면을 등록합니다. 치수 개수는 aSizes 6, bSizes 6, cSizes 10, dSizes 8, jointFlags 8 개입니다. 모자라면 0으로 채우고 넘치면 잘라냅니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ jointFlags: 절점 사용 여부 배열. 생략하면 전부 True

Debug.Print SectionPsc1Cell(31, "PSC-1CELL", _
            aSizes:=Array(0.23, 0.42, 0.055, 0.18, 1.68, 0.23), _
            bSizes:=Array(1.23, 0.44, 0.9, 0.6, 0.02, 1.8), _
            cSizes:=Array(0.22, 0.44, 0.05, 0.14, 1.23, 0.88, 0.2, 0.025, 0.09, 0.21), _
            dSizes:=Array(1.91, 0.89, 1.56, 1.69, 1.48, 0.57, 1.1, 0), sWidth:=0.23)

SectionPsc2Cell

2셀 PSC 박스 단면을 등록합니다. 치수 묶음은 1CEL과 같고 두 번째 셀은 dSizes에서 나옵니다. 치수 개수는 aSizes 6, bSizes 6, cSizes 10, dSizes 8, jointFlags 8 개입니다. 모자라면 0으로 채우고 넘치면 잘라냅니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ jointFlags: 절점 사용 여부 배열. 생략하면 전부 True

Debug.Print SectionPsc2Cell(32, "PSC-2CELL", _
            aSizes:=Array(0.23, 0.42, 0.055, 0.18, 1.68, 0.23), _
            bSizes:=Array(1.23, 0.44, 0.9, 0.6, 0.02, 1.8), _
            cSizes:=Array(0.22, 0.44, 0.05, 0.14, 1.23, 0.88, 0.2, 0.025, 0.09, 0.21), _
            dSizes:=Array(1.91, 0.89, 1.56, 1.69, 1.48, 0.57, 1.1, 0.1), sWidth:=0.23)

SectionPsc3Cell

3셀 PSC 박스 단면을 등록합니다. 치수 개수는 aSizes 10, bSizes 12, cSizes 13, dSizes 13, jointFlags 13 개입니다. 모자라면 0으로 채우고 넘치면 잘라냅니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ jointFlags: 절점 사용 여부 배열. 생략하면 전부 True

Debug.Print SectionPsc3Cell(33, "PSC-3CELL", _
            aSizes:=Array(0.2, 0.4, 1.22, 0.36, 0.23, 0.42, 1.1, 0.6, 1.62, 0.34), _
            bSizes:=Array(0.92, 0.44, 2.05, 0.94, 0.4, 1.16, 1.12, 0.35, 2.08, 2.7, 1.36, 0.43), _
            cSizes:=Array(1.25, 0.52, 0.06, 0.2, 0.05, 0.14, 0.21, 0.32, 0.39, 1.12, 0.49, 0.24, 0.17), _
            dSizes:=Array(0.99, 0.51, 0.32, 0.68, 0.68, 0.33, 0.45, 0.98, 1.5, 0.93, 0.46, 0.74, 0.29), _
            sWidth:=0.2)

SectionPscNCell

n셀 PSC 박스 단면을 등록합니다. cSizes/dSizes와 jointFlags는 쓰지 않습니다. 치수 개수는 aSizes 5, bSizes 8 개입니다. 모자라면 0으로 채우고 넘치면 잘라냅니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ pscOpt1: 모서리 처리 방식. CHAMFER

・ pscOpt2: 셀 개수를 문자열로. 예 "4"

Debug.Print SectionPscNCell(34, "PSC-nCELL", _
            aSizes:=Array(1.5, 0.3, 0.2, 0.1, 0.15), _
            bSizes:=Array(4, 0.8, 0.18, 0.05, 0.05, 0.21, 0.12, 0.15), _
            sWidth:=1.5, pscOpt1:="CHAMFER", pscOpt2:="4")

SectionPscNCell2

n셀 PSC 박스 단면(타입 2)을 등록합니다. 치수 개수는 aSizes 11, bSizes 18, cSizes 11, dSizes 18, jointFlags 2 개입니다. 모자라면 0으로 채우고 넘치면 잘라냅니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ jointFlags: 절점 사용 여부 배열. 생략하면 전부 True

・ pscOpt1: 셀 형상. CIRCLE 또는 POLYGON

・ pscOpt2: 셀 개수를 문자열로. 예 "2"

Debug.Print SectionPscNCell2(35, "PSC-nCELL2", _
            aSizes:=Array(0.12, 0.2, 0.08, 0.4, 0.7, 0.34, 0.2, 0.3, 0.34, 0.5, 0.51), _
            bSizes:=Array(0.19, 0.13, 0.15, 0.08, 0.09, 0.07, 0.22, 0.2, 0.07, _
                          0.06, 0.05, 0.03, 0.13, 0.05, 0.06, 0.07, 0.2, 0.3), _
            cSizes:=Array(0.12, 0.2, 0.08, 0.4, 0.7, 0.34, 0.2, 0.3, 0.34, 0.5, 0.51), _
            dSizes:=Array(0.19, 0.13, 0.15, 0.08, 0.09, 0.07, 0.22, 0.2, 0.07, _
                          0.06, 0.05, 0.03, 0.13, 0.05, 0.06, 0.07, 0.2, 0.3), _
            sWidth:=4, pscOpt1:="POLYGON", pscOpt2:="2")

SectionPscMid

PSC 중앙부 거더 단면을 등록합니다. 상하 헌치 모양에 따라 전체 폭이 달라지므로 aSizes/cSizes를 옵션에 맞춰 넣어야 합니다. 치수 개수는 aSizes 10, bSizes 6, cSizes 9, dSizes 6, jointFlags 9 개입니다. 모자라면 0으로 채우고 넘치면 잘라냅니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ jointFlags: 절점 사용 여부 배열. 생략하면 전부 True

・ pscOpt1: 상부 헌치. NONE, CIRCLE, POLYGON

・ pscOpt2: 하부 헌치. NONE, CIRCLE, POLYGON

' 헌치 없음
Debug.Print SectionPscMid(36, "PSC-MID", _
            aSizes:=Array(2.3, 2, 0, 0, 0, 0, 0, 0, 0, 0), _
            bSizes:=Array(0, 0.5, 0, 0, 0, 0), _
            cSizes:=Array(2.2, 0, 0, 0, 0, 0, 0, 0, 0), _
            dSizes:=Array(0, 0.7, 0, 0, 0, 0), sWidth:=2.3, _
            jointFlags:=Array(True, False, False, False, False, False, False, False, False), _
            pscOpt1:="NONE", pscOpt2:="NONE")

SectionPscI

PSC I형 거더 단면을 등록합니다. 치수 개수는 aSizes 10, bSizes 7, cSizes 9, dSizes 7, jointFlags 9 개입니다. 모자라면 0으로 채우고 넘치면 잘라냅니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ jointFlags: 절점 사용 여부 배열. 생략하면 전부 True

Debug.Print SectionPscI(37, "PSC-I", _
            aSizes:=Array(2.45, 0.26, 0.44, 0.05, 0.2, 1.13, 0.4, 0.07, 0.22, 0.27), _
            bSizes:=Array(0.16, 1.36, 0.44, 0.9, 0.8, 0.29, 0.52), _
            cSizes:=Array(0.26, 0.48, 0.03, 0.22, 1.09, 0.44, 0.05, 0.24, 0.25), _
            dSizes:=Array(0.18, 1.34, 0.46, 0.85, 0.82, 0.35, 0.57), sWidth:=2.45)

SectionPscHalf

PSC 반단면을 등록합니다. pscOpt2 값에 따라 cSizes/dSizes에 넣을 값이 달라집니다. 치수 개수는 aSizes 6, bSizes 6, cSizes 10, dSizes 7, jointFlags 8 개입니다. 모자라면 0으로 채우고 넘치면 잘라냅니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ jointFlags: 절점 사용 여부 배열. 생략하면 전부 True

・ pscOpt1: 남길 쪽. LEFT 또는 RIGHT

・ pscOpt2: 셀 형상. NONE, CIRCLE, POLYGON

Debug.Print SectionPscHalf(38, "PSC-HALF", _
            aSizes:=Array(0.23, 0.42, 0.055, 0.18, 1.68, 0.23), _
            bSizes:=Array(1.23, 0.44, 0.9, 0.6, 0.02, 1.8), _
            cSizes:=Array(0.22, 0.44, 0.05, 0.14, 1.23, 0.88, 0.2, 0.025, 0.09, 0.21), _
            dSizes:=Array(1.91, 0.89, 1.56, 1.69, 1.48, 0.57, 1.1), sWidth:=0.23, _
            pscOpt1:="LEFT", pscOpt2:="POLYGON")

SectionPscTee

PSC T형 거더 단면을 등록합니다. 치수 개수는 aSizes 8, bSizes 8, cSizes 7, dSizes 8, jointFlags 9 개입니다. 모자라면 0으로 채우고 넘치면 잘라냅니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ jointFlags: 절점 사용 여부 배열. 생략하면 전부 True

Debug.Print SectionPscTee(39, "PSC-TEE", _
            aSizes:=Array(2.17, 0.29, 0.13, 1.8, 0.21, 0.13, 1.63, 1.83), _
            bSizes:=Array(0.025, 0.08, 1.43, 0.85, 0.06, 0.03, 0.81, 1.42), _
            cSizes:=Array(0.29, 0.28, 1.7, 0.19, 0.16, 1.6, 1.85), _
            dSizes:=Array(0.05, 0.16, 1.4, 0.85, 0.06, 0.02, 0.8, 1.39), sWidth:=2.17)

SectionPscPlate

PSC 슬래브(플레이트) 거더 단면을 등록합니다. 치수 개수는 aSizes 10, bSizes 6, cSizes 8, dSizes 5, jointFlags 2 개입니다. 모자라면 0으로 채우고 넘치면 잘라냅니다. sectId를 0으로 넣으면 조회됩니다.

・ sectId: 단면 번호

・ sectName: 단면 이름

・ aSizes: I단 외형 치수 (vSIZE_PSC_A)

・ bSizes: I단 내부 셀 치수 (vSIZE_PSC_B)

・ cSizes: J단 외형 치수 (vSIZE_PSC_C)

・ dSizes: J단 내부 셀 치수 (vSIZE_PSC_D)

・ sWidth: 대화상자 상단의 대칭 폭 (SWIDTH)

・ jointFlags: 절점 사용 여부 배열. 생략하면 전부 True

・ pscOpt1: HALF, 1CELL, 2CELL

・ pscOpt2: HALF일 때는 LEFT 또는 RIGHT, 그 외에는 CIRCLE 또는 POLYGON

Debug.Print SectionPscPlate(40, "PSC-PLAT", _
            aSizes:=Array(1.44, 0.26, 1.7, 0.14, 0.16, 1.35, 0.37, 1.45, 0.48, 0.18), _
            sWidth:=1.44, jointFlags:=Array(True, False), _
            pscOpt1:="HALF", pscOpt2:="LEFT")

 

0
컨텐츠가 도움이 되셨나요?