GDLスクリプトを編集して、自作のドアに、キープラン記号(建具記号)追加します。
注) GDLスクリプト編集時に、Archicadライブラリにロードするライブラリは、使用しているバージョンのArchicad Libraryを使用ください。(例. Archicad 24の場合、Archicad Library 24を使用)
Migration Librariesをロードしている場合は、外してからドアのGDLオブジェクトを編集ください。
手順
サブタイプの設定
サブタイプを「ACJX4Door」に設定します
Model Element
- Opening
|- Door (Wall)
|- ACJX4Door
パラメータを追加
以下のデフォルトパラメータを追加する必要があります
- stSill_Materialーテキスト型
- iSill_Materialー整数型
- stFrame_Materialーテキスト型
- iFrame_Materialー整数型
- p2ー長さ型
パラメータスクリプトを追加
「パラメータスクリプト」に以下のスクリプトを貼り付けます
! ---------------------------------------------------------------------- !
! For Door Marker
! ---------------------------------------------------------------------- !
call "ListValuesJPN" parameters all,
gs_JPNObjectType = 5,
gs_is_p2 = 1
! ---------------------------------------------------------------------- !
! KeyPlan No.+ sub no.
! ---------------------------------------------------------------------- !
for ii=10 to 1 step -1
if type_no<10**ii then no_len=ii
next ii
for ii=10 to 1 step -1
if type_no_sub<10**ii then no_len_sub=ii
next ii
if no_and_sub = "" then
st_type_no = STR(type_no, no_len, 0)
if type_no_sub=0 then
type_no_tx = st_type_no
else
type_no_tx = st_type_no + "-" + STR(type_no_sub, no_len_sub, 0)
endif
else
type_no_tx = no_and_sub
endif
parameters type_no_tx = type_no_tx
lock "type_no_tx"
2Dスクリプトを追加
「2Dスクリプト」に以下のスクリプトを貼り付けます。既にスクリプトを作成している場合は、元のスクリプトを、「2Dスクリプトを記述している場合はこちらに入力ください。」の指示に従って貼り付け範囲を調整してください。
! ---------------------------------------------------------------------- !
! キープラン対応部分
! ---------------------------------------------------------------------- !
bShowRegMarker = 0
bShowJoinerySign = 0
success = LIBRARYGLOBAL("LG_JPNDWSettings", "bDoorMVOShowRegMarker", _reqDoorShowRegMarker)
bShowRegMarker = _reqDoorShowRegMarker
success = LIBRARYGLOBAL("LG_JPNDWSettings", "bDoorMVOShowJoinerySign", _reqDoorShowJoinerySign)
bShowJoinerySign = _reqDoorShowJoinerySign
if GLOB_PREVIEW_MODE = 2 then
is_flag = 1
goto "KeyPlan_Marker"
else
is_flag = 0
endif
!!!2Dスクリプトを記述している場合はこちらに入力ください。
!!! この下から !!!
!!! ここまで !!!
"KeyPlan_Marker":
add2 0, WIDO_SILL
if (bShowJoinerySign and key_mark_flag = 1) OR GLOB_PREVIEW_MODE = 2 then
if scale_link_label then
if GLOB_SCALE > 50 then
marker_type =0
else
marker_type =1
endif
else
if iKey_Mark_Type = 1 then
marker_type = 0
else
marker_type = 1
endif
endif
CALL "AC14_symbol_marker" PARAMETERS k_dia = k_dia, \
k_line = k_line,
k_lenb = k_lenb,
k_lena = k_lena,
k_lenc = k_lenc,
fsize_flag = fsize_flag,
fsize = fsize,
k_notation1 =k_notation1,
n_offx1 =n_offx1,
n_offy1 =n_offy1,
k_notation2 =k_notation2,
n_offx2 =n_offx2,
n_offy2 =n_offy2,
k_notation3 = k_notation3,
n_offx3 =n_offx3,
n_offy3 =n_offy3,
k_notation4 =k_notation4,
n_offx4 =n_offx4,
n_offy4 =n_offy4,
pen_text = pen_marker,
pen_symbol = pen_marker,
pen_fill = keyplan_fill_pen,
type_fill = keyplan_fill_type,
keyplan_fill_bg_pen = keyplan_fill_bg_pen,
fontType = fontType,
type_symbol = stD_Type_Name,
type_no = type_no_tx,
globid = GLOB_ID,
stD_Lock_Type = stD_Lock_Type,
iD_Lock_Type = iD_Lock_Type,
e_offx =e_offx,
e_offy =e_offy,
k_idflag = k_idflag,
fill_flag= bKeyplan_fill,
marker_type = marker_type,
op_height = B,
is_flag = is_flag,
ltype_marker = ltype_marker,
wd_show_size = wd_show_size,
size_anno_x = size_anno_x,
size_anno_y = size_anno_y,
A = A,
paper_scale = paper_scale,
ex_fsize = ex_fsize,
wd_fsize = wd_fsize,
k_dia_paper = k_dia_paper,
k_lenb_paper = k_lenb_paper,
k_lena_paper = k_lena_paper,
k_lenc_paper = k_lenc_paper,
n_offx1_paper = n_offx1_paper,
n_offy1_paper = n_offy1_paper,
n_offx2_paper = n_offx2_paper,
n_offy2_paper = n_offy2_paper,
n_offx3_paper = n_offx3_paper,
n_offy3_paper = n_offy3_paper,
n_offx4_paper = n_offx4_paper,
n_offy4_paper = n_offy4_paper,
size_anno_x_paper = size_anno_x_paper,
size_anno_y_paper = size_anno_y_paper,
k_dia_M = k_dia_M,
k_lenb_M = k_lenb_M,
k_lena_M = k_lena_M,
k_lenc_M = k_lenc_M,
n_offx1_M = n_offx1_M,
n_offy1_M = n_offy1_M,
n_offx2_M = n_offx2_M,
n_offy2_M = n_offy2_M,
n_offx3_M = n_offx3_M,
n_offy3_M = n_offy3_M,
n_offx4_M = n_offx4_M,
n_offy4_M = n_offy4_M,
size_anno_x_M = size_anno_x_M,
size_anno_y_M = size_anno_y_M,
k_rot_ang=k_rot_ang
endif
if reg_mark_flag = 1 and bShowRegMarker and iD_Regulations <> 15 and iD_Regulations <> 14 then
CALL "AC14_regulation_marker" PARAMETERS r_dia = r_dia, \
r_lenb = r_lenb,
r_lena = r_lena,
r_dia_paper = r_dia_paper,
r_lenb_paper = r_lenb_paper,
r_lena_paper = r_lena_paper,
r_dia_M = r_dia_M,
r_lenb_M = r_lenb_M,
r_lena_M = r_lena_M,
paper_scale = paper_scale,
pen_text = reg_pen,
pen_symbol = reg_pen,
pen_fill = mark_fill_pen,
type_fill = mark_fill_type,
mark_fill_bg_pen = mark_fill_bg_pen,
fill_flag = mark_fill_flag,
fontType = fontType,
stD_Regulations = stD_Regulations,
iD_Regulations = iD_Regulations,
kaj_door_ident = kaj_door_ident,
is_flag = is_flag,
ltype_marker = ltype_marker
endif
del top
モデル表示オプションを設定
建具記号と法規制マーカーの表示させるには、モデル表示オプションの次の項目にチェックを入れます
パラメータを確認
建具記号が表示されない場合には次のパラメータを確認してください
- カスタム設定>建具記号>キープラン表示
法規制マーカーが表示されない場合には次のパラメータを確認してください
- カスタム設定>建具記号>法規制マーカー
- カスタム設定>建具情報>法規制
*法規制が未定の場合には、マーカーは表示されません
コメント
0件のコメント
記事コメントは受け付けていません。