Material¶
Every Technical Drawing requires a material definition. These are free-text fields that can contain a wide range of content. Some drawings specify material numbers based on standards like "EN10027-2", others use deprecated national standards, or potentially even descriptive materials, such as "brass, yellow, soft".
Consistently handling these materials requires a material taxonomy. We are lending heavily from the famous categorization system of Ashby and work with a material tree with three layers. The API calls them material_category1
, material_category2
and material_category3
. The tree diagram illustrates the level of categorization.
Note
Material Terms
Werk24 uses singular terms for materials.
For example:
✓ Tool Steel
✗ Tool Steels
Note
Mixtures/Alloys
Werk24 categorizes mixtures and alloys by base material.
For example:
BRASS
and BRONZE
are both categorized under COPPER
Material Categorization¶
stateDiagram-v2
direction LR
# Category1
[*] --> FERROUS_ALLOY
[*] --> NONFERROUS_ALLOY
[*] --> POLYMER
[*] --> CERAMIC
[*] --> COMPOSITE
[*] --> ORGANIC
# Category2: FERROUS_ALLOY
FERROUS_ALLOY --> STEEL
FERROUS_ALLOY --> IRON
FERROUS_ALLOY --> MAGNETIC_OR_ELECTRICAL_MATERIAL
FERROUS_ALLOY --> SINTERED_POWDERED_METAL
FERROUS_ALLOY --> WELDING_FILLER_MATERIAL
# Category2: NONFERROUS_ALLOY
NONFERROUS_ALLOY --> ALUMINUM
NONFERROUS_ALLOY --> ANTIMONY
NONFERROUS_ALLOY --> BERYLLIUM
NONFERROUS_ALLOY --> BISMUTH
NONFERROUS_ALLOY --> CADMIUM
NONFERROUS_ALLOY --> CHROMIUM
NONFERROUS_ALLOY --> COBALT
NONFERROUS_ALLOY --> COPPER
NONFERROUS_ALLOY --> GALLIUM
NONFERROUS_ALLOY --> LEAD
NONFERROUS_ALLOY --> MAGNESIUM
NONFERROUS_ALLOY --> MANGANESE
NONFERROUS_ALLOY --> MERCURY
NONFERROUS_ALLOY --> MOLYBDENUM
NONFERROUS_ALLOY --> NICKEL
NONFERROUS_ALLOY --> NIOBIUM
NONFERROUS_ALLOY --> PLATINUM
NONFERROUS_ALLOY --> REAR_EARTHS
NONFERROUS_ALLOY --> SELENIUM
NONFERROUS_ALLOY --> SILICON
NONFERROUS_ALLOY --> THALLIUM
NONFERROUS_ALLOY --> TIN
NONFERROUS_ALLOY --> TITANIUM
NONFERROUS_ALLOY --> TUNGSTEN
NONFERROUS_ALLOY --> VANADIUM
NONFERROUS_ALLOY --> ZINC
NONFERROUS_ALLOY --> ZIRCONIUM
# Category2: POLYMER
POLYMER --> THERMOPLAST
POLYMER --> THERMOSET
POLYMER --> THERMOPLASTIC_ELASTOMER
POLYMER --> THERMOSET_ELASTOMER
POLYMER --> POLYMER_FOAM
# Category2: COMPOSITE
COMPOSITE --> MATRIX
COMPOSITE --> REINFORCEMENT
# Category2: CERAMIC
CERAMIC --> REFRACTORY
CERAMIC --> TECHNICAL_CERAMIC
CERAMIC --> CERAMIC_FOAM
# Category2: ORGANIC
ORGANIC --> WOOD
#Category3: STEEL
STEEL --> STRUCTURAL_OR_CONSTRUCTIONAL_STEEL
STEEL --> STAINLESS_STEEL
STEEL --> TOOL_STEEL
STEEL --> CAST_STEEL
#Category3: IRON
IRON --> CAST_IRON
IRON --> FERROALLOY
Today we focus heavily on metals and Polymers - should you require other types of materials, please get in touch. List of Supported Materials¶
Based on the Material Categorization defined above, the list of materials that are supported in each category are shown in the table below. Werk24 has implemented Material Standard for most of the metals and Polymers. Should you require other standards, please get in touch with us.
Category 1 | Category 2 | Category 3 |
---|---|---|
FERROUS_ALLOY | STEEL | CAST_STEEL |
STAINLESS_STEEL | ||
TOOL_STEEL | ||
TOOL_STEEL | ||
IRON | CAST_IRON | |
FERROALLOY | ||
NONFERROUS_ALLOY | ALUMINUM | |
ANTIMONY | ||
BERYLLIUM | ||
BISMUTH | ||
CADMIUM | ||
CHROMIUM | ||
COBALT | ||
COPPER | ||
GALLIUM | ||
LEAD | ||
MAGNESIUM | ||
MANGANESE | ||
MERCURY | ||
MOLYBDENUM | ||
NICKEL | ||
NIOBIUM | ||
PLATINUM | ||
REAR_EARTHS | ||
SELENIUM | ||
SILICON | ||
THALLIUM | ||
TIN | ||
TITANIUM | ||
TUNGSTEN | ||
VANADIUM | ||
ZINC | ||
ZIRCONIUM | ||
POLYMER | THERMOPLAST | ABS |
ABS_PC | ||
ABS_PLUS_PA | ||
ABS_PLUS_PA6 | ||
ABS_PLUS_PA66 | ||
ABS_PLUS_PBT | ||
ABS_PLUS_PC | ||
ABS_PLUS_PET | ||
ABS_PLUS_PMMA | ||
ABS_PLUS_PVC | ||
ABS_PLUS_PVC_C | ||
ABS_PLUS_SAN | ||
ABS_PLUS_TPE | ||
ABS_PLUS_TPES | ||
ABS_PLUS_TPU | ||
ABS_PP | ||
ACPES | ||
AES | ||
AES_PLUS_PC | ||
ASA | ||
ASA_PC | ||
ASA_PLUS_ABS | ||
ASA_PLUS_AES | ||
ASA_PLUS_MSAN | ||
ASA_PLUS_PA | ||
ASA_PLUS_PC | ||
ASA_PLUS_PMMA | ||
ASA_PLUS_SAN | ||
ASA_PLUS_TPE | ||
BMI | ||
BVOH | ||
CAB | ||
CAP | ||
CE | ||
COC | ||
CP | ||
CPE | ||
CPT | ||
E_P | ||
EA | ||
EAA | ||
EBA | ||
EBACO | ||
EC | ||
ECTFE | ||
EEA | ||
EFEP | ||
EMAA | ||
EMAAA | ||
ENBAGMA | ||
ETFE | ||
EVA | ||
EVACO | ||
EVOH | ||
FEP | ||
HDPE | ||
HIPP | ||
HIPS | ||
IONOMER_RESIN | ||
LCP | ||
LCP_PLUS_PPS | ||
LDPE | ||
LDPE_EVA | ||
LDPE_LLDPE | ||
LLDPE | ||
LMDPE | ||
MABS | ||
MBS | ||
MDPE | ||
MFA | ||
PA | ||
PA_MACM10_1010 | ||
PA_MACM12 | ||
PA_MACM12_PLUS_PA_12 | ||
PA_MXD6 | ||
PA_MXD6_MXDI | ||
PA_PACM12 | ||
PA_PLUS_HDPE | ||
PA_PLUS_PA66_6 | ||
PA_PLUS_PE | ||
PA_PLUS_PP | ||
PA_PLUS_PPA | ||
PA_PLUS_SPS | ||
PA_PLUS_TPE | ||
PA_TPE | ||
PA1010 | ||
PA1012 | ||
PA10T_X | ||
PA11 | ||
PA12 | ||
PA12_MACMI | ||
PA12_MACMI_PLUS_PA12 | ||
PA410 | ||
PA46 | ||
PA46_PLUS_PA6 | ||
PA4T | ||
PA510 | ||
PA6 | ||
PA6_12 | ||
PA6_3T | ||
PA6_66_12 | ||
PA6_66_136 | ||
PA6_66_610 | ||
PA6_69 | ||
PA6_6I | ||
PA6_6T | ||
PA6_IPDI | ||
PA6_PA12 | ||
PA6_PLUS_ASA | ||
PA6_PLUS_PA_6I_6T | ||
PA6_PLUS_PA12 | ||
PA6_PLUS_PA12_X | ||
PA6_PLUS_PA66 | ||
PA6_PLUS_PA66_6 | ||
PA6_PLUS_PE | ||
PA6_PLUS_PP | ||
PA610 | ||
PA612 | ||
PA66 | ||
PA66_6 | ||
PA66_610 | ||
PA66_PLUS_PA610 | ||
PA66_PLUS_PA612 | ||
PA66_PLUS_PA6I | ||
PA66_PLUS_PA6I_6T | ||
PA66_PLUS_PA6I_X | ||
PA66_PLUS_PE | ||
PA66_PLUS_PP | ||
PA66_PLUS_PPA | ||
PA69 | ||
PA6I | ||
PA6I_6T | ||
PA6I_X | ||
PA6T | ||
PA6T_66 | ||
PA6T_XT_PLUS_PA6T_66 | ||
PA6T_6I | ||
PA6T_6I_66 | ||
PA6T_MPMDT | ||
PA6T_XT | ||
PA9T | ||
PAEK | ||
PAI | ||
PAMXD6_PA66 | ||
PAO | ||
PAR | ||
PARA | ||
PB | ||
PBAT | ||
PBAT_PLUS_PLA | ||
PBI | ||
PBS | ||
PBT | ||
PBT_ASA | ||
PBT_PC | ||
PBT_PLUS_ASA | ||
PBT_PLUS_PE | ||
PBT_PLUS_PET | ||
PBT_PLUS_PET_PLUS_ASA | ||
PBT_PLUS_PETG | ||
PBT_PLUS_PPE | ||
PBT_PLUS_PS | ||
PBT_PLUS_SAN | ||
PC | ||
PC_PET | ||
PC_PLUS_HIPS | ||
PC_PLUS_MBS | ||
PC_PLUS_PBT | ||
PC_PLUS_PCT | ||
PC_PLUS_PET | ||
PC_PLUS_PET_PLUS_PBT | ||
PC_PLUS_PLA | ||
PC_PLUS_PMMA | ||
PC_PLUS_PPC | ||
PC_PLUS_PS | ||
PC_PLUS_PTFE | ||
PC_PLUS_SAN | ||
PC_PLUS_TPES | ||
PC_PLUS_TPU | ||
PC_PPC | ||
PCL | ||
PCT | ||
PCTA | ||
PCTFE | ||
PCTG | ||
PCTG_PLUS_PC | ||
PE | ||
PE_HMW | ||
PE_HMWHD | ||
PE_PLUS_HIPS | ||
PE_UHMW | ||
PEEK | ||
PEI | ||
PEI_PLUS_PCE | ||
PEK | ||
PEKEKK | ||
PEKK | ||
PEN | ||
PESU | ||
PET | ||
PET_G | ||
PET_PLUS_PA6 | ||
PET_PLUS_PA66 | ||
PEX_B | ||
PFA | ||
PFSA_PTFE | ||
PGA | ||
PHA | ||
PHB | ||
PHBV | ||
PI | ||
PIB | ||
PK | ||
PLA | ||
PLA_PCL | ||
PLA_PEG | ||
PLA_PHA | ||
PLA_PLUS_ABS | ||
PLA_PLUS_HDPE | ||
PLA_PLUS_PHB | ||
PLA_PLUS_PMMA | ||
PLGA | ||
PMMA | ||
PMMI | ||
PMP | ||
PMS | ||
POM | ||
POM_PLUS_MBS | ||
POM_PLUS_PE | ||
POM_PLUS_PTFE | ||
POM_PLUS_PUR | ||
PP | ||
PP_PE | ||
PP_PLUS_EPDM | ||
PP_PLUS_EPR | ||
PP_PLUS_EVA | ||
PP_PLUS_PE | ||
PP_PLUS_PPE_PLUS_PS | ||
PPA | ||
PPC | ||
PPE | ||
PPE_PLUS_HIPS | ||
PPE_PLUS_PA | ||
PPE_PLUS_PA6 | ||
PPE_PLUS_PA66 | ||
PPE_PLUS_PP | ||
PPE_PLUS_PS | ||
PPE_PLUS_PS_PLUS_PA | ||
PPE_PLUS_TPE | ||
PPE_PLUS_TPS_SEBS | ||
PPOX | ||
PPS | ||
PPS_PLUS_PA | ||
PPS_PLUS_PPE | ||
PPS_PLUS_PTFE | ||
PPSU | ||
PPSU_PLUS_PSU | ||
PS | ||
PS_I | ||
PS_PLUS_PE | ||
PS_PLUS_PMMA | ||
PS_PLUS_SPS | ||
PSU | ||
PSU_PLUS_ABS | ||
PSU_PLUS_PC | ||
PTFE | ||
PTT | ||
PVAL | ||
PVB | ||
PVC | ||
PVC_C | ||
PVC_C_PLUS_PVC | ||
PVC_PLUS_NBR | ||
PVC_PLUS_PMMA | ||
PVC_PLUS_PUR | ||
PVC_U | ||
PVCA | ||
PVDC | ||
PVDF | ||
PVP | ||
RPS | ||
SAN | ||
SB | ||
SMA | ||
SMA_PLUS_HIPS | ||
SMI | ||
SMMA | ||
SPS | ||
SRP | ||
TPC_EE_PLUS_PBT | ||
TPC_ET_PLUS_EMA | ||
TPC_ET_PLUS_PBT | ||
TPES | ||
TPU_PLUS_TPS_PLUS_TPA | ||
VDF_CTFE | ||
VDF_HFP | ||
VINYL_CHLORIDE_BLEND | ||
VLDPE | ||
XLPE | ||
XLPO | ||
THERMOSET | CA | |
EP | ||
MA | ||
MF | ||
MP | ||
PDAIP | ||
PDAP | ||
PUR | ||
UF | ||
UP | ||
VE | ||
THERMOPLASTIC_ELASTOMER | MPR | |
PCU | ||
PEBA | ||
SPU | ||
TPA | ||
TPC | ||
TPC_EE | ||
TPC_ES | ||
TPC_ET | ||
TPE | ||
TPO | ||
TPO_EB | ||
TPO_EO | ||
TPO_EPDM_PLUS_PP | ||
TPS | ||
TPS_SBS | ||
TPS_SEBS | ||
TPS_SIS | ||
TPU | ||
TPU_ALES | ||
TPU_ALET | ||
TPU_ARES | ||
TPU_ARET | ||
TPU_ES | ||
TPU_ET | ||
TPV | ||
TPV_EPDM | ||
TPV_EPDM_PLUS_PP | ||
TPV_IIR_HIIR | ||
TPV_NBR | ||
TSPCU | ||
TSPU | ||
THERMOSET_ELASTOMER | ACM | |
ACSM | ||
AEM | ||
AU | ||
BIIR | ||
BR | ||
CIIR | ||
CM | ||
CR | ||
CR_NBR | ||
CR_SBR | ||
CSM | ||
ECO | ||
EPDM | ||
EPDM_SBR | ||
EPM | ||
EPM_EPDM | ||
EPT | ||
EU | ||
FFKM | ||
FKM | ||
FMQ | ||
FVMQ | ||
HNBR | ||
IIR | ||
IR | ||
IR_BR | ||
NBR | ||
NBR_PVC | ||
NBR_SBR | ||
NR | ||
PDMS | ||
PUMA | ||
PVMQ | ||
RET | ||
SBR | ||
SBR_ACM | ||
SBR_BR | ||
SBR_IR | ||
SBR_NR | ||
SI | ||
VMQ | ||
VMQ_PVMQ | ||
XNBR | ||
XNBR_PVC | ||
POLYMER_FOAM | POLYPHENYLENE_OR_POLYSTYRENE | |
POLYPHENYLENE_OR_POLYSTYRENE_HIPS | ||
POLYCARBONATE | ||
COMPOSITE | MATRIX | |
REINFORCEMENT | FIBER_REINFORCEMENT | |
STRUCTURAL_COMPOSITE | ||
CARBON_FIBER_COMPOSITE | ||
GLASS_FIBER_COMPOSITE | ||
CERAMIC | REFRACTORY | |
TECHNICAL_CERAMIC |
Proprietary Materials¶
Werk24 understands numerous proprietary materials. As these materials are specifically developed by companies, Werk24 categorizes them under 'TRADE_NAME' category.
if you ever come across a new proprietary material, please reach out to us, we are always looking forward to implement them for you.
Interpretation of Input Materials¶
Materials from technical drawings are interpreted based on the the material standards folowed in the drawing. Werk24 categorizes the material and also provides a reference standard. Here are some examples of material interpretation.
Example Input | Interpretation | Category |
---|---|---|
Al Zn5.5MgCu | EN AW-AlZn5.5MgCu | NONFERROUS_ALLOY / ALUMINUM |
Class 8.8 | 8.8 | FERROUS_ALLOY / STEEL |
1.2834 | 1.2834 | FERROUS_ALLOY / STEEL |
Nylon 66 | PA 66 | POLYMER/ THERMOPLASTIC_ELASTOMER |
If you serve an industry that uses other material standards, do not hesitate to reach out. We always strive to improve our products.
Model¶
Extracted information can be accessed from the W24Material
Model.
W24Material¶
W24 Object for Materials.
Parsed Material object that can either be associated to the TitleBlock or derived from all the available information (including the text on the canvas.
Attributes: blurb: Material Name for human consumption. This will typically include the designation and the standard.
standard: Material Standard indicated
on the technical drawing. This used to be
an enum - but we now have over 100 supported
material standards and the number is increasing
weekly. So a string seems to be more appropriate.
designation: Name of the material in accordance
with the material standard. An alternative name
would be material_designation.
material_category: Categorization of the material
following W24MaterialCategoryX Tree.
Properties¶
-
position
: Refer to #/definitions/W24BaseFeaturePosition. -
blurb
(string) -
standard
(string) -
designation
(string) -
material_category
(array) -
Items_0: Refer to #/definitions/W24MaterialCategory1.
-
Items_1: Refer to #/definitions/W24MaterialCategory2.
-
Items_2: Refer to #/definitions/W24MaterialCategory3.
-
material_family
-
material_class
-
material_type
-
material_group
-
material_standard
-
material_code
(string)
Definitions¶
-
W24BaseFeatureCoordinate
(object): Coordinate point
Attributes: x: x position normalized by the thumbnail's width
y: y position normalized by the thumbnail's height. -
x
(number) -
y
(number) -
W24BaseFeaturePosition
(object): Position of the Feature on the individual thumbnails normalized by the width and height of each thumbnail.
Each features position is indicated as a list of coordinates. If the list only has two elements, you are dealing with a line. If it has four or more, you are looking at a polygon
Attributes: page: Position of the Feature on the Page thumbnail
sheet: Position of the Feature on the Sheet thumbnail
sectional: Position of the Feature on the Sectional thumbnail. -
sheet
(array)- Items: Refer to #/definitions/W24BaseFeatureCoordinate.
-
canvas
(array)- Items: Refer to #/definitions/W24BaseFeatureCoordinate.
-
sectional
(array)- Items: Refer to #/definitions/W24BaseFeatureCoordinate.
-
W24MaterialCategory1
(string): An enumeration. Must be one of:['FERROUS_ALLOY', 'NONFERROUS_ALLOY', 'POLYMER', 'CERAMIC', 'COMPOSITE', 'ORGANIC']
. -
W24MaterialCategory2
(string): An enumeration. Must be one of:['STEEL', 'IRON', 'MAGNETIC_OR_ELECTRICAL_MATERIAL', 'SINTERED_POWDEDERD_METAL', 'WELDING_FILLER_MATERIAL', 'ALUMINUM', 'ANTIMONY', 'BERYLLIUM', 'BISMUTH', 'CADMIUM', 'CHROMIUM', 'COBALT', 'COPPER', 'GALLIUM', 'LEAD', 'MAGNESIUM', 'MANGANESE', 'MERCURY', 'MOLYBDENUM', 'NICKEL', 'NIOBIUM', 'PLATINUM', 'REAR_EARTHS', 'SELENIUM', 'SILICON', 'THALLIUM', 'TIN', 'TITANIUM', 'TUNGSTEN', 'VANADIUM', 'ZINC', 'ZIRCONIUM', 'THERMOPLAST', 'THERMOSET', 'THERMOPLASTIC_ELASTOMER', 'THERMOSET_ELASTOMER', 'POLYMER_FOAM', 'REFRACTORY', 'TECHNICAL_CERAMIC', 'CERAMIC_FOAM', 'MATRIX', 'REINFORCEMENT', 'WOOD']
. -
W24MaterialCategory3
(string): An enumeration. Must be one of:['STRUCTURAL_OR_CONSTRUCTIONAL_STEEL', 'STAINLESS_STEEL', 'TOOL_STEEL', 'CAST_STEEL', 'CAST_IRON', 'FERROALLOY', 'ABS', 'ABS_PC', 'ABS_PLUS_PA', 'ABS_PLUS_PA6', 'ABS_PLUS_PA66', 'ABS_PLUS_PBT', 'ABS_PLUS_PC', 'ABS_PLUS_PET', 'ABS_PLUS_PMMA', 'ABS_PLUS_PVC', 'ABS_PLUS_PVC_C', 'ABS_PLUS_SAN', 'ABS_PLUS_TPE', 'ABS_PLUS_TPES', 'ABS_PLUS_TPU', 'ABS_PP', 'ACPES', 'AES', 'AES_PLUS_PC', 'ASA', 'ASA_PC', 'ASA_PLUS_ABS', 'ASA_PLUS_AES', 'ASA_PLUS_MSAN', 'ASA_PLUS_PA', 'ASA_PLUS_PC', 'ASA_PLUS_PMMA', 'ASA_PLUS_SAN', 'ASA_PLUS_TPE', 'BMI', 'BVOH', 'CAB', 'CAP', 'CE', 'COC', 'CP', 'CPE', 'CPT', 'E_P', 'EA', 'EAA', 'EBA', 'EBACO', 'EC', 'ECTFE', 'EEA', 'EFEP', 'EMAA', 'EMAAA', 'ENBAGMA', 'ETFE', 'EVA', 'EVACO', 'EVOH', 'FEP', 'HDPE', 'HIPP', 'HIPS', 'IONOMER_RESIN', 'LCP', 'LCP_PLUS_PPS', 'LDPE', 'LDPE_EVA', 'LDPE_LLDPE', 'LLDPE', 'LMDPE', 'MABS', 'MBS', 'MDPE', 'MFA', 'PA', 'PA_MACM10_1010', 'PA_MACM12', 'PA_MACM12_PLUS_PA_12', 'PA_MXD6', 'PA_MXD6_MXDI', 'PA_PACM12', 'PA_PLUS_HDPE', 'PA_PLUS_PA66_6', 'PA_PLUS_PE', 'PA_PLUS_PP', 'PA_PLUS_PPA', 'PA_PLUS_SPS', 'PA_PLUS_TPE', 'PA_TPE', 'PA1010', 'PA1012', 'PA10T_X', 'PA11', 'PA12', 'PA12_MACMI', 'PA12_MACMI_PLUS_PA12', 'PA410', 'PA46', 'PA46_PLUS_PA6', 'PA4T', 'PA510', 'PA6', 'PA6_12', 'PA6_3T', 'PA6_66_12', 'PA6_66_136', 'PA6_66_610', 'PA6_69', 'PA6_6I', 'PA6_6T', 'PA6_IPDI', 'PA6_PA12', 'PA6_PLUS_ASA', 'PA_6_PLUS_PA_6I_6T', 'PA6_PLUS_PA12', 'PA6_PLUS_PA12_X', 'PA6_PLUS_PA66', 'PA6_PLUS_PA66_6', 'PA6_PLUS_PE', 'PA6_PLUS_PP', 'PA610', 'PA612', 'PA66', 'PA66_6', 'PA66_610', 'PA66_PLUS_PA610', 'PA66_PLUS_PA612', 'PA66_PLUS_PA6I', 'PA66_PLUS_PA6I_6T', 'PA66_PLUS_PA6I_X', 'PA66_PLUS_PE', 'PA66_PLUS_PP', 'PA66_PLUS_PPA', 'PA69', 'PA6I', 'PA6I_6T', 'PA6I_X', 'PA6T', 'PA6T_66', 'PA6T_XT_PLUS_PA6T_66', 'PA6T_6I', 'PA6T_6I_66', 'PA6T_MPMDT', 'PA6T_XT', 'PA9T', 'PAEK', 'PAI', 'PAMXD6_PA66', 'PAO', 'PAR', 'PARA', 'PB', 'PBAT', 'PBAT_PLUS_PLA', 'PBI', 'PBS', 'PBT', 'PBT_ASA', 'PBT_PC', 'PBT_PLUS_ASA', 'PBT_PLUS_PE', 'PBT_PLUS_PET', 'PBT_PLUS_PET_PLUS_ASA', 'PBT_PLUS_PETG', 'PBT_PLUS_PPE', 'PBT_PLUS_PS', 'PBT_PLUS_SAN', 'PC', 'PC_PET', 'PC_PLUS_HIPS', 'PC_PLUS_MBS', 'PC_PLUS_PBT', 'PC_PLUS_PCT', 'PC_PLUS_PET', 'PC_PLUS_PET_PLUS_PBT', 'PC_PLUS_PLA', 'PC_PLUS_PMMA', 'PC_PLUS_PPC', 'PC_PLUS_PS', 'PC_PLUS_PTFE', 'PC_PLUS_SAN', 'PC_PLUS_TPES', 'PC_PLUS_TPU', 'PC_PPC', 'PCL', 'PCT', 'PCTA', 'PCTFE', 'PCTG', 'PCTG_PLUS_PC', 'PE', 'PE_HMW', 'PE_HMWHD', 'PE_PLUS_HIPS', 'PE_UHMW', 'PEEK', 'PEI', 'PEI_PLUS_PCE', 'PEK', 'PEKEKK', 'PEKK', 'PEN', 'PESU', 'PET', 'PET_G', 'PET_PLUS_PA6', 'PET_PLUS_PA66', 'PEX_B', 'PFA', 'PFSA_PTFE', 'PGA', 'PHA', 'PHB', 'PHBV', 'PI', 'PIB', 'PK', 'PLA', 'PLA_PCL', 'PLA_PEG', 'PLA_PHA', 'PLA_PLUS_ABS', 'PLA_PLUS_HDPE', 'PLA_PLUS_PHB', 'PLA_PLUS_PMMA', 'PLGA', 'PMMA', 'PMMI', 'PMP', 'PMS', 'POM', 'POM_PLUS_MBS', 'POM_PLUS_PE', 'POM_PLUS_PTFE', 'POM_PLUS_PUR', 'PP', 'PP_PE', 'PP_PLUS_EPDM', 'PP_PLUS_EPR', 'PP_PLUS_EVA', 'PP_PLUS_PE', 'PP_PLUS_PPE_PLUS_PS', 'PPA', 'PPC', 'PPE', 'PPE_PLUS_HIPS', 'PPE_PLUS_PA', 'PPE_PLUS_PA6', 'PPE_PLUS_PA66', 'PPE_PLUS_PP', 'PPE_PLUS_PS', 'PPE_PLUS_PS_PLUS_PA', 'PPE_PLUS_TPE', 'PPE_PLUS_TPS_SEBS', 'PPOX', 'PPS', 'PPS_PLUS_PA', 'PPS_PLUS_PPE', 'PPS_PLUS_PTFE', 'PPSU', 'PPSU_PLUS_PSU', 'PS', 'PS_I', 'PS_PLUS_PE', 'PS_PLUS_PMMA', 'PS_PLUS_SPS', 'PSU', 'PSU_PLUS_ABS', 'PSU_PLUS_PC', 'PTFE', 'PTT', 'PVAL', 'PVB', 'PVC', 'PVC_C', 'PVC_C_PLUS_PVC', 'PVC_PLUS_NBR', 'PVC_PLUS_PMMA', 'PVC_PLUS_PUR', 'PVC_U', 'PVCA', 'PVDC', 'PVDF', 'PVP', 'RPS', 'SAN', 'SB', 'SMA', 'SMA_PLUS_HIPS', 'SMI', 'SMMA', 'SPS', 'SRP', 'TPC_EE_PLUS_PBT', 'TPC_ET_PLUS_EMA', 'TPC_ET_PLUS_PBT', 'TPES', 'TPU_PLUS_TPS_PLUS_TPA', 'VDF_CTFE', 'VDF_HFP', 'VINYL_CHLORIDE_BLEND', 'VLDPE', 'XLPE', 'XLPO', 'CA', 'EP', 'MA', 'MF', 'MP', 'PDAIP', 'PDAP', 'PUR', 'UF', 'UP', 'VE', 'MPR', 'PCU', 'PEBA', 'SPU', 'TPA', 'TPC', 'TPC_EE', 'TPC_ES', 'TPC_ET', 'TPE', 'TPO', 'TPO_EB', 'TPO_EO', 'TPO_EPDM_PLUS_PP', 'TPS', 'TPS_SBS', 'TPS_SEBS', 'TPS_SIS', 'TPU', 'TPU_ALES', 'TPU_ALET', 'TPU_ARES', 'TPU_ARET', 'TPU_ES', 'TPU_ET', 'TPV', 'TPV_EPDM', 'TPV_EPDM_PLUS_PP', 'TPV_IIR_HIIR', 'TPV_NBR', 'TSPCU', 'TSPU', 'ACM', 'ACSM', 'AEM', 'AU', 'BIIR', 'BR', 'CIIR', 'CM', 'CR', 'CR_NBR', 'CR_SBR', 'CSM', 'ECO', 'EPDM', 'EPDM_SBR', 'EPM', 'EPM_EPDM', 'EPT', 'EU', 'FFKM', 'FKM', 'FMQ', 'FVMQ', 'HNBR', 'IIR', 'IR', 'IR_BR', 'NBR', 'NBR_PVC', 'NBR_SBR', 'NR', 'PDMS', 'PUMA', 'PVMQ', 'RET', 'SBR', 'SBR_ACM', 'SBR_BR', 'SBR_IR', 'SBR_NR', 'SI', 'VMQ', 'VMQ_PVMQ', 'XNBR', 'XNBR_PVC', 'CARBON_FIBER_COMPOSITE', 'GLASS_FIBER_COMPOSITE', 'FIBER_REINFORCEMENT', 'STRUCTURAL_COMPOSITE', 'POLYPHENYLENE_OR_POLYSTYRENE', 'POLYPHENYLENE_OR_POLYSTYRENE_HIPS', 'POLYCARBONATE']
.
Requesting the Material¶
from werk24 import Hook, W24AskTitleBlock
from werk24.models.techread import W24TechreadMessage
from werk24.utils import w24_read_sync
# define a function to read a file and return it as bytes
from . import get_drawing_bytes
def recv_title_block(message: W24TechreadMessage) -> None:
""" print the Material when we received it
"""
if message.is_successful:
print(message.payload_dict.get('material'))
else:
print("Exceptions occurred: {message.exceptions}")
if __name__ == "__main__":
# get your drawing bytes from a file or buffer
drawing_bytes = get_drawing_bytes()
# define what information you want to receive from the API
# and what shall be done when the info is available.
hooks = [Hook(ask=W24AskTitleBlock(), function=recv_title_block)]
# submit the request to the Werk24 API
w24_read_sync(drawing_bytes, hooks)
Example Response¶
"material": {
"blurb": "Mat. AUSTENTIC: A2",
"standard": "AUSTENTIC",
"designation": "A2",
"material_category": [
"FERROUS_ALLOY",
"STEEL",
"CAST_STEEL"
]
}
Error Handling¶
Things do not always run smoothly. When you request the Material, the following exceptions might be triggered.
Exception Type | Level | Description |
---|---|---|
DRAWING_FILE_FORMAT_UNSUPPORTED | ERROR | The drawing could not be read in any of the supported file formats. Refer to Limitations/DrawingFileFormats for details. |
DRAWING_FILE_SIZE_TOO_LARGE | ERROR | The drawing exceeded the file size limit. Refer to [Limitations/DrawingFileSize/limitations/drawing_file_size.html) for details. |
DRAWING_RESOLUTION_TOO_LOW | ERROR | The drawing has a low resolution and could not be read. Refer to Limitations/DrawngResolution for details. |
DRAWING_CONTENT_NOT_UNDERSTOOD | ERROR | The file could not be interpreted as Technical Drawing or does not contain a TitleBlock. |