![]() | 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() )>0
hasConnPointPipingClass=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.ptb and cadenas_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] in ifugnx.cfg must 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