![]() | Note |
|---|---|
In current versions respective keys are already created, so that you just have to activate these. | |
Create cadenas_routing_library_inch.ptb and cadenas_routing_library_mm.ptb.
D:/CADENAS_ROUTING/
Customize ifugnx.cfg in %CADENAS_SETUP%/ifugnx.cfg to.
Activate following keys (currently not accessible from with PARTadmin, but only directly in file)
hasPipingClass=Len( _FORMAT_DOC("<CLASSPROP(cns,CNSPIPECONNECTOR_ROUND,CNS_3DID)>").
value() )>0hasConnPointPipingClass=Len(_FORMAT_DOC("<CLASSPROP
(cns,CNSPIPECONNECTOR_ROUND,CNS_PIPE_CONNECTOR_NOMINAL_DIAMETER,CNS_3DID,
PNT<chr(44)><GLOBPROP(CONN,Name)>)>").value())>0[CreationOptions(is3d):include(CreationOptions)]points to ptb files.CadenasPipingPartLibraryFile(isMmDoc)=
D:/CADENAS_ROUTING/cadenas_routing_library_mm.ptb
CadenasPipingPartLibraryFile(isInchDoc)=
D:/CADENAS_ROUTING/cadenas_routing_library_inch.ptb
ProcessAdditionalClasses(is3dPart)=CONNPOINT
adapt "hasPipingClass" to "hasConnPointPipingClass" in the following cases and add the following code (or activate the corresponding key)
[CreationOptions(isConnectionPoint, hasConnPointPipingClass)][AttributeMapping(isConnectionPoint, hasConnPointPipingClass)][ConnPointAttributes (hasConnPointPipingClass)] NPS=?_FORMAT_DOC("<CLASSPROP(cns,CNSPIPECONNECTOR_ROUND,CNS_PIPE_CONNECTOR_NOMINAL_
DIAMETER,CNS_3DID,PNT<chr(44)><GLOBPROP(CONN,Name)>)>").value()
NPS.CUSTOM=type.number
CONNECTION_TYPE=BUTT WELD
DIAMETER=?_FORMAT_DOC("<CLASSPROP(cns,CNSPIPECONNECTOR_ROUND,CNS_PIPE_CONNECTOR_EXTERNAL_
DIAMETER,CNS_3DID,PNT<chr(44)><GLOBPROP(CONN,Name)>)>").value()
DIAMETER.CUSTOM=type.number
[ConnPointCharacteristics (hasConnPointPipingClass)] CNS_PIPE_CONNECTOR_IS_MAINLINE=?_FORMAT_DOC("<CLASSPROP(cns,CNSPIPECONNECTOR_ROUND,
CNS_PIPE_CONNECTOR_IS_MAINLINE,CNS_3DID,PNT<chr(44)><GLOBPROP(CONN,Name)>)>").value()
CNS_PIPE_CONNECTOR_IS_MAINLINE.CUSTOM=type.boolean
CNS_PIPE_CONNECTOR_DESIGNATION=?_FORMAT_DOC("<CLASSPROP(cns,CNSPIPECONNECTOR_ROUND,
CNS_PIPE_CONNECTOR_DESIGNATION,CNS_3DID,PNT<chr(44)><GLOBPROP(CONN,Name)>)>").value()
ENGAGEMENT=?_FORMAT_DOC("<CLASSPROP(cns,CNSPIPECONNECTOR_ROUND,CNS_PIPE_CONNECTOR_
EXTERNAL_INS_DEPTH,CNS_3DID,PNT<chr(44)><GLOBPROP(CONN,Name)>)>").value()
ENGAGEMENT.CUSTOM=type.number
DIAMETER=?_FORMAT_DOC("<CLASSPROP(cns,CNSPIPECONNECTOR_ROUND,CNS_PIPE_CONNECTOR_EXTERNAL_
DIAMETER,CNS_3DID,PNT<chr(44)><GLOBPROP(CONN,Name)>)>").value()
DIAMETER.CUSTOM=type.number
NPS=?_FORMAT_DOC("<CLASSPROP(cns,CNSPIPECONNECTOR_ROUND,CNS_PIPE_CONNECTOR_NOMINAL_
DIAMETER,CNS_3DID,PNT<chr(44)><GLOBPROP(CONN,Name)>)>").value()
NPS.CUSTOM=type.number
CONNECTION_TYPE=BUTT WELD
Make sure that following code is present:
Attr_Content_02=CadPipingAttributes #:VALS_S; #:HELP;Do not change! Attr_Section_02=PIPING
Add the attribute sets required for piping
Add the attribute sets required for piping (as listed in the ptb file, customer-dependent). Make sure that you use a suitable
ifugnx.cfg,cadenas_routing_library_mm.ptbandcadenas_routing_library_inch.ptb. This should contain the following piping attributes:The type, number and role of these attributes can be adjusted in the ptb file. Corresponding adjustments must then also be made in
ifugnx.cfg, in the [CadPipingAttributes] block.Make sure that required attribute sets for piping are added (as listed in the ptb file, customer-dependent).
The type, number, and role of these attributes can be changed as needed in the ptb files.
The block
[CadPipingAttributes]inifugnx.cfgmust then also be adjusted accordingly.[CadPipingAttributes] #:VALS_S; NPS(isInchDoc)=?GetObject("iface.ugnx.piping").GetLargestDiamValue(_METAOBJ) NPS.CUSTOM(isInchDoc)=type.number DN(isMmDoc)=?GetObject("iface.ugnx.piping").GetLargestDiamValue(_METAOBJ) DN.CUSTOM(isMmDoc)=type.number ISOGEN_SKEY=?chr(34)+_FORMAT_DOC("<CLASSPROP(cns,CNSPIPING,CNS_PIPE_PART_ISOGEN_CODE)>")
.value()+chr(34)
ISOGEN_COMPONENT_ID=?_FORMAT_DOC(chr(34)+"<CLASSPROP(cns,CNSPIPING,CNS_PIPE_PART_
DESIGNATION)>"+chr(34)).value()
CONNECTION_TYPE=?chr(34)+_FORMAT_DOC("<CLASSPROP(cns,CNSPIPING,CNS_PIPE_
PART_TYPE)>").value()+chr(34)
DESCRIPTION=?chr(34)+_FORMAT_0((_ATTR("LINA"))).value()+chr(34)
PART_NUMBER=?chr(34)+_ATTR("NB")+chr(34)
PART_NAME=?chr(34)+_FORMAT_0("<GenNAME><MATERIAL(_)>").toFileName("_").
RepChar("!","_").add(".prt").value()+chr(34)
PART_NUMBER(tcActive)=%TC_ItemId%
PART_NAME(tcActive)=%TC_ItemName%
The
DocAfterCreate(is3dpart)Creation option is already available and activated by default:DocAfterCreate(is3dpart)=GetObject("iface.ugnx.piping").CreatePTBEntry

![[Note]](https://webapi.partcommunity.com/service/help/latest/pages/jp/3dfindit/doc/images/note.png)
