Skip to content

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.